No matter what I try, ( I set JAMBASE, specified boost-base.jam etc... I always get the following error kanita% jam -f./tools/build/allyourbase.jam -sTOOLS="suncc" ./tools/build/allyourbase.jam: line 1608: syntax error at keyword ( don't know how to make all ...found 1 target... ...can't find 1 target... kanita% Line 1608 is the one that says: rule remember-binding ( target : bound-path ) { gBINDING($(target)) = $(bound-path) ; } ... How do I make jam understand the extended syntax ? ( Using FTjam 2.3.5 ...) Sinan Karasu ---------- # (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. # compute directories for invoking WS6U2 WS6U2_BIN_DIRECTORY ?= $(WS6U2_ROOT_DIRECTORY)$(SLASH)bin ; WS6U2_BIN_DIRECTORY ?= "" ; # Don't clobber tool names if WS6U2_ROOT_DIRECTORY not set WS6U2_INCLUDE_DIRECTORY ?= $(WS6U2_ROOT_DIRECTORY)$(SLASH)include ; WS6U2_STDLIB_DIRECTORY ?= $(WS6U2_ROOT_DIRECTORY)$(SLASH)lib ; flags cc LINKFLAGS <runtime-link>static : -Bstatic ; flags cc CFLAGS <debug-symbols>on : -g ; flags cc LINKFLAGS <debug-symbols>on : -g ; flags cc CFLAGS <optimization>off : -xO0 ; flags cc CFLAGS <optimization>speed : -xO4 ; # Other optimizations we might want for WS6U2 # # flags cc CFLAGS <optimization>space : -xO2 ; flags cc CFLAGS <inlining>off : -xinline=no%func ; flags cc CFLAGS <inlining>on : -xinline=%auto ; flags cc CFLAGS <inlining>full : -xinline=%auto ; flags cc CFLAGS <profiling>on : -xpg ; flags cc LINKFLAGS <profiling>on : -xpg ; flags cc DEFINES <define> ; flags cc UNDEFS <undef> ; flags cc HDRS <include> ; flags cc STDHDRS : $(WS6U2_INCLUDE_DIRECTORY) ; flags cc STDLIBPATH : $(WS6U2_STDLIB_DIRECTORY) ; flags cc CFLAGS <shared-linkable>true : -KPIC ; flags cc LINKFLAGS <shared-linkable>true : -KPIC ; flags cc LINKFLAGS <target-type>DLL : -G ; flags cc LIBPATH <library-path> ; flags cc NEEDLIBS <library-file> ; flags cc FINDLIBS <find-library> ; #### Link #### rule Link-action { # This will appear before the import library name when building a DLL, but # will be "multiplied away" otherwise. The --exclude-symbols directive # proved to be neccessary with some versions of Cygwin. ##sik IMPLIB_COMMAND on $(<) = "-Wl,--exclude-symbols,_bss_end__:_bss_start__:_data_end__:_data_start__ -Wl,--out-implib," ; # IMPLIB_COMMAND on $(<) = "-Wl,--out-implib," ; cc-Link-action $(<) : $(>) ; } # for cc, we repeat all libraries so that dependencies are always resolved actions cc-Link-action bind NEEDLIBS { $(WS6U2_BIN_DIRECTORY)CC $(IMPLIB_COMMAND)$(<[2]) $(LINKFLAGS) -o "$(<[1])" -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) -znodefs } # older actions # $(WS6U2_BIN_DIRECTORY)dlltool -e $(<[1]:S=:D=:G=) -l "$(<[2])" "$(>)" # $(WS6U2_BIN_DIRECTORY)CC $(LINKFLAGS) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -o "$(<[1])" #### Cc ##### rule Cc-action { cc-Cc-action $(<) : $(>) ; } actions cc-Cc-action { $(WS6U2_BIN_DIRECTORY)cc -c -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) -I$(BOOST_ROOT) -I"$(HDRS)" -I"$(STDHDRS)" -o "$(<)" "$(>)" } #### C++ #### rule C++-action { cc-C++-action $(<) : $(>) ; } actions cc-C++-action { $(WS6U2_BIN_DIRECTORY)CC -c -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) $(C++FLAGS) -I$(BOOST_ROOT) -I"$(HDRS)" -I"$(STDHDRS)" -o "$(<)" "$(>)" } #### Archive #### rule Archive-action { cc-Archive-action $(<) : $(>) ; } actions updated together piecemeal cc-Archive-action { ar ru "$(<)" "$(>)" } [Non-text portions of this message have been removed]