Commit Graph

47033 Commits

Author SHA1 Message Date
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
483b28e478 Add option --target-arch
On Haiku it allows to specify the target architecture to build for
using one of the installed native compilers.
2013-08-12 17:18:02 +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
f51bf7d932 Support building more libraries for secondary architecture 2013-08-10 09:53:38 +02:00
Ingo Weinhold
47fd9e6dc6 rule AddLibrariesToContainer: fix for gristed libraries 2013-08-10 09:52:10 +02:00
Oliver Tappe
f81fbb0b59 Adjust to renamed option of haikuporter. 2013-08-07 13:42:16 +02:00
Ingo Weinhold
394c099f62 build_cross_tools_gcc4: use --with-hybrid-secondary 2013-08-07 02:13:15 +02:00
Ingo Weinhold
00979660d9 haiku_devel_secondary package info: fix provides 2013-08-07 00:10:39 +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
bddca41824 runtime loader: fix secondary arch search paths 2013-08-06 03:45:06 +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
2f2f43699c package info haiku_secondary: fix description
Using the C preprocessor doesn't work particularly well. The
replacements are rather unhandy.
2013-08-06 03:28:16 +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
040a81419d Add node_ref::operator <
Moved from VirtualDirectoryManager. Defining the operator static doesn't
work with gcc 4 and it's useful to have globally available anyway.
2013-08-06 00:40:29 +02:00
Ingo Weinhold
8a2643daee libtracker: VirtualDirectoryManager::_RemoveDirectory(): typo
Should have caused infinite recursion when the directory still had
children.
2013-08-06 00:37:33 +02:00
Ingo Weinhold
c591ff14a1 Support building libpackage-add-on-libsolv.so for secondary arch 2013-08-05 23:25:09 +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
7bd562abc9 lib{network,package,shared,agg,icon}: secondary arch support 2013-08-05 06:41:53 +02:00
Ingo Weinhold
a36a166632 MergedDirectory: missing include 2013-08-05 06:39:41 +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
57190167ef Fix usage of obsolete HAIKU_BUILD_FEATURE_OPENSSL_ENABLED 2013-08-05 00:25:30 +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
68ccc98930 Build the cross gcc for the secondary arch as such
Pass --enable-hybrid-secondary to gcc's configure when building it as
a secondary compiler. Doesn't make a difference for building Haiku
itself, but makes it easier to match the Haiku cross devel package with
the compiler when building bootstrap packages with haikuporter.

gcc 4 only ATM.
2013-08-04 17:21:20 +02:00
Ingo Weinhold
f975dc63f1 build_cross_tools_gcc4: move sysroot dir into install dir
This allows us to sneak in system include and library search dirs in
haikuporter without doing anything outside the cross tools dir.
2013-08-03 05:29:15 +02:00