Commit Graph

2506 Commits

Author SHA1 Message Date
Ingo Weinhold
b83f9b3940 HAIKU_DEFINES: Add __HAIKU_PRIMARY_PACKAGING_ARCH
* It is set to the primary architecture we're building for.
* Remove __HAIKU__. The macro is already defined by the compiler.
2013-11-17 02:09:36 +01:00
Adrien Destugues
e4b939faa4 Change version number for haikuwebkit.
* Overwriting the test package with the final one doesn't work.
2013-11-15 20:23:42 +01:00
Adrien Destugues
cb7df3b1da Update webkit and cmake packages
* Some changes required in WebPositive to store the cookies on disk
2013-11-15 18:39:07 +01:00
Oliver Tappe
da854e342f Update 'jam help' output. 2013-11-15 00:34:01 +01:00
Oliver Tappe
8c040b5b35 Publish updated perl, python, git, mercurial and scons packages.
* perl and python now support vendor-folders for modules and use correct
  (i.e. writable) site-folders
* git, mercurial and scons have been adjusted to put their perl/python
  modules into respective vendor-modules folders
2013-11-14 23:53:02 +01:00
Oliver Tappe
49b970d9c2 Reintroduce jam rule for creating remote repository for testing.
* 'jam build-remote-test-repository' can now be used to create a
  remote repository which will then be used by the build system,
  such that the resulting package set can be tested.
2013-11-14 23:48:56 +01:00
Rene Gollent
ab3b931b14 Add gcc4 BePDF and LibLayout packages.
Contributed by Chris Roberts. Thanks!
2013-11-13 16:38:12 -05:00
Ingo Weinhold
5328a58455 AddNewDriversToHaikuImage rule: Support alwaysUpdate flag
* Support alwaysUpdate flag in AddFilesToContainer.
* Add flags arguments to AddNewDriversTo{Container,HaikuImage} and
  support alwaysUpdate flag.
2013-11-13 01:47:35 +01:00
Matt Madia
1bb144a926 Automatic whitespace cleanup. No functional change. 2013-11-10 17:15:34 -05:00
Humdinger
3c527b719f /boot/home/Desktop/Untitled 2013-11-10 19:15:29 +01:00
Ingo Weinhold
9778589fc7 Set the Haiku image's system dir to non-packaged
Set HAIKU_CONTAINER_SYSTEM_DIR_TOKENS for the Haiku image to "system
non-packaged". All the rules using the variable would put stuff in
directories that will be read-only in the end (and aren't used anymore).
This way they can be used in UserBuildConfig.
2013-11-10 15:43:43 +01:00
Axel Dörfler
a352b43896 Added fstrim command.
Later, there should be a service that runs this from time to time for all
devices that support it.

Conflicts:
	build/jam/HaikuImage
2013-11-07 19:02:53 +01:00
Jérôme Duval
a0fe2facbd x86_64: added wlan drivers to the image. 2013-11-06 13:47:28 +01:00
Ingo Weinhold
24394a9d11 Add findpaths command line tool
It provides the new find_path*() functionality to the shell.
2013-11-05 21:42:24 +01:00
Oliver Tappe
e2e7d9647e Adjust repository files to changed repo URL.
* the repository URL should better define the type of repository (in
  this case: haikuports) and the branch (i.e. release) name.
2013-11-05 21:17:08 +01:00
Jérôme Duval
6e157720e1 only builds fwcontrol for x86 2013-11-04 18:03:37 +01:00
Oliver Tappe
298d500b37 Adjust URLs of HaikuPorts-repositories. 2013-11-04 00:27:45 +01:00
Oliver Tappe
e4bd712d11 Replace jam build-remote-repository with jam upload-packages
* We are moving the HaikuPorts repositories over from haiku-files.org
  to packages.haiku-os.org, and we will be creating new repositories
  during a push hook from now on. As a result, only a small helper for
  uploading new packages into the appropriate upload folder is required.
2013-11-03 23:53:31 +01:00
Rene Gollent
4f157da334 Update Vision package to fix missing app icon. 2013-11-01 22:48:57 -04:00
Ingo Weinhold
577411006e Update requires entries for the packages we build
* Add build tool update_package_requires. Given a package info file and
  a repository cache file, it updates the minimum versions of the
  requires entries of the package info file according to what is
  provided by the repository.
* PreprocessPackageInfo rule: Use update_package_requires (with the
  HaikuPorts repository file).
2013-10-30 02:16:14 +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
Ithamar R. Adema
c157484a81 x86_64: fix bootstrap build error
Without this creating the boot symlink fails for the bootstrap build,
as the actual acpi module has not been added.
2013-10-28 15:54:10 +01:00
Rene Gollent
3fe3603ada Update Vision package. 2013-10-26 19:11:28 -04:00
Jérôme Duval
076952bc29 x86_64: add acpi_battery to the image. 2013-10-24 14:29:51 +02:00
Ingo Weinhold
ef5eccf6b3 Add gcc 4 which package 2013-10-24 00:15:15 +02: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
afaeff4cdf x86_64: added acpi_button
* tested OK!
2013-10-22 18:22:40 +02:00
Adrien Destugues
6c6668ae9e Add friss, sum-it, lha packages
* Also update Caya to provide a deskbar link.
2013-10-21 21:41:34 +02:00
Rene Gollent
72eb88f5c8 Add non-packaged fonts directory to default image. 2013-10-20 16:06:51 -04:00
Rene Gollent
a8a5b7a4a1 Update Vision package. 2013-10-20 16:00:04 -04: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
Adrien Destugues
2ec95f5fd9 Add beam,liblayout,rsync,lua,unrar packages
* Some of these are mine, others provided by augiedoggie.
2013-10-17 11:14:30 +02:00
Adrien Destugues
85e57582d2 Add which, ninja and distcc to x86_gcc2 repo
* Also a fix in cmake ninja code generator to avoid 'command line too
long' failure.
2013-10-14 20:17:49 +02:00
François Revol
39d26e3cdb Set HAIKU_TARGET_IS_EXECUTABLE in KernelLd as well
The kernel also needs to be stripped for m68k.

Propagate it to the revisioned binary as well.
2013-10-12 18:42:57 +02:00
Ingo Weinhold
e29f08c37c Strip executables on m68k boot floppy image 2013-10-12 17:24:26 +02:00
Ingo Weinhold
3010e4f4ea AddFilesToContainer: Strip executables, if requested
Variable HAIKU_CONTAINER_STRIP_EXECUTABLES can be set on the container
to trigger that.
2013-10-12 17:23:56 +02:00
Ingo Weinhold
af2e206845 rule Link: Set HAIKU_TARGET_IS_EXECUTABLE on target 2013-10-12 17:22:16 +02:00
Ingo Weinhold
3162883efd Add rules StripFile[s] 2013-10-12 17:21:49 +02:00
Ingo Weinhold
19f94028f6 Revert "Allow stripping binaries when copying to image containers"
This reverts commit d6de84de66.
2013-10-12 16:01:02 +02:00
Ingo Weinhold
7879928fb2 Revert "Enable stripping binaries in m68k boot floppy"
This reverts commit e986f5fce9.
2013-10-12 16:00:21 +02:00
Ingo Weinhold
cc5c6133d2 Revert "Rework stripping binaries when copying to containers"
This reverts commit e2332987bc.
2013-10-12 16:00:02 +02:00
Ingo Weinhold
d05822f18b Revert "Preserve resources and attributes when copying stripped binaries"
This reverts commit a427aa2f4a.
2013-10-12 15:59:19 +02:00
François Revol
a427aa2f4a Preserve resources and attributes when copying stripped binaries
When asked to strip binaries when copying to containers we now
strip to a temporary file, copy over resources to it, copy it
to the container, then copy the attributes from the original
source.

This should allow stripping binaries while preserving attributes
and resources even when copying to images.
2013-10-12 02:37:20 +02:00
François Revol
e2332987bc Rework stripping binaries when copying to containers
We now only attempt to strip binaries, by detecting the
LINKFLAGS variable on the targets.

CopySetHaikuRevision now also forwards LINKFLAGS
to revisioned binaries.

Introduce separate AppendToContainerCopyFilesScriptStripFile actions
which are used for copying and stripping, and avoids many useless
shell tests.

When asked to strip binaries, they are detected and handled
individually for simplicity.

Note we still don't keep resources and attributes when stripping.
2013-10-12 01:41:46 +02:00
François Revol
e986f5fce9 Enable stripping binaries in m68k boot floppy
This makes it fit again.

We can't reference in BuildSetup a variable set with the other
ones in KernelArchitectureSetup since the rule is invoked later.
2013-10-11 23:30:57 +02:00
Oliver Tappe
56434332b1 Make some values of default build profiles overridable.
* Defining things like HAIKU_ROOT_USER_NAME in UserBuildConfig now 
  has an effect on the image again.
2013-10-10 23:45:55 +02:00
Ingo Weinhold
40b9ac787c Bootstrap image haikuports.config: Comment out PACKAGER
The developer building the packages should enter their own address
instead. I just noticed that a lot of the HaikuPorts package have a
packager attribute with the dummy address "The Haiku build system
<build-system@haiku-os.org>" due to the previous default value.
2013-10-10 23:19:48 +02:00
Ingo Weinhold
97d30f2cfb Encode the hrev revision into the package versions 2013-10-10 21:38:07 +02:00
Ingo Weinhold
04d9b3e89c CopySetHaikuRevision: Pull out rule DetermineHaikuRevision 2013-10-10 21:37:27 +02:00
Adrien Destugues
1b14a4e30b HaikuPorts repo: also add source packages. 2013-10-10 16:47:34 +02:00
Adrien Destugues
161bd06777 Add HaikuPorts packages to help with WebKit development
* Required: libxslt, fixed libxml2 and sqlite3
 * Extras: Caya, vim, and updated cmake
2013-10-10 14:46:03 +02:00
Ingo Weinhold
111e76b755 Properly canonically name the boot loader package 2013-10-10 00:40:10 +02:00
François Revol
d6de84de66 Allow stripping binaries when copying to image containers
Currently only needed for boot floppy on some platforms.

Disabled for now.

Note we do not have a mean of knowing which file is a binary
or not so we just try to strip, and silently continue when
strip fails (like on the kernel settings file).

Also note strip actually replaces the file, which means it looses
both the resources and attributes, which shouldn't be a problem
for the boot floppy drivers archive, but is not wanted for other
images, so it's not usable elsewhere as such. Patch wanted.
2013-10-09 22:04:36 +02:00
Ingo Weinhold
a27d687e2a Name the generated HPKG files properly
* rule AddPackageFilesToHaikuImage: Add "flags" parameter. The only
  supported flag is "nameFromMetaInfo". It causes the packages to be
  copied under their canonical file name onto the image.
* Use the new flag for all generated packages save haiku_loader.hpkg.
2013-10-09 03:48:26 +02:00
Ingo Weinhold
40c9cb7b47 rule AddFilesToContainer: Support naming files later
* Add "flags" parameter and only supported flag "computeName". When
  specified the "destName" argument is the name of a shell command
  or function that will be called to determine the destination file
  name when the container is built.
* AddFilesToHaikuImage: Pass flags to AddFilesToContainer.
2013-10-09 03:48:25 +02:00
François Revol
4d5508263e libroot: Properly fix linking with libgcc without cmdline overflow
Instead of listing all the objects we want from the libgcc archive
we just make a copy of it and remove those we don't want, and link
to it.

This should allow returning MAXLINE in jam to a sane value.
2013-10-08 23:34:57 +02:00
Ingo Weinhold
897d5af7ff Don't code the Haiku version into all the package infos 2013-10-06 01:37:13 +02:00
Ingo Weinhold
cb434e1a2b Also add repository cache files to image
This makes package management operations that require a repository cache
immediately usable (even offline). Also makes sense for the
update-{all,packages} build profile actions, since those update the
repository config which would otherwise no longer match a potentially
existing cache.
2013-10-05 22:49:49 +02:00
Ingo Weinhold
049874acda update-{all,packages} build action: Update repository config 2013-10-05 22:49:49 +02:00
Ingo Weinhold
50ffb21291 update-{all,packages} build profile action: empty packages dir
... before copying the new contents to the image. This caters to the
typical use case of updating an existing Haiku, making manual
intervention to get the new packages activated unnecessary. The downside
is that manually added packages will be removed as well.
2013-10-05 22:49:48 +02:00
Ingo Weinhold
7076d5bb2b Fix update-all build profile action
The same disclaimer as before package management applies (i.e. voids
warranty, use at your own risk).
2013-10-05 22:49:48 +02:00
Rene Gollent
bcb9521c0e Update Vision package to r946. 2013-10-05 14:01:37 -04: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
dfd6a5c973 Make the "build" build profile action more intelligent
If additional parameters are specified, only those targets are built,
but under the influence of the build profile. E.g. "jam @alpha-raw build
haiku.hpkg" builds the package with SSL support, while "jam haiku.hpkg"
would build it without (unless explicitly enabled in UserBuildConfig).
2013-10-04 00:20:53 +02:00
Ingo Weinhold
efd7a43c66 HaikuPortCross repository: Update libsolv version 2013-10-03 23:01:13 +02:00
Ingo Weinhold
f6616e03c3 Update packages that hard-coded references to /boot/common
There are a few more (like gcc still including there respective search
paths), but those should be harmless and can be adjusted later.
2013-10-03 21:55:25 +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
Jérôme Duval
4d07fb53d0 added a check for HOST_EXTENDED_REGEX_SED presence 2013-10-01 19:48:55 +02:00
Pawel Dziepak
c48c3f88a9 build: Reenable debug mode for tarfs 2013-10-01 19:32:51 +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
François Revol
4135f9cde3 Fix build
Declare a HOST_PTHREAD_LINKFLAGS variable to hold the flags
required to link with pthreads, and use it for the solver addon.

Works on GNU/Linux, please test and fix for other platforms.
2013-10-01 02:37:54 +02:00
Oliver Tappe
bbecca8c24 Update libsolv and zlib packages for consolidation.
* only the source package are actually relevant, as the source paths
  within older versions of those source packages no longer match the
  expectations of the build system
2013-10-01 01:00:03 +02:00
Oliver Tappe
ec5bf7bdf8 Adjust paths in source packages to what haikuporter produces. 2013-10-01 01:00:02 +02:00
Niels Sascha Reedijk
f04f7042c5 Determine how to invoke sed with extended regexp
This will require re-running configure
2013-09-30 21:41:54 +02:00
François Revol
58c82e4fb7 Make sure the boot driver tgz doesn't overflow the boot floppy
At least on 68k it does. Seems to be ok on x86, for now...
2013-09-30 04:38:50 +02:00
François Revol
f7d6c2f8e5 M68K: Switch to new gcc options for specifying cpu
Latest gcc converts the old ones to the new ones anyway...
including when passing to gas, which of course is not new enough,
so we have to also force gcc to pass the old one around in one case.
2013-09-30 04:02:21 +02:00
François Revol
ddb1aa7353 revert 787843b
Restore the Clean action as "together".

Jam splits the args according to MAXLINE, which was too large.
2013-09-30 04:02:20 +02:00
Rene Gollent
a11cd14453 Cleanups. 2013-09-29 20:55:54 -04:00
François Revol
b019bb2f4f Add definitions for M68K repositories and package infos 2013-09-30 02:35:28 +02:00
François Revol
787843b286 Drop the together keyword on the Clean action
Since the PM merge we now have way too many targets,
here jam clean just fails in execve() due to too long arguments.

jam clean is now very verbose but at least it works.

Another option could be to override the Clean rule itself
to clean in batch by splitting the list...
Patches welcome.
2013-09-30 02:26:12 +02:00
Rene Gollent
6114dd1fc2 Clean up FreeBSD build support as suggested by Ingo. 2013-09-29 19:50:00 -04:00
François Revol
55cc9f852a Add definitions for PPC repositories and package infos 2013-09-30 01:29:03 +02:00
Rene Gollent
9549402d30 Add libcurl build feature. 2013-09-29 17:25:29 -04:00
François Revol
396fc0b0eb Add definitions for ARM repositories and package infos 2013-09-29 03:43:02 +02:00
François Revol
4d65f429d0 Fix bashisms
Besides, at least one test was probably incorrect,
trying to match /* with a single = in [[.
2013-09-29 03:01:39 +02:00
Ingo Weinhold
a106b5224c x86: Update pe, add missing libpcre_devel packages 2013-09-28 20:16:54 +02:00
Ingo Weinhold
ef6f476892 Remove build/jam/HaikuImage
Apparently accidentally reintroduced with the merge.
2013-09-28 15:42:37 +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
Ingo Weinhold
acc6f8326a Update x86 openssh and perl packages, add libedit_devel 2013-09-19 23:52:15 +02:00
Oliver Tappe
50792d1199 Update openssh and perl for x86_gcc2. 2013-09-19 12:23:36 +02:00
Ithamar R. Adema
124830be8d ARM: FDT: add DTS[I] files for the first couple of targets.
Both for the rPI and the Verdex target we now have FDTs. The verdex
DTS is homebrew, the pxa DTSIs come from Linux and should be kept
in sync.

The rPI DTS and Broadcom DTSI come from FreeBSD HEAD, and should
ofcourse also be kept in sync.

One global new Jam rule has been introduced for handling DTS
compilation, aptly named CompileDTS....

More coming!
2013-09-19 01:25:44 +02:00
Rene Gollent
b162bdaf1d Add HaikuDepot to Deskbar menu. 2013-09-18 19:52:11 +02:00
Rene Gollent
c6a952d706 Add HaikuDepot to image. 2013-09-18 18:45:10 +02:00
Ingo Weinhold
519bb60aef Add group{add,del,mod} 2013-09-18 16:33:19 +02:00
Ingo Weinhold
dc3be29614 Enable -Werror in src/bin/multiuser 2013-09-18 16:33:18 +02:00
Ingo Weinhold
e9d9ac713f Add userdel 2013-09-18 16:33:17 +02:00
Ingo Weinhold
53b162523f Fix host-only build. 2013-09-18 15:41:12 +02:00
Ithamar R. Adema
7416b5878f ARM: verdex: Make sure __XSCALE__ is defined when compiling.
This is especially important for the assembler code in the kernel,
since it enables workarounds for some critical errata related to
exception handling.
2013-09-18 06:34:40 +02:00
Ithamar R. Adema
cc65466f0d ARM: kernel: Make KDL more useful on ARM
This adds the -mapcs-frame compiler flag for ARM to have "stable"
stack frames, adds support to the kernel for dumping stack crawls,
and initial support for iframes. There' much more functionality
to unlock in KDL, but this makes debugging already a lot more
comfortable.....
2013-09-17 23:04:59 +02:00
Rene Gollent
eeebe2843a Manually merge 1410faca6c. 2013-09-17 14:42:08 +02:00
François Revol
228524afb6 Merge branch 'master' into sam460ex 2013-09-17 13:22:26 +02:00
Jerome Duval
1410faca6c x86_64: added agp_gart, intel_gart, intel_extreme to the image.
* tested on Intel GM45 and Atom_N4x0
2013-09-16 14:50:43 +02:00
Oliver Tappe
af8587ce40 Added new jam command 'build-remote-repository'.
* build-remote-repository <packages> uploads the given set of packages
  to the server and builds the remote repository
2013-09-14 19:51:09 +02:00
Oliver Tappe
8f3f0ee615 Added next version of Pe for x86_64. 2013-09-14 19:48:49 +02:00
Oliver Tappe
689cebd222 Add version of Pe working on x86_64 2013-09-14 15:52:20 +02:00
François Revol
c14bca2958 Merge branch 'master' into sam460ex 2013-09-14 01:16:51 +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
f11d742feb HaikuCD: Support package resolution 2013-09-13 00:06:21 +02:00
Ingo Weinhold
76cd5b091e Move stuff from HaikuImageCommon to new rule
... AddPackagesAndRepositoryVariablesToContainerScript.
2013-09-13 00:06:21 +02:00
Ingo Weinhold
b0d7a45c3d FloppyBootImage: Add packagefs 2013-09-13 00:06:20 +02:00
Ingo Weinhold
dee358f0ec AddBootModuleSymlinksToContainer: Fix symlink target
The symlink was only correct, if the container was a package. For
containers with a non-empty path to the system directory the link would
duplicate the system directory path.
2013-09-13 00:06:20 +02:00
Oliver Tappe
b3eaedd14a Add missing packages for x86_64 to repository.
* the Pe package doesn't work (Pe won't start), I'm still
  investigating as to why that is
2013-09-12 14:34:47 +02:00
Oliver Tappe
a4b13eda69 Increase size of bootstrap image to 20 GB. 2013-09-07 15:25:55 +02:00
Oliver Tappe
797c1a7590 Update x64_64 to current state of things. 2013-09-07 15:25:15 +02:00
Oliver Tappe
818ed1eaf0 Remove blocks for secondary packages for x86_64. 2013-09-06 17:21:35 +02:00
Oliver Tappe
fb99605f49 Handle rigged source packages when determining port name.
* I'm not sure this makes much of a difference, but I thought it's 
  better to play it safe.
2013-09-02 12:03:06 +02:00
Oliver Tappe
d1246f33f0 Drop use of non-existing variable in KernelAddon rule.
* TARGET_KERNEL_PIC_FLAGS was probably meant to be 
  TARGET_KERNEL_PIC_CCFLAGS at the time this had been added in 2005.
  As correcting the name would mean that kernel add-ons would be 
  compiled such that they wouldn't be position independent, dropping
  the variable makes more sense (which is just a cleanup and doesn't 
  change anything due to that variable being always empty)
2013-08-29 22:44:50 +02:00
Jérôme Duval
86af5f159b VirtioRNG: add to the image 2013-08-29 18:47:48 +02:00
Alexander von Gluck IV
8f7f28a7c3 OpenGL: Upgrade to Mesa 9.2
* The needed LLVM libraries are now within
  the Mesa optional build package.
* The swpipe renderer needs some work still
  and will likey change, swrast is fully
  functional.
2013-08-28 16:18:44 -05:00
Ingo Weinhold
86297ca0ff actions DownloadLocatedFile: fail, if wget fails 2013-08-28 01:07:17 +02:00
Ingo Weinhold
106d4015f2 rule ArchitectureSetup: Remove superfluous arch macro definition
The macro for the architecture is already defined by the compiler.
2013-08-28 00:46:12 +02:00
Ingo Weinhold
3db97b7688 Enable -Werror for package_repo and pkgman 2013-08-28 00:36:28 +02:00
Oliver Tappe
eb658691e9 Add definitions for x86_64 repositories and package infos. 2013-08-27 23:30:23 +02:00
Oliver Tappe
1af14947fd Add missing case for x86_64 as host CPU architecture. 2013-08-27 23:30:23 +02:00
Jérôme Duval
98b4807f88 random: convert to the new driver API
* also move to a bus manager, we can then attach to the root device.
* updated copyright info.
2013-08-27 20:28:55 +02:00
Ingo Weinhold
a1e681690c Rework rule CopySetHaikuRevision
* Remove support for VCSs other than git.
* Make the haiku-revision file a regular build target and make sure it
  is built only once.
* Make determine_haiku_revision an actual shell script and simplify
  it a bit.
2013-08-26 16:38:50 +02:00
Ingo Weinhold
e64db4da44 Also mount the packagefs at ~/config 2013-08-25 18:23:11 +02:00
Ingo Weinhold
abf4b0f6a0 HaikuPorts/x86: add some missing source packages 2013-08-23 13:31:51 +02:00
Ingo Weinhold
82655a5188 HaikuPorts/x86[_gcc2]: update gcc packages 2013-08-22 17:58:42 +02:00
Ingo Weinhold
648a97f716 HaikuPortsCross: update gcc package versions 2013-08-22 15:49:34 +02:00
Ingo Weinhold
b35337eb1e Add repositories for x86
Almost complete. bepdf is still missing, since it doesn't build with gcc
4 and a few source packages are missing as well (binutils and gcc
because haikuporter doesn't build them correctly ATM, mesa due to an
oversight).
2013-08-21 16:45:48 +02:00
Oliver Tappe
4ddd2c75dc Don't try to build xz_utils for a mere gcc2 system. 2013-08-21 16:30:39 +02:00
Ingo Weinhold
77b9f01f9b Add a few standard build tools to the Development meta package 2013-08-17 09:21:06 +02:00
Ingo Weinhold
24796718b9 Bootstrap Haiku image: add source for more required packages
* Introduce build variable HAIKU_IMAGE_ADDITIONAL_PACKAGES which can be
  set to add additional packages to the image.
* Use HAIKU_IMAGE_ADDITIONAL_PACKAGES to support specifying a list of
  additional packages via the build-package-list build profile action.
* Add htmldoc and texi2html when building the list of the packages for
  which we need source packages when building the bootstrap Haiku image.
  We don't want them on the regular image, but they are needed to build
  some packages that are on it.
2013-08-17 09:20:35 +02:00
Ingo Weinhold
13f2fbbd9e Add build variable HAIKU_PORTER_CONCURRENT_JOBS
It can be set to the number of jobs specified on the haikuporter
command line. Speeds up the bootstrap build quite a bit.
2013-08-17 09:12:45 +02:00
Ingo Weinhold
f73d05a79b HaikuPorts/x86_gcc2: Update git packages 2013-08-14 10:14:16 +02:00
Ingo Weinhold
86233b1067 HaikuPorts: update several packages
... and add some missing devel packages.
2013-08-13 14:20:42 +02:00
Oliver Tappe
4c6b3efc91 Increase size of bootstrap image to 4 GB.
* 1 GB isn't enough to build the basic set
2013-08-12 21:50:13 +02:00
Ingo Weinhold
f56958c140 Add development packages for the secondary architecture 2013-08-12 17:23:20 +02:00
Ingo Weinhold
4e822fec6f HaikuPorts/x86_gcc2: Update gcc and binutils
Also add secondary architecture packages.
2013-08-12 17:20:36 +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
1c9bc20646 BuildFeatures: re-add webkit build feature 2013-08-10 15:05:51 +02:00
Ingo Weinhold
2910d9a7e0 PreprocessPackageInfo: add substitution
... HAIKU_SECONDARY_PACKAGING_ARCH_SUFFIX. It's "_<arch>" for a
secondary architecture and "" for the primary one.
2013-08-10 15:04:48 +02:00
Ingo Weinhold
4f57a2bd1a DefineDefaultBuildProfiles: simplify things a bit 2013-08-10 15:03:49 +02:00
Ingo Weinhold
39f7d0075d HaikuPorts/x86_gcc2: add haikuwebkit and xz_utils 2013-08-10 15:03:14 +02:00
Ingo Weinhold
dd0bd440d5 BuildFeatures: print the packaging arch in error messages 2013-08-10 15:02:02 +02:00
Ingo Weinhold
00b8bfde15 EnableBuildFeatures: deal with duplicate invocations 2013-08-10 14:58:21 +02:00
Ingo Weinhold
a94f6aab7b Image rules: filter packages list via FFilterByBuildFeatures
AddPackageFilesToHaikuImage, AddHaikuImagePackages: For convenience
filter the given package file/package list through
FFilterByBuildFeatures.
2013-08-10 14:55:29 +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
393c223bcf HaikuPorts/x86_gcc2: add x86 packages, add/update packages 2013-08-10 09:54:42 +02:00
Ingo Weinhold
47fd9e6dc6 rule AddLibrariesToContainer: fix for gristed libraries 2013-08-10 09:52:10 +02:00
Philippe Houdoin
f1cc99789b Add PatchBay to default image's demos 2013-08-08 22:45:20 +02:00
Oliver Tappe
f81fbb0b59 Adjust to renamed option of haikuporter. 2013-08-07 13:42:16 +02:00
Ingo Weinhold
c965ee60b5 bootstrap image: build needed source packages and add them
* IsPackageAvailable, FetchPackage: Add flags parameter. The only
  flag supported ATM is nameResolved, indicating that the specified
  package name does not need to be resolved with respect to a secondary
  architecture anymore.
* Add build profile action "build-package-list". As an argument the
  file to which the list of all packages needed for the image is
  written. The rule BuildHaikuImagePackageList implements the action.
* BuildBootstrapRepositoryConfig: Does now require the variable
  HAIKU_REPOSITORY_TREE_PATH to be set on the config file target instead
  of hard-coding the path. Allows reuse of the actions.
* Add rules BuildHaikuPortsSourcePackageDirectory and
  BuildHaikuPortsRepositoryConfig. The former builds all HaikuPorts
  source packages needed to build the packages for an alpha image. The
  latter generates a haikuports.conf file for use on the bootstrap
  Haiku.
* HaikuImageBootstrap: Add directory /boot/home/haikuports which
  contains a subdirectory with the source packages and a
  haikuports.conf.
2013-08-06 23:02:10 +02:00
Ingo Weinhold
384230184e Filter package infos through sed
%HAIKU_PACKAGING_ARCH% and %HAIKU_SECONDARY_PACKAGING_ARCH% in the
package infos are replaced before filtering them through the C
preprocessor.
2013-08-06 04:11:44 +02:00
Ingo Weinhold
d1251475e2 Add the missing secondary arch bootstrap packages
The Haiku bootstrap image is now built with (hopefully) all required
primary and secondary architecture packages. The runtime loader is still
resisting our wish to run secondary architecture programs, though.
2013-08-06 03:37:45 +02:00
Ingo Weinhold
cade865dde Add secondary arch haiku [devel] packages to image 2013-08-06 03:33:36 +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
85eed25cdd AddHaikuImagePackages/IsHaikuImagePackageAdded: 2ndary arch fix
For the secondary architecture the same specified package name means a
different package, so we need to use the mapped name IsPackageAvailable
returns.
2013-08-06 03:24:14 +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
225b638263 Support building most system libraries for secondary arch
Also adjust the HaikuImageGet[Private]SystemLibs rules to support to
return the library targets matching the current architecture.
2013-08-06 00:45:22 +02:00
Ingo Weinhold
779b940a74 PreprocessPackageInfo: define macro for secondary architecture 2013-08-05 23:25:09 +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
Oliver Tappe
d20975d920 Fix negated predicate relating to input_server.
* without a secondary arch, jam would complain about not knowing how
  to build <x86_gcc>input_server
2013-08-05 21:44:12 +02:00
Oliver Tappe
0b171ae44a Fix two problems when building without secondary architecture. 2013-08-05 21:36:25 +02:00
Ingo Weinhold
b2b6052e40 ArchitectureSetup: fix library name map
It's too early to use the MultiArch* rules yet, since the TARGET_*
variables haven't been initialized yet.
2013-08-05 18:52:33 +02:00
Ingo Weinhold
93cfb72270 build features/bootstrap repo: support secondary arch
* Add rule FSplitPackageName. It splits a package name into port name
  and package suffix.
* FSetConditionsHold: Rename to FConditionsHold and replace the set
  parameter by a predicate rule parameter, thus adding more flexibility.
* FIsBuildFeatureEnabled: Use the faster check.
* Add rule FQualifiedBuildFeatureName. Given a build feature name, it
  prepends the current packaging architecture to yield a qualified
  feature name. Is used by the other build feature rules so that the
  same build feature can be configured differently for each arch.
* ExtractBuildFeatureArchives: The supplied list is now filtered via
  FFilterByBuildFeatures, allowing for build feature conditions in the
  list.
* Add rule InitArchitectureBuildFeatures. It is called early for each
  configured architecture, setting up some basic build features for it.
  "primary" is set for the primary architecture and a "secondary_<arch>"
  is set for each secondary architecture.
* BuildFeatures: Add secondary architecture support: Use the correct
  paths for libraries and headers (subdir for secondary architecture)
  and configure the icu and zlib sources only for the primary
  architecture.
* BootstrapPackageRepository: The package lists are now filtered via
  FFilterByBuildFeatures, allowing for build feature conditions in the
  lists.
* IsPackageAvailable, FetchPackage: Add secondary architecture support.
* HaikuPortsCross/x86_gcc2: Add icu and zlib x86 secondary packages.

The second stage Haiku cross devel package for the secondary
architecture can now be built.
2013-08-05 07:09:45 +02:00
Ingo Weinhold
f7d5e4c647 ArchitectureSetup: fix library map for secondary arch
The libraries where resolved to the library targets for the primary
architecture.
2013-08-05 06:39:10 +02:00
Ingo Weinhold
de799f73c0 MultiArch* rule: support optional architecture parameter 2013-08-05 06:37:56 +02:00
Ingo Weinhold
d31a50eef7 Move build feature rules to separate file 2013-08-05 00:17:46 +02:00
Oliver Tappe
f30881d7fe Replace makeinfo_bootstrap with texinfo_bootstrap.
* using texinfo_bootstrap has the advantage of allowing implicit
  mapping between _bootstrap packages and the corresponding 
  non-bootstrap packages
2013-08-04 21:05:24 +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
159663ceba Remove no longer needed HAIKU_STRIP_DEBUG_FROM_OPTIONAL_PACKAGES 2013-08-01 08:54:05 +02:00
Ingo Weinhold
30f0d45ff7 Remove unused Haiku64Image 2013-08-01 08:54:05 +02:00
Rene Gollent
e52af6a9e1 Add LibLayout and BePDF x86-64 packages.
Thanks to Chris Roberts for contributing the former.
2013-07-28 22:09:20 -04:00
Rene Gollent
293d5b1ede Add 64-bit package for CMake. 2013-07-28 19:33:18 -04:00
Rene Gollent
e7c4ad324e Add 64-bit Pe package. 2013-07-28 13:19:03 -04:00
Rene Gollent
5eb4aaba42 Add 64-bit Vision package. 2013-07-28 11:28:15 -04:00
Alex Smith
b8130cf32d Removed Haiku64Image, it's not used any more. 2013-07-27 16:40:10 +01:00
Ingo Weinhold
c0e8cc1a13 configure: prepare for hybrid support
The goal is to do hybrid builds in a single jam (instead of calling a
sub-jam to build parts with the secondary tool chain). This changeset
adds support to configure to prepare multiple tool chains.

configure:
* Merge option --build-cross-tools-gcc4 into --build-cross-tools. The
  option does now always require a packaging architecture parameter,
  i.e. x86_gcc2 for the legacy tool chain.
* Multiple occurrences of the --build-cross-tools and
  --cross-tools-prefix options are allowed. The first one specifies the
  primary tool chain, the subsequent ones the secondary tool chains.
* All architecture dependent jam variables are now suffixed with the
  name of the packaging architecture. The new HAIKU_PACKAGING_ARCHS
  contains the packaging architectures for the prepared tool chains. The
  first element is for the primary tool chain.
* No longer generate a separate libgccObjects file. Just put the
  respective variable into BuildConfig as well.

build_cross_tools[_gcc4]:
* Replace the <haiku output dir> parameter by a <install dir>
  parameter. This allows to create different cross-tools directories.
  They are simply suffixed by the packaging architecture.

Jamrules:
* For the moment map the variables for the primary tool chain to the
  respective suffix-less variables, so that everything still works as
  before.

The next step is to actually support the secondary tool chains in the
jam build system. This will require quite a bit more butchering, though.
2013-07-25 23:52:49 +02:00
Oliver Tappe
5bb173cf50 Add STXT-translator to the bootstrap image
* without this, StyledEdit wouldn't work
2013-07-24 21:24:07 +02:00
Ingo Weinhold
48b1ed4242 Add all bootstrap packages in DefaultBuildProfiles
* Don't handle the bootstrap case in the main Jamfile. Add all bootstrap
  packages to the image in the profile definition. That's less
  confusing, hopefully.
* Add the missing bootstrap packages (ncurses*, libtool_libltdl). The
  would normally be added in build_haiku_image when the package
  dependencies are resolved, but we don't do that for the bootstrap
  image, since we intentionally leave some dependencies out (e.g. perl)
  because they can be built.
2013-07-23 22:44:32 +02:00
Ingo Weinhold
81bd962f27 Add haikuporter and python to Haiku bootstrap image 2013-07-21 23:58:37 +02:00
Ingo Weinhold
26b0aa1ccd HaikuPortsCross repository: fix binutils, gcc revision mismatch
I don't think it makes that much sense to increment the revisions in
the cross recipes anyway, since there isn't any actual package
repository.
2013-07-21 21:34:02 +02:00
Ingo Weinhold
7b2174a27d BootstrapPackageRepository: serialize package creation
Since haikuporter uses a common directory for building the ports, we
can't build them concurrently. This makes jamming with multiple jobs
safe again.
2013-07-21 19:39:40 +02:00
Ingo Weinhold
a7ab22a0c0 HaikuPortsCross repository: icu_bootstrap is now available 2013-07-21 18:23:45 +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
b9eec5192d Include DefaultBuildProfiles earlier
DefaultBuildProfiles is now included earlier (right after BuildSetup).
This allows us to set HAIKU_BOOTSTRAP_BUILD earlier, so it can be used
for the repository selection. The actual build profile definitions,
which cannot be done that early, live in the rule
DefineDefaultBuildProfiles, which is invoked where the file was
previously included.
2013-07-21 03:20:26 +02:00
Ingo Weinhold
d1fe5b98d9 BuildFeature: get rid of hard-coded package versions
... using the new placeholder feature of ExtractBuildFeatureArchives.
2013-07-21 03:13:58 +02:00
Ingo Weinhold
67e84002a1 rule ExtractBuildFeatureArchives: implement placeholders
Add support for placeholders in the attribute values. The values of the
currently supported placeholders depend on the package file name
(package version, actual package and port name, etc.).
2013-07-21 03:12:45 +02:00
Ingo Weinhold
fc8967f1a6 Determine HAIKU_CPU and HAIKU_PACKAGING_ARCH in configure
... instead of in BuildSetup.
2013-07-20 01:01:21 +02:00
Humdinger
8f79f5f3b8 Rebuild Paladin package.
Paladin relied on liblocale.so that was moved to libbe (I think).
An updated patch will be submitted to haikuporter shortly.
2013-07-19 22:06:33 +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
916e7e75a3 Add debug info packages to HaikuPorts repository 2013-07-12 13:28:17 +02:00