Commit Graph

21 Commits

Author SHA1 Message Date
Ingo Weinhold
ffa0014b8e MiscRule: Add new rules to deal with build features
* EnableBuildFeatures: Enables build features.
* FIsBuildFeatureEnabled: Checks whether a build feature is enabled.
* FMatchesBuildFeatures: Checks more complex build feature
  specifications.
* FFilterByBuildFeatures: Filters lists annotated with build feature
  specifications.
2012-12-09 04:07:48 +01:00
Axel Dörfler
364de37ea7 * Added Ingo's explanations as comments to the MakeLocate variants.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 17:26:08 +00:00
Matt Madia
9f10e7acc7 Added some documentation about the anyboot images. Verification appreciated.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-03 21:51:58 +00:00
Matt Madia
26b5ececca Create "anyboot-image" and define build profile rules to utilize it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-15 23:51:45 +00:00
Ingo Weinhold
0b58d8440c * Prefixed the INCLUDE_GPL_ADDONS variable by "HAIKU_". configure needs to
be run again or generated/build/BuildConfig needs to be adjusted manually.
* Removed bochs debug hack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-20 13:55:45 +00:00
Ingo Weinhold
a84f41d8a0 Patch by Matt Madia: Added "cd-image" build profile type and "alpha-cd" build
profile. Small changes by myself.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-23 22:19:30 +00:00
Ingo Weinhold
35d0aeac70 Added rule SetupFeatureObjectsDir that simplifies using different output
directories when a certain feature is enabled/disabled/configured a certain
way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 09:51:01 +00:00
Ingo Weinhold
37aefc9c6f * Moved jam argument processing to new build/jam/CommandLineArguments.
* Check the first argument for "help" as well. If given print a somewhat
  helpful text. Consider this my excuse to close ticket #1883. :-)
* Track available and added optional packages and fail, if an optional package
  is requested that doesn't exist. Closes ticket #3332.
* Check for duplicate build profile definitions and fail if encountered.
  Closes ticket #3333.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-23 22:33:09 +00:00
Ingo Weinhold
937f717ced Quote the command line arguments, so arguments with whitespace will
work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-28 13:45:36 +00:00
Axel Dörfler
29ad53f16a * Added an "update-all" build profile action that updates all files. This can
be used to update an installation without erasing the whole volume (ie. it
  works like install-haiku on BFS capable platforms).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26435 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 17:54:58 +00:00
Ingo Weinhold
a0a9d225d3 Added a new fancy build system feature called "build profiles".
Especially people building various kinds of images with different
settings may want to have a look at the respective section in the
UserBuildConfig.ReadMe.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 20:29:43 +00:00
Ingo Weinhold
be8a6e43ff * Added JAMFILE to the config variables.
* Added additional parameters to DeferredSubInclude. It's now possible
  to specify an alternative Jamfile name.
* Added DeferredSubInclude example to UserBuildConfig.ReadMe showing the
  new feature.
* Moved ExecuteDeferredSubIncludes in the root Jamfile before the
  inclusion of HaikuImage, NetBootArchive etc., so that targets defined
  in the subdirectories are already known there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 15:34:30 +00:00
Axel Dörfler
7fe764cce5 bonefish: Fixed bug #1346. The relative output directory for the root directory was
computed as '.' which resulted in output path ending with '/.', causing mkdir to choke.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-31 22:37:21 +00:00
Ingo Weinhold
4ce381e26c Fixed "jam run" feature for older shells.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20925 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 16:55:27 +00:00
Ingo Weinhold
315cfc48ca The ":" to identify a target for the "run" feature must be at the
beginning of the string; it was formerly matched anywhere.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-08 02:21:10 +00:00
Ingo Weinhold
2c24a1a9f6 New handy build system feature: It is now possible to pass a command
line to jam that contains build targets and that will be executed by
the build system after building the targets and replacing their
occurrences in the command line by their paths. The keyword indicating
such a command line is "run", targets are marked by a leading ":".
E.g.:

  jam -q run ':<build>xres' -l :libtracker.so

This builds the xres tool for the host platform and libtracker.so for
Haiku, and afterwards lists the resources libtracker.so contains. Note,
that this feature requires using Haiku's jam version.

The functionality is implemented by the new RunCommandLine rule, which
can, of course, also be used in the UserBuildConfig.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-06 03:14:58 +00:00
Ingo Weinhold
f51c147043 Added rules NextID, which returns an numerical ID incremented with each
invocation, and NewUniqueTarget, which returns a unique target name.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-06 02:39:37 +00:00
Ingo Weinhold
3f2a43554a * Moved the DeferredSubInclude rules into MiscRules.
* Added new rule HaikuSubInclude for more comfortable subdirectory inclusion.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-07 16:01:19 +00:00
Ryan Leavengood
9c55633809 Removing the now unneeded SearchAndReplace and Sed rules. They can always be
added back if need be. There were some building bugs anyhow in these versions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-14 00:10:53 +00:00
Ryan Leavengood
dd481a03fc Added a few new rules that do some search and replacing using sed. AFAIK all
our build platforms should have sed support (it is built into Jambase at
least.) I use these rules to do some code generation in my soon to be committed
MarkAs Tracker add-ons.

This works pretty nifty if I do say so myself.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-13 08:04:23 +00:00
Ingo Weinhold
338b8dc301 Merged changes from branch build_system_redesign at revision 14573.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-29 16:27:43 +00:00