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

1909 Commits

Author SHA1 Message Date
Dave Abrahams
44c5dff7eb Make response files work
[SVN r29401]
2005-06-03 12:00:35 +00:00
Vladimir Prus
f1a98f8139 Fix typo
[SVN r29373]
2005-06-02 12:04:45 +00:00
João Abecasis
3c284b74c5 Use only 'quickbook' main target from tools/quickbook.
[SVN r29370]
2005-06-02 10:59:29 +00:00
Vladimir Prus
2d83788eff Make sure -fPIC is added when compiling objects declared with the 'obj' rule.
[SVN r29369]
2005-06-02 09:24:24 +00:00
Toon Knapen
2d41235e04 compiler driver for fortran on HPUX
[SVN r29368]
2005-06-02 08:34:04 +00:00
Vladimir Prus
402b97049a Report locations of user/site config files with --debug-configuration.
[SVN r29367]
2005-06-02 08:10:43 +00:00
Vladimir Prus
7fda7a55ad Add support for Whale/Dolphin parser/lexer generators.
The toolsets are not very common, but:
1. I use them.
2. I've tied to maintaining this outside V2 CVS.
3. The toolset file is small.


[SVN r29366]
2005-06-02 08:04:40 +00:00
Vladimir Prus
bc5d8f9abc Finally fix darwin's -fcoalesce-templates logic.
Patch from Daniel Heck.


[SVN r29365]
2005-06-02 07:46:25 +00:00
Vladimir Prus
1fd7b00814 Fix typesetting problem. There were two adjacent <unlink> elements and
docbook would render them adjacent (without any spaces), no matter what I
try. So, I've just made the first ulink into a regular text.


[SVN r29364]
2005-06-02 07:32:57 +00:00
Vladimir Prus
e6d326b210 Quote the '&' symbol.
[SVN r29363]
2005-06-02 07:28:19 +00:00
Vladimir Prus
41b9672a82 Improve "linking" of libraries into static libraries.
When a library is present in sources of a static library, return it
to dependents via usage requirements, not by adding it to the list
of created targets.


[SVN r29362]
2005-06-02 07:19:11 +00:00
Vladimir Prus
5a44f04da8 Refactor generators a bit.
* If a generator was given a source it could not handle, it used to return
  that source together with generated targets. This was nice for some use
  cases, but no very nice for others, and this behaviour could not be turned
  off. One use case where it worked bad was:

      lib plugin : plugin.cpp helper ;
      lib helper : helper.cpp ;

  On windows, 'plugin' would link to the 'import library' and pass the DLL
  target though. So, when installing 'plugin', we'd also install 'helper.dll',
  and it was not possible to do anything about it.

* If we asked generators.construct to produce sources of type CPP,
  and the selected generator produced both targets of type CPP, and of
  some other type, we'd try again to convert those other targets to CPP.
  This simply complicated the logic for no good reason.

* Most generator function had 'multiple' parameter, which function
  was long forgotten by anybody.

As a bit of history, I believe some of the above decisions were due to a
certain use case:

          CPP <------- WHL
                          \
                            WD
                          /
          CPP <------- DLP

Here, a source file is converted to two targets with one command, and each
produced file is converted to CPP. Our generators search would notice that
there are two generators for CPP: the WHL->CPP and DPL->CPP
generators. Neither is better that the other so both are tried, and produce
(CPP, DPL) and (CPP, WHL) pairs of targets. To avoid reporting an ambiguity,
we'd try to convert, DLP to CPP and WHL to CPP, do it successfully, notice
that produced targets are the same and decide that there's no ambiguity.

However, this is rather complex logic for a relatively rare case. It can
be handled by writing another WD->CPP generator that would handle
disambiguation itself.

This commit has one user-visible change. The code:

  exe a : a.cpp b ;
  obj b : b.cpp helper;
  lib helper ;

No longer works -- the 'a' target won't link to 'helper'. However, this is
pretty stange code and worked before almost by accident.


[SVN r29361]
2005-06-02 06:43:56 +00:00
Vladimir Prus
39ca9ea59b When manipulating BOOST_BUILD_PATH, update the value in the .ENVRION module.
Otherwise, the added path elements won't be seen when loading user-config.jam
and site-config.jam and we'll get error when those files are present only
in V2 directories.


[SVN r29360]
2005-06-02 06:22:06 +00:00
Vladimir Prus
d6b93aaf2e Produce a nice message when .ENVIRON module is not provided by bjam.
[SVN r29359]
2005-06-02 06:00:41 +00:00
Toon Knapen
230ea321b3 use -fPIC option to compile object files that go into a shared library
[SVN r29345]
2005-06-01 14:37:37 +00:00
Vladimir Prus
3120f7fbaf Add test for multiple source-location, from Craig Rodrigues.
[SVN r29335]
2005-06-01 05:43:25 +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
Vladimir Prus
7305186c99 Don't localize rules when inheriting from another toolset.
Not sure why it worked this way in the first place. The problem is that
after inheriting parent rules no longer have access to variables in original
module, like "RM", and no longer work.


[SVN r29325]
2005-05-31 14:49:18 +00:00
Vladimir Prus
aa512d2751 Fix rpath setting on intel. I've used undefined SPACE variable.
[SVN r29323]
2005-05-31 14:47:41 +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
Dave Abrahams
4d9c1ec841 const-correctness for strings.[ch]
Removed flotsam from modules.h

Bind all environment variables, without any preprocessing for quotes,
spaces, or path separators, into the .ENVIRON module.


[SVN r29277]
2005-05-30 03:42:38 +00:00
Rene Rivera
251f3b62a0 Fix use of C++ declaration semantics/syntax, in C file. Well Aleksey fixed it already.. So just cleanup the indentation, etc.
[SVN r29257]
2005-05-28 16:02:54 +00:00
Aleksey Gurtovoy
e0dea56553 move definition to the top of the block to make code ANSI C compliant
[SVN r29256]
2005-05-28 15:56:31 +00:00
Dave Abrahams
54e1155fa1 Workaround for vc6 preprocessor bug.
[SVN r29252]
2005-05-27 18:32:23 +00:00
Dave Abrahams
a9c901d25d Finally, a real fix for the spawn problem, I hope.
[SVN r29250]
2005-05-27 17:06:30 +00:00
Vladimir Prus
a7ad78ddf3 Fix static lib suffix on OS X.
Thanks to Pedro Ferreira for the report.


[SVN r29247]
2005-05-27 15:19:58 +00:00
Vladimir Prus
22baee9043 Try to avoid passing -fcoalesce-templates with OSX 10.4, as it's not supported
there.

Based on patch from Craig Rodrigues.


[SVN r29244]
2005-05-27 15:07:07 +00:00
Vladimir Prus
3ae65f5640 Unbreak darwin, after darwin solib suffix was moved to types/lib.jam.
Patch from Craig Rodrigues.


[SVN r29242]
2005-05-27 14:53:08 +00:00
Rene Rivera
30692a4049 Fix building of bjam itself after floating options change. Needed to make sure that we eat up the multi arg options if they exist.
[SVN r29239]
2005-05-27 03:48:04 +00:00
Dave Abrahams
0b205d30d3 Eliminate undefined behavior and fix a spelling error.
[SVN r29238]
2005-05-27 03:18:08 +00:00
Dave Abrahams
815f689d3b Desperate attempt to avoid confusion between the Boost distribution and the Boost.Build distribution.
[SVN r29237]
2005-05-26 21:44:31 +00:00
Rene Rivera
a9e2ffa6a1 Remove restriction that option arguments need to be before target arguments. Options can now be intermixed with targets.
[SVN r29232]
2005-05-26 17:20:32 +00:00
Vladimir Prus
3da085194d Unroll incomplete changes to response files support.
I think that Dave committed then unintentionally in revision 1.36 and they
cause C++ files to be always recompiled. A better version is in the works
but cannot be committed yet, so I'll just restore the previous one for now.


[SVN r29198]
2005-05-26 05:54:16 +00:00
Dave Abrahams
348f90824b This change was required in order to get it to work on my installations.
[SVN r29193]
2005-05-25 19:04:12 +00:00
Dave Abrahams
0d74108229 manifest generation
[SVN r29192]
2005-05-25 19:03:32 +00:00
Vladimir Prus
411d1931dc Remove floatsam.
[SVN r29190]
2005-05-25 14:32:37 +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
bb2104ccb6 Fix error when installing with <install-source-root> and source file names
are absolute.


[SVN r29180]
2005-05-25 06:10:23 +00:00
Vladimir Prus
bc159afedb Clarify comments.
[SVN r29179]
2005-05-25 05:55:10 +00:00
Dave Abrahams
a02a2e7018 Made it work with an unmodified CWPro8 installation. Pro9 may still need its setup script tweaked.
[SVN r29174]
2005-05-24 17:13:02 +00:00
Dave Abrahams
3219877dd7 diagnose binding non-const reference to rvalue as a hard error.
[SVN r29173]
2005-05-24 17:11:30 +00:00
Toon Knapen
fdbb4ae754 added capability to handle <fflags>
[SVN r29171]
2005-05-24 15:27:30 +00:00
Dave Abrahams
ed4953f961 Added version-8.0-path to the list of possible-paths; its omission can't possibly have been intentional.
[SVN r29168]
2005-05-24 13:27:02 +00:00
Vladimir Prus
cdf5cbe153 Allow the 'source-location' attribute to list several directories.
Patch from Alexander Kabaev and Craig Rodrigues.


[SVN r29164]
2005-05-24 08:57:52 +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
c7bce34d14 Don't use 'jam' in tests -- it's not built by default now.
[SVN r29157]
2005-05-23 11:09:31 +00:00
Vladimir Prus
63a403d05c Some commentary.
[SVN r29154]
2005-05-23 06:35:28 +00:00
Toon Knapen
d8a85aca97 xlf compiler has no preprocessing and the -D option is used for soth. else
[SVN r29056]
2005-05-19 06:51:42 +00:00
Toon Knapen
e0b33b5698 port to windows
[SVN r28859]
2005-05-13 10:18:28 +00:00
Rene Rivera
f6815f3145 Patch from snaury@narod.ru to fix "a bug in file filent.c' in function file_archscan', which causes long .o files in archives invisible to jam, and thus jam always recompiles such .o files, when using, for instance, mingw".
[SVN r28703]
2005-05-06 23:46:50 +00:00