2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-13 00:12:11 +00:00
Commit Graph

147 Commits

Author SHA1 Message Date
Vladimir Prus
fa7edfe511 Automatically prepend "lib" prefix to LIB targets on Unix.
[SVN r29602]
2005-06-16 07:24:16 +00:00
Dave Abrahams
12dd819611 Immunize against the case when %HOMEDRIVE% and/or %HOMEPATH% are not
even defined in the environment.


[SVN r29332]
2005-06-01 01:52:46 +00:00
Dave Abrahams
088e2a02b0 Look in the user's real home directory first on NT.
[SVN r29312]
2005-05-31 02:33:54 +00:00
Vladimir Prus
648a7b2970 Do no call sequence.unique on result of GLOB-RECURSIVELY.
That was an old hack which was only needed in one context -- when we
passed both Jamroot and jamroot as patterns, got back Jamroot and jamroot
(because windows is case-insensitive and reports that both exist), and get
confused.

Calling 'unique' does not harm in most cases, but in Boost Jamfiles we glob
for all headers, and O(n^2) algorithm used by unique considerably slows us.


[SVN r29187]
2005-05-25 13:51:33 +00:00
Vladimir Prus
4e9af774ce Revamp path.glob.
The problem with the previous implementation is that it would iterate
over all elements in a dir even if 'pattern' had no metacharacters. First,
that was slow -- if you handed

  /cygdrive/w/My Documents/boost/test/a.cpp

to it, it would crawl all the way to the top, listing each directory and
checking each file. Second, it would fail, because Cygwin is broken and
does not show 'cygdrive' is the list of directory elements of '/'.

Now we check if a pattern has metacharacters, and if not, just do
a simple 'timestamp' call.

The new glob is implemented as new 'GLOB-RECURSIVELY' builtin. I've decided
to use builtin since otherwise, we'd need 'does this name exist' builtin,
and if we need new builtin, why don't implement all globbing in core.


[SVN r29163]
2005-05-24 07:57:56 +00:00
Vladimir Prus
4447529606 Fix setting of DLL search path for testing on CYGWIN.
[SVN r28509]
2005-04-28 12:05:22 +00:00
Vladimir Prus
05baf3245d Fix path.glob on cygwin.
It was completely broken with absolute windows paths because /cygdrive
is valid cygwin path, but 'cygdrive' is not shown when listing the '/'
directory.


[SVN r28508]
2005-04-28 08:04:41 +00:00
Vladimir Prus
adf2fa4533 Unbreak path.glob on Windows.
[SVN r28061]
2005-04-08 11:41:47 +00:00
Vladimir Prus
5ed8231d59 Cleanup path.glob and make it handle absolute paths without infinite looping.
[SVN r28018]
2005-04-06 15:27:41 +00:00
Vladimir Prus
97e91c8e3f Tweak computation of target names from source names.
* build/generators.jam
  (generator.generated-targets): Comment the desired semantics.

* util/utility.jam
  (basename): Take the part till the last dot, not the first.


[SVN r27374]
2005-02-14 08:25:07 +00:00
Dave Abrahams
1cc643b939 General system for get-xxxx() constants implemented
[SVN r27099]
2005-02-04 20:20:08 +00:00
Vladimir Prus
5b15a18ae3 * util/path.jam (glob): Call 'set.unique' on the result, to workaround
case-insensitivity of some platforms.


[SVN r26837]
2005-01-24 15:45:07 +00:00
Vladimir Prus
ae5634b7f3 Really fix include paths with spaces.
* util/print.jam: Do not quote the argument to the
  'echo' command on windows. It's special, and does not need quotes.
  Adding them will cause the quotes to always appear in the output,
  which would be different behaviour from Unix.

* tools/common.jam (response-file): Add quotes here.


[SVN r26836]
2005-01-24 15:16:00 +00:00
Vladimir Prus
9836220c83 Refactoring of virtual targets.
- Drop separate 'suffix' field in file targets. Store suffix as part of
  the name' field. This avoids the need to copy the suffix field and the
  name everywhere.
- Do not pass generated targets to constructor of 'action'. Instead,
  pass the acton to constructor of target.


[SVN r26778]
2005-01-21 08:42:51 +00:00
Vladimir Prus
7ece5c82b8 Use proper escaping on windows.
[SVN r26761]
2005-01-20 12:26:36 +00:00
Dave Abrahams
1095e9b580 Fix typo
[SVN r26616]
2005-01-02 00:39:24 +00:00
Dave Abrahams
e624d928bc Fix typo
[SVN r26615]
2005-01-02 00:35:36 +00:00
Vladimir Prus
29bc552733 Fix a regression in the 'glob' rule -- it is broken with the current bjam.
Handle ".." correctly.


[SVN r26595]
2004-12-28 17:54:35 +00:00
Vladimir Prus
8b1b6a2d02 Expand path.glob comments.
[SVN r26485]
2004-12-10 09:24:59 +00:00
Dave Abrahams
63adbc97f6 Factored html type out of boostbook.jam and in the process created a
modular system for registering new types.


[SVN r26484]
2004-12-10 02:39:57 +00:00
Vladimir Prus
58566b47bd * tools/common.jam (path-variable-setting-command): Allow to refer to
enviroment variables in the list of values. No it's possible to add
  an element to a variable.
* build/project.jam: Remove obsolete test.
* build/toolset.jam (find-property-subset): No longer local,
  so that test can call it.
* test/test.jam: Import 'print' and 'common'.
* util/print.jam: Comment out failing unit test.


[SVN r26413]
2004-12-03 10:46:05 +00:00
Vladimir Prus
8d9bd4d70b Allow the 'path.glob' and 'glob' Jamfile rule to accept wildcards in
directory names. For example:

  exe a : [ glob */*.cpp ] ;

now works.


[SVN r26398]
2004-12-02 09:41:31 +00:00
Vladimir Prus
40a504ed4f Allow a generator's 'run' method to return additional usage requirements
as the first elements of result. Those usage requirements will be combined
with explicitly specified for the main target.

This is yet another step towards making 'main target classes' unnecessary.

* build/generators.jam
  (try-one-generator): Check if generator returned usage requirements or not.
  (construct): Make sure first element of result is always property set.
  (many other methods): Induced changes

* tools/builtin.jam
  (exe-target-class, lib-target-class): Remove.
  (linking-generator, seached-lib-generator): Compute usage requirements.
  (archiving-generator): New class


[SVN r26192]
2004-11-12 08:11:14 +00:00
Vladimir Prus
09f523e5c7 Support for VMS paths.
Patch from Johan Nilsson.


[SVN r25872]
2004-10-26 11:43:19 +00:00
Vladimir Prus
b93371d75b Bugfix: searched libraries with dot in the name did not work on Windows.
[SVN r25470]
2004-09-29 09:52:21 +00:00
Vladimir Prus
54f21a7bec More strict checks in make-Unix.
[SVN r24932]
2004-09-06 07:29:46 +00:00
Vladimir Prus
ee85342c25 Don't error out when 'PATH', 'Path', or 'path' has empty elements.
[SVN r24889]
2004-09-03 11:20:51 +00:00
Vladimir Prus
0a9ffafd85 Improvements in RC files support.
- Specialized RC->RES generators were added for msvc. This allows
  to invoke setup script before calling rc.exe, which adds necessary
  include paths.
- Includes scanner for RC files added.

Thanks to Alexey Pakhunov for the patch.


[SVN r23036]
2004-06-07 07:24:24 +00:00
Vladimir Prus
38079ac203 Fix a typo. Note that teh code is now not used, replaced with native rule,
so this should be considered a documentation tweak.


[SVN r22541]
2004-03-22 07:37:05 +00:00
Vladimir Prus
2d883c64d5 Optimize library ordering by native rules.
[SVN r22281]
2004-02-16 08:30:13 +00:00
Vladimir Prus
36eb018984 Removed commented out debug prints
[SVN r22146]
2004-02-03 08:38:06 +00:00
Vladimir Prus
9034f3ba61 First version of proper library ordering for gcc.
[SVN r22079]
2004-01-30 14:10:24 +00:00
Vladimir Prus
ded2f35dbd * utils/paths.jam
(glob): Accept several directories, like builtin GLOB does.


[SVN r22050]
2004-01-29 13:49:14 +00:00
Vladimir Prus
7798afcd88 Unbreak doc.jam, broken by third argument to header scanning rule.
[SVN r21313]
2003-12-18 05:15:27 +00:00
Vladimir Prus
a2c0c53947 Make 'sequence.select-highest-ranked' native.
[SVN r21217]
2003-12-11 09:02:01 +00:00
Vladimir Prus
74741e6864 Add native version of 'regex.transform'. The rule is used during header
scanning, so should be as fast as possible.


[SVN r21205]
2003-12-10 11:29:09 +00:00
Vladimir Prus
62aeee6f78 The 'path.exists' rule is now native.
[SVN r21201]
2003-12-10 08:27:21 +00:00
Vladimir Prus
ccb28e2feb Minor refactorings.
[SVN r21200]
2003-12-10 08:10:13 +00:00
Vladimir Prus
6a9b3e32b2 * utils/set.jam
(difference): Use native rule.


[SVN r21199]
2003-12-10 07:58:05 +00:00
Vladimir Prus
0e023e35f0 Optimize the numbers module by new CALC builtin.
Patch from Pedro Ferreira.


[SVN r20434]
2003-10-21 06:48:04 +00:00
Vladimir Prus
ab988525ec Grab gcc threading support from V1.
[SVN r20431]
2003-10-21 05:50:33 +00:00
Rene Rivera
77862eab65 Replace license statement with Boost.License.
[SVN r20057]
2003-09-15 00:16:10 +00:00
Vladimir Prus
a93dda7b37 * new/indirect.jam
(make-qualified): Bugfix. When processing gcc.link.dll rule, take 'gcc' as
  module name, not 'gcc.link'. The previous behaviour caused 'gcc.link.dll'
  to be called in context of 'gcc.link' module. As the result the global
  definition of 'gcc.link.dll' was called. That definition is created by jam
  when it sees 'actions gcc.link.dll' and has no executable code associated
  with it. So, rule 'gcc.link.dll' was never executed.


[SVN r20009]
2003-09-11 06:38:39 +00:00
Vladimir Prus
8c2aa80007 * new/container.jam
(vector.equal): Fix a bug, which causes all vectors with different sizes
   to be considered equal.


[SVN r19836]
2003-08-28 13:53:06 +00:00
Vladimir Prus
286825f9d5 Rename 'xclass' to 'class'.
[SVN r19458]
2003-08-05 05:25:33 +00:00
Vladimir Prus
a9cb673c30 Rename 'xnew' to just 'new'.
[SVN r19434]
2003-08-04 11:12:30 +00:00
Vladimir Prus
c354977097 New builtin NORMALIZE_PATH.
[SVN r19431]
2003-08-04 09:29:28 +00:00
Vladimir Prus
4ec3f81593 New builtin SORT.
[SVN r19430]
2003-08-04 09:27:47 +00:00
Vladimir Prus
df07d2f0d0 Convert remaining classes.
[SVN r19429]
2003-08-04 09:25:34 +00:00
Vladimir Prus
c1e3f990f1 Move generators to new-style classes.
[SVN r19427]
2003-08-04 09:19:54 +00:00