mirror of
https://github.com/boostorg/build.git
synced 2026-02-13 00:12:11 +00:00
154 lines
5.0 KiB
Plaintext
154 lines
5.0 KiB
Plaintext
$ ! Copyright 2002-2003 Rene Rivera, Johan Nilsson.
|
|
$ !
|
|
$ ! 8-APR-2004 Boris Gubenko
|
|
$ ! Miscellaneous improvements.
|
|
$ !
|
|
$ ! 20-JAN-2015 Artur Shepilko
|
|
$ ! Adapt for jam 3.1.19
|
|
$ !
|
|
$ ! Distributed under the Boost Software License, Version 1.0.
|
|
$ ! (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
$ !
|
|
$ ! bootstrap build script for Jam
|
|
$ !
|
|
$ THIS_FACILITY = "BUILDJAM"
|
|
$
|
|
$ verify = f$trnlnm("VERIFY_''THIS_FACILITY'")
|
|
$ save_verify = f$verify(verify)
|
|
$
|
|
$ SAY := WRITE SYS$OUTPUT
|
|
$ !
|
|
$ ON WARNING THEN CONTINUE
|
|
$ ON ERROR THEN GOTO EXIT
|
|
$
|
|
$ BOOST_JAM_TOOLSET = "vmsdecc"
|
|
$ BOOST_JAM_CC = "CC"
|
|
$ BJAM_UPDATE = ""
|
|
$
|
|
$ ARGS = F$EDIT("''p1' ''p2' ''p3' ''p4'","TRIM,LOWERCASE")
|
|
$ ARGS_LEN = F$LENGTH(ARGS)
|
|
$
|
|
$ IF F$LOCATE("--update", ARGS) .NE. F$LENGTH(ARGS) THEN BJAM_UPDATE = "update"
|
|
$ IF BJAM_UPDATE .EQS. "update" -
|
|
.AND. F$SEARCH("[.bootstrap_vms]jam0.exe") .EQS. "" THEN BJAM_UPDATE = ""
|
|
$
|
|
$ IF BJAM_UPDATE .NES. "update"
|
|
$ THEN
|
|
$ GOSUB CLEAN
|
|
$
|
|
$ SAY "I|Creating bootstrap directory..."
|
|
$ CREATE /DIR [.bootstrap_vms]
|
|
$
|
|
$ !------------------
|
|
$ ! NOTE: Assume jamgram and jambase have been generated (true for fresh release).
|
|
$ ! Otherwise these need to be re-generated manually.
|
|
$ !------------------
|
|
$
|
|
$ SAY "I|Building bootstrap jam..."
|
|
$ !
|
|
$ CC_FLAGS = "/DEFINE=VMS /STANDARD=VAXC " + -
|
|
"/PREFIX_LIBRARY_ENTRIES=(ALL_ENTRIES) " + -
|
|
"/WARNING=DISABLE=(LONGEXTERN)" + -
|
|
"/OBJ=[.bootstrap_vms] "
|
|
$
|
|
$ CC_INCLUDE=""
|
|
$
|
|
$ SAY "I|Using compile flags: ", CC_FLAGS
|
|
$
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE command.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE compile.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE constants.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE debug.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE execcmd.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE frames.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE function.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE glob.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE hash.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE hdrmacro.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE headers.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE jam.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE jambase.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE jamgram.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE lists.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE make.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE make1.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE object.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE option.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE output.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE parse.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE pathsys.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE regexp.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE rules.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE scan.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE search.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE subst.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE timestamp.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE variable.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE modules.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE strings.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE filesys.c
|
|
$
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE execvms.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE pathvms.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE filevms.c
|
|
$
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE builtins.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE class.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE cwd.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE native.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE md5.c
|
|
$
|
|
$ CC_INCLUDE = "/INCLUDE=(""./modules"")"
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE [.modules]set.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE [.modules]path.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE [.modules]regex.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE [.modules]property-set.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE [.modules]sequence.c
|
|
$ 'BOOST_JAM_CC' 'CC_FLAGS 'CC_INCLUDE [.modules]order.c
|
|
$
|
|
$ LIB /CREATE [.bootstrap_vms]jam0.olb [.bootstrap_vms]*.obj
|
|
$ LINK /EXEC=[.bootstrap_vms]jam0.exe -
|
|
[.bootstrap_vms]jam0.olb/INCLUDE=JAM/LIB
|
|
$
|
|
$ IF F$SEARCH("[.bootstrap_vms]*.obj") .NES. "" THEN -
|
|
DELETE /NOCONF /NOLOG [.bootstrap_vms]*.obj;*, *.olb;*
|
|
$ ENDIF
|
|
$
|
|
$ IF F$SEARCH("[.bootstrap_vms]jam0.exe") .NES. ""
|
|
$ THEN
|
|
$ IF BJAM_UPDATE .NES. "update"
|
|
$ THEN
|
|
$ SAY "I|Cleaning previous build..."
|
|
$ MCR [.bootstrap_vms]jam0.exe -f build.jam --toolset='BOOST_JAM_TOOLSET' 'ARGS' clean
|
|
$ ENDIF
|
|
$
|
|
$ SAY "I|Building Boost.Jam..."
|
|
$ MCR [.bootstrap_vms]jam0.exe -f build.jam --toolset='BOOST_JAM_TOOLSET' 'ARGS'
|
|
$ ENDIF
|
|
$
|
|
$
|
|
$EXIT:
|
|
$ sts = $STATUS
|
|
$ exit 'sts' + (0 * f$verify(save_verify))
|
|
|
|
|
|
$CLEAN: !GOSUB
|
|
$ !
|
|
$ IF F$SEARCH("[.bootstrap_vms]*.*") .NES. ""
|
|
$ THEN
|
|
$ SAY "I|Cleaning previous bootstrap files..."
|
|
$ !
|
|
$ SET FILE /PROT=(W:RWED) [.bootstrap_vms]*.*;*
|
|
$ DELETE /NOCONF /NOLOG [.bootstrap_vms]*.*;*
|
|
$ ENDIF
|
|
$ !
|
|
$ IF F$SEARCH("bootstrap_vms.dir") .NES. ""
|
|
$ THEN
|
|
$ SAY "I|Removing previous bootstrap directory..."
|
|
$ !
|
|
$ SET FILE /PROT=(W:RWED) bootstrap_vms.dir
|
|
$ DELETE /NOCONF /NOLOG bootstrap_vms.dir;
|
|
$ ENDIF
|
|
$ !
|
|
$ RETURN
|