Commit Graph

163 Commits

Author SHA1 Message Date
Alexander von Gluck IV
ca7e8e5b20 bluetooth: Add kernel stack to image 2016-04-10 11:18:57 -05:00
Rene Gollent
8028ede7db Build: Add architecture rule for libshared.a.
- As suggested by Ingo, add libshared.a to the architecture name map.
  This allows it to be linked by its short name like other frequently
  used libraries.
- Adjust all Jamfiles referencing the lib accordingly.
2016-01-15 21:12:24 -05:00
mshlyn
e3724c38cb PPP: Port to the new stack.
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

This is a squash of the 42 commits by @mshlyn, as I couldn't find a
way to break them into logical chunks. I did not include these in the build,
as it appears that they only partially work anyway, and much more cleanup is
still needed. However, this is a huge improvement on what was in the tree
before, which looked horrendous and didn't even compile (as it was designed
for the old stack).

Mostly fixes #812.
2016-01-02 07:22:13 -05:00
Jérôme Duval
81768f44e7 XHCI USB: include in the Haiku package, only enabled two devices
for now.
2015-11-14 19:37:59 +01:00
François Revol
038621114e Add FAT addon for DriveSetup
Tested with a 5MB image, seems to work.

There seems to be an issue with too long names though, or possibly names with spaces.

Also, technically it supports FAT12,16 and 32, so it should probably be renamed
in the interface.

Didn't check how to declare support for more than 1 partition types either.
2015-11-11 14:41:51 +01:00
Humdinger
d500273dd1 Fixed typo for German user guide package. 2015-10-26 17:29:45 +01:00
Humdinger
7c088080ec Split the big userguide package into one per language.
Splitting the almost 70 MiB userguide package into one package per
language at ~4.5 MiB saves time and space when installing/updating.

At the online tool that manages the user guide pages, we have to
make changes to fall back to the online page if you try to switch
to a language you haven't installed locally. See #9322.
2015-10-25 10:20:51 +01:00
Jérôme Duval
e02111ea5d HaikuBootstrap: launch bootstrap_daemon.py on boot.
* removed screen_saver and shortcut_catcher input addons, they need libgame or libGL.
2015-10-21 19:14:15 +02:00
Axel Dörfler
d2eca26b73 Moved per user post install actions to first-login script.
* The same mechanism (and the same PostInstallScript) is used for this.
* If a file first_login exists in ~/config/settings/boot, the first-login
  scripts are launched, and the file removed.
* This fixes adding the deskbar tray icons even when there is no Deskbar
  running yet (for example on first boot when the FirstBootPrompt
  starts), or, IOW bug #12275.
2015-10-19 21:27:02 +02:00
Jérôme Duval
9939ccadff HaikuBootstrap: also include launch scripts.
* fix ncurses package name for bootstrap build profile.
2015-10-19 19:40:08 +02:00
Michael Lotz
f474606ee9 libroot_debug: Merge guarded heap into libroot_debug.
The individual debug heap implementations are now exposed via a
structure of function pointers and a common frontend dispatches the
malloc and malloc_debug APIs through them.

The MALLOC_DEBUG environment variable can be used to select the guarded
heap by adding 'g', otherwise the debug heap is used as the default.
Consequently the separate libroot_guarded is not needed anymore and has
been removed.

To allow the use of environment variables this early, init_env_post_heap
has been added and the heap dependent atfork() moved there. This allowed
to fold the code of init_heap_post_env into init_heap so the former has
been removed.
2015-08-13 22:12:18 +02:00
Axel Dörfler
3108062744 Added PostInstallScript to the image.
* Somehow it didn't make it.
* This fixes the last part of #12227.
2015-07-24 19:45:38 +02:00
Axel Dörfler
5e541a6042 launch_daemon: Added /system/data/user_launch directory.
* This directory is for services that are launched per user (in a user
  context), but installed globally.
* This is now used for the default "user" configuration; before this was
  put into ~/config/non-packaged/data/launch, which didn't really fit,
  and has the huge disadvantage that it cannot be updated.
* Fixes part of #12227.
2015-07-24 17:25:13 +02:00
Axel Dörfler
65ed8a5e87 Added post-install script, and start UserBootscript again.
* This is the final missing piece of the former boot process.
* Removed the unused Bootscript, and Bootscript.cd files.
2015-07-22 20:45:43 +02:00
Axel Dörfler
89168ad8b9 Boot the system via launch_daemon.
* This is actually working already, although we cannot reproduce all
  the features of the former Bootscript yet. This is without any
  dependency support in launch_daemon.
* All shell activity like cleaning out /tmp, setting up the environment,
  setting the time, etc. is not yet working.
2015-07-22 20:40:33 +02:00
Adrien Destugues
60295ba1f7 Move ports and protocols files back to data directory in Haiku package.
These files are required for netresolv functionality, and there is no
real use in modifying them as settings files. Restore the previous
behavior, the files are stored in data and part of the Haiku package.

This means there is no need for a fresh install from image to get the
files anymore.

Fixes #12156.
2015-06-20 11:52:13 +02:00
Jérôme Duval
1f56c11b79 gzip: use the outsourced packages.
* remove gzip Jamfile from the build and gzip sources from the tree.
2015-06-10 11:26:51 +02:00
haiqu
b4c466459f Update Huawei in usb_modeswitch
Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2015-05-12 20:16:31 +02:00
Murai Takashi
744ab983f3 Add add-ons/input_server/method directory to image.
Add empty directory to image so that we can install input method add-ons
without restart.

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2015-04-30 21:52:10 +02:00
Michael Lotz
827f11e986 Whitespace cleanup only. 2015-04-11 13:37:28 +02:00
Michael Lotz
6900f36727 Add leak_analyser shell script to analyse guarded heap info.
The script runs the guarded heap allocation output through c++filt to
demangle stack trace symbols and filters out a list of known globals
that are never freed. It also allows to exclude further patterns
provided on the command line.
2015-04-11 09:41:25 +02:00
Michael Lotz
0cf3d62115 Make guarded heap accessible through its own libroot_guarded.so.
This adds libroot_guarded.so to the HaikuDevel package. It is the same
as libroot_debug with the debug heap swapped out for the guarded heap.
The guarded heap has some useful features that make it desirable to use
while having the disadvantage of a large memory and address space
overhead which make it unusable in some situations. Therefore the
guarded heap cannot simply replace the debug heap but should still be
made available. As the heap init needs to happen even before having
environment variables, the heap to use can not be chosen dynamically.
Exposing them through their own libraries is the next best thing.
2015-04-11 09:41:25 +02:00
Axel Dörfler
c733458294 Removed old, and unused Netscript. 2015-04-02 13:25:49 +02:00
Michael Lotz
ffba66060b UserlandFS: Make 64 bit clean and enable build for x86_64.
I did not bother to fix the BeOS kernel emulation, so this part is
still left out of the x86_64 build.
2015-03-29 16:25:17 +02:00
Axel Dörfler
5f03af766a Added new network settings add-ons to the image.
Conflicts:
	build/jam/packages/Haiku
2015-03-27 13:25:32 +01:00
Axel Dörfler
a7cb9f5f55 Network: WIP of redesign.
* Fletched out new add-on API.
* Moved InterfaceListItem from the interfaces add-on into the
  application.
* Renamed NetworkSetup* to Network* respectively NetworkSettings*.
2015-03-27 13:08:29 +01:00
Jérôme Duval
85e5aa30b1 Add packages for unzip and use them.
* remove unzip Jamfile from the build, <build>unzip stays with us.
* clean up image and package definitions.
* added unzip in regular builds.
2015-02-26 19:21:04 +01:00
Axel Dörfler
10203293d1 Removed minimize_all again from the image.
* It's not only broken conceptionally, but also it's implementation
  is: it unconditionally filters all ctrl-cmd(-shift) key combinations.
* Since it's functionality should be implemented differently in the
  first place, it should be removed completely, though.
2015-02-02 22:13:49 +01:00
John Scipione
a0c8352718 Add input server filters
... for switching workspaces (removed from BWindow) and
minimize all (aka Show Desktop).

This moves the workspace switch behavior out of the BWindow class
and places it into it's own input server filter that does the same
thing. The difference is that you may now uninstall the workspace
switching filter to disable the behavior. These shortcuts were not
included in the BeOS R5 version of BWindow so represent additional
behavior added to Haiku.

minimize_all (aka Show Desktop) is a new input server filter that
allows you to minimize all windows by pressing cmd+ctrl+D. If
you do not like this behavior you may uninstall the minimize_all
input server filter.
2015-01-26 18:25:27 -05:00
Jérôme Duval
b9962ceac2 IMAP,POP3,NewMailNotification: fixed x86_64 build.
* Notifier::HeaderFetched(): fixed the method signature (go figure how it could
build on x86).
* POP3: fSizes type is now std::vector<size_t> instead of BList. Please review.
off_t might be a better choice.
* added the mail_daemon add-ons to the Haiku package again.
2015-01-08 22:31:43 +01:00
Rene Gollent
67d5656fab Fix x86,x86_64 build.
For the time being, exclude the new mail_daemon add-ons from the image,
as they break both the x86 and x86_64 builds by failing to compile in a
variety of ways.
2015-01-07 18:25:48 -05:00
Adrien Destugues
83b1a68c52 Move NetFS to a package
This is based on Jalopeura's patch to #10191, however, there are some
changes.
From the patch:
* Make userlandfs use separate "interface definition" files for each
filesystem, so the netfs package can provide a configuration file
* Add a short document on how to use NetFS
* Various fixes to netfs to make it build again (volatile atomics)
* The netfs_mount script for easier use of NetFS

Additional fixes:
* Move netfs_mount and the interface description file to data/ in the
source tree
* Use strlcat instead of strcat to avoid a buffer overflow
* Some parts were already applied in previous commits
2014-11-17 15:24:07 +01:00
Adrien Destugues
44f82a7875 Add a package for UserlandFS.
Fixes #10192.
2014-11-17 10:28:59 +01:00
Adrien Destugues
0302849860 Remove some unneeded file and partitionning systems
* googlefs: not working, needs update to match current page layout of
google searches
* Amiga and Apple partitionning systems: made them 68k and ppc-only,
respectively. There is not much use for those on x86 systems.

Also remove kdlhangman from the bootstrap packages.
2014-11-17 09:33:15 +01:00
Adrien Destugues
dff211d8a6 Build media add-ons for secondary arch.
Fixes #10049.
2014-10-31 12:20:52 +01:00
Adrien Destugues
1508dc5c41 network prefs: fix jamfiles and include into image.
* There are some rough edges, but the functions from the existing
preflet are all available now.
2014-10-30 15:49:08 +01:00
Rene Gollent
a12b88a87d Remove canna reference to fix build. (#11186). 2014-10-18 12:03:58 -04:00
Adrien Destugues
bbcce443cc Remove more of Canna.
Fixes #11186 for real.
2014-10-18 14:40:43 +02:00
Jérôme Duval
d02e38fb13 moves /bin/sh to bash packages.
* bash is a mandatory package.
2014-10-01 23:48:12 +02:00
Adrien Destugues
03598119a7 libcolumnlistview: hybrid arch build, add to image
* This is a very useful control, and 3rd-party apps should be able to
use it.
* But, there are planned improvements (making a better model/view
interface) which prevents making it part of the stable API yet.
2014-09-28 11:51:03 +02:00
Adrien Destugues
5f8fd4c0db add libshared to the development packages.
* We install the headers for many things that are currently in libshared
(BColumnListView, BCalendarView, etc). So it makes sense to also provide
the lib in an "use at your own risk" way. Only the static library is
included, so apps linking against it should continue running on newer
Haiku versions even if the content of the lib changes.
* 3rd party application developers can now make use of those
experimental features without having to copypaste and fork the sources.
2014-09-26 15:43:00 +02:00
Adrien Destugues
941986f7f4 Add the ALM headers to the haiku_devel package.
We provide the library, so why not also provide the development headers
for it?
2014-09-19 10:26:51 +02:00
Augustin Cavalier
016ef2de8b makefile_engine: fix wording, rewrap, bump version, capitalize name.
* Improve wording, fix spelling errors, rewrap
* Capitalize name
* Adjust templates to match.

Fixes #11158.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2014-09-18 16:29:44 +02:00
Fredrik Holmqvist
8516e6a924 Rename display_controls to display_adapter
ACPI talks about display_adapters, and we will likely have displays
as child nodes. Displays will be attached to an adapter.
2014-09-07 19:02:06 +02:00
François Revol
474174f6f3 pc_serial: add to haiku package. It's working \o/ 2014-08-29 15:21:44 +02:00
Oliver Tappe
e29a6c4cd4 Introduce stage0 into the bootstrap process.
* This stage builds the gcc packages to get the shared syslibs, which
  only requires the Haiku glue code.
* Add separate declaration section for stage0 packages to
  HaikuPortsCross repository files.
* For the bootstrap_stage0 platform, fall back to the gcc headers
  provided by the cross-compiler.
2014-08-13 13:34:26 +02:00
Oliver Tappe
220d040227 Use libstdc++, libsupc++ and libgcc from gcc_syslibs.
* Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so
  from the gcc_syslibs build feature for everything except x86_gcc2.
* Use libgcc_s.so from the gcc_syslibs build feature for everything but
  x86_gcc2 (which still carries libgcc as part of libroot.so).
* Drop filtering of libgcc objects for libroot, as that is no longer
  necessary since we're only using libgcc-as-single-object for libroot
  with x86_gcc2, where the filtered object file doesn't exist. Should
  the objects that used to be filtered cause any problems as part of
  libgcc_s.so, we can always filter them as part of the gcc build.
* Use libsupc++.so from the gcc_syslibs build feature for everything but
  x86_gcc2.
* Adjust all Jamfiles accordingly.
* Deactivate building of faked libstdc++.so for non-x86-gcc2. For
  x86_gcc2, we still build libstdc++.so from the sources in the Haiku
  source tree as part of the Haiku build .
* Put gcc_syslibs package onto the image, when needed.
2014-08-13 13:32:44 +02:00
Oliver Tappe
938bf9fad2 Add more missing 'local's to variable declarations. 2014-08-13 13:32:43 +02:00
Jérôme Duval
74e1a530f8 Revert unrelated part of 17aa359b5d. 2014-07-11 22:23:21 +02:00
Akshay Jaggi
17aa359b5d XHCI USB: Fixes.
* Add support for hubs in AllocateDevice().
* Prevent page fault in FinishTransfers().
* Set fCapabilityLength
* Correct in BIOS ownership code
* Fix context errors in _InsertEndpointForPipe().
* Update constants according to latest Specification (v1.1)
* Fix SMI code (reference
http://lkml.iu.edu/hypermail/linux/kernel/1204.2/02460.html).
* Fix Memory/Device-Slot leaks.
* Fix area allocation for TRBs.
* Fix for Intel Lynx Point and Panther Point chipsets. Also move init
of xhci before ehci, to switch USB 2.0 ports before the ehci module
discovers them.

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2014-07-11 22:14:05 +02:00
Jérôme Duval
1db8c51081 HaikuDevel: remove tiff headers 2014-06-04 07:37:28 +02:00
Jérôme Duval
c73c8e2367 gutenprint: add gutenprint as a mandatory package.
* use the shared library libgutenprint.so
* remove the xml data files from the tree and the Haiku package.
2014-05-10 13:08:35 +02:00
Oliver Tappe
8c54af563c Whitespace cleanup in root and 'build' folder.
* Removed trailing whitespace and empty lines at top of files.
2014-05-01 12:55:41 +02:00
Jérôme Duval
607a620b1c qrencode: use outsourced package
* qrspec.h isn't yet part of the package for some reason.
* removed qrencode from the bootstrap package.
* only include qrencode when the qrencode package is found.
* didn't check qrencode itself, tests welcome.
2014-04-18 18:10:57 +02:00
Adrien Destugues
d71e18fef4 Build media plugins for the secondary arch.
These are used when an app uses BMediaFile/BMediaTrack, which leads to
the plug-ins being instanciated on the application side.

* Fixes one more part of #10049 (media add-ons are still missing).
* Will probably not solve any real-world issue because of #4893.
2014-03-31 15:32:31 +02:00
Oliver Tappe
a8c098a3ba Replace HAIKU_{BOOTSTRAP,MINIMUM}_BUILD with HAIKU_BUILD_TYPE.
* Instead of separate variables, HAIKU_BUILD_TYPE is set to one of
  'bootstrap', 'minimum' or 'regular'.
* Adjust uses of HAIKU_BOOTSTRAP_BUILD accordingly.
2014-03-22 20:24:07 +01:00
Oliver Tappe
ff35d6c18a Refactor definition of Haiku image contents.
* Move actual definitions of respective image contents to files
  underneath build/jam/images/definitions (minimum, bootstrap, regular).
* HaikuImage now only includes the image definitions for the selected
  build profile and adds the Haiku packages.
* Simplified topmost Jamfile to some extent.
* Move definition of DESKBAR_APPLICATIONS and DESKBAR_DESKTOP_APPLETS
  from build/jam/packages/Haiku to the respective image definition file.
* Sort and reformat several lists to make them more readable.
2014-03-16 21:17:22 +01:00
Oliver Tappe
82e975d7d2 Add libnetwork.so to stage1 of bootstrap build. 2014-03-02 21:55:25 +01:00
Jérôme Duval
91e3737dd8 gawk: use the HaikuPorts package.
* left the in-tree version as its libintl is used by gdb.
* added as bootstrap package.
2014-02-25 22:20:32 +01:00
John Scipione
5e96d7d537 Localize keyboard layout names in Keymap preferences 2014-02-21 20:05:26 -05:00
Ingo Weinhold
374cf8c85d Localize keymap names in Keymap preferences 2014-02-20 23:51:38 -05:00
Oliver Tappe
b6bd9f7b46 Fix build problem of haiku-bootstrap package.
* adjust names of Tracker add-ons to match the ones used in the 'Haiku'
  package, otherwise jam complains about not knowing how to build them
2014-02-19 17:17:23 +01:00
Pawel Dziepak
d0f2d8282f Merge branch 'scheduler'
Conflicts:
	build/jam/packages/Haiku
	headers/os/kernel/OS.h
	headers/os/opengl/GLRenderer.h
	headers/private/shared/cpu_type.h
	src/add-ons/kernel/drivers/power/acpi_battery/acpi_battery.h
	src/bin/sysinfo.cpp
	src/bin/top.c
	src/system/kernel/arch/x86/arch_system_info.cpp
	src/system/kernel/port.cpp
2014-01-17 04:06:15 +01:00
Alexander von Gluck IV
eb45d168e1 GL: Remove OpenGL kit, x86 Mesa
* Depend on Mesa packages to provide functionality
2013-12-22 23:36:02 -06:00
Adrien Destugues
edba5ea016 Add icon for Cereal... I mean SerialConnect.
* Icon drawn by Humdinger and myself.
* Also add SerialConnect entry in deskbat applications.
2013-12-21 16:59:24 +01:00
Adrien Destugues
6d9f0064ff Bring the hybrid translators back into the image. 2013-12-03 21:00:14 +01:00
Pawel Dziepak
7db89e8dc3 kernel: Rework cpuidle module
* Create new interface for cpuidle modules (similar to the cpufreq
   interface)
 * Generic cpuidle module is no longer needed
 * Fix and update Intel C-State module
2013-11-25 23:50:27 +01:00
Pawel Dziepak
99a2e56579 drivers: Remove Intel Enhanced SpeedStep driver
In current state this driver is useless anyway. It's not MP safe.
The P-state values stored in hardcoded tables are only for processors
on which we can't use SpeedStep, because of lack of invariant TSC.

Proper driver should get P-states from ACPI, ensure that the CPU offers
invariant TSC and obviouslt be MP safe.
2013-11-22 05:11:03 +01:00
Adrien Destugues
0cb0b65d3e Add the secondary arch version of libroot_debug
Some gristing mixup caused the non-secondary version of the lib to be
added to the non-secondary directory, which is what the main
architecture HaikuDevel is already doing.
2013-11-18 10:59:59 +01:00
Pawel Dziepak
9c0ff0eed1 kernel: Add cpufreq module for Intel P-states
Since Sandy Bridge managing P-states on Intel processors is much easier
and more powerful than when using previous versions of EIST.
2013-10-30 00:55:03 +01:00
Jérôme Duval
1926af4fde acpi_button: migrated to the new driver API.
* HaikuImage: SYSTEM_ADD_ONS_DRIVERS_POWER is now used for new drivers.
2013-10-23 19:07:22 +02:00
Jérôme Duval
5d9aaba22f x86_64: added acpi to the image.
* embedded_controller crashes on x86_64, disabled for now.
* removed the -fno-pic compile option.
* synched HaikuBootstrap package with Haiku package.
2013-10-19 21:46:56 +02:00
Ingo Weinhold
8f83a0f831 Haiku package: Add a data/empty directory
Can be used when a path to a directory is needed that is certainly
emtpy.
2013-10-04 02:19:31 +02:00
Ingo Weinhold
f73f5d4c42 Initial changes to remove /boot/common
* find_directory() and hard-coded paths use /boot/system instead of
  /boot/common.
* The build system creates the writable directories in /boot/system
  instead of /boot/common.
* The build system no longer installs any packages in /boot/common.
2013-10-03 21:52:25 +02:00
Adrien Destugues
37343ca1f6 Remove which command from default image
* This was a script relying on a working /etc/profile, which may not be
there
 * Instead, use GNU which, available as an haikuport recipe
 * Since the command does not seem to be needed for Haiku to run (and
also because I don't know how to do it), GNU which isn't in the default
 install.
 * Typing "which" in a terminal still works, as that uses an alias
defined directly in /etc/profile.
2013-10-01 16:32:21 +02:00
Ingo Weinhold
81291304ad Merge remote-tracking branch 'haiku/master' into package-management
Conflicts:
	build/jam/BuildSetup
	build/jam/HaikuImage
	build/jam/board/sam460ex/BoardSetup
	build/jam/board/verdex/BoardSetup
	data/catalogs/apps/icon-o-matic/fr.catkeys
	src/add-ons/kernel/drivers/audio/hda/hda_codec.cpp
	src/add-ons/kernel/drivers/disk/usb/usb_disk/usb_disk.cpp
	src/apps/debugger/files/FileManager.cpp
	src/apps/debugger/files/FileManager.h
	src/apps/debugger/user_interface/gui/inspector_window/MemoryView.cpp
	src/apps/haiku-depot/MainWindow.cpp
	src/apps/haiku-depot/MainWindow.h
	src/apps/haiku-depot/Model.cpp
	src/apps/haiku-depot/PackageInfo.h
	src/apps/haiku-depot/PackageInfoListener.h
	src/apps/haiku-depot/PackageInfoView.cpp
	src/apps/haiku-depot/PackageInfoView.h
	src/apps/haiku-depot/PackageListView.cpp
	src/apps/haiku-depot/PackageListView.h
	src/system/kernel/arch/arm/arch_timer.cpp
	src/system/libroot/os/arch/arm/atomic.S
	src/tools/translation/bitsinfo/Jamfile
	src/tools/translation/bmpinfo/Jamfile
	src/tools/translation/tgainfo/Jamfile
2013-09-27 01:55:45 +02:00
Rene Gollent
b162bdaf1d Add HaikuDepot to Deskbar menu. 2013-09-18 19:52:11 +02:00
Ingo Weinhold
cf70d345b2 Merge remote-tracking branch 'haiku/master' into package-management
This reverts 8f7f28a7c3 (OpenGL: Upgrade
to
Mesa 9.2).

Conflicts:
	build/jam/BuildFeatures
	build/jam/HaikuImage
	build/jam/OptionalPackages
	build/scripts/build_cross_tools_gcc4
	src/add-ons/opengl/swpipe/Jamfile
	src/apps/diskusage/Jamfile
	src/kits/tracker/ContainerWindow.cpp
	src/kits/tracker/DeskWindow.cpp
	src/kits/tracker/Jamfile
2013-09-13 01:02:28 +02:00
Ingo Weinhold
b57470a217 Remove setgcc 2013-08-12 15:53:50 +02:00
Ingo Weinhold
555b02d345 Add webpositive package to image 2013-08-10 15:06:55 +02:00
Ingo Weinhold
271e9484ed Build secondary architecture Haiku package for regular image
Also add secondary architecture packages to image.
2013-08-10 09:58:11 +02:00
Ingo Weinhold
b4d3e055a9 Add HaikuDevelSecondary package definition
It defines the haiku devel package for a secondary architecture
(haiku_<arch>_devel.hpkg).
2013-08-06 03:32:48 +02:00
Ingo Weinhold
096c687ea3 HaikuDevel: a few simplifications 2013-08-06 03:29:51 +02:00
Ingo Weinhold
db16bcba41 Add package definition HaikuSecondaryBootstrap
A haiku_<arch>.hpkg package is produced for each secondary architecture.
2013-08-06 00:47:51 +02:00
Ingo Weinhold
e9a0ad7c4d Remove SYSTEM_LIBS*_ALIASES build variables 2013-08-05 23:25:09 +02:00
Ingo Weinhold
69c69a7d2a Replace build system vars [PRIVATE_]SYSTEM_LIBS by rules
... HaikuImageGetSystemLibs and HaikuImageGetPrivateSystemLibs.
2013-08-05 23:25:08 +02:00
Ingo Weinhold
833b6688aa cross devel hpkg: use suffix/subdir for secondary arch
* Libraries for a secondary architectures must be placed in a respective
  subdir.
* Add a suffix to the package name when building for a secondary
  architecture. Looks a bit weird
  ("haiku_cross_devel_sysroot_x86_gcc_x86.hpkg"), but is consistent.
2013-08-03 05:26:25 +02:00
Ingo Weinhold
b0944c78b0 More work towards hybrid support
* All packaging architecture dependent variables do now have a
  respective suffix and are set up for each configured packaging
  architecture, save for the kernel and boot loader variables, which
  are still only set up for the primary architecture.
  For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
  and TARGET_LIBSTDC++ are set to the respective values for the primary
  packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
  multiple packaging architectures. Generally the respective targets are
  (additionally) gristed with the packaging architecture. For libraries
  the additional grist is usually omitted for the primary architecture
  (e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
  Jamfiles for targets built only for the primary architecture don't
  need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
  cross devel package as well as for libbe (untested).
2013-08-01 08:54:06 +02:00
Ingo Weinhold
e173a1ec1c Integrate building the HaikuPorts bootstrap packages
* Add configure option --bootstrap which allows specifying the
  haikuporter and HaikuPorts repository paths.
* Add rules for supporting a second repository type. The
  PackageRepository rule is now private and RemotePackageRepository is
  used for remote repositories. The new BootstrapPackageRepository rule
  is for defining a bootstrap repository (there will probably be only
  the HaikuPorts cross repository) whose packages can be built as needed
  via haikuporter.
* Rename DownloadPackage to FetchPackage.
* Define repository HaikuPortsCross.
* HaikuCrossDevel package(s): There are now two sets of packages: A
  "stage1" set with the same content as before and a final set
  additionally containing the libraries libbe, libnetwork, libpackage.
  Those are needed for building the libsolv bootstrap package while for
  building them we need other bootstrap packages (ICU, libz).

This is basically all that's required to build a bootstrap Haiku
completely from sources, with a few caveats:
* There's no ICU bootstrap recipe yet (so one has to cheat and use the
  prebuilt package ATM).
* Probably doesn't work on Haiku yet (tested on Linux only).
* A 32 bit environment must be used (otherwise building the gcc 2
  bootstrap package fails).
* Building with multiple jobs doesn't work yet, since haikuporter uses
  common directories for building different packages and there's no
  explicit serialization yet.
* Haven't tested the resulting image save for booting it. So it probably
  needs a bit more work before it can actually build the final
  HaikuPorts packages.
2013-07-21 04:10:48 +02:00
Ingo Weinhold
33f23ea80f Remove more stuff from the Haiku bootstrap packages/image
Namely GL/Mesa and libtiff.
2013-07-21 03:34:35 +02:00
Ingo Weinhold
21b3820e86 Add libbsd to cross devel package 2013-07-19 15:14:07 +02:00
Ingo Weinhold
ebb857698e Update bootstrap image/package
Should have been part of the recent merge.
2013-07-15 16:34:41 +02:00
Ingo Weinhold
7e78b434f4 Merge remote-tracking branch 'haiku/master' into package-management
Conflicts:
	build/jam/HaikuImage
	build/jam/OptionalPackageDependencies
	build/jam/OptionalPackages
	build/scripts/build_cross_tools_gcc4
	src/add-ons/translators/icns/Jamfile
	src/add-ons/translators/jpeg/Jamfile
2013-07-08 14:01:00 +02:00
Ingo Weinhold
78f4c163d4 Beginnings of support for building a bootstrap Haiku image
Copy:
* packages: Haiku -> HaikuBootstrap
* images: HaikuImage -> HaikuImageBootstrap
... and remove some unncessary content.

Setting the jam variable HAIKU_BOOTSTRAP_BUILD enables using the
bootstrap files.
2013-07-07 13:45:38 +02:00
Ingo Weinhold
26ea70667a Deskbar: use a virtual directory for the user-configurable menu
* Deskbar now uses ~/config/settings/deskbar/menu_entries for its menu,
  falling back to /system/data/deskbar/menu_entries, when the former
  doesn't exist. The latter always exists and is a virtual directory
  merging the deskbar/menu subdirectories of ~/config/settings/ and
  <any installation location>/data/. So, if a package provides a
  deskbar menu symlink, it is added automatically when the package is
  activated. The user can add own menu items by putting stuff into
  ~/config/settings/deskbar/menu/, only use their own organization by
  symlinking it to menu_entries, or do fun stuff by making menu_entries
  a customized virtual directory.
* HaikuImage: No longer create any deskbar menu symlinks in the user's
  settings directory. Instead add them to the Haiku package.
* OptionalPackages: At least for the optional packages that do have
  hpkgs, no longer create deskbar menu symlinks in the user's settings
  directory.
* Move all Deskbar settings files to ~/config/settings/deskbar/ and
  drop the "Deskbar_" prefix.
2013-06-29 14:58:52 +02:00
Ingo Weinhold
e4bd005daf Update jpeg package
* Also make use of new build feature rules.
* Since the hacky long_jump_buffer field has been removed from the
  jpeg_error_mgr struct in the new package, the structure is now
  wrapped in the JPEGTranslator code to achieve the same behavior.
2013-06-14 00:48:11 +02:00
Ingo Weinhold
e9f440fdfd Update libpng package
Also make use of new build feature rules
2013-06-14 00:48:11 +02:00
Ingo Weinhold
29f8805f6c Update freetype package
Also use the new build feature rules
2013-06-14 00:48:10 +02:00
Ingo Weinhold
e97e4b74a0 Update glu and mesa package
Also use the new build feature rules.
2013-06-14 00:48:08 +02:00
Ingo Weinhold
beeaf379b1 HaikuDevel: Fix copying the build feature headers
We have to use actual targets that cause the respective download and
extract the packages. Otherwise the build fails when the packages
haven't been extracted yet.
2013-06-08 00:55:12 +02:00