9950d2c670Updated the internal Boost Build testing system to use the Python subprocess module (introduced in Python 2.4) for running external processes instead of popen2 (deprecated since Python 2.6). We are already using Python 2.4 features in this codebase so there is no need to support Python releases older than 2.4.
Jurko Gospodnetić
2012-07-12 12:55:25 +0000
c5e5b5324eBoost Build cleanup - minor stylistic internal Boost Build test script & testing system changes.
Jurko Gospodnetić
2012-07-12 12:22:14 +0000
f9c5030d40Boost Build cleanup - minor stylistic internal Boost Build test script & testing system changes.
Jurko Gospodnetić
2012-07-12 12:22:14 +0000
91e29f3735Boost Jam code cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-12 10:28:58 +0000
c94e5a36c6Boost Jam code cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-12 10:28:58 +0000
9425ca14b9Booat Jam code cleanup - synchronized filent.c & fileunix.c OS specific implementation modules. Extracted shared functionality to filesys.c. Updated related descriptive function & module comments. Added missing copyright comment for the filesys.c module.
Jurko Gospodnetić
2012-07-11 21:42:51 +0000
98a286ce6eBooat Jam code cleanup - synchronized filent.c & fileunix.c OS specific implementation modules. Extracted shared functionality to filesys.c. Updated related descriptive function & module comments. Added missing copyright comment for the filesys.c module.
Jurko Gospodnetić
2012-07-11 21:42:51 +0000
975cc49106Boost Jam code cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-11 15:16:11 +0000
aa10d013bdBoost Jam code cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-11 15:16:11 +0000
e70c45c3e5Boost Jam code cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-11 14:50:49 +0000
756793aba0Boost Jam code cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-11 14:50:49 +0000
3b80184839Cleaned up the main Boost Jam build state machine. MAKE1ATAIL state integrated into MAKE1A, MAKE1D state removed since it was doing nothing but morphing itself to MAKE1C and the main state structure no longer needs to contain extra MAKE1D state specific information. Cleaned up and updated related state description comments. Added a related missing #include directive in the make.h header caught by the make1.c module cleanup. Minor stylistic changes.
Jurko Gospodnetić
2012-07-11 14:45:44 +0000
ecde6dc3c1Cleaned up the main Boost Jam build state machine. MAKE1ATAIL state integrated into MAKE1A, MAKE1D state removed since it was doing nothing but morphing itself to MAKE1C and the main state structure no longer needs to contain extra MAKE1D state specific information. Cleaned up and updated related state description comments. Added a related missing #include directive in the make.h header caught by the make1.c module cleanup. Minor stylistic changes.
Jurko Gospodnetić
2012-07-11 14:45:44 +0000
2049470934Boost Jam now again removes partially built targets in case of an interrupted command. Broken in revision [79341].
Jurko Gospodnetić
2012-07-11 06:30:11 +0000
495ff1b41cBoost Jam now again removes partially built targets in case of an interrupted command. Broken in revision [79341].
Jurko Gospodnetić
2012-07-11 06:30:11 +0000
f8f1a93154Boost Jam code cleanup.
Jurko Gospodnetić
2012-07-11 05:05:45 +0000
345feef178Boost Jam code cleanup.
Jurko Gospodnetić
2012-07-11 05:05:45 +0000
0c986af085Recommitting the rest of the valid changes reverted in revision [79321].
Jurko Gospodnetić
2012-07-11 04:58:43 +0000
1ad187ca76Recommitting the rest of the valid changes reverted in revision [79321].
Jurko Gospodnetić
2012-07-11 04:58:43 +0000
ed56af5717Restoring Boost Build & Jam changes from revisions [79281 - 79310] (inclusive) previously temporarily reverted in revision [79321]. This is done to test whether the problem causing the original revert was introduced in revision [79311] (a bug has been found in that revision that could cause the observed Boost Jam crashes). Remaining reverted changes will be reverted if we do not detect any Boost library tester failures with this revision.
Jurko Gospodnetić
2012-07-10 15:27:58 +0000
22359b004aRestoring Boost Build & Jam changes from revisions [79281 - 79310] (inclusive) previously temporarily reverted in revision [79321]. This is done to test whether the problem causing the original revert was introduced in revision [79311] (a bug has been found in that revision that could cause the observed Boost Jam crashes). Remaining reverted changes will be reverted if we do not detect any Boost library tester failures with this revision.
Jurko Gospodnetić
2012-07-10 15:27:58 +0000
dc8e3d28bcFix buffer output so newline is actully written to cmd buffer. Also move some closure diagnostics to avoid interleaved output (no functional change, just better encapsulation).
K. Noel Belcourt
2012-07-08 02:36:24 +0000
3c3e5d01d3Fix buffer output so newline is actully written to cmd buffer. Also move some closure diagnostics to avoid interleaved output (no functional change, just better encapsulation).
K. Noel Belcourt
2012-07-08 02:36:24 +0000
0b503c35bdReverting all Boost Build & Jam changes back to revision [79279] in order to get the Boost library trunk tests back up & running again. Something after that revision seems to have introduced a problem in the non-Windows Boost Jam implementation causing crashes, truncated output and similar undefined behaviour. That problem needs to be addressed before re-adding all the later changes.
Jurko Gospodnetić
2012-07-07 09:02:33 +0000
8e05bdc38aReverting all Boost Build & Jam changes back to revision [79279] in order to get the Boost library trunk tests back up & running again. Something after that revision seems to have introduced a problem in the non-Windows Boost Jam implementation causing crashes, truncated output and similar undefined behaviour. That problem needs to be addressed before re-adding all the later changes.
Jurko Gospodnetić
2012-07-07 09:02:33 +0000
99e2b468a3Boost Jam cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-07 07:38:49 +0000
ccd7f12bdbBoost Jam cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-07 07:38:49 +0000
d9b64c670eBoost Jam cleanup - synchronized changes between Windows and Unix file_dirscan() implementations, removed some unnecessary short-to-long path conversions on Windows (for root folders), minor stylistic code changes.
Jurko Gospodnetić
2012-07-06 03:04:32 +0000
a12b007c85Boost Jam cleanup - synchronized changes between Windows and Unix file_dirscan() implementations, removed some unnecessary short-to-long path conversions on Windows (for root folders), minor stylistic code changes.
Jurko Gospodnetić
2012-07-06 03:04:32 +0000
77a0170c84Boost Jam cleanup - minor stylistic code change.
Jurko Gospodnetić
2012-07-06 02:13:44 +0000
4d58b05c13Boost Jam cleanup - minor stylistic code change.
Jurko Gospodnetić
2012-07-06 02:13:44 +0000
5b364fa966Brown paper bag fix for a Boost Jam bug introduced in revision [73907] causing Boost Jam not to build at all (actually - not to be able to find any files in folders other than the current one).
Jurko Gospodnetić
2012-07-06 02:08:13 +0000
ccab12b859Brown paper bag fix for a Boost Jam bug introduced in revision [73907] causing Boost Jam not to build at all (actually - not to be able to find any files in folders other than the current one).
Jurko Gospodnetić
2012-07-06 02:08:13 +0000
d430819efaFixed a Boost Jam crash bug when its Windows specific file_dirscan() function gets called for a non-existent folder.
Jurko Gospodnetić
2012-07-06 01:28:13 +0000
a2745d27ddFixed a Boost Jam crash bug when its Windows specific file_dirscan() function gets called for a non-existent folder.
Jurko Gospodnetić
2012-07-06 01:28:13 +0000
d3b327e22cBoost Jam code cleanup - removed unused variables and unnecessary variable setting, added some more description comments, minor stylistic changes.
Jurko Gospodnetić
2012-07-06 01:26:03 +0000
d518f9d5c5Boost Jam code cleanup - removed unused variables and unnecessary variable setting, added some more description comments, minor stylistic changes.
Jurko Gospodnetić
2012-07-06 01:26:03 +0000
64b368bd04Boost Jam cleanup - renamed path_add_key() to path_key__register_long_path().
Jurko Gospodnetić
2012-07-05 23:39:45 +0000
48be57c18bBoost Jam cleanup - renamed path_add_key() to path_key__register_long_path().
Jurko Gospodnetić
2012-07-05 23:39:45 +0000
4efad5b55eBoost Jam optimization - avoid unnecessary FindFirstFile() Windows API calls (and related unnecessary file system access) used to determine a file's long name in case that file's given name does not meet the short file name (8+3) criteria.
Jurko Gospodnetić
2012-07-05 23:20:38 +0000
4c9995750aBoost Jam optimization - avoid unnecessary FindFirstFile() Windows API calls (and related unnecessary file system access) used to determine a file's long name in case that file's given name does not meet the short file name (8+3) criteria.
Jurko Gospodnetić
2012-07-05 23:20:38 +0000
af65544399Boost Jam cleanup - merged pathunix.c module's Windows specific ShortPathToLongPath() & path_write_key() function implementations that were calling each other recursively. Now we have a single function that seems easier to understand and refactor further.
Jurko Gospodnetić
2012-07-05 19:12:20 +0000
bd14c7be66Boost Jam cleanup - merged pathunix.c module's Windows specific ShortPathToLongPath() & path_write_key() function implementations that were calling each other recursively. Now we have a single function that seems easier to understand and refactor further.
Jurko Gospodnetić
2012-07-05 19:12:20 +0000
e034b6440bCorrected a potential access violation in Boost Jam introduced in revision [79281] by incorrectly comparing new strings with already existing ones in the OBJECT hash table.
Jurko Gospodnetić
2012-07-05 18:40:38 +0000
9a4420b3dbCorrected a potential access violation in Boost Jam introduced in revision [79281] by incorrectly comparing new strings with already existing ones in the OBJECT hash table.
Jurko Gospodnetić
2012-07-05 18:40:38 +0000
ac58313c4bBoost Jam cleanup - made the buf variable in pathunix.c module's path_key() function more local instead of it being named a temporary but being used a long way away. This could not be done before because ShortPathToLongPath() used to cheat and temporarily change its 'const string' parameter internally which would cause the ShortPathToLongPath() call in this function to fail if we passed it object_str( normalized ) instead of buf->value even though they hold the same content.
Jurko Gospodnetić
2012-07-05 15:56:50 +0000
85bd6b20b8Boost Jam cleanup - made the buf variable in pathunix.c module's path_key() function more local instead of it being named a temporary but being used a long way away. This could not be done before because ShortPathToLongPath() used to cheat and temporarily change its 'const string' parameter internally which would cause the ShortPathToLongPath() call in this function to fail if we passed it object_str( normalized ) instead of buf->value even though they hold the same content.
Jurko Gospodnetić
2012-07-05 15:56:50 +0000
4e20d35df4Boost Jam cleanup - Windows ShortPathToLongPath() implementation no longer cheats & temporarily modifies the const string it is passed as a parameter but instead passes string lengths explicitly.
Jurko Gospodnetić
2012-07-05 13:15:25 +0000
c39380f0eaBoost Jam cleanup - Windows ShortPathToLongPath() implementation no longer cheats & temporarily modifies the const string it is passed as a parameter but instead passes string lengths explicitly.
Jurko Gospodnetić
2012-07-05 13:15:25 +0000
24142c5df2Updated the Boost Jam OBJECT interface to allow creating OBJECT instances from a non-0 terminated string.
Jurko Gospodnetić
2012-07-05 12:57:25 +0000
0cac694e35Updated the Boost Jam OBJECT interface to allow creating OBJECT instances from a non-0 terminated string.
Jurko Gospodnetić
2012-07-05 12:57:25 +0000
b260763794Boost Jam cleanup - removed one extra object copy in path_key().
Jurko Gospodnetić
2012-07-05 08:00:13 +0000
fa5ea2ec6dBoost Jam cleanup - removed one extra object copy in path_key().
Jurko Gospodnetić
2012-07-05 08:00:13 +0000
042283da4bBoost Jam cleanup - removed code duplication between path_add_key() and path_as_key() in pathunix.c.
Jurko Gospodnetić
2012-07-05 07:55:55 +0000
095bbd6305Boost Jam cleanup - removed code duplication between path_add_key() and path_as_key() in pathunix.c.
Jurko Gospodnetić
2012-07-05 07:55:55 +0000
7dab571b66Boost Jam cleanup - minor stylistic code changes.
Jurko Gospodnetić
2012-07-05 07:54:42 +0000
610291642fBoost Jam cleanup - minor stylistic code changes.
Jurko Gospodnetić
2012-07-05 07:54:42 +0000
daa0cbb5a6Boost Jam cleanup - minor stylistic code changes.
Jurko Gospodnetić
2012-07-05 07:35:03 +0000
b079f28c06Boost Jam cleanup - minor stylistic code changes.
Jurko Gospodnetić
2012-07-05 07:35:03 +0000
85f285ad88Boost Jam cleanup - removed and unnecessary header include + minor stylistic code change.
Jurko Gospodnetić
2012-07-05 06:57:26 +0000
c712c46008Boost Jam cleanup - removed and unnecessary header include + minor stylistic code change.
Jurko Gospodnetić
2012-07-05 06:57:26 +0000
91323959f4Boost Jam cleanup - minor stylistic code changes.
Jurko Gospodnetić
2012-07-04 15:58:30 +0000
8fd831b596Boost Jam cleanup - minor stylistic code changes.
Jurko Gospodnetić
2012-07-04 15:58:30 +0000
ab1620c580Boost Jam cleanup. frames.c module was never compiled and its content was copied to compile.c and tweaked a bit. Related code now all moved to the frames.c and the module cleaned up. PARSE typedef moved from the frames.h header into parse.h where it seems to belong naturally.
Jurko Gospodnetić
2012-07-04 15:54:15 +0000
c8cd744155Boost Jam cleanup. frames.c module was never compiled and its content was copied to compile.c and tweaked a bit. Related code now all moved to the frames.c and the module cleaned up. PARSE typedef moved from the frames.h header into parse.h where it seems to belong naturally.
Jurko Gospodnetić
2012-07-04 15:54:15 +0000
0d06e080dcRemoved a seemingly redundant #include <sys/stat.h> in the main Boost Jam header file.
Jurko Gospodnetić
2012-07-04 09:45:54 +0000
9c65f058adRemoved a seemingly redundant #include <sys/stat.h> in the main Boost Jam header file.
Jurko Gospodnetić
2012-07-04 09:45:54 +0000
ac84e70307Boost Jam now correctly reports its dangling string object count when displaying DEBUG_MEM messages independent of whether it is configured to use its hash-table OBJECT cache implementation or not.
Jurko Gospodnetić
2012-07-04 09:40:11 +0000
f2e92299cbBoost Jam now correctly reports its dangling string object count when displaying DEBUG_MEM messages independent of whether it is configured to use its hash-table OBJECT cache implementation or not.
Jurko Gospodnetić
2012-07-04 09:40:11 +0000
b9ed6db9e3Updated the documentation comment for Boost Build testing system's BoostBuild.Tester constructor with information on its pass_d0 parameter.
Jurko Gospodnetić
2012-07-04 09:13:41 +0000
ad7b601320Updated the documentation comment for Boost Build testing system's BoostBuild.Tester constructor with information on its pass_d0 parameter.
Jurko Gospodnetić
2012-07-04 09:13:41 +0000
5e171c2c8cBost Jam cleanup - removed some dead code from the compile.c module.
Jurko Gospodnetić
2012-07-04 09:09:21 +0000
e55ce2161bBost Jam cleanup - removed some dead code from the compile.c module.
Jurko Gospodnetić
2012-07-04 09:09:21 +0000
d26a70ac3eBoost Jam cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-04 09:04:29 +0000
842a23eb0bBoost Jam cleanup - minor stylistic changes.
Jurko Gospodnetić
2012-07-04 09:04:29 +0000
3575868660Boost Jam cleanup - touched up error messages displayed when a rule can not be found, removed trailing dot from the displayed module name in error messages displayed when requesting a non-existing rule in import or export builtin rules & removed related code duplication between builtins.c & compile.c modules.
Jurko Gospodnetić
2012-07-04 09:02:28 +0000
a5c46f85c9Boost Jam cleanup - touched up error messages displayed when a rule can not be found, removed trailing dot from the displayed module name in error messages displayed when requesting a non-existing rule in import or export builtin rules & removed related code duplication between builtins.c & compile.c modules.
Jurko Gospodnetić
2012-07-04 09:02:28 +0000
a01bf36f06Boost Jam cleanup - removed some internal memory management macro definition duplication.
Jurko Gospodnetić
2012-07-03 10:47:13 +0000
6c3b7dbe7fBoost Jam cleanup - removed some internal memory management macro definition duplication.
Jurko Gospodnetić
2012-07-03 10:47:13 +0000
bcbd74f5beUpdated Boost Build test_rc.py test to make its internal dummy-RC toolset always use the .obj suffix when generating OBJ targets. This is another attempt at correcting failures for this test on non-Windows platforms.
Jurko Gospodnetić
2012-07-02 18:59:11 +0000
9c7e1dae1dUpdated Boost Build test_rc.py test to make its internal dummy-RC toolset always use the .obj suffix when generating OBJ targets. This is another attempt at correcting failures for this test on non-Windows platforms.
Jurko Gospodnetić
2012-07-02 18:59:11 +0000
8704397f4aYet another attempt at getting Boost Build's test_rc.py test to use its internal dummy-RC toolset correctly. Now disabled reading any external Boost Build configuration files to avoid having other, not actually used, toolsets (e.g. gcc) change the OBJ target suffix used by Boost Build.
Jurko Gospodnetić
2012-07-02 09:50:12 +0000
2261b467aaYet another attempt at getting Boost Build's test_rc.py test to use its internal dummy-RC toolset correctly. Now disabled reading any external Boost Build configuration files to avoid having other, not actually used, toolsets (e.g. gcc) change the OBJ target suffix used by Boost Build.
Jurko Gospodnetić
2012-07-02 09:50:12 +0000
60184aec1fUpdated Boost Build test_rc.py test to use its internal dummy-RC toolset even when the test site has a different toolset configured in its site-config.jam or user-config.jam configuration files. Added more detailed output information in case this test fails.
Jurko Gospodnetić
2012-07-01 23:53:22 +0000
20a42723c5Updated Boost Build test_rc.py test to use its internal dummy-RC toolset even when the test site has a different toolset configured in its site-config.jam or user-config.jam configuration files. Added more detailed output information in case this test fails.
Jurko Gospodnetić
2012-07-01 23:53:22 +0000
a698b523b4Fix bug where process jam log could not find command status when max buffer not size not unlimited and buffer full. Change character before buffer null terminator to be a newline so command status appears on its own line.
K. Noel Belcourt
2012-06-30 05:40:36 +0000
4cccbd74e6Fix bug where process jam log could not find command status when max buffer not size not unlimited and buffer full. Change character before buffer null terminator to be a newline so command status appears on its own line.
K. Noel Belcourt
2012-06-30 05:40:36 +0000
8f021f4bfcBoost Build cleanup - minor stylistic changes. Added some FIXME comments.
Jurko Gospodnetić
2012-06-29 19:20:56 +0000
9f2d46756cBoost Build cleanup - minor stylistic changes. Added some FIXME comments.
Jurko Gospodnetić
2012-06-29 19:20:56 +0000
c48a0c9ddcFixed a Boost Build testing framework bug causing occasional & sporadic failures when you have one test build run making some changes, then another making no changes and then try to wait for the clock ticker to change enough to make newly touched or created files newer than the ones already existing on the system. In those cases the second test build run would clear the 'last build finished' timestamp and newly touched files might end up with the last modification timestamp equal to those already existing in the system. Also removed unnecessary wait_for_time_change_since_last_build() calls in BoostBuild.Tester.copy() and BoostBuild.Tester.rm().
Jurko Gospodnetić
2012-06-29 18:24:52 +0000
3fc1d1dac3Fixed a Boost Build testing framework bug causing occasional & sporadic failures when you have one test build run making some changes, then another making no changes and then try to wait for the clock ticker to change enough to make newly touched or created files newer than the ones already existing on the system. In those cases the second test build run would clear the 'last build finished' timestamp and newly touched files might end up with the last modification timestamp equal to those already existing in the system. Also removed unnecessary wait_for_time_change_since_last_build() calls in BoostBuild.Tester.copy() and BoostBuild.Tester.rm().
Jurko Gospodnetić
2012-06-29 18:24:52 +0000
18b914bd54Minor stylistic change in the Boost Build testing framework.
Jurko Gospodnetić
2012-06-29 18:18:28 +0000
fc9fe16e26Minor stylistic change in the Boost Build testing framework.
Jurko Gospodnetić
2012-06-29 18:18:28 +0000
173d1e16ffUpdated Boost Build's testing system to close its files explicitly after it is done with them instead of leaving that up to the Python garbage collector.
Jurko Gospodnetić
2012-06-29 18:17:36 +0000
73ac2c3f92Updated Boost Build's testing system to close its files explicitly after it is done with them instead of leaving that up to the Python garbage collector.
Jurko Gospodnetić
2012-06-29 18:17:36 +0000
8ddc6dfeb5Updated Boost Build's alias.py test to display additional information in case of failure.
Jurko Gospodnetić
2012-06-29 18:10:25 +0000