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

545 Commits

Author SHA1 Message Date
Vladimir Prus
7b04c1fcf1 Merge from trunk.
[SVN r33816]
2006-04-25 16:17:10 +00:00
Vladimir Prus
87cdf623f8 Merge from trunk.
[SVN r33793]
2006-04-24 14:00:53 +00:00
Vladimir Prus
ee995fa671 Merge from trunk.
[SVN r33657]
2006-04-11 07:31:55 +00:00
Vladimir Prus
13630cf4bd Merge from trunk.
[SVN r33653]
2006-04-11 06:02:22 +00:00
Vladimir Prus
141f73ea5b Merge from trunk
[SVN r33628]
2006-04-10 09:44:30 +00:00
Vladimir Prus
bb84aa1359 Check that the value of the <tag> feature may be local rule name,
not fully-qualified.


[SVN r33168]
2006-02-28 07:22:47 +00:00
Vladimir Prus
1970b3942d Allow <name> work for 'install', when there's a single source
[SVN r33064]
2006-02-21 13:08:53 +00:00
Vladimir Prus
07ac3c138a Another attempt to workaround warning on HP-CXX.
[SVN r32894]
2006-02-13 13:33:27 +00:00
Vladimir Prus
0458857ab9 Rename 'lib c' to 'lib cc' because HP-CXX compiler confuses 'libc.so' with
the system C runtime library.


[SVN r32891]
2006-02-13 12:29:57 +00:00
Vladimir Prus
23e1aac976 Attempt to suppress a warning
[SVN r32887]
2006-02-13 10:56:47 +00:00
Vladimir Prus
c0a2d3b8e6 Fix a problem where <implicit-dependency> had no effect unless
the target named by the property was also build (by virtue of being in
the same Jamfile and not marked as "explicit").


[SVN r32885]
2006-02-13 10:34:45 +00:00
Vladimir Prus
7dac85a322 Add a test that <source> in 'lib' works even if there's no explicit sources.
[SVN r32882]
2006-02-13 07:51:33 +00:00
Rene Rivera
13cfc022e9 Adjust Boost.Jam references to new root/tools/jam location.
[SVN r32873]
2006-02-12 23:18:46 +00:00
Markus Schöpflin
a05a4a09f8 Added Tru64 support.
[SVN r32809]
2006-02-10 16:05:26 +00:00
Vladimir Prus
d828779fbb For
bjam --clean some_main_target

don't clean files belonging to other main targets, even if those other main
targets are dependencies of 'some_main_target'.


[SVN r32760]
2006-02-09 09:42:52 +00:00
Vladimir Prus
7d6c2a772f Change the --clean option to only clean targets under references projects.
Add the --clean-all option to clean everything.


[SVN r32739]
2006-02-08 15:24:31 +00:00
Vladimir Prus
e3598c27fd Forgotten change to inline.py.
This was supposed to go together with "ignore suffix of main target name"
patch.


[SVN r32724]
2006-02-08 09:30:43 +00:00
Vladimir Prus
a9543e3b57 Unbreak 'make_test.py'. Adjust it to not use extra argument to the rule passed
to 'make', sine it's no longer supported.

Allow to call 'flags' on local rule. Use flag settings on local rule to
implement the effect previously achieved with extra arguments.


[SVN r32723]
2006-02-08 09:29:35 +00:00
Vladimir Prus
a73f7de23d Allow typed main targets to have arbitrary suffix in the name, that does not
affect the names of the generated targets and only usefull for preventing
V2 from treating two independent targets as target alternatives.


[SVN r32720]
2006-02-08 08:06:31 +00:00
Vladimir Prus
3764b81c4e Implement <build>no.
[SVN r32708]
2006-02-07 13:46:02 +00:00
Vladimir Prus
4c1960e774 Implement 'indirect conditional requirements', which are simular to V1's
convention that rules used in requiremenst are called to provide extra features.


[SVN r32694]
2006-02-07 10:26:17 +00:00
Vladimir Prus
a2ade745b1 Make the 'explicit' rule always operate on the current project.
[SVN r32654]
2006-02-06 15:26:56 +00:00
Vladimir Prus
75064ea061 Fix "depends on itself" warning emitted when there were directory and
a file with the same name.


[SVN r32433]
2006-01-27 11:10:39 +00:00
Vladimir Prus
dd110d3c34 Add a test for the "bjam foo.o" feature.
[SVN r32429]
2006-01-27 10:34:58 +00:00
Vladimir Prus
763d52aa58 When resolving target id, first look for target in Jamfile, then for
file in current dir. This partially reverts rev 1.117 of build/targets.jam.

See test for further explanations.


[SVN r32377]
2006-01-23 09:41:18 +00:00
Vladimir Prus
4180453ade Update the test template.
[SVN r32376]
2006-01-23 09:24:26 +00:00
Vladimir Prus
ec0580a8c1 Serious bugfix: for <include> properties with absolute pathnames on
windows, we ignored dependencies to headers in those directories.

This change is a quick fix, a better fix will follow later.


[SVN r32375]
2006-01-23 08:18:48 +00:00
Vladimir Prus
ebabe8f792 Supposedly make library_chain.py work on Windows.
The issue is that when with new response files the names of libraries we're
trying to link to is not emitted with "bjam -n", so remove "-n" and explicitly
look in response files.


[SVN r32341]
2006-01-17 09:32:57 +00:00
Vladimir Prus
6d4c855fff When installing .cpp files, don't scan them for #includes. It's pointless,
we don't compile.

Thanks to Franz Schnyder for the bug report.


[SVN r31756]
2005-11-23 16:10:41 +00:00
Vladimir Prus
cb9a32b764 Unbreak project_test4
[SVN r31646]
2005-11-14 14:38:23 +00:00
Vladimir Prus
0125984e83 Unbreak generators_test:
- rename UI type to TUI to avoid conflicts with Qt
- adjust to print.text changes


[SVN r31645]
2005-11-14 14:36:45 +00:00
Vladimir Prus
7a6f8a37ee Unbreak dependency_test. It was used print.echo-cmd that got removed recently.
[SVN r31644]
2005-11-14 14:25:15 +00:00
Vladimir Prus
484b71cf3f Adjust tests to the fact that print.text no longer implicitly adds newline.
[SVN r31643]
2005-11-14 13:38:49 +00:00
Vladimir Prus
2b56b3434f Revive the project_test3 test.
[SVN r31035]
2005-09-19 08:49:50 +00:00
Vladimir Prus
db0d944e94 Fix a link failure on Unix for a main -> libb -> liba scenario,
where libb is a target in Boost.Build and liba is a file referred to by name.


[SVN r30590]
2005-08-16 10:58:22 +00:00
Vladimir Prus
935b2236db Fix using of 'glob' in project root rules.
There were two problems:
- 'glob' was using __name__ as the name of the project and not
  project.current, so it would search in project root, and not in child
  project that inherited project root rules.
- the 'import' that's overrided in project context used __name__ to
  restore the value of current project

Thanks to Emil Dotchevski for the bug report.


[SVN r30507]
2005-08-08 09:31:39 +00:00
Vladimir Prus
977d086664 Unbreak " lib a ; " syntax.
Thanks to Craig Rodrigues for the bug report.


[SVN r30309]
2005-07-29 12:00:40 +00:00
Vladimir Prus
8f9edf178d Ignore some files in CVS operations
[SVN r30307]
2005-07-29 08:42:42 +00:00
Dave Abrahams
9743353f89 Fix copyright and documentation
[SVN r30219]
2005-07-22 18:46:20 +00:00
Vladimir Prus
1f5750af86 Unbreak <install-source-root> when building from subdirectories.
[SVN r29803]
2005-06-27 12:19:50 +00:00
Vladimir Prus
68d3b8f280 Add the 'notfile' target.
[SVN r29606]
2005-06-16 08:24:01 +00:00
Vladimir Prus
3a7327a605 Automatically prepend "lib" prefix to LIB targets on Unix.
[SVN r29602]
2005-06-16 07:24:16 +00:00
Vladimir Prus
d7bdc38c6c Allow "bjam some_directory" to work even if there's no Jamfile in ".".
[SVN r29588]
2005-06-15 13:26:37 +00:00
Vladimir Prus
c921b04cfb Correct license text
[SVN r29587]
2005-06-15 13:19:07 +00:00
Vladimir Prus
4d6bfe4eef Rename link-runtime to runtime-link to stay compatible with V1.
[SVN r29586]
2005-06-15 12:24:06 +00:00
Vladimir Prus
900240c47d Don't run 'library_order' on cygwin, because test relied on gcc/Linux shlib
linking mode.


[SVN r29490]
2005-06-09 08:03:42 +00:00
Vladimir Prus
7b2749353b 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
08aba8f757 Add test for multiple source-location, from Craig Rodrigues.
[SVN r29335]
2005-06-01 05:43:25 +00:00
Vladimir Prus
a9144a5ec3 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
c6b899c0ea Don't use 'jam' in tests -- it's not built by default now.
[SVN r29157]
2005-05-23 11:09:31 +00:00