2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-15 00:52:16 +00:00
Commit Graph

2358 Commits

Author SHA1 Message Date
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