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

1213 Commits

Author SHA1 Message Date
Jurko Gospodnetić
773387d1a2 Boost Jam cleanup - minor stylistic changes.
[SVN r80113]
2012-08-21 15:43:30 +00:00
Jurko Gospodnetić
90c761a1bc Boost Jam cleanup - minor stylistic changes.
[SVN r80111]
2012-08-21 14:30:13 +00:00
Jurko Gospodnetić
fc020b5581 Boost Jam cleanup - minor stylistic hashing code changes (merged internal hashhdr & item structures, brace positioning, shortened comparisons with 0, comment updates, trimmed trailing spaces, removed redundant 'register' keywords).
[SVN r80110]
2012-08-21 13:28:32 +00:00
Steven Watanabe
1e07fc77a1 Add missing #include. Fixes #7243.
[SVN r80097]
2012-08-20 21:54:26 +00:00
Jurko Gospodnetić
0f2bba4947 Internal Boost Jam cleanup - internal ShortPathToLongPath() function renamed to canonicWindowsPath() and commented better, related normalize_path() function commented better as well.
[SVN r80094]
2012-08-20 12:48:09 +00:00
Jurko Gospodnetić
5ac8ae9d38 Boost Jam cleanup - there is no need to convert a short Windows path to its long format except to generate that path's canonic format, i.e. to get the same value for the same file system entry, independent of the original path string used to identify that entry. To get closer to that effect in the ShortPathToLongPath() function, we remove a recently added optimization of not processing file/folder names that are certainly not in their short format. By processing such names we can correctly remove more unimportant case differences between different path strings representing the same file system entry, i.e. get the same canonic path string for them.
[SVN r80092]
2012-08-20 11:54:10 +00:00
Jurko Gospodnetić
c5daedb64c Boost Jam code cleanup - minor stylistic comment change.
[SVN r80086]
2012-08-19 18:25:31 +00:00
Jurko Gospodnetić
d954449737 Fixed Boost Jam's internal list structure allocation bug - due to a typo the list_new() operation did not work correctly on systems where LIST * is smaller than LIST (e.g. if LIST * is smaller than OBJECT * or OBJECT * is smaller than an int). Removed code duplication between list_new() & list_alloc(). Contributed by Kohei Takahashi <flast at flast.jp>.
[SVN r80064]
2012-08-17 07:23:03 +00:00
Jurko Gospodnetić
31d5763145 Boost Jam cleanup - minor stylistic changes.
[SVN r80063]
2012-08-17 07:15:18 +00:00
Jurko Gospodnetić
ac295e5f52 Boost Jam cleanup - renamed the path_key__register_long_name() function to path_register_key() and improved related comments, minor stylistic changes.
[SVN r80035]
2012-08-14 15:24:27 +00:00
Jurko Gospodnetić
30da211307 Boost Jam cleanup - made one errno global variable usage instance more localized.
[SVN r80034]
2012-08-14 14:35:44 +00:00
Jurko Gospodnetić
8ff5907df1 Boost Jam cleanup - removed the internal short_path_to_long_path() function as it has now been completely superseded by path_as_key(). Updated several related code comments.
[SVN r80033]
2012-08-14 14:07:09 +00:00
Jurko Gospodnetić
b06d94e6e3 Boost Jam cleanup - updated #include directives in the modules/path.c module.
[SVN r80032]
2012-08-14 13:00:37 +00:00
Jurko Gospodnetić
243b18b105 Boost Jam cleanup - minor stylistic changes.
[SVN r80031]
2012-08-14 12:56:10 +00:00
Jurko Gospodnetić
452d6dbeba Boost Jam cleanup - minor stylistic changes.
[SVN r80019]
2012-08-14 04:44:24 +00:00
Jurko Gospodnetić
a2413be235 Restored old Boost Jam '-v' version information screen to what it was like before revision [79779] as requested by Steven Watanabe. Boost Jam now reports its minimum supported path modification timestamp resolution using a new builtin JAM_TIMESTAMP_RESOLUTION variable. Updated Boost Build's internal testing system to correctly fetch this Boost Jam version information.
[SVN r79880]
2012-08-05 18:31:19 +00:00
Steven Watanabe
5b1cbbd531 Fix mode for mkdir.
[SVN r79852]
2012-08-02 15:19:18 +00:00
Jurko Gospodnetić
f4e7f9a811 Minor stylistic changes (added const modifiers in a couple of places).
[SVN r79842]
2012-08-02 09:16:34 +00:00
Jurko Gospodnetić
103f8d7893 Updated Boost Jam to know how to report its minimum supported file modification timestamp resolution (currently reported as part of Boost Jam's version information). This allows external tools using Boost Jam to adapt to Boost Jam's potential ignorance of fine file modification timestamp changes.
For example, Boost Build's internal testing framework may use this information to reduce the time it spends doing nothing by sleeping until enough time passes to make newly created or touched files be correctly recognized by Boost Build.

[SVN r79780]
2012-07-28 09:20:29 +00:00
Jurko Gospodnetić
f7316995e6 Boost Jam version information output cleaned up a bit to make it easier to update it with additional information.
[SVN r79779]
2012-07-28 09:04:41 +00:00
Jurko Gospodnetić
b28fc465c3 Boost Jam code cleanup - minor stylistic changes.
[SVN r79778]
2012-07-28 08:58:39 +00:00
Jurko Gospodnetić
a3a1170ec1 Boost Jam cleanup - minor stylistic changes.
[SVN r79693]
2012-07-23 09:02:49 +00:00
Jurko Gospodnetić
f9f7b0204e Updated the Windows Boost Build implementation to use direct Windows APIs instead of the Windows POSIX layer & standard C library functionality for collecting information about files. Now returns file timestamps with much better precision than 1 second.
[SVN r79691]
2012-07-23 07:26:02 +00:00
Jurko Gospodnetić
344d758e94 Boost Jam cleanup - removed internal file size tracking. The data was being collected but never actually used and did not support file sizes larger than can fit in a 32 bit integer.
[SVN r79677]
2012-07-22 16:52:53 +00:00
Jurko Gospodnetić
28200e7f97 Boost Jam cleanup - minor comment corrections.
[SVN r79675]
2012-07-22 16:10:36 +00:00
Jurko Gospodnetić
64494521bf Boost Jam cleanup - removed defective header parsing code seemingly intended for stripping trailing newline characters from read lines. This code has never done anything since it was originally added so there seems no reason to 'fix' it to do what it 'seems to have been intended to do'.
[SVN r79674]
2012-07-22 16:05:58 +00:00
Jurko Gospodnetić
fde452f38f Boost Jam cleanup - minor stylistic changes.
[SVN r79673]
2012-07-22 15:43:04 +00:00
Jurko Gospodnetić
35f4195ec7 Boost Jam cleanup - cleaned up some header includes, minor stylistic changes.
[SVN r79672]
2012-07-22 14:53:50 +00:00
Jurko Gospodnetić
89f740660f Boost Jam/Build code cleanup - minor stylistic changes.
[SVN r79620]
2012-07-20 14:20:55 +00:00
Jurko Gospodnetić
bae5e920ac Boost Jam code cleanup - removed an old, untested and up to recently definitely non-compiling 'old Borland compiler' code branch in the filent.c module. The compilers in question themselves are Borlands free compiler tools predating the more modern and more standard compliant free 'Visual Studio Express' toolchain so there should be no need for anyone to depend on them any more.
[SVN r79618]
2012-07-20 10:57:31 +00:00
Jurko Gospodnetić
4e711ebd44 Minor stylistic change.
[SVN r79593]
2012-07-19 02:58:55 +00:00
Jurko Gospodnetić
681b6609af Boost Jam code cleanup - minor stylistic changes (added missing spaces around some parameters inside brackets in C code).
[SVN r79587]
2012-07-18 15:06:44 +00:00
Jurko Gospodnetić
cbb48b5d01 Updated Boost Jam implementation comment related to it adding internal fake INCLUDES relationships between targets built by a single action in order to make sure none of them may get used until their action had successfully completed its work.
[SVN r79586]
2012-07-18 14:50:53 +00:00
Jurko Gospodnetić
35883dacc0 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ć
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ć
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ć
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ć
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ć
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ć
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ć
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ć
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ć
fe47abe424 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ć
743cc7ed4b 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ć
fb8fb8317e 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ć
ada97b6599 Boost Jam code cleanup - minor stylistic code changes & comment updates.
[SVN r79486]
2012-07-13 22:48:58 +00:00