mirror of
https://github.com/boostorg/build.git
synced 2026-02-10 11:22:12 +00:00
committing in tools/build
Modified Files:
build_system.htm
Documented:
local rules
the RULENAMES rule
the EXPORT rule
the BACKTRACE rule
new IMPORT semantics
-d+12 Dependency Graph Output
Crude Argument Binding
Variable numbers of arguments
jam_src/compile.c
implemented RULENAMES, EXPORT, varargs support, new IMPORT semantics
removed unused variables
jam_src/make1.c
jam_src/hdrmacro.c
removed unused variables
jam_src/jamgram.{c,h,y,yy}
"module local x" does not change module local value of x
if it is already set.
jam_src/lists.[ch]
added list_pop_front()
new/assert.jam new/boost-build.jam
new/build-system.jam new/errors.jam
new/modules.jam new/os.path.jam
beginnings of new build system
test/check-arguments.jam
test/check-jam-patches.jam
test/echo_args.jam
Added tests for recent core modifications; comments
Added Files:
new/feature.jam new/property.jam
new/readme.txt new/sequence.jam
new/test.jam
beginnings of new build system
----------------------------------------------------------------------
[SVN r11789]
30 lines
764 B
Plaintext
30 lines
764 B
Plaintext
# (C) Copyright David Abrahams 2001. Permission to copy, use, modify, sell and
|
|
# distribute this software is granted provided this copyright notice appears in
|
|
# all copies. This software is provided "as is" without express or implied
|
|
# warranty, and with no claim as to its suitability for any purpose.
|
|
|
|
if $(NT)
|
|
{
|
|
module local slash = \\ ;
|
|
}
|
|
else
|
|
{
|
|
module local slash = / ;
|
|
}
|
|
|
|
rule split ( path )
|
|
{
|
|
return [ SUBST $(<[1]) "^([/$(SLASH)]+).*" $1 ] # rooting slash(es), if any
|
|
[ split $(<) "[/$(SLASH)]" ] # the rest.
|
|
;
|
|
}
|
|
|
|
rule join ( elements * )
|
|
{
|
|
local slashes = $(slash) / ;
|
|
local result prev = $(elements[1]) ;
|
|
for local e in $(elements[2-])
|
|
{`
|
|
if ! ( $(prev) in $(slashes) ) &&
|
|
}
|
|
} |