Jurko Gospodnetić
324e6bc227
Added a test for and fixed a Boost Build generator selection bug caused by caching viable source target types for different target types and generators and not maintaining those caches when their content gets invalidated by defining a new generator. Currently quick-fixed by clearing most of the cached values when registering a new generator. Later on this could be made more detailed by clearing only the actually invalidated cache values or updating them or even only marking them to be lazily updated when needed next.
...
Problem detected & and a reproducible example constructed by Juraj Ivančić. Debugged by Vladimir Prus. Patched and packaged by Jurko Gospodnetić.
[SVN r48590]
2008-09-05 00:26:43 +00:00
Jurko Gospodnetić
0245482915
Optimized Boost Build's generator selection related viable-source-types-real() rule. Made it be smarter about which target types it inserts into a list of target types from which to collect all source types and avoid adding some target types that have already been added to the list.
...
[SVN r48588]
2008-09-04 21:43:30 +00:00
Jurko Gospodnetić
1f8cd9dc31
Optimized Boost Build's generator selection related viable-source-types-real() rule. Removed an extra sequence.unique rule called on the resulting sequence that was not really needed as elements get added to the sequence only if they are not already in it.
...
[SVN r48587]
2008-09-04 21:40:36 +00:00
Jurko Gospodnetić
d0329986f2
Optimized Boost Build's generator selection related viable-source-types-for-generator-real() rule. Now it exits more quickly in case it detects that any source type is a viable source type and so there is no need to look for more viable source types.
...
[SVN r48586]
2008-09-04 21:35:18 +00:00
Jurko Gospodnetić
5707bfb97a
Minor stylistic changes made to the Boost Build build/toolset.jam module.
...
[SVN r48585]
2008-09-04 21:26:53 +00:00
Jurko Gospodnetić
69b6eed15a
Minor stylistic changes and comment updates for the Boost Build build/generators.jam module.
...
[SVN r48584]
2008-09-04 21:24:52 +00:00
Jurko Gospodnetić
f5bc2cad43
Minor comment updates in several Boost Build modules. Removed an unused .caching global variable in the build/generators.jam module.
...
[SVN r48578]
2008-09-04 17:54:07 +00:00
Jurko Gospodnetić
4d13f947dc
Removed the unused generators.normalize-target-list() rule from the Boost Build build/generators.jam module.
...
[SVN r48576]
2008-09-04 17:10:08 +00:00
Vladimir Prus
fbddf9aa4e
Pass -X 64 to ar only on AIX. Fixes #2281 .
...
[SVN r48573]
2008-09-04 07:53:22 +00:00
Jurko Gospodnetić
9b65dbc200
Minor stylistic change in the Boost Build tools/msvc.jam toolset grouping all of msvc specific feature declarations together as we may later decide to initialize them automatically on module import and initialize the toolset and its generators only when the first toolset version gets configured correctly.
...
[SVN r48571]
2008-09-04 01:59:21 +00:00
Jurko Gospodnetić
69e7f15201
Fixed a syntax error that slipped in in the previous revision in the Boost Build tools/common.jam module.
...
[SVN r48570]
2008-09-03 21:34:45 +00:00
Jurko Gospodnetić
a29d9f4f63
Minor stylistic changes in the Boost Build tools/common.jam module.
...
[SVN r48569]
2008-09-03 21:06:58 +00:00
Jurko Gospodnetić
775ce8a7a9
Updated Boost Jam's error location reporting when parsing Jamfiles. Now it reports the correct error location information when encountering an unexpected EOF. It now also reports where an invalid lexical token being read started instead of finished which makes it much easier to find errors like unclosed quotes (") or curly braces ({).
...
[SVN r48534]
2008-09-02 11:06:24 +00:00
Jurko Gospodnetić
a3e53d37aa
Refactored Boost Jam's internal yyline() Jamfile parsing function a bit so it no longer uses one unneeded goto that was making the code much harder to read.
...
[SVN r48533]
2008-09-02 10:58:03 +00:00
Jurko Gospodnetić
5de4d38337
Stylistic changes throughout the Boost Jam source base done while researching the Boost Jam internals. No implementation changes.
...
[SVN r48532]
2008-09-02 10:54:08 +00:00
Jurko Gospodnetić
44088b2c09
Corrected a Boost Build error handling in its modules.jam module, causing an 'unknown errors.error rule' error to be reported instead of the intended one when passing incorrect options to the import rule.
...
[SVN r48518]
2008-09-01 16:04:42 +00:00
Jurko Gospodnetić
f9cef443c1
Updated the Boost Build build/targets.jam module so its comments reference the term Jamroot instead of project-root.jam.
...
[SVN r48506]
2008-08-31 22:18:22 +00:00
Jurko Gospodnetić
0d08ed3c8e
Minor stylistic comment change in the Boost Build targets.jam module.
...
[SVN r48503]
2008-08-31 21:33:48 +00:00
Jurko Gospodnetić
39081e72c3
Cleaning up some command line parsing where on some OS's quotes are stripped by the OS and on some they are not. This fixes a failing Boost Build configuration.py unit test on Cygwin.
...
[SVN r48502]
2008-08-31 21:31:32 +00:00
Jurko Gospodnetić
b7048f3c50
Corrected a comment typo in Boost Build's main build-system.jam module.
...
[SVN r48501]
2008-08-31 21:29:00 +00:00
Jurko Gospodnetić
284c0935ac
Added a new utility.unquote() rule to the Boost Build util/utility.jam module. Tests included. This is part of cleaning up some command line parsing where on some OS's quotes are stripped by the OS and on some they are not.
...
[SVN r48500]
2008-08-31 21:25:03 +00:00
Jurko Gospodnetić
0087ca36a8
Cleaned up the Boost Build util/utility.jam module a bit. Reordered the rule definitions alphabetically. Added better testing for the ungrist rule. Added better documentation comments.
...
[SVN r48499]
2008-08-31 21:22:58 +00:00
Jurko Gospodnetić
0776463f82
Minor stylistic changes in the Boost Build build/targets.jam module.
...
[SVN r48497]
2008-08-31 14:27:51 +00:00
Jurko Gospodnetić
36216e3df8
Minor stylistic code indentation and comment changes made to Boost Build's build/generators.jam module.
...
[SVN r48494]
2008-08-31 10:53:36 +00:00
Jurko Gospodnetić
5d27375a9b
Corrected a slight internal defect in Boost Build's tools/package.jam module. There some properties getting passed to stage rules were getting constructed incorrectly (had an extra grist component) and the code did work but purely by accident.
...
[SVN r48481]
2008-08-31 00:17:22 +00:00
Jurko Gospodnetić
b14209b789
Major stylistic changes throughout the Boost Jam source base. No implementation changes.
...
Cleanup done while researching the Boost Jam internals. Added better implementation description comments at many places. Cleaned up the 'dependant' and 'dependency' terminology that got mixed up in several places. Renamed several functions to use underscores as word separators.
[SVN r48480]
2008-08-30 23:56:49 +00:00
Jurko Gospodnetić
0675a48c5b
Minor stylistic changes made to the Boost Build util/option.jam module.
...
[SVN r48476]
2008-08-30 16:23:59 +00:00
Jurko Gospodnetić
00172f18b3
Minor stylistic changes in the tools/package.jam Boost Build module.
...
[SVN r48467]
2008-08-30 00:21:59 +00:00
K. Noel Belcourt
d8a723ee41
Forgot to remove -xarch=generic from both sun
...
and sunpro toolsets.
[SVN r48465]
2008-08-29 20:51:13 +00:00
K. Noel Belcourt
3cd298ec00
Removed the -xarch=generic architecture from build.jam
...
as this option is unknown so the Sun compilers on Linux.
As -xarch=generic is the default on the Sun, there should
be no impact to the Sun platform.
[SVN r48464]
2008-08-29 20:44:31 +00:00
Jurko Gospodnetić
84c8a57403
Minor stylistic changes throughout Boost Jam sources. Mostly corrected indentation, removed trailing spaces and updated comments.
...
[SVN r48445]
2008-08-29 12:59:49 +00:00
Jurko Gospodnetić
0373a36dc0
Updated Boost Jam with minor stylistic changes in end-user messages when reporting on target fate. Fixed a bug with T_FATE_ISTMP getting reported as T_FATE_ISTMP & T_FATE_NEEDTMP at the same time due to a missing break in a switch statement.
...
[SVN r48431]
2008-08-29 00:16:40 +00:00
Jurko Gospodnetić
98ad6fda62
Fixed a Boost Jam bug causing it to sometimes trigger actions depending on targets that have not been built yet. Test case included. Updated related code comments.
...
Bug was happening when we had a multifile action that got triggered to build its non-initial target. Then while that action was being executed all the other targets were reporting as 'already built' and were getting used by other actions prematurely. Quick-fixed by making all targets built by a single action list each other as 'included' causing anything else depending on any of these targets to automatically depend on all the others in the group as well.
The solution is not perfect as it might have some unexpected interactions with other uses of 'included' targets and now if any target in a group is not up to date then all of them will be rebuilt even if actually did not need the target that was up to date. On the other hand this should be a really rare use case as it would require the one target in a group to be up to date and be needed while another in the same group (i.e. built by the same action) to not be up to date.
[SVN r48426]
2008-08-28 19:20:27 +00:00
Jurko Gospodnetić
37bd876951
Minor stylistic alias.jam Boost Build module changes.
...
[SVN r48367]
2008-08-25 02:58:17 +00:00
Jurko Gospodnetić
2e06cb8e89
Minor stylistic change in the Boost Build msvc.jam toolset module reordering the included modules.
...
[SVN r48365]
2008-08-25 02:34:37 +00:00
Jurko Gospodnetić
ce09cf9bee
Cleaned up several error and configuration debugging messages in Boost Build's msvc.jam toolset. Minor comment changes.
...
[SVN r48364]
2008-08-25 02:25:47 +00:00
Jurko Gospodnetić
85f341bd49
Refactored and better commented the Boost Build msvc toolset module as it grew to be quite large and lose its structure while even more features are being planned for it. No functional changes.
...
Organized content into: module inclusions, public rules, class definitions, local rules and finally startup code, in that order. Rules inside a single group ordered alphabetically. Mostly standardized global variable naming style. Extracted all toolset, flag & generator registrations into a single helper rule. Extracted all the msvc version auto-detection code into a single local helper rule. toolset.flag rule now referenced by its full name. Minor stylistic changes.
[SVN r48361]
2008-08-25 01:47:54 +00:00
Jurko Gospodnetić
eb24ab925d
Made the Boost Build contrib/wxFormBuilder.jam toolset module report its configuration debugging messages consistently with the nice way this is implemented in the tools/python.jam toolset module.
...
[SVN r48347]
2008-08-24 12:08:49 +00:00
Jurko Gospodnetić
76ddbf4dbd
Minor stylistic changes made to Boost Build's tools/testing.jam module.
...
[SVN r48346]
2008-08-24 11:08:51 +00:00
Jurko Gospodnetić
dc828d46c9
Corrected a syntax error committed in the last revision in the tools/common.jam Boost Build module.
...
[SVN r48338]
2008-08-24 00:59:05 +00:00
Jurko Gospodnetić
c64aacd4c2
Minor stylistic changes and code cleanup in several internal Boost Build modules.
...
[SVN r48337]
2008-08-24 00:51:06 +00:00
Jurko Gospodnetić
bc0def4972
Comment typo correction in the Boost Build contrib/wxFormBuilder.jam toolset module.
...
[SVN r48334]
2008-08-24 00:03:09 +00:00
Jurko Gospodnetić
598a9cbbee
Fixed and readded the previously reverted new wxFormBuilder toolset to the Boost Build contrib folder. Now no longer messes up generated target names for other CPP & H file generators. More robust path construction in the main worker action which now works correctly when the wxFormFolder project file is specified with no folder, with a relative folder or with an absolute folder.
...
[SVN r48333]
2008-08-23 23:52:42 +00:00
Jurko Gospodnetić
f4e6a8c858
Cleaned up several internal Boost Build modules a bit.
...
[SVN r48332]
2008-08-23 23:49:00 +00:00
Jurko Gospodnetić
cab4e3eed1
Corrected a python framework directory detection bug in the Boost Build python.jam toolset module. Affected only builds running on the darwin os.
...
[SVN r48322]
2008-08-23 20:13:18 +00:00
Jurko Gospodnetić
1221ff9bbb
Added binding targets specified using an inherited dependency property to their corresponding project so they refer to the correct target independently of the project context in which they get used.
...
Part of the work by Steven Watanabe on fixing the Boost Build trac ticket #13 (http://zigzag.cs.msu.su/boost.build/ticket/13 ).
[SVN r48319]
2008-08-23 12:27:41 +00:00
Jurko Gospodnetić
a3372de5f4
Updated Boost Build's project id handling so that if a project has an id attribute, this id will be automatically registered and usable from that same project just the same as if the id had been specified directly using the 'id' project rule parameter.
...
Part of the work by Steven Watanabe on fixing the Boost Build trac ticket #13 (http://zigzag.cs.msu.su/boost.build/ticket/13 ).
[SVN r48318]
2008-08-23 12:25:16 +00:00
Jurko Gospodnetić
a584887c60
Cleaned up the generate.jam Boost Build toolset module. Corrected some copy/paste bugs inherited from the virtual-target.jam module.
...
[SVN r48316]
2008-08-23 12:17:50 +00:00
Jurko Gospodnetić
f81c2f31ac
Reordered module imports in the Boost Build builtin.jam toolset module.
...
[SVN r48315]
2008-08-23 12:13:36 +00:00
Jurko Gospodnetić
a60715e6f8
Reordered module imports in Boost Build's gcc.jam & qcc.jam toolset modules.
...
[SVN r48314]
2008-08-23 12:08:50 +00:00