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

1349 Commits

Author SHA1 Message Date
Vladimir Prus
83ed59d79b Fix a couple of fallouts from the default build change.
* new/make.jam
  (make): Pass 'default-build' in the right position.

* new/targets.jam
  (basic-target): Use empty property-set if no default-build is passed.
  (main-target): Use 'raw' to test property-set for emptines. The string
  emptyness test that use to be there does not works for property-sets.


[SVN r18440]
2003-05-19 10:28:02 +00:00
Vladimir Prus
ad92677c12 Check for bjam 3.1.5.
[SVN r18439]
2003-05-19 10:09:56 +00:00
Vladimir Prus
5df16b625e Bump bjam version to 3.1.5. The current V2 codebase won't work with
older bjams, at all.


[SVN r18437]
2003-05-19 10:07:00 +00:00
Vladimir Prus
254e4195c8 Fix a bug with default build handling. The bug was caused by the fact that
default build was stored as plain list, and implied properties were not
converted. E.g. we had "debug release", not "<variant>debug <variant>release",
which was assumed.

* new/targets.jam
  (main-target, basic-target): Store 'property-set' as default-build
  attribute.
  (main-target-default-build): Use 'property-set.create-with-validation'.

* new/property-set.jam
  (create-with-validation): New rule.

* test/default_build.py: More tests.


[SVN r18436]
2003-05-19 09:54:08 +00:00
Vladimir Prus
85f7aa7304 Add missing imports.
[SVN r18435]
2003-05-19 09:01:11 +00:00
Dave Abrahams
69e27f57bf * expand.c - Implemented :W modifier for Cygwin->Windows path
translation.  Cleaned up indentation and idiomatic use of string.

* index.html - documented recent features including VARNAMES and
  DELETE_MODULE

* borland.jam, msvc.jam - use the new :W modifier to simplify
  code (but only somewhat)

* BoostBuild.py - ignore MSVC .ilk files under Cygwin and NT


[SVN r18434]
2003-05-19 06:30:44 +00:00
Dave Abrahams
44b48fc7df * Restored the printing of qualified names from invoked actions.
Consequently rolled back the workaround in make_rule.py

* Added new indirect rule invocation module for encoding the module to
  invoke a rule from as well as the exact name to invoke it by, and
  for subsequent invocation.

* Fixed module __test__ rules so they really do execute in a separate
  module.  Associated tweaks to __test__ in path.jam


[SVN r18427]
2003-05-16 16:30:13 +00:00
Dave Abrahams
cb47933367 Added missing import
[SVN r18426]
2003-05-16 15:51:36 +00:00
Dave Abrahams
e44382cb5b Fixed scoping of invocations to typechecking rules. They weren't being
executed in the right module.


[SVN r18425]
2003-05-16 15:51:08 +00:00
Vladimir Prus
a644f2547e Unbreak 'searched_lib.py'.
* new/virtual-target.jam
  (null-action): Pass '.no-action' as action name, not 'no-action'. The
  action name is really dummy, it's not used at all. However, when it does
  not include dot, the smart 'action' ctor will assume it's local and prepend
  module name to it. The calling module will be 'null-action' instance module,
  always unique, and as result, no two targets with null actions will be
  equal, as far as 'virtual-target.register' is concerned.


[SVN r18424]
2003-05-16 12:57:40 +00:00
Vladimir Prus
a7d40e46c4 Add a (terrible verbose, but hopefully clear) commentary.
[SVN r18423]
2003-05-16 12:49:59 +00:00
Vladimir Prus
cdd7a5cc87 Unbreak make_rule.py. The change in actions reporting broke it.
[SVN r18422]
2003-05-16 12:38:50 +00:00
Vladimir Prus
96badcb2f7 Run 'unused' now that it works.
[SVN r18421]
2003-05-16 12:15:36 +00:00
Vladimir Prus
26413a973a Add missing import.
[SVN r18420]
2003-05-16 12:14:56 +00:00
Vladimir Prus
bf2a14940a Remove ECHO. I'm not sure if it was for debugging or not, but the list
of all actions that jam could possibly execute is not good-looking. E.g:

    gcc.compile
    gcc.link-dll
    gcc.compile
    gcc.link
    ...found 19 targets...
    ...updating 9 targets...
    MkDir1 app/bin/gcc
    MkDir1 app/bin/gcc/debug
    MkDir1 app/bin/gcc/debug/main-target-app
    compile app/bin/gcc/debug/main-target-app/app.o


[SVN r18418]
2003-05-16 12:00:50 +00:00
Vladimir Prus
5b0b2ceb77 Add forgotten files.
[SVN r18417]
2003-05-16 11:23:17 +00:00
Vladimir Prus
73d4d13936 More changes to accomodate more strict import semantics and changes
to feature.action.


[SVN r18416]
2003-05-16 11:05:42 +00:00
Dave Abrahams
3c60743371 Improved comment for Volodya
[SVN r18415]
2003-05-15 23:15:41 +00:00
Dave Abrahams
093a2e4360 added missing import
[SVN r18412]
2003-05-15 22:31:03 +00:00
Dave Abrahams
eb53f18c4c Workaround svn_tree deficiency on Cygwin
[SVN r18411]
2003-05-15 22:30:47 +00:00
Dave Abrahams
49471a99a5 * added new builtin tests
* handle the absence of QT more gracefully

* flush stdout after each test so that emacs shows progress

****** Commented out tests which appear to be failing outside my control ******


[SVN r18410]
2003-05-15 22:30:08 +00:00
Dave Abrahams
476cddb659 tests for new builtin rules
[SVN r18409]
2003-05-15 22:27:47 +00:00
Dave Abrahams
8ec0efd118 * Prefer to test with a debug version of bjam if one is available
* Always dump stdio/stderr when there's a failure


[SVN r18408]
2003-05-15 22:27:25 +00:00
Dave Abrahams
5eb7ea1192 Note: there is currently a circular dependency between type.jam and
virtual-target.jam.

- Added the missing explicit imports, now that we don't dump
  everything into the global module with qualification

- stopped using the feature-space hack for temporary testing states of
  the feature module.  Instead we move its global variable definitions
  to a temporary module.

- the way feature.action was invoking the rule it was being passed was
  evil.  Now you pass (even local) rules without qualification and
  they are invoked in the source module context.

- module __test__ rules are always executed in a separate module, so
  that their import dependencies can be separated from those of the
  module being tested.

- better reporting of circular module-loading dependencies
  implemented.

- minor changes:

    property-set.jam:  moved .empty initialization to avert circular
    load dependency .

    symlink.jam: fixed global variable naming.


[SVN r18407]
2003-05-15 22:22:13 +00:00
Ralf W. Grosse-Kunstleve
be2d15e71d changes as per Toon Knapen
[SVN r18406]
2003-05-15 20:58:57 +00:00
Dave Abrahams
3c7f65f943 * builtins.c/h, modules.c/h - Added VARNAMES and DELETE_MODULE rules,
for getting the list of variable names and for clearing all rule and
  variable storage.

* compile.c - better error reporting for unknown rules; now it is a
  hard error.

* hash.c/h - added hash_free to allow removal of elements from a hash

* rule.c/h - implemented rule freeing; stopped exporting rules to the
  global module by default.

* variable.c - reclaim variable storage when disposing of variable
  hash.

* build.jam - make grammar building work under NT


[SVN r18405]
2003-05-15 20:53:16 +00:00
Dave Abrahams
deb8e8562a Don't look for 'yacc' without an '.exe' extension on NT, because we
might find the Cygwin script which isn't executable through the NT
shell.


[SVN r18404]
2003-05-15 20:07:44 +00:00
Vladimir Prus
21ea3db0f5 Improve the way unused sources are detected/reported.
* new/targets.jam
  (basic-target.generate-source): Separate virtual targets that come from
    different sources.
  (basic-target.check-for-unused-targets): Warn only if not virtual target
    from a given source is comsumed.


[SVN r18403]
2003-05-15 15:52:26 +00:00
Vladimir Prus
01d6c24442 Improve msvc initialization. Now, simple 'using msvc' will work,
regardless of whether vcvars32.bat was called by user.

In addition, new command line option '--debug-configuration' is introduced.
The msvc toolset will tell what paths are searched and what version is
selected, if this option is passed.


[SVN r18402]
2003-05-15 13:28:37 +00:00
Vladimir Prus
0667999e30 Try to eliminate short paths on windows, at least in some contexts. They
are very annoying --- e.g. you might decide there are several msvc
installation just because you have default location as long name, and there's
vcvars32.bat in PATH, and PATH element uses short name.

* jam_src/pathsys.h
  (short_name_to_long_name): New function.

* jam_src/filent.c:
  (file_dirscan): Call 'short_name_to_long_name' on argument.

* jam_src/pathunix.c:
  (ShortPathToLongPath): Move here from pwd.c, and fix bugs:
    '.' and '..' elements were completely broken.
  (short_name_to_long_name): Implement here.


[SVN r18401]
2003-05-15 13:07:09 +00:00
Vladimir Prus
07fd9055fd Cleanups. No functional changes.
[SVN r18396]
2003-05-14 10:14:27 +00:00
Vladimir Prus
e5b5542126 Fix a latent bug.
* new/virtual-target.jam
  (abstract-file-target.actualize-action): Don't set up clean action
   here; the previous code worked by accident anyway, because 'name'
   variable was not declared in any reasonable way.
  (action.actualize): Set up clean action here, close to the place where
   updating action is set up.


[SVN r18395]
2003-05-14 10:08:39 +00:00
Vladimir Prus
feee18e0f9 Document the 'variant' feature. Eventually, we need to document all
builtin features; I'm doing that for 'variant' since I was changing it
recently.


[SVN r18393]
2003-05-14 09:24:29 +00:00
Vladimir Prus
7b739afa86 Add <runtime-debugging>on for debug variant.
* new/feature.jam
  - the above change, plus changed the order of values for
  'runtime-debugging' feature, to accomodate strange behaviour of
  'feature.add-defaults'.


[SVN r18392]
2003-05-14 09:00:22 +00:00
Vladimir Prus
8b65c26672 Clarifiy comments.
* new/feature.jam
  (add-defaults): Add a note about behaviour w.r.t. composite features.


[SVN r18391]
2003-05-14 08:57:42 +00:00
Vladimir Prus
d76f774539 Add tests for typechecking facilities.
* test/core_typecheck.py: New test
* test/core_d12.py: Don't pass toolset name to bjam.
* test/test_all.py: Run core tests.


[SVN r18390]
2003-05-14 06:44:43 +00:00
Vladimir Prus
fc4ec011d0 Add missing call to BoostBuild.Tester.cleanup.
[SVN r18389]
2003-05-14 06:38:04 +00:00
Vladimir Prus
9b981bb8f9 Undo woraround that is no longer necessary.
[SVN r18387]
2003-05-13 08:25:52 +00:00
Dave Abrahams
a38628bee0 Removed redundant -y flag from bison flags
Added -t -v to the yacc/bison flags when --debug is used.

Additionally, we now grab $(YACCFLAGS) from the
environment/command-line to get more yacc diagnostics


[SVN r18379]
2003-05-10 17:57:44 +00:00
Dave Abrahams
a05eca2570 Type checking for argument lists
[SVN r18378]
2003-05-10 15:03:54 +00:00
Dave Abrahams
ba7bb1d4a4 Build jam0 with debugging under MSVC, in case it crashes (which it does).
[SVN r18377]
2003-05-10 14:28:30 +00:00
Vladimir Prus
9825fa6a23 Improve tests.
* tests/prebuilt/ext/Jamfile3: Test that prebuilt targets with
  absolute names work.


[SVN r18371]
2003-05-08 13:52:28 +00:00
Dave Abrahams
ec70263fbf un-pluralized "target-types" in try-one-generator.
[SVN r18370]
2003-05-08 13:33:17 +00:00
Dave Abrahams
da3ac6d658 Improved grammar of comment on specific-main-target()
Added a comment for str() and improved variable naming


[SVN r18369]
2003-05-08 13:32:34 +00:00
Dave Abrahams
a2f68b1635 Don't reverse slash direction when reconstituting paths on NT
[SVN r18368]
2003-05-08 13:30:24 +00:00
Vladimir Prus
69bf0b1075 Bugfix.
* new/gcc.jam: Quote includes and library names.


[SVN r18367]
2003-05-08 12:54:55 +00:00
Vladimir Prus
4ffa82b420 Bugfix.
* new/feature.jam (get-values): Don't change slash direction on windows.
  The bug can be seen by reverting this change and adding

      import feature ;
      ECHO [ feature.get-values <file> : <file>a/b/c.dll ] ;

  to 'project-root.jam' of examples-v2/hello.


[SVN r18366]
2003-05-08 12:26:38 +00:00
Vladimir Prus
828ccf61b5 Bugfix.
* new/virtual-target.jam
  (file-target.specific-main-target): Check not only free, but also
  dependency properties when deciding if targets is specific to the main
  target.
* new/dependency_property.py: New test.


[SVN r18363]
2003-05-08 11:24:26 +00:00
Vladimir Prus
b879aca42b Improve testing.
* new/builtin.jam: Register RSP and IMPORT_LIB types, and associated
  generators unconditionally, since the previous behaviour made using
  the same dir for testing from linux and windows inconvenient:
  "using msvc" was causing errors on linux because RSP type was not defined.


[SVN r18362]
2003-05-08 11:06:30 +00:00
Vladimir Prus
ed49e4f7c5 Refactorings.
* new/msvc.jam
  (version-configured, versionless-configured): Remove unused vars.
  (init): Don't call 'flags SETUP ...', since SETUP is never used.
  (locate): Extracted from 'init'.


[SVN r18357]
2003-05-08 09:55:39 +00:00