Select Git revision
build_pyrte3.com
-
Jean-Francois Pieronne authoredJean-Francois Pieronne authored
build_pyrte3.com 2.53 KiB
$!-----------------------------------------------------------------------------
$! BUILD_PYRTE.COM
$!
$! Copyright (C) 2007-2020 Mark G.Daniel.
$! This package (all associated programs), comes with ABSOLUTELY NO WARRANTY.
$! This is free software, and you are welcome to redistribute it
$! under the conditions of the GNU GENERAL PUBLIC LICENSE, version 2.
$!
$!
$! VERSION HISTORY
$! ---------------
$! 19-AUG-2020 MGD adapt for JFP Python 3
$! 16-JUL-2017 MGD (after 10 years) fix image identification
$! 22-APR-2007 JFP use same build options as Python
$! 10-APR-2007 MGD initial
$!-----------------------------------------------------------------------------
$!
$ SAY = "WRITE SYS$OUTPUT"
$!
$ SAY ""
$ SAY "Building ""PYRTE"" for ""''F$GETSYI("ARCH_NAME")'"" architecture"
$!
$ SYI_VERSION = F$GETSYI("VERSION")
$ VMS_VERSION = F$INTEGER(F$EXTRACT(1,1,SYI_VERSION)) * 100 +-
F$INTEGER(F$EXTRACT(3,1,SYI_VERSION)) * 10
$ IF F$EXTRACT(4,1,SYI_VERSION) .EQS. "-" -
THEN VMS_VERSION = VMS_VERSION + F$INTEGER(F$EXTRACT(5,1,SYI_VERSION))
$ DATETIME = F$TIME()
$ IF F$EXTRACT(0,1,DATETIME) .EQS. " " THEN DATETIME = F$EXTRACT(1,99,DATETIME)
$!
$ ARCH_NAME = F$EDIT(F$GETSYI("ARCH_NAME"),"UPCASE")
$ IF ARCH_NAME .EQS. "ALPHA" THEN ARCH_NAME = "AXP"
$!
$ CC_DEFINES = "/DEFINE=(BUILD_DATETIME=""""""''DATETIME'"""""")"
$ IF F$SEARCH("PYTHON3_ROOT:[INCLUDE]*.H") .NES. ""
$ THEN CC_INCLUDES = "/INCLUDE=(""python3_root/include"")"
$ ELSE CC_INCLUDES = "/INCLUDE=(PYTHON_INCLUDE:)"
$ ENDIF
$!!
$ CC_OPTIONS = "/DECC/OPTIMIZE/PREFIX=ALL/NAMES=(AS_IS,SHORTENED)/PREFIX=ALL"
$ CC_OPTIONS = CC_OPTIONS + "/DEFINE=(_LARGEFILE)/ACCEPT=NOVAXC_KEYWORDS"
$ CC_OPTIONS = CC_OPTIONS + "/FLOAT=IEEE/IEEE_MODE=DENORM_RESULTS"
$!
$ IF F$SEARCH("OBJ_''ARCH_NAME'.DIR") .EQS. "" -
THEN CREATE /DIR [.OBJ_'ARCH_NAME']
$ OBJECT_DIR = "[.OBJ_''ARCH_NAME']"
$!
$ IF P1 .EQS. "" .OR. P1 .EQS. "BUILD"
$ THEN
$!
$ SET NOON
$ SET VERIFY
$ CC 'CC_OPTIONS''CC_DEFINES''CC_INCLUDES' /OBJECT='OBJECT_DIR'PYRTE PYRTE
$! 'F$VERIFY(0)
$ CC_STATUS = $STATUS
$ CC_SEVERITY = $SEVERITY
$ IF .NOT. CC_SEVERITY THEN EXIT 'CC_STATUS'
$ SET ON
$!
$ ENDIF
$!
$ IF P1 .EQS. "" .OR. P1 .EQS. "BUILD" .OR. P1 .EQS. "LINK"
$ THEN
$!
$ SET NOON
$ SET VERIFY
$ LINK /THREADS_ENABLE/EXECUTABLE=WASD_EXE:PYRTE3.EXE -
[.OBJ_'ARCH_NAME']PYRTE.OBJ, -
SYS$INPUT:/OPTIONS
IDENTIFICATION="PYRTE 3.0.0"
PYTHON3SHR/SHARE
$! 'F$VERIFY(0)
$ SET ON
$!
$ ENDIF
$!
$ PURGE /NOLOG 'OBJECT_DIR'
$ SAY ""
$!-----------------------------------------------------------------------------