Commit Graph

35 Commits

Author SHA1 Message Date
Rene Rivera
85e5a2caa8 Port b2 tests to dual py2 and py3.
Now that the tests work in py2 or p3 we don't set py version in AP. This
allows for dealing with the AP images that don't have a way to set the
py version.
2019-03-31 15:37:03 -05:00
Steven Watanabe
429081e45e expect_content inadvertently ignored the first element. 2018-01-08 15:56:53 -07:00
Rene Rivera
40e7f0e8dd Fix tests to pass on Windows after removing toolset requirements ignore.
Various restructure of test framework handling of paths to avoid duplicate path editing which caused failed tests. Adjust many tests to deal with added subdirectories in build outputs now that toolset requirements are active.
2017-07-02 23:28:48 -05:00
Jurko Gospodnetić
f20f88b91d Renamed differently named Jamroot and Jamfile files throughout Boost Build's test suite to jamroot.jam & jamfile.jam. Stylistic changes throughout the whole Boost Build test suite.
[SVN r48504]
2008-08-31 21:42:27 +00:00
Rene Rivera
602b6d8b13 Add/update copyrights+license (with help of a shell script).
[SVN r35856]
2006-11-05 18:13:42 +00:00
Vladimir Prus
29f34eb193 Remove 'link-incompatible' attribute from some feature, most notable
'toolset' and 'threading'. The reason is that current link-compatibility
check is way too simple minded and produces bogus warnings. For example,
linking MT library into single threaded application is OK. Likewise, some
toolsets are link-compatible.

We might need a better mechanism, but for now just make the feature
link-compatible. Useless warnings are much worse than failure to report
link-incompatibility in some cases.


[SVN r22949]
2004-05-27 07:39:17 +00:00
Vladimir Prus
a3ac522cd1 Improve NDEBUG handling. Specify <define>NDEBUG as part of <variant>release,
instead of setting it on when there's <optimization>speed. Also, now we
don't use active features at all.


[SVN r21666]
2004-01-13 10:18:09 +00:00
Vladimir Prus
b2b6e2769b Simplify target paths.
* build/targets.jam
  (project-target.reference-properties): Remove.

* build/virtual-target.jam
  (abstract-file-target.specific-main-target,
   file-target.specific-main-target): Remove.


[SVN r20516]
2003-10-28 07:46:40 +00:00
Vladimir Prus
c159616543 Drop useless test which causes problems on windows.
[SVN r20334]
2003-10-10 12:28:04 +00:00
Vladimir Prus
959782b4d4 Enable some previously commented out test.
[SVN r20205]
2003-09-29 15:17:18 +00:00
Vladimir Prus
05c4757d82 Implement a somewhat better link-compatibility check.
* new/targets.jam
  (basic-target.check-for-link-compatibility): New rule.
  (basic-target.generate-sources, basic-target.generate): Call the above.


[SVN r20191]
2003-09-26 11:13:42 +00:00
Vladimir Prus
0419f26474 Drop the notion of link-compatibility. We don't really want it for
projects, and for individual targets, it will reappear later.

* new/property.jam:
  (refine): Don't check for link-compatibility.

* new/targets.jam
  (project-target.generate): Don't call 'refine' and don't emit any
  warnings.

  (basic-target.match-rank): The alternative selection mechanism dependended
  on link-compatibility in some way. Work around the difference in semantic
  we have now. This will be resolved in a more clean way later.

* new/property-set.jam
  (property-set.link-incompatible, property-set.link-incompatible-with):
  New methods.


[SVN r20190]
2003-09-26 10:22:22 +00:00
Vladimir Prus
b040c8b42e Bugfix: set NDEBUG for release builds.
* new/builtin.jam: Make <optimization>speed active property and add
  <define>NDEBUG for it.

* test/ndebug.py: New test.


[SVN r18250]
2003-04-14 11:02:34 +00:00
Vladimir Prus
8c8f99e835 Refactorings.
* new/targets.jam
    (main-target.select-alternatives): New rule.
    (main-target.generate): Simplify, using the above.

* new/errors.jam
    (error): Do EXIT if --no-error-backtrace is given.

* tests/alternatives.py: New test.


[SVN r17673]
2003-02-27 14:25:26 +00:00
Dave Abrahams
09d88e1f8e Fixes for testing
[SVN r17642]
2003-02-25 14:37:10 +00:00
Vladimir Prus
e017ca640f Towards really cross-toolset testing system.
- Allow to specify toolset name on the command line
- Expand $toolset in paths
- Pass toolset name to bjam invocations.


[SVN r17555]
2003-02-20 13:08:51 +00:00
Vladimir Prus
2f58129645 Automatically adjust suffixes when running tests.
[SVN r17505]
2003-02-18 08:32:57 +00:00
Dave Abrahams
38ca2de3b2 untested MSVC toolset
untested response-file support
expanded optimization to speed/space/off

removed module_actions.PYC
validate multiple properties at once.
Fix bugs in type.jam, virtual-target.jam, symlink.py


[SVN r17487]
2003-02-17 15:16:35 +00:00
Vladimir Prus
aec91ee0fe Improve diagnostics.
[SVN r17220]
2003-02-05 08:00:06 +00:00
Vladimir Prus
2d57d47b45 Work on BB14: allow target suffixes to depend
on build properties.

* new/builtin.jam
    Introduce "os" feature.

* new/gcc.jam
    Make object suffix "o" on all platforms.

* new/property.jam
    (property-map): New class.

* new/type.jam
    (.suffixes): Global propety-map instance, to
	keep properties->suffix mapping.
    (set-generated-target-suffix): New rule
    (generated-target-suffix): New argument
	'properties'.

* new/virtual-target.jam
    (abstract-file-target.actual-name): Pass
	properties to type.generated-target-suffix.

* test/project_test4.py
    Don't specify expected list of build properties,
    since it's not stable. Check head of error message
    only.


[SVN r16700]
2002-12-25 07:18:34 +00:00
Vladimir Prus
cfe61e5caa Introduce the <dll-path> and <hardcode-dll-paths> features.
* gcc.jam: Handle the <dll-path> feature.

* builtin.jam
    New features <dll-path> and <hardcode-dll-paths>.
    (link-action.adjust-properties): Add library's
    full paths to <dll-path> when <hardcode-dll-paths>
    is specified.


[SVN r16588]
2002-12-11 17:40:48 +00:00
Vladimir Prus
149a9f83ef Improve shared/static linking interface and
introduce separate <link-runtime> feature.
Allow to use the 'lib' rule to declare
libraries that should be searched for.

* builtin.jam: Remove 'shared' features. Introduce
   'link' and 'link-runtime'.
   (searched-lib-target): New class
   (searched-lib-generator): New generator.
   (lib-action): New class, derived from 'action'.
   Handles instances of 'searched-lib-target' in sources.
   Also, moves all libraries from sources to property value,
   so that we can repeat them twice in command line.
   (lib-generator): Generator which uses 'lib-action'.

* generators.jam: Allow empty list of sources everywhere.

* virtual-target.jam (file-target): Split into
   'abstract-file-target' and 'file-target'.
   (abstra
  (action.actualize-sources): New rule. Allows to
  handle the fact that some sources are special,
  and should not become $(>) in action body.


[SVN r16573]
2002-12-09 10:02:37 +00:00
Vladimir Prus
d58cc867f1 Test for composite properties in target references.
[SVN r16347]
2002-11-20 16:38:53 +00:00
Vladimir Prus
b6d69f0b88 Revive all the tests.
* boost_build_v2.html: Document new option.

* new/generators.jam (find-viable-generators): Revert part of Dave's
   commit, essentially disabling finding base type generators.
   This part breaks a test, and need to be thinked about.

* new/errors.jam: Handle "--no-error-backtrace" option.

* test/project_test4.py: Adjust for new error syntax.


[SVN r16233]
2002-11-14 10:17:50 +00:00
Vladimir Prus
75230dc75a First implementation of "stage" and "prebuilt" rule.
* new/common.jam (copy): New rule.

* new/targets.jam (main-target.generate): Use a different
   algorith for selecting subvariant. Favour one with
   the longest intersection of requirements with build
   properties.

* new/virtual-target.jam (virtual-target): Eliminate 'subvariant'
   attribute. Use properties of action to for the same
   purpose. New methods 'set-path' and 'extra-grist'.


[SVN r16129]
2002-11-06 10:26:11 +00:00
Vladimir Prus
12518b72c2 Sundry improvements:
Bison and lex support.
    unit-test rule
    --version option
    default build really works

    * new/build-system.jam: Bugfixes. Added "--version" option.

    * new/project.jam: If default-build is not specifies, don't stick "debug".

    * new/property.jam (evaluate-conditionals): New rule.

    * new/targets.jam (basic-target.generate): Evalute conditional properties.

    * test/BoostBuild.py (Tester.maybe_do_diff): New method.
        (Tester.run_build_system): Call the above method when
        appropriate.


[SVN r15771]
2002-10-07 13:34:14 +00:00
Vladimir Prus
791b5ad620 Implement variant declaration.
* builtin.jam (variant): New rule.

    * build-system.jam: Unconditionally add <toolset>gcc to build
        request. Will be fixed when toolset support is ready.

    * feature.jam (extend-feature): Bugfix.


[SVN r15678]
2002-10-03 16:29:21 +00:00
Vladimir Prus
2977f296d2 Skip projects when property refinement for them fails.
Skip main targets when no alternative can be build.
Issue error when 'construct' for alternative fails.


[SVN r15676]
2002-10-03 15:01:09 +00:00
Vladimir Prus
609dd1f6ab Introduced SHARED-LIB and STATIC-LIB target types. Also introduced LIB target
type and a generator, which relays either to SHARED-LIB or STATIC-LIB,
depending of the value of "shared" feature.


[SVN r15529]
2002-09-27 07:35:03 +00:00
Vladimir Prus
670c715402 Propagate only propagated properties.
[SVN r14884]
2002-08-15 08:42:08 +00:00
Vladimir Prus
650a824995 Made names of preserved directories printed by tests.
* test/TestCmd.py (TestCmd.cleanup): Print the names of preserved
        directories. Reset self._dirlist even if directories are preserved.
    * test/BoostBuild.py (Tester.cleanup): New method.


[SVN r14489]
2002-07-17 09:16:37 +00:00
Vladimir Prus
8e64eb262d Deleted project_test2 and moved the interesting tests from it to project_test4.
[SVN r14404]
2002-07-11 10:01:53 +00:00
Vladimir Prus
8c70c8b287 Work on issue 577833: Finish target paths.
* new/targets.jam (main-target.generate) Add extra path component to
        virtual target which free properties are not equal to project's.
        (basic-target.generate): Pass refined properties to 'construct'.
        (virtual-target.extra-path): New rule.
        (virtual-target.actualize): Make use of extra path.
    * new/property.jam (take-free): New rule.


[SVN r14396]
2002-07-10 16:05:15 +00:00
Vladimir Prus
52a21fa88c Implemented main target alternative selection.
* new/targets.jam (main-target.generate): Select the alternative
         based on the list of non-free requirements.
     * new/property.jam (remove-free): New rule, removes free property from
         a property set.


[SVN r14391]
2002-07-10 08:37:31 +00:00
Vladimir Prus
b0c9980865 Specifying target properties in target references now actually work.
* new/targets.jam (basic-target.generate-source): Fix regex.
    * test/project_test4.py: New test.


[SVN r14374]
2002-07-09 15:57:21 +00:00