http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/6da3961b/ext/kenlm/jam-files/engine/build.jam ---------------------------------------------------------------------- diff --git a/ext/kenlm b/ext/kenlm new file mode 160000 index 0000000..56fdb5c --- /dev/null +++ b/ext/kenlm @@ -0,0 +1 @@ +Subproject commit 56fdb5c44fca34d5a2e07d96139c28fb163983c5 diff --git a/ext/kenlm/jam-files/engine/build.jam b/ext/kenlm/jam-files/engine/build.jam deleted file mode 100644 index f13d950..0000000 --- a/ext/kenlm/jam-files/engine/build.jam +++ /dev/null @@ -1,1022 +0,0 @@ -#~ Copyright 2002-2007 Rene Rivera. -#~ Distributed under the Boost Software License, Version 1.0. -#~ (See accompanying file LICENSE_1_0.txt or copy at -#~ http://www.boost.org/LICENSE_1_0.txt) - -# Clean env vars of any "extra" empty values. -for local v in ARGV CC CFLAGS LIBS -{ - local values ; - for local x in $($(v)) - { - if $(x) != "" - { - values += $(x) ; - } - } - $(v) = $(values) ; -} - -# Platform related specifics. -if $(OS) = NT { rule .path { return "$(<:J=\\)" ; } ./ = "/" ; } -else { rule .path { return "$(<:J=/)" ; } } - -. = "." ; -./ ?= "" ; - -# Info about what we are building. -_VERSION_ = 3 1 19 ; -NAME = boost-jam ; -VERSION = $(_VERSION_:J=$(.)) ; -RELEASE = 1 ; -LICENSE = LICENSE_1_0 ; - -# Generate development debug binaries? -if --debug in $(ARGV) -{ - debug = true ; -} - -if --profile in $(ARGV) -{ - profile = true ; -} - -# Attempt to generate and/or build the grammar? -if --grammar in $(ARGV) -{ - grammar = true ; -} - -# Do we need to add a default build type argument? -if ! ( --release in $(ARGV) ) && - ! ( --debug in $(ARGV) ) && - ! ( --profile in $(ARGV) ) -{ - ARGV += --release ; -} - -# Enable, and configure, Python hooks. -with-python = ; -python-location = [ MATCH --with-python=(.*) : $(ARGV) ] ; -if $(python-location) -{ - with-python = true ; -} -if $(with-python) -{ - if $(OS) = NT - { - --python-include = [ .path $(python-location) include ] ; - --python-lib = ; - for local v in 27 26 25 24 23 22 - { - --python-lib ?= - [ GLOB [ .path $(python-location) libs ] : "python$(v).lib" ] - [ GLOB $(python-location) [ .path $(python-location) libs ] - $(Path) $(PATH) $(path) : "python$(v).dll" ] - ; - if ! $(--python-lib[2]) - { - --python-lib = ; - } - } - --python-lib = $(--python-lib[1]) ; - } - else if $(OS) = MACOSX - { - --python-include = [ .path $(python-location) Headers ] ; - --python-lib = $(python-location) Python ; - } - else - { - --python-include = ; - --python-lib = ; - for local v in 2.7 2.6 2.5 2.4 2.3 2.2 - { - local inc = [ GLOB [ .path $(python-location) include ] : python$(v) ] ; - local lib = [ GLOB [ .path $(python-location) lib ] : libpython$(v)* ] ; - if $(inc) && $(lib) - { - --python-include ?= $(inc) ; - --python-lib ?= $(lib[1]:D) python$(v) ; - } - } - } -} - -# Boehm GC? -if --gc in $(ARGV) -{ - --boehm-gc = true ; -} -if $(--boehm-gc) -{ - --extra-include += [ .path [ PWD ] "boehm_gc" "include" ] ; -} - -# Duma? -if --duma in $(ARGV) -{ - --duma = true ; -} -if $(--duma) -{ - --extra-include += [ .path [ PWD ] "duma" ] ; -} - -# An explicit root for the toolset? (trim spaces) -toolset-root = [ MATCH --toolset-root=(.*) : $(ARGV) ] ; -{ - local t = [ MATCH "[ ]*(.*)" : $(toolset-root:J=" ") ] ; - toolset-root = ; - while $(t) - { - t = [ MATCH "([^ ]+)([ ]*)(.*)" : $(t) ] ; - toolset-root += $(t[1]) ; - if $(t[3]) { toolset-root += $(t[2]) ; } - t = $(t[3]) ; - } - toolset-root = $(toolset-root:J="") ; -} - -# Configure the implemented toolsets. These are minimal commands and options to -# compile the full Jam. When adding new toolsets make sure to add them to the -# "known" list also. - -rule toolset ( name command .type ? : opt.out + : opt.define * : flags * : linklibs * ) -{ - .type ?= "" ; - tool.$(name)$(.type).cc ?= $(command) ; - tool.$(name)$(.type).opt.out ?= $(opt.out) ; - tool.$(name)$(.type).opt.define ?= $(opt.define) ; - tool.$(name)$(.type).flags ?= $(flags) ; - tool.$(name)$(.type).linklibs ?= $(linklibs) ; - if ! $(name) in $(toolsets) { toolsets += $(name) ; } -} - -rule if-os ( os + : yes-opt * : no-opt * ) - { if $(os) in $(OS) { return $(yes-opt) ; } else { return $(no-opt) ; } } - -rule opt ( type : yes-opt * : no-opt * ) - { if $(type) in $(ARGV) { return $(yes-opt) ; } else { return $(no-opt) ; } } - -## HP-UX aCC compiler -toolset acc cc : "-o " : -D - : -Ae - [ opt --release : -s -O3 ] - [ opt --debug : -g -pg ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Borland C++ 5.5.x -toolset borland bcc32 : -e -n : /D - : -WC -w- -q "-I$(toolset-root)Include" "-L$(toolset-root)Lib" - [ opt --release : -O2 -vi -w-inl ] - [ opt --debug : -v -Od -vi- ] - -I$(--python-include) -I$(--extra-include) - : $(--python-lib[1]) ; -## Generic Unix cc -if ! $(CC) { CC = cc ; } -toolset cc $(CC) : "-o " : -D - : $(CFLAGS) - [ opt --release : -s -O ] - [ opt --debug : -g ] - -I$(--python-include) -I$(--extra-include) - : $(LIBS) -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Comeau C/C++ 4.x -toolset como como : "-o " : -D - : --c - [ opt --release : --inlining ] - [ opt --debug : --no_inlining ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Clang Linux 2.8+ -toolset clang clang : "-o " : -D - : -Wno-unused -Wno-format - [ opt --release : -Os ] - [ opt --debug : -g -O0 -fno-inline ] - [ opt --profile : -finline-functions -g ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## MacOSX Darwin, using GCC 2.9.x, 3.x -toolset darwin cc : "-o " : -D - : - [ opt --release : -Wl,-x -O3 -finline-functions ] - [ opt --debug : -g -O0 -fno-inline -pg ] - [ opt --profile : -Wl,-x -O3 -finline-functions -g -pg ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## GCC 2.x, 3.x, 4.x -toolset gcc gcc : "-o " : -D - : -pedantic -fno-strict-aliasing - [ opt --release : [ opt --symbols : -g : -s ] -O3 ] - [ opt --debug : -g -O0 -fno-inline ] - [ opt --profile : -O3 -g -pg ] - -I$(--python-include) -I$(--extra-include) -Wno-long-long - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## GCC 2.x, 3.x on CYGWIN but without cygwin1.dll -toolset gcc-nocygwin gcc : "-o " : -D - : -s -O3 -mno-cygwin - [ opt --release : -finline-functions ] - [ opt --debug : -s -O3 -fno-inline -pg ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Intel C/C++ for Darwin -toolset intel-darwin icc : "-o " : -D - : - [ opt --release : -O3 ] - [ opt --debug : -g -O0 -p ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Intel C/C++ for Linux -toolset intel-linux icc : "-o " : -D - : - [ opt --release : -Xlinker -s -O3 ] - [ opt --debug : -g -O0 -p ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Intel C/C++ for Win32 -toolset intel-win32 icl : /Fe : -D - : /nologo - [ opt --release : /MT /O2 /Ob2 /Gy /GF /GA /GB ] - [ opt --debug : /MTd /DEBUG /Z7 /Od /Ob0 ] - -I$(--python-include) -I$(--extra-include) - : kernel32.lib advapi32.lib user32.lib $(--python-lib[1]) ; -## KCC ? -toolset kcc KCC : "-o " : -D - : - [ opt --release : -s +K2 ] - [ opt --debug : -g +K0 ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Borland Kylix -toolset kylix bc++ : -o : -D - : -tC -q - [ opt --release : -O2 -vi -w-inl ] - [ opt --debug : -v -Od -vi- ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Metrowerks CodeWarrior 8.x -{ - # Even though CW can compile all files at once, it crashes if it tries in - # the bjam case. - local mwcc ; if $(OS) != NT { mwcc = mwc$(OSPLAT:L) ; } - mwcc ?= mwcc ; - toolset metrowerks $(mwcc) : "-o " : -D - : -c -lang c -subsystem console -cwd include - [ opt --release : -runtime ss -opt full -inline all ] - [ opt --debug : -runtime ssd -opt none -inline off ] - -I$(--python-include) -I$(--extra-include) ; - toolset metrowerks $(mwcc) .link : "-o " : - : -subsystem console -lkernel32.lib -ladvapi32.lib -luser32.lib - [ opt --release : -runtime ss ] - [ opt --debug : -runtime ssd ] - : $(--python-lib[1]) ; -} -## MINGW GCC -toolset mingw gcc : "-o " : -D - : - [ opt --release : -s -O3 -finline-functions ] - [ opt --debug : -g -O0 -fno-inline -pg ] - -I$(--python-include) -I$(--extra-include) - : $(--python-lib[2]) ; -## MIPS Pro -toolset mipspro cc : "-o " : -D - : - [ opt --release : -s -O3 -g0 -INLINE:none ] - [ opt --debug : -g -O0 -INLINE ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Microsoft Visual Studio C++ 6.x -toolset msvc cl : /Fe /Fe /Fd /Fo : -D - : /nologo - [ opt --release : /ML /O2 /Ob2 /Gy /GF /GA /GB ] - [ opt --debug : /MLd /DEBUG /Z7 /Od /Ob0 ] - -I$(--python-include) -I$(--extra-include) - : kernel32.lib advapi32.lib user32.lib $(--python-lib[1]) ; -## QNX 6.x GCC 3.x/2.95.3 -toolset qcc qcc : "-o " : -D - : -Wc,-pedantic -Wc,-fno-strict-aliasing - [ opt --release : [ opt --symbols : -g ] -O3 -Wc,-finline-functions ] - [ opt --debug : -g -O0 -Wc,-fno-inline ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Qlogic Pathscale 2.4 -toolset pathscale pathcc : "-o " : -D - : - [ opt --release : -s -Ofast -O3 ] - [ opt --debug : -g ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Portland Group Pgi 6.2 -toolset pgi pgcc : "-o " : -D - : - [ opt --release : -s -O3 ] - [ opt --debug : -g ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Sun Workshop 6 C++ -toolset sun cc : "-o " : -D - : - [ opt --release : -s -xO3 ] - [ opt --debug : -g ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Sun Workshop 6 C++ (old alias) -toolset sunpro cc : "-o " : -D - : - [ opt --release : -s -xO3 ] - [ opt --debug : -g ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## Compaq Alpha CXX -toolset tru64cxx cc : "-o " : -D - : - [ opt --release : -s -O5 -inline speed ] - [ opt --debug : -g -O0 -pg ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) ; -## IBM VisualAge C++ -toolset vacpp xlc : "-o " : -D - : - [ opt --release : -s -O3 -qstrict -qinline ] - [ opt --debug : -g -qNOOPTimize -qnoinline -pg ] - -I$(--python-include) -I$(--extra-include) - : -L$(--python-lib[1]) -l$(--python-lib[2]) [ if-os AIX : -bmaxdata:0x40000000 ] ; -## Microsoft Visual C++ .NET 7.x -toolset vc7 cl : /Fe /Fe /Fd /Fo : -D - : /nologo - [ opt --release : /ML /O2 /Ob2 /Gy /GF /GA /GB ] - [ opt --debug : /MLd /DEBUG /Z7 /Od /Ob0 ] - -I$(--python-include) -I$(--extra-include) - : kernel32.lib advapi32.lib user32.lib $(--python-lib[1]) ; -## Microsoft Visual C++ 2005 -toolset vc8 cl : /Fe /Fe /Fd /Fo : -D - : /nologo - [ opt --release : /MT /O2 /Ob2 /Gy /GF /GA /wd4996 ] - [ opt --debug : /MTd /DEBUG /Z7 /Od /Ob0 /wd4996 ] - -I$(--python-include) -I$(--extra-include) - : kernel32.lib advapi32.lib user32.lib $(--python-lib[1]) ; -## Microsoft Visual C++ 2008 -toolset vc9 cl : /Fe /Fe /Fd /Fo : -D - : /nologo - [ opt --release : /MT /O2 /Ob2 /Gy /GF /GA /wd4996 ] - [ opt --debug : /MTd /DEBUG /Z7 /Od /Ob0 /wd4996 ] - -I$(--python-include) -I$(--extra-include) - : kernel32.lib advapi32.lib user32.lib $(--python-lib[1]) ; -## Microsoft Visual C++ 2010 -toolset vc10 cl : /Fe /Fe /Fd /Fo : -D - : /nologo - [ opt --release : /MT /O2 /Ob2 /Gy /GF /GA /wd4996 ] - [ opt --debug : /MTd /DEBUG /Z7 /Od /Ob0 /wd4996 ] - -I$(--python-include) -I$(--extra-include) - : kernel32.lib advapi32.lib user32.lib $(--python-lib[1]) ; -toolset vc11 cl : /Fe /Fe /Fd /Fo : -D - : /nologo - [ opt --release : /GL /MT /O2 /Ob2 /Gy /GF /GA /wd4996 ] - [ opt --debug : /MTd /DEBUG /Z7 /Od /Ob0 /wd4996 ] - -I$(--python-include) -I$(--extra-include) - : kernel32.lib advapi32.lib user32.lib $(--python-lib[1]) ; -toolset vc12 cl : /Fe /Fe /Fd /Fo : -D - : /nologo - [ opt --release : /GL /MT /O2 /Ob2 /Gy /GF /GA /wd4996 ] - [ opt --debug : /MTd /DEBUG /Z7 /Od /Ob0 /wd4996 ] - -I$(--python-include) -I$(--extra-include) - : kernel32.lib advapi32.lib user32.lib $(--python-lib[1]) ; - -# First set the build commands and options according to the -# preset toolset. -toolset = [ MATCH --toolset=(.*) : $(ARGV) ] ; -if ! $(toolset) -{ - # For some reason, the following test does not catch empty toolset. - ECHO "###" ; - ECHO "###" No toolset specified. Please use --toolset option. ; - ECHO "###" ; - ECHO "###" Known toolsets are: $(toolsets:J=", ") ; - EXIT "###" ; -} -if ! $(toolset) in $(toolsets) -{ - ECHO "###" ; - ECHO "###" Unknown toolset: $(toolset) ; - ECHO "###" ; - ECHO "###" Known toolsets are: $(toolsets:J=", ") ; - EXIT "###" ; -} ---cc = $(tool.$(toolset).cc) ; -if $(tool.$(toolset).opt.out[2]) -{ - if $(tool.$(toolset).opt.out[1]) = $(tool.$(toolset).opt.out[2]) - { - --out = $(tool.$(toolset).opt.out[1]) ; - --dir = $(tool.$(toolset).opt.out[3-]) ; - } - else - { - --bin = $(tool.$(toolset).opt.out[1]) ; - --dir = $(tool.$(toolset).opt.out[2-]) ; - } -} -else -{ - --out = $(tool.$(toolset).opt.out) ; -} ---def = $(tool.$(toolset).opt.define) ; ---flags = $(tool.$(toolset).flags) ; ---defs = $(tool.$(toolset).defines) ; ---libs = $(tool.$(toolset).linklibs) ; -if $(tool.$(toolset).link.cc) -{ - --link = $(tool.$(toolset).link.cc) ; - if $(tool.$(toolset).link.opt.out[2]) - { - if $(tool.$(toolset).link.opt.out[1]) = $(tool.$(toolset).link.opt.out[2]) - { - --link-out = $(tool.$(toolset).link.opt.out[1]) ; - --link-dir = $(tool.$(toolset).link.opt.out[3-]) ; - } - else - { - --link-bin = $(tool.$(toolset).link.opt.out[1]) ; - --link-dir = $(tool.$(toolset).link.opt.out[2-]) ; - } - } - else - { - --link-out = $(tool.$(toolset).link.opt.out) ; - } - --link-def = $(tool.$(toolset).link.opt.define) ; - --link-flags = $(tool.$(toolset).link.flags) ; - --link-defs = $(tool.$(toolset).link.defines) ; - --link-libs = $(tool.$(toolset).link.linklibs) ; -} - -# Put executables in platform-specific subdirectory. -locate-target = $(LOCATE_TARGET) ; -if $(OSPLAT) -{ - locate-target ?= bin$(.)$(OS:L)$(OSPLAT:L) ; - platform = $(OS:L)$(OSPLAT:L) ; -} -else -{ - locate-target ?= bin$(.)$(OS:L) ; - platform = $(OS:L) ; -} -if $(debug) -{ - locate-target = [ .path $(locate-target)$(.)debug ] ; -} -if $(profile) -{ - locate-target = [ .path $(locate-target)$(.)profile ] ; -} -else -{ - locate-target = [ .path $(locate-target) ] ; -} - -if --show-locate-target in $(ARGV) -{ - ECHO $(locate-target) ; -} - -# We have some different files for UNIX, and NT. -jam.source = - command.c compile.c constants.c debug.c execcmd.c frames.c function.c glob.c - hash.c hcache.c headers.c hdrmacro.c jam.c jambase.c jamgram.c lists.c - make.c make1.c mem.c object.c option.c output.c parse.c pathsys.c regexp.c - rules.c scan.c search.c subst.c w32_getreg.c timestamp.c variable.c - modules.c strings.c filesys.c builtins.c class.c cwd.c native.c md5.c - [ .path modules set.c ] [ .path modules path.c ] [ .path modules regex.c ] - [ .path modules property-set.c ] [ .path modules sequence.c ] [ .path modules order.c ] ; -if $(OS) = NT -{ - jam.source += execnt.c filent.c pathnt.c ; -} -else -{ - jam.source += execunix.c fileunix.c pathunix.c ; -} - -# Debug assertions, or not. -if ! $(debug) || --noassert in $(ARGV) -{ - --defs += NDEBUG ; -} - -# Enable some optional features. ---defs += OPT_HEADER_CACHE_EXT ; ---defs += OPT_GRAPH_DEBUG_EXT ; ---defs += OPT_SEMAPHORE ; ---defs += OPT_AT_FILES ; ---defs += OPT_DEBUG_PROFILE ; - -# Bug fixes ---defs += OPT_FIX_TARGET_VARIABLES_EXT ; -#~ --defs += OPT_NO_EXTERNAL_VARIABLE_SPLIT ; - -# Improvements ---defs += OPT_IMPROVED_PATIENCE_EXT ; - -# Use Boehm GC memory allocator? -if $(--boehm-gc) -{ - --defs += OPT_BOEHM_GC ; - if $(debug) - { - --defs += GC_DEBUG ; - } -} - -if $(--duma) -{ - --defs += OPT_DUMA ; -} - -if ( $(OS) = NT ) && ! NT in $(--defs) -{ - --defs += NT ; -} ---defs += YYSTACKSIZE=5000 ; - -if $(with-python) -{ - --defs += HAVE_PYTHON ; -} - -if $(debug) -{ - --defs += BJAM_NEWSTR_NO_ALLOCATE ; -} - - -# The basic symbolic targets... -NOTFILE all clean dist ; -ALWAYS clean ; - -# Utility rules and actions... -rule .clean -{ - [DELETE] clean : $(<) ; -} -if $(OS) = NT { actions piecemeal together existing [DELETE] { - del /F /Q "$(>)" -} } -if $(UNIX) = true { actions piecemeal together existing [DELETE] { - rm -f "$(>)" -} } -if $(OS) = NT { - --chmod+w = "attrib -r " ; -} -if $(UNIX) = true { - --chmod+w = "chmod +w " ; -} - -rule .mkdir -{ - NOUPDATE $(<) ; - if $(<:P) { DEPENDS $(<) : $(<:P) ; .mkdir $(<:P) ; } - if ! $(md<$(<)>) { [MKDIR] $(<) ; md<$(<)> = - ; } -} -if $(OS) = NT { actions [MKDIR] { - md "$(<)" -} } -if $(UNIX) = true { actions [MKDIR] { - mkdir "$(<)" -} } - -rule .exe -{ - local exe = $(<) ; - if $(OS) = NT || ( $(UNIX) = true && $(OS) = CYGWIN ) { exe = $(exe:S=.exe) ; } - LOCATE on $(exe) = $(locate-target) ; - DEPENDS all : $(exe) ; - .mkdir $(locate-target) ; - if $(--link) - { - local objs ; - for local s in $(>) - { - # Translate any subdir elements into a simple file name. - local o = [ MATCH "([^/]+)[/]?(.+)" : $(s) ] ; - o = $(o:J=_) ; - o = $(o:S=.o) ; - objs += $(o) ; - LOCATE on $(o) = $(locate-target) ; - DEPENDS $(exe) : $(o) ; - DEPENDS $(o) : $(s) ; - DEPENDS $(o) : $(locate-target) ; - [COMPILE] $(o) : $(s) ; - .clean $(o) ; - } - DEPENDS $(exe) : $(objs) ; - DEPENDS $(exe) : $(locate-target) ; - [COMPILE.LINK] $(exe) : $(objs) ; - .clean $(exe) ; - } - else - { - DEPENDS $(exe) : $(>) ; - DEPENDS $(exe) : $(locate-target) ; - [COMPILE] $(exe) : $(>) ; - .clean $(exe) ; - } - return $(exe) ; -} -if ! $(--def[2]) { actions [COMPILE] { - "$(--cc)" "$(--bin)$(<:D=)" "$(--dir)$(<:D)$(./)" $(--out)$(<) "$(--def)$(--defs)" "$(--flags)" "$(>)" "$(--libs)" -} } -else { actions [COMPILE] { - "$(--cc)" "$(--bin)$(<:D=)" "$(--dir)$(<:D)$(./)" $(--out)$(<) "$(--def[1])$(--defs:J=$(--def[2]))$(--def[3])" "$(--flags)" "$(>)" "$(--libs)" -} } - -actions [COMPILE.LINK] { - "$(--link)" "$(--link-bin)$(<:D=)" "$(--link-dir)$(<:D)$(./)" "$(--link-out)$(<)" "$(--link-def)$(--link-defs)" "$(--link-flags)" "$(>)" "$(--link-libs)" -} - -rule .link -{ - DEPENDS all : $(<) ; - DEPENDS $(<) : $(>) ; - [LINK] $(<) : $(>) ; - .clean $(<) ; -} -if $(OS) = NT { actions [LINK] { - copy "$(>)" "$(<)" -} } -if $(UNIX) = true { actions [LINK] { - ln -fs "$(>)" "$(<)" -} } - -rule .copy -{ - DEPENDS all : $(<) ; - DEPENDS $(<) : $(>) ; - [COPY] $(<) : $(>) ; - .clean $(<) ; -} - -# Will be redefined later. -actions [COPY] -{ -} - - -rule .move -{ - DEPENDS $(<) : $(>) ; - [MOVE] $(<) : $(>) ; -} -if $(OS) = NT { actions [MOVE] { - del /f "$(<)" - rename "$(>)" "$(<)" -} } -if $(UNIX) = true { actions [MOVE] { - mv -f "$(>)" "$(<)" -} } - -# Generate the grammar tokens table, and the real yacc grammar. -rule .yyacc -{ - local exe = [ .exe yyacc : yyacc.c ] ; - NOUPDATE $(exe) ; - DEPENDS $(<) : $(exe) $(>) ; - LEAVES $(<) ; - yyacc.exe on $(<) = $(exe:R=$(locate-target)) ; - [YYACC] $(<) : $(>) ; -} -actions [YYACC] { - $(--chmod+w)$(<[1]) - $(--chmod+w)$(<[2]) - "$(yyacc.exe)" "$(<)" "$(>)" -} -if $(grammar) -{ - .yyacc jamgram.y jamgramtab.h : jamgram.yy ; -} -else if $(debug) -{ - .exe yyacc : yyacc.c ; -} - -# How to build the grammar. -if $(OS) = NT -{ - SUFEXE = .exe ; - # try some other likely spellings... - PATH ?= $(Path) ; - PATH ?= $(path) ; -} -SUFEXE ?= "" ; - -yacc ?= [ GLOB $(PATH) : yacc$(SUFEXE) ] ; -yacc ?= [ GLOB $(PATH) : bison$(SUFEXE) ] ; -yacc ?= [ GLOB "$(ProgramFiles:J= )\\GnuWin32\\bin" - "C:\\Program Files\\GnuWin32\\bin" : bison$(SUFEXE) ] ; -yacc = $(yacc[1]) ; -switch $(yacc:D=:S=) -{ - case bison : yacc += -d --yacc ; - case yacc : yacc += -d ; -} -if $(debug) && $(yacc) -{ - yacc += -t -v ; -} -yacc += $(YACCFLAGS) ; - -rule .yacc -{ - DEPENDS $(<) : $(>) ; - LEAVES $(<) ; - [YACC] $(<) : $(>) ; -} -if $(OS) = NT { actions [YACC] { - "$(yacc)" "$(>)" - if not errorlevel 1 ( - del /f "$(<[1])" - rename y.tab$(<[1]:S) "$(<[1])" - del /f $(<[2]) - rename y.tab$(<[2]:S) "$(<[2])" - ) else set _error_ = -} } -if $(UNIX) = true { actions [YACC] { - if ` "$(yacc)" "$(>)" ` ; then - mv -f y.tab$(<[1]:S) "$(<[1])" - mv -f y.tab$(<[2]:S) "$(<[2])" - else - exit 1 - fi -} } -if $(grammar) && ! $(yacc) -{ - EXIT Could not find the 'yacc' tool, and therefore can not build the - grammar. ; -} -if $(grammar) && $(yacc) -{ - .yacc jamgram.c jamgram.h : jamgram.y ; -} - -# How to build the compiled in jambase. -rule .mkjambase -{ - local exe = [ .exe mkjambase : mkjambase.c ] ; - DEPENDS $(<) : $(exe) $(>) ; - LEAVES $(<) ; - mkjambase.exe on $(<) = $(exe:R=$(locate-target)) ; - [MKJAMBASE] $(<) : $(>) ; -} -actions [MKJAMBASE] { - $(--chmod+w)$(<) - $(mkjambase.exe) "$(<)" "$(>)" -} -if $(debug) -{ - .mkjambase jambase.c : Jambase ; -} - -# How to build Jam. -rule .jam -{ - $(>).exe = [ .exe $(>) : $(jam.source) ] ; - DEPENDS all : $($(>).exe) ; - - # Make a copy under the old name. - $(<).exe = $(<:S=$($(>).exe:S)) ; - LOCATE on $($(<).exe) = $(locate-target) ; - .copy $($(<).exe) : $($(>).exe) ; - DEPENDS all : $($(<).exe) ; -} -.jam bjam : b2 ; - - -# Scan sources for header dependencies. -# -# In order to keep things simple, we made a slight compromise here - we only -# detect changes in headers included relative to the current folder as opposed -# to those included from somewhere on the include path. -rule .scan ( targets + ) -{ - HDRRULE on $(targets) = .hdr.scan ; - HDRSCAN on $(targets) = "^[ \t]*#[ \t]*include[ \t]*\"([^\"]*)\".*$" ; -} -rule .hdr.scan ( target : includes * : binding ) -{ - local target-path = [ NORMALIZE_PATH $(binding:D) ] ; - # Extra grist provides target name uniqueness when referencing same name - # header files from different folders. - local include-targets = <$(target-path)>$(includes) ; - NOCARE $(include-targets) ; - INCLUDES $(target) : $(include-targets) ; - SEARCH on $(include-targets) = $(target-path) ; - ISFILE $(include-targets) ; - .scan $(include-targets) ; -} -.scan $(jam.source) ; - - -# Distribution making from here on out. Assumes that the docs are already built -# as HTML at ../doc/html. Otherwise they will not be included in the built -# distribution archive. -dist.license = - [ GLOB . : $(LICENSE).txt ] - ; -dist.license = $(dist.license:D=) - [ GLOB [ .path .. .. .. ] : $(LICENSE).txt ] - [ GLOB [ .path .. boost ] : $(LICENSE).txt ] ; -dist.docs = - [ GLOB . : *.png *.css *.html ] - ; -dist.docs = $(dist.docs:D=) - [ GLOB [ .path images ] : *.png ] - [ GLOB [ .path jam ] : *.html ] - ; -dist.source = - [ GLOB . : *.c *.h ] - ; -dist.source = $(dist.source:D=) - $(dist.license[1]) - $(dist.docs) - build.jam build.bat build.sh - Jambase - jamgram.y jamgram.yy - [ .path modules set.c ] - [ .path modules path.c ] - [ .path modules regex.c ] - [ .path modules property-set.c ] - [ .path modules sequence.c ] - [ .path modules order.c ] - [ GLOB [ .path boehm_gc ] : * ] - [ GLOB [ .path boehm_gc include ] : * ] - [ GLOB [ .path boehm_gc include private ] : * ] - [ GLOB [ .path boehm_gc cord ] : * ] - [ GLOB [ .path boehm_gc Mac_files ] : * ] - [ GLOB [ .path boehm_gc tests ] : * ] - [ GLOB [ .path boehm_gc doc ] : * ] - ; -dist.bin = - bjam - ; -dist.bin = - $(dist.license[1]) - $(dist.bin:S=$(bjam.exe:S)) - ; - -if $(OS) = NT -{ - zip ?= [ GLOB "$(ProgramFiles:J= )\\7-ZIP" "C:\\Program Files\\7-ZIP" : "7z.exe" ] ; - zip ?= [ GLOB "$(ProgramFiles:J= )\\7-ZIP" "C:\\Program Files\\7-ZIP" : "7zn.exe" ] ; - zip ?= [ GLOB $(PATH) : zip.exe ] ; - zip ?= zip ; - zip = $(zip[1]) ; - switch $(zip:D=:S=) - { - case 7z* : zip += a -r -tzip -mx=9 ; - case zip : zip += -9r ; - } - actions piecemeal [PACK] { - "$(zip)" "$(<)" "$(>)" - } - actions piecemeal [ZIP] { - "$(zip)" "$(<)" "$(>)" - } - actions piecemeal [COPY] { - copy /Y "$(>)" "$(<)" >NUL: - } -} -if $(UNIX) = true -{ - tar ?= [ GLOB $(PATH) : star bsdtar tar ] ; - tar = $(tar[1]) ; - switch $(tar:D=:S=) - { - case star : tar += -c artype=pax -D -d -to-stdout ; - case * : tar += -c -f - ; - } - actions [PACK] { - "$(tar)" "$(>)" | gzip -c9 > "$(<)" - } - #~ actions [PACK] { - #~ tar cf "$(<:S=.tar)" "$(>)" - #~ } - actions [ZIP] { - gzip -c9 "$(>)" > "$(<)" - } - actions [COPY] { - cp -Rpf "$(>)" "$(<)" - } -} - -# The single binary, compressed. -rule .binary -{ - local zip ; - if $(OS) = NT { zip = $($(<).exe:S=.zip) ; } - if $(UNIX) = true { zip = $($(<).exe:S=.tgz) ; } - zip = $(zip:S=)-$(VERSION)-$(RELEASE)-$(platform)$(zip:S) ; - DEPENDS $(zip) : $($(<).exe) ; - DEPENDS dist : $(zip) ; - #~ LOCATE on $(zip) = $(locate-target) ; - if $(OS) = NT { [ZIP] $(zip) : $($(<).exe) ; } - if $(UNIX) = true { [PACK] $(zip) : $($(<).exe) ; } - .clean $(zip) ; -} - -# Package some file. -rule .package ( dst-dir : src-files + ) -{ - local dst-files ; - local src-files-actual ; - for local src-path in $(src-files) - { - if ! [ GLOB $(src-path:P) : $(src-path:B) ] || [ CHECK_IF_FILE $(src-path) ] - { - local src-subdir = $(src-path:D) ; - local src-file = $(src-path) ; - while $(src-subdir:D) { src-subdir = $(src-subdir:D) ; } - if $(src-subdir) = ".." - { - src-file = $(src-file:D=) ; - } - dst-files += $(src-file:R=$(dst-dir)) ; - src-files-actual += $(src-path) ; - } - } - - local pack ; - if $(OS) = NT { pack = $(dst-dir).zip ; } - if $(UNIX) = true { pack = $(dst-dir).tgz ; } - - DEPENDS dist : $(pack) ; - DEPENDS $(pack) : $(dst-files) ; - - local dst-files-queue = $(dst-files) ; - for local src-path in $(src-files-actual) - { - local dst-file = $(dst-files-queue[1]) ; - dst-files-queue = $(dst-files-queue[2-]) ; - DEPENDS $(dst-file) : $(src-path) $(dst-file:D) ; - .mkdir $(dst-file:D) ; - - [COPY] $(dst-file) : $(src-path) ; - .clean $(dst-file) ; - } - - [PACK] $(pack) : $(dst-files) ; - .clean $(pack) ; -} - -# RPM distro file. -rpm-tool = [ GLOB $(PATH) : "rpmbuild" ] ; -rpm-tool ?= [ GLOB $(PATH) : "rpm" ] ; -rpm-tool = $(rpm-tool[1]) ; -rule .rpm ( name : source ) -{ - local rpm-arch ; - switch $(OSPLAT) - { - case X86 : rpm-arch ?= i386 ; - case PPC : rpm-arch ?= ppc ; - case AXP : rpm-arch ?= alpha ; - # no guaranty for these: - case IA64 : rpm-arch ?= ia64 ; - case ARM : rpm-arch ?= arm ; - case SPARC : rpm-arch ?= sparc ; - case * : rpm-arch ?= other ; - } - local target = $(name)-rpm ; - NOTFILE $(target) ; - DEPENDS dist : $(target) ; - DEPENDS $(target) : $(name).$(rpm-arch).rpm $(name).src.rpm ; - DEPENDS $(name).$(rpm-arch).rpm : $(source) ; - DEPENDS $(name).src.rpm : $(name).$(rpm-arch).rpm ; - docs on $(target) = $(dist.docs:J=" ") ; - arch on $(target) = $(rpm-arch) ; - if $(rpm-arch) = ppc { target-opt on $(target) = --target= ; } - else { target-opt on $(target) = "--target " ; } - [RPM] $(target) : $(source) ; - .clean $(name).$(rpm-arch).rpm $(name).src.rpm ; -} -actions [RPM] { - set -e - export BOOST_JAM_TOOLSET="$(toolset)" - $(rpm-tool) -ta $(target-opt)$(arch) $(>) | tee rpm.out - cp `grep -e '^Wrote:' rpm.out | sed 's/^Wrote: //'` . - rm -f rpm.out -} - -# The distribution targets. Do not bother with them unless this is a -# distribution build. -if dist in $(ARGV) -{ - #~ .binary bjam ; - .package $(NAME)-$(VERSION) : $(dist.source) ; - .package $(NAME)-$(VERSION)-$(RELEASE)-$(platform) : $(dist.bin) ; - if $(rpm-tool) - { - #~ .rpm $(NAME)-$(VERSION)-$(RELEASE) : $(NAME)-$(VERSION).tgz ; - } -}
http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/6da3961b/ext/kenlm/jam-files/engine/build.sh ---------------------------------------------------------------------- diff --git a/ext/kenlm b/ext/kenlm new file mode 160000 index 0000000..56fdb5c --- /dev/null +++ b/ext/kenlm @@ -0,0 +1 @@ +Subproject commit 56fdb5c44fca34d5a2e07d96139c28fb163983c5 diff --git a/ext/kenlm/jam-files/engine/build.sh b/ext/kenlm/jam-files/engine/build.sh deleted file mode 100755 index 470ea3c..0000000 --- a/ext/kenlm/jam-files/engine/build.sh +++ /dev/null @@ -1,303 +0,0 @@ -#!/bin/sh - -#~ Copyright 2002-2005 Rene Rivera. -#~ Distributed under the Boost Software License, Version 1.0. -#~ (See accompanying file LICENSE_1_0.txt or copy at -#~ http://www.boost.org/LICENSE_1_0.txt) - -# Reset the toolset. -BOOST_JAM_TOOLSET= - -# Run a command, and echo before doing so. Also checks the exit status and quits -# if there was an error. -echo_run () -{ - echo "$@" - $@ - r=$? - if test $r -ne 0 ; then - exit $r - fi -} - -# Print an error message, and exit with a status of 1. -error_exit () -{ - echo "###" - echo "###" "$@" - echo "###" - echo "### You can specify the toolset as the argument, i.e.:" - echo "### ./build.sh gcc" - echo "###" - echo "### Toolsets supported by this script are:" - echo "### acc, como, darwin, gcc, intel-darwin, intel-linux, kcc, kylix," - echo "### mipspro, mingw(msys), pathscale, pgi, qcc, sun, sunpro, tru64cxx, vacpp" - echo "###" - echo "### A special toolset; cc, is available which is used as a fallback" - echo "### when a more specific toolset is not found and the cc command is" - echo "### detected. The 'cc' toolset will use the CC, CFLAGS, and LIBS" - echo "### environment variables, if present." - echo "###" - exit 1 -} - -# Check that a command is in the PATH. -test_path () -{ - if `command -v command 1>/dev/null 2>/dev/null`; then - command -v $1 1>/dev/null 2>/dev/null - else - hash $1 1>/dev/null 2>/dev/null - fi -} - -# Check that the OS name, as returned by "uname", is as given. -test_uname () -{ - if test_path uname; then - test `uname` = $* - fi -} - -# Try and guess the toolset to bootstrap the build with... -Guess_Toolset () -{ - if test -r /mingw/bin/gcc ; then - BOOST_JAM_TOOLSET=mingw - BOOST_JAM_TOOLSET_ROOT=/mingw/ - elif test_uname Darwin ; then BOOST_JAM_TOOLSET=darwin - elif test_uname IRIX ; then BOOST_JAM_TOOLSET=mipspro - elif test_uname IRIX64 ; then BOOST_JAM_TOOLSET=mipspro - elif test_uname OSF1 ; then BOOST_JAM_TOOLSET=tru64cxx - elif test_uname QNX && test_path qcc ; then BOOST_JAM_TOOLSET=qcc - elif test_path gcc ; then BOOST_JAM_TOOLSET=gcc - elif test_path icc ; then BOOST_JAM_TOOLSET=intel-linux - elif test -r /opt/intel/cc/9.0/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET=intel-linux - BOOST_JAM_TOOLSET_ROOT=/opt/intel/cc/9.0 - elif test -r /opt/intel_cc_80/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET=intel-linux - BOOST_JAM_TOOLSET_ROOT=/opt/intel_cc_80 - elif test -r /opt/intel/compiler70/ia32/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET=intel-linux - BOOST_JAM_TOOLSET_ROOT=/opt/intel/compiler70/ia32/ - elif test -r /opt/intel/compiler60/ia32/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET=intel-linux - BOOST_JAM_TOOLSET_ROOT=/opt/intel/compiler60/ia32/ - elif test -r /opt/intel/compiler50/ia32/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET=intel-linux - BOOST_JAM_TOOLSET_ROOT=/opt/intel/compiler50/ia32/ - elif test_path pgcc ; then BOOST_JAM_TOOLSET=pgi - elif test_path pathcc ; then BOOST_JAM_TOOLSET=pathscale - elif test_path xlc ; then BOOST_JAM_TOOLSET=vacpp - elif test_path como ; then BOOST_JAM_TOOLSET=como - elif test_path KCC ; then BOOST_JAM_TOOLSET=kcc - elif test_path bc++ ; then BOOST_JAM_TOOLSET=kylix - elif test_path aCC ; then BOOST_JAM_TOOLSET=acc - elif test_uname HP-UX ; then BOOST_JAM_TOOLSET=acc - elif test -r /opt/SUNWspro/bin/cc ; then - BOOST_JAM_TOOLSET=sunpro - BOOST_JAM_TOOLSET_ROOT=/opt/SUNWspro/ - # Test for "cc" as the default fallback. - elif test_path $CC ; then BOOST_JAM_TOOLSET=cc - elif test_path cc ; then - BOOST_JAM_TOOLSET=cc - CC=cc - fi - if test "$BOOST_JAM_TOOLSET" = "" ; then - error_exit "Could not find a suitable toolset." - fi -} - -# The one option we support in the invocation -# is the name of the toolset to force building -# with. -case "$1" in - --guess-toolset) Guess_Toolset ; echo "$BOOST_JAM_TOOLSET" ; exit 1 ;; - -*) Guess_Toolset ;; - ?*) BOOST_JAM_TOOLSET=$1 ; shift ;; - *) Guess_Toolset ;; -esac -BOOST_JAM_OPT_JAM="-o bootstrap/jam0" -BOOST_JAM_OPT_MKJAMBASE="-o bootstrap/mkjambase0" -BOOST_JAM_OPT_YYACC="-o bootstrap/yyacc0" -case $BOOST_JAM_TOOLSET in - mingw) - if test -r ${BOOST_JAM_TOOLSET_ROOT}bin/gcc ; then - export PATH=${BOOST_JAM_TOOLSET_ROOT}bin:$PATH - fi - BOOST_JAM_CC="gcc -DNT" - ;; - - gcc) - BOOST_JAM_CC=gcc - ;; - - darwin) - BOOST_JAM_CC=cc - ;; - - intel-darwin) - BOOST_JAM_CC=icc - ;; - - intel-linux) - if test -r /opt/intel/cc/9.0/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET_ROOT=/opt/intel/cc/9.0/ - elif test -r /opt/intel_cc_80/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET_ROOT=/opt/intel_cc_80/ - elif test -r /opt/intel/compiler70/ia32/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET_ROOT=/opt/intel/compiler70/ia32/ - elif test -r /opt/intel/compiler60/ia32/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET_ROOT=/opt/intel/compiler60/ia32/ - elif test -r /opt/intel/compiler50/ia32/bin/iccvars.sh ; then - BOOST_JAM_TOOLSET_ROOT=/opt/intel/compiler50/ia32/ - fi - if test -r ${BOOST_JAM_TOOLSET_ROOT}bin/iccvars.sh ; then - # iccvars does not change LD_RUN_PATH. We adjust LD_RUN_PATH here in - # order not to have to rely on ld.so.conf knowing the icc library - # directory. We do this before running iccvars.sh in order to allow a - # user to add modifications to LD_RUN_PATH in iccvars.sh. - if test -z "${LD_RUN_PATH}"; then - LD_RUN_PATH="${BOOST_JAM_TOOLSET_ROOT}lib" - else - LD_RUN_PATH="${BOOST_JAM_TOOLSET_ROOT}lib:${LD_RUN_PATH}" - fi - export LD_RUN_PATH - . ${BOOST_JAM_TOOLSET_ROOT}bin/iccvars.sh - fi - BOOST_JAM_CC=icc - ;; - - vacpp) - BOOST_JAM_CC=xlc - ;; - - como) - BOOST_JAM_CC="como --c" - ;; - - kcc) - BOOST_JAM_CC=KCC - ;; - - kylix) - BOOST_JAM_CC=bc++ - ;; - - mipspro) - BOOST_JAM_CC=cc - ;; - - pathscale) - BOOST_JAM_CC=pathcc - ;; - - pgi) - BOOST_JAM_CC=pgcc - ;; - - sun*) - if test -z "${BOOST_JAM_TOOLSET_ROOT}" -a -r /opt/SUNWspro/bin/cc ; then - BOOST_JAM_TOOLSET_ROOT=/opt/SUNWspro/ - fi - if test -r "${BOOST_JAM_TOOLSET_ROOT}bin/cc" ; then - PATH=${BOOST_JAM_TOOLSET_ROOT}bin:${PATH} - export PATH - fi - BOOST_JAM_CC=cc - ;; - - clang*) - BOOST_JAM_CC="clang -Wno-unused -Wno-format" - BOOST_JAM_TOOLSET=clang - ;; - - tru64cxx) - BOOST_JAM_CC=cc - ;; - - acc) - BOOST_JAM_CC="cc -Ae" - ;; - - cc) - if test -z "$CC" ; then CC=cc ; fi - BOOST_JAM_CC=$CC - BOOST_JAM_OPT_JAM="$BOOST_JAM_OPT_JAM $CFLAGS $LIBS" - BOOST_JAM_OPT_MKJAMBASE="$BOOST_JAM_OPT_MKJAMBASE $CFLAGS $LIBS" - BOOST_JAM_OPT_YYACC="$BOOST_JAM_OPT_YYACC $CFLAGS $LIBS" - ;; - - qcc) - BOOST_JAM_CC=qcc - ;; - - *) - error_exit "Unknown toolset: $BOOST_JAM_TOOLSET" - ;; -esac - -echo "###" -echo "### Using '$BOOST_JAM_TOOLSET' toolset." -echo "###" - -YYACC_SOURCES="yyacc.c" -MKJAMBASE_SOURCES="mkjambase.c" -BJAM_SOURCES="\ - command.c compile.c constants.c debug.c execcmd.c frames.c function.c glob.c\ - hash.c hdrmacro.c headers.c jam.c jambase.c jamgram.c lists.c make.c make1.c\ - object.c option.c output.c parse.c pathsys.c regexp.c rules.c\ - scan.c search.c subst.c timestamp.c variable.c modules.c strings.c filesys.c\ - builtins.c class.c cwd.c native.c md5.c w32_getreg.c modules/set.c\ - modules/path.c modules/regex.c modules/property-set.c modules/sequence.c\ - modules/order.c" -case $BOOST_JAM_TOOLSET in - mingw) - BJAM_SOURCES="${BJAM_SOURCES} execnt.c filent.c pathnt.c" - ;; - - *) - BJAM_SOURCES="${BJAM_SOURCES} execunix.c fileunix.c pathunix.c" - ;; -esac - -BJAM_UPDATE= -if test "$1" = "--update" -o "$2" = "--update" -o "$3" = "--update" -o "$4" = "--update" ; then - BJAM_UPDATE="update" -fi -if test "${BJAM_UPDATE}" = "update" -a ! -x "./bootstrap/jam0" ; then - BJAM_UPDATE= -fi - -if test "${BJAM_UPDATE}" != "update" ; then - echo_run rm -rf bootstrap - echo_run mkdir bootstrap - if test ! -r jamgram.y -o ! -r jamgramtab.h ; then - echo_run ${BOOST_JAM_CC} ${BOOST_JAM_OPT_YYACC} ${YYACC_SOURCES} - if test -x "./bootstrap/yyacc0" ; then - echo_run ./bootstrap/yyacc0 jamgram.y jamgramtab.h jamgram.yy - fi - fi - if test ! -r jamgram.c -o ! -r jamgram.h ; then - if test_path yacc ; then YACC="yacc -d" - elif test_path bison ; then YACC="bison -y -d --yacc" - fi - echo_run $YACC jamgram.y - mv -f y.tab.c jamgram.c - mv -f y.tab.h jamgram.h - fi - if test ! -r jambase.c ; then - echo_run ${BOOST_JAM_CC} ${BOOST_JAM_OPT_MKJAMBASE} ${MKJAMBASE_SOURCES} - if test -x "./bootstrap/mkjambase0" ; then - echo_run ./bootstrap/mkjambase0 jambase.c Jambase - fi - fi - echo_run ${BOOST_JAM_CC} ${BOOST_JAM_OPT_JAM} ${BJAM_SOURCES} -fi -if test -x "./bootstrap/jam0" ; then - if test "${BJAM_UPDATE}" != "update" ; then - echo_run ./bootstrap/jam0 -f build.jam --toolset=$BOOST_JAM_TOOLSET "--toolset-root=$BOOST_JAM_TOOLSET_ROOT" "$@" clean - fi - echo_run ./bootstrap/jam0 -f build.jam --toolset=$BOOST_JAM_TOOLSET "--toolset-root=$BOOST_JAM_TOOLSET_ROOT" "$@" -fi
