Jurko Gospodnetić
3462295cf2
Boost Build build bug corrected when compiling using old Borland compilers. This has been in for a long time and has been noticed only as part of a quick code review. It could be there is no need to support this 'old Borland compilers' code branch.
...
[SVN r79585]
2012-07-18 14:27:22 +00:00
Jurko Gospodnetić
58beabb9dc
Boost Jam code cleanup - moved code for creating new internal include targets into a single location (rules.c module) instead of having it done in two (rules.c & builtins.c modules).
...
[SVN r79584]
2012-07-18 14:24:19 +00:00
Jurko Gospodnetić
116439c266
Boost Jam code cleanup - moved code for creating new internal include targets into a single location (rules.c module) instead of having it done in two (rules.c & builtins.c modules).
...
[SVN r79584]
2012-07-18 14:24:19 +00:00
Jurko Gospodnetić
1961065003
Boost Build no longer needs to add a fake INCLUDES relationship between targets generated by a single Boost Build action (reapplying revision [79571]). This is already done by Boost Jam internally for a single Boost Jam action and in case when the Boost Build action is actually a rule registering multiple actions - this was not causing any desirable behaviour.
...
[SVN r79583]
2012-07-18 14:08:35 +00:00
Jurko Gospodnetić
5a2b9e404a
Boost Build no longer needs to add a fake INCLUDES relationship between targets generated by a single Boost Build action (reapplying revision [79571]). This is already done by Boost Jam internally for a single Boost Jam action and in case when the Boost Build action is actually a rule registering multiple actions - this was not causing any desirable behaviour.
...
[SVN r79583]
2012-07-18 14:08:35 +00:00
Jurko Gospodnetić
ca78bc40b2
Minor stylistic changes made to the Python Boost Build comment updated in the previous commit.
...
[SVN r79582]
2012-07-18 13:26:02 +00:00
Jurko Gospodnetić
1f8e7334ee
Minor stylistic changes made to the Python Boost Build comment updated in the previous commit.
...
[SVN r79582]
2012-07-18 13:26:02 +00:00
Jurko Gospodnetić
714ed09cf4
Updated Boost Build implementation note comment related to why it adds an INCLUDES relation between all sources registered for a single Boost Build action.
...
[SVN r79581]
2012-07-18 13:24:40 +00:00
Jurko Gospodnetić
fca2444fe2
Updated Boost Build implementation note comment related to why it adds an INCLUDES relation between all sources registered for a single Boost Build action.
...
[SVN r79581]
2012-07-18 13:24:40 +00:00
Jurko Gospodnetić
1b98bbbf74
Boost Build comment cleanup.
...
[SVN r79580]
2012-07-18 12:42:17 +00:00
Jurko Gospodnetić
e2daee8663
Boost Build comment cleanup.
...
[SVN r79580]
2012-07-18 12:42:17 +00:00
Jurko Gospodnetić
e6a3faf35d
Corrected the internal Boost Build generators_test.py unit test to correctly split its appender 'action' into separate appender1 actions (building only a single target each), and still have them all called correctly together or none at all. Old and too-simplistic solution registered called completely independent actions for each target, causing Boost Jam to build only some of the targets in some cases, unlike what it would have done had they all actually been built by a single action.
...
[SVN r79579]
2012-07-18 12:23:18 +00:00
Jurko Gospodnetić
a11cbcada3
Corrected the internal Boost Build generators_test.py unit test to correctly split its appender 'action' into separate appender1 actions (building only a single target each), and still have them all called correctly together or none at all. Old and too-simplistic solution registered called completely independent actions for each target, causing Boost Jam to build only some of the targets in some cases, unlike what it would have done had they all actually been built by a single action.
...
[SVN r79579]
2012-07-18 12:23:18 +00:00
Jurko Gospodnetić
ddbdcd0c04
Reverting revision [79571] since it broke the generators_test.py Boost Build test. It seems Boost Jam might not have the complete fix implemented to allow us to avoid this Boost Build code.
...
[SVN r79573]
2012-07-17 09:29:02 +00:00
Jurko Gospodnetić
0677deb372
Reverting revision [79571] since it broke the generators_test.py Boost Build test. It seems Boost Jam might not have the complete fix implemented to allow us to avoid this Boost Build code.
...
[SVN r79573]
2012-07-17 09:29:02 +00:00
Jurko Gospodnetić
ef8a393163
Boost Build code cleanup - Boost Build no longer needs to add a fake INCLUDES relationship between targets generated by a single action as this is already done by Boost Jam internally.
...
[SVN r79571]
2012-07-17 09:08:10 +00:00
Jurko Gospodnetić
1b73d419e7
Boost Build code cleanup - Boost Build no longer needs to add a fake INCLUDES relationship between targets generated by a single action as this is already done by Boost Jam internally.
...
[SVN r79571]
2012-07-17 09:08:10 +00:00
Jurko Gospodnetić
21e5ae661a
Boost Build code cleanup - scanner.install no longer taking an extra & never used vtarget parameter.
...
NOTE: Defective - breaks the generators_test.py Boost Build test.
[SVN r79570]
2012-07-17 09:03:38 +00:00
Jurko Gospodnetić
d3f709b3af
Boost Build code cleanup - scanner.install no longer taking an extra & never used vtarget parameter.
...
NOTE: Defective - breaks the generators_test.py Boost Build test.
[SVN r79570]
2012-07-17 09:03:38 +00:00
Jurko Gospodnetić
c16ae1c68a
Boost Jam/Build cleanup - minor stylistic changes (comment updates; line wrapping; removed some dead/unused function declarations, parameters & code; declared variables as const; reordered some #include directives alphabetically, removed some unnecessary ones and added several missing ones discovered by the reordering).
...
[SVN r79569]
2012-07-17 08:56:49 +00:00
Jurko Gospodnetić
fa43d8fa93
Boost Jam/Build cleanup - minor stylistic changes (comment updates; line wrapping; removed some dead/unused function declarations, parameters & code; declared variables as const; reordered some #include directives alphabetically, removed some unnecessary ones and added several missing ones discovered by the reordering).
...
[SVN r79569]
2012-07-17 08:56:49 +00:00
Jurko Gospodnetić
145ce56f80
Windows Boost Jam implementation now uses finer resolution than 1 second when creating timestamps based on the current system time. Since these are never (and should never be!) compared to file system timestamps - this causes no conflicts with file system timestamps still using 1 second resolution at best.
...
Related stylistic changes:
- filetime_to_timestamp() function renamed to timestamp_from_filetime() and moved to the timestamp.c module.
- filetime_to_seconds() function moved back to the execnt.c module as a static function as it only used from there after the timestamp_from_filetime() reimplementation in revision [79494].
- filent.h header now empty and removed.
[SVN r79511]
2012-07-14 18:55:06 +00:00
Jurko Gospodnetić
1f4e39984b
Windows Boost Jam implementation now uses finer resolution than 1 second when creating timestamps based on the current system time. Since these are never (and should never be!) compared to file system timestamps - this causes no conflicts with file system timestamps still using 1 second resolution at best.
...
Related stylistic changes:
- filetime_to_timestamp() function renamed to timestamp_from_filetime() and moved to the timestamp.c module.
- filetime_to_seconds() function moved back to the execnt.c module as a static function as it only used from there after the timestamp_from_filetime() reimplementation in revision [79494].
- filent.h header now empty and removed.
[SVN r79511]
2012-07-14 18:55:06 +00:00
Jurko Gospodnetić
c2858c8b5d
Boost Jam code cleanup - extracted code for getting a timestamp for the current system time to timestamp_current().
...
[SVN r79507]
2012-07-14 17:28:50 +00:00
Jurko Gospodnetić
0ff040d3a0
Boost Jam code cleanup - extracted code for getting a timestamp for the current system time to timestamp_current().
...
[SVN r79507]
2012-07-14 17:28:50 +00:00
Jurko Gospodnetić
e548f836d9
Boost Jam's internal timestamp data structure now holds a member for nanosecond information. This information is still always set to 0 but, if set, is used when needed. Updated Boost Jam's header cache file format to hold the new extended timestamp information (bumped format version up to 5).
...
[SVN r79506]
2012-07-14 17:17:09 +00:00
Jurko Gospodnetić
ace6747054
Boost Jam's internal timestamp data structure now holds a member for nanosecond information. This information is still always set to 0 but, if set, is used when needed. Updated Boost Jam's header cache file format to hold the new extended timestamp information (bumped format version up to 5).
...
[SVN r79506]
2012-07-14 17:17:09 +00:00
Jurko Gospodnetić
f18abd8674
Boost Jam now reports its timestamps using a bit more complete format (still ISO-8601 compliant) to include nanosecond information. The new format is 'YYYY-MM-DD HH:MM:SS.ZZZZZZZZZ +0000'. Currently the nanosecond part value is always 0.
...
[SVN r79502]
2012-07-14 16:36:56 +00:00
Jurko Gospodnetić
3ca9fc5911
Boost Jam now reports its timestamps using a bit more complete format (still ISO-8601 compliant) to include nanosecond information. The new format is 'YYYY-MM-DD HH:MM:SS.ZZZZZZZZZ +0000'. Currently the nanosecond part value is always 0.
...
[SVN r79502]
2012-07-14 16:36:56 +00:00
Jurko Gospodnetić
3736a64fd6
Boost Jam code cleanup - wrapped up timestamp values inside a timstamp structure instead of using a raw time_t value as another preparation step towards implementing support for timestamps with resolution finer than 1 second. All timestamp manipulation now done using the new timestamp_XXX() API.
...
File timestamps displayed with -d+3 debug output now presented in UTC (+0000) timezone.
Other related minor stylistic changes:
- timestamp_from_target() renamed to timestamp_from_path()
- timestamp_from_target() parameter order switched
- comment updates
- added some const function parameter modifiers
- some header #include directives reordered alphabetically
[SVN r79501]
2012-07-14 16:11:16 +00:00
Jurko Gospodnetić
6383f7f161
Boost Jam code cleanup - wrapped up timestamp values inside a timstamp structure instead of using a raw time_t value as another preparation step towards implementing support for timestamps with resolution finer than 1 second. All timestamp manipulation now done using the new timestamp_XXX() API.
...
File timestamps displayed with -d+3 debug output now presented in UTC (+0000) timezone.
Other related minor stylistic changes:
- timestamp_from_target() renamed to timestamp_from_path()
- timestamp_from_target() parameter order switched
- comment updates
- added some const function parameter modifiers
- some header #include directives reordered alphabetically
[SVN r79501]
2012-07-14 16:11:16 +00:00
Jurko Gospodnetić
8202d97670
Boost Jam code cleanup - extracted Windows specific FILETIME structure conversion functions from execnt.c to a lowel level filent.c Windows specific module so they may be reused in both. Renamed the functions to make their purpose clearer.
...
[SVN r79497]
2012-07-14 13:23:45 +00:00
Jurko Gospodnetić
e8febc705c
Boost Jam code cleanup - extracted Windows specific FILETIME structure conversion functions from execnt.c to a lowel level filent.c Windows specific module so they may be reused in both. Renamed the functions to make their purpose clearer.
...
[SVN r79497]
2012-07-14 13:23:45 +00:00
Jurko Gospodnetić
eb8c859a26
Boost Jam execnt.c module code cleanup. No longer attempts to perform some operations like closing alert windows or reading their output (before the code depended on some operations not doing anything if given invalid handles or process ids). No longer needs to find out the process id from a process handle (since it actually already had these process ids all along), thus avoiding hacks needed to support this on Windows versions prior to Windows XP SP1 (where there was no GetProcessId() Windows API). Minor stylistic changes.
...
[SVN r79496]
2012-07-14 13:10:00 +00:00
Jurko Gospodnetić
9f5192acff
Boost Jam execnt.c module code cleanup. No longer attempts to perform some operations like closing alert windows or reading their output (before the code depended on some operations not doing anything if given invalid handles or process ids). No longer needs to find out the process id from a process handle (since it actually already had these process ids all along), thus avoiding hacks needed to support this on Windows versions prior to Windows XP SP1 (where there was no GetProcessId() Windows API). Minor stylistic changes.
...
[SVN r79496]
2012-07-14 13:10:00 +00:00
Jurko Gospodnetić
fe47abe424
Boost Jam code cleanup - removed a redundant #include directive.
...
[SVN r79495]
2012-07-14 11:49:52 +00:00
Jurko Gospodnetić
c4229062d2
Boost Jam code cleanup - removed a redundant #include directive.
...
[SVN r79495]
2012-07-14 11:49:52 +00:00
Jurko Gospodnetić
8e716991c8
Corrected Boost Jam's Windows FILETIME to POSIX time_t conversion. New implementation lifted shamelessly from the CPython implementation. The old implementation did not work correctly in all cases depending on the user's regional (timezone & daylight saving time) settings as well as the TZ environment variable (affects some C runtime library routines). It also used the double type to represent some interim values during its calculation - sometimes causing off-by-one rounding errors.
...
[SVN r79494]
2012-07-14 11:42:58 +00:00
Jurko Gospodnetić
69f101b623
Corrected Boost Jam's Windows FILETIME to POSIX time_t conversion. New implementation lifted shamelessly from the CPython implementation. The old implementation did not work correctly in all cases depending on the user's regional (timezone & daylight saving time) settings as well as the TZ environment variable (affects some C runtime library routines). It also used the double type to represent some interim values during its calculation - sometimes causing off-by-one rounding errors.
...
[SVN r79494]
2012-07-14 11:42:58 +00:00
Jurko Gospodnetić
743cc7ed4b
Boost Jam code cleanup - minor stylistic code changes & comment updates.
...
[SVN r79493]
2012-07-14 11:35:29 +00:00
Jurko Gospodnetić
ce0b0668b2
Boost Jam code cleanup - minor stylistic code changes & comment updates.
...
[SVN r79493]
2012-07-14 11:35:29 +00:00
Jurko Gospodnetić
0a656de095
Boost Jam code cleanup - cleaned up the timestamp.c module identifiers and better commented its functions.
...
[SVN r79489]
2012-07-13 23:14:40 +00:00
Jurko Gospodnetić
140242a5f5
Boost Jam code cleanup - cleaned up the timestamp.c module identifiers and better commented its functions.
...
[SVN r79489]
2012-07-13 23:14:40 +00:00
Jurko Gospodnetić
fb8fb8317e
Boost Jam code cleanup - minor stylistic code changes & comment updates.
...
[SVN r79488]
2012-07-13 23:11:45 +00:00
Jurko Gospodnetić
d7a0d333e4
Boost Jam code cleanup - minor stylistic code changes & comment updates.
...
[SVN r79488]
2012-07-13 23:11:45 +00:00
Jurko Gospodnetić
d7cf40907c
Reverted accidental commit in revision 79486.
...
[SVN r79487]
2012-07-13 23:09:58 +00:00
Jurko Gospodnetić
64f4372f29
Reverted accidental commit in revision 79486.
...
[SVN r79487]
2012-07-13 23:09:58 +00:00
Jurko Gospodnetić
ada97b6599
Boost Jam code cleanup - minor stylistic code changes & comment updates.
...
[SVN r79486]
2012-07-13 22:48:58 +00:00
Jurko Gospodnetić
d4a061618b
Boost Jam code cleanup - minor stylistic code changes & comment updates.
...
[SVN r79486]
2012-07-13 22:48:58 +00:00
Jurko Gospodnetić
b9fa41fecd
Boost Jam code cleanup - minor stylistic changes.
...
[SVN r79483]
2012-07-13 20:15:00 +00:00