Annotation of 43BSDTahoe/ucb/lisp/franz/vax/Make.vms, revision 1.1

1.1     ! root        1: #
        !             2: # 
        !             3: # $Header: Make.vms 1.3 83/04/26 14:22:20 sklower Exp $
        !             4: #
        !             5: # $Locker:  $
        !             6: #  Franz Lisp C coded kernel 
        !             7: #
        !             8: #-- Default Paths:
        !             9: #  see ../../ReadMe for a explaination of what LibDir and CopyTo mean
        !            10: #  D is the directory used for holding intermediate files during 
        !            11: #    compilation
        !            12: #-- Options:
        !            13: #  there is one compile time options which can be set in this file
        !            14: #  * do profiling (ala the unix prof(1) command)
        !            15: #
        !            16: #  The selection of this options is made below
        !            17: #  Other options can be selected by editing h/config.h or via
        !            18: #  ../../lispconf
        !            19: #
        !            20: AS = vmsas     # Generate VMS object files
        !            21: 
        !            22: LibDir = /usr/lib/lisp
        !            23: ObjDir = /usr/ucb
        !            24: CopyTo = /dev/null
        !            25: Liszt = liszt
        !            26: Lisp = lisp
        !            27: # if you change this you must recompile rlc.c 
        !            28: # (and change the value in ../Makefile)
        !            29: #
        !            30: HOLE=2097152
        !            31: 
        !            32: .DEFAULT: nlisp
        !            33: 
        !            34: MipSrc1= ../low.c ../lowaux.s
        !            35: MipSrc2= ../alloc.c ../data.c
        !            36: MipSrc3= ../rlc.c
        !            37: MipSrc4= ../lisp.c ../eval.c ../eval2.c ../inits.c ../io.c ../error.c \
        !            38:         ../sysat.c ../lam1.c ../lam2.c ../lam3.c ../lam4.c ../lam5.c\
        !            39:         ../lam6.c  ../lam7.c ../lam8.c ../lam9.c ../lamr.c ../lamp.c \
        !            40:         ../fex1.c ../fex2.c ../fex3.c ../fex4.c ../fexr.c\
        !            41:         ../fpipe.c \
        !            42:         ../subbig.c ../pbignum.c ../divbig.c \
        !            43:         ../ffasl.c ../fasl.c \
        !            44:         ../trace.c ../evalf.c ../frame.c ../lamgc.c
        !            45: 
        !            46: MipSrc = ${MipSrc1} ${MipSrc2} ${MipSrc3} ${MipSrc4}
        !            47: 
        !            48: MipObj1= ../low.o  ../lowaux.o
        !            49: MipObj2= ../alloc.o ../data.o
        !            50: HoleMipObj2 = ../Salloc.o ../Sdata.o
        !            51: HoleMipObj3 = ../rlc.o
        !            52: MipObj4= ../lisp.o ../eval.o ../eval2.o ../inits.o ../io.o ../error.o \
        !            53:         ../sysat.o ../lam1.o ../lam2.o ../lam3.o ../lam4.o ../lam5.o\
        !            54:         ../lam6.o  ../lam7.o ../lam8.o ../lam9.o ../lamr.o ../lamp.o \
        !            55:         ../fex1.o ../fex2.o ../fex3.o ../fex4.o ../fexr.o\
        !            56:         ../fpipe.o \
        !            57:         ../subbig.o ../pbignum.o ../divbig.o \
        !            58:         ../ffasl.o ../fasl.o \
        !            59:         ../trace.o ../evalf.o ../frame.o ../lamgc.o
        !            60: 
        !            61: # this list must contain all the include files, not just those used
        !            62: # in the vax version.  The include filenames are relative to ..
        !            63: #
        !            64: Includes = h/config.h  h/global.h      h/oaout.h       h/vaxframe.h \
        !            65:        h/catchfram.h   h/dfuncs.h      h/gtabs.h       h/sigtab.h \
        !            66:        h/chars.h       h/frame.h       h/lfuncs.h      h/structs.h \
        !            67:        h/chkrtab.h     h/gc.h          h/naout.h       h/types.h \
        !            68:        h/lconf.h       h/ltypes.h
        !            69: 
        !            70: #------ Options
        !            71: 
        !            72: #--- profiling selection
        !            73: # If the lisp system is to run with profiling, this must be done:
        !            74: #  1) remove the # (comment character) from the ProfFlag and
        !            75: #     ProfFlag2 definitions below (also do it in ../Makefile)
        !            76: #  2) remove all .o files and do a make.
        !            77: #
        !            78: ProfFlag = # -XP
        !            79: ProfFlag2 = # -DPROF
        !            80: 
        !            81: 
        !            82: # The order of loading of certain files is important.
        !            83: # low.o must be first and lowaux second.
        !            84: # 
        !            85: BottomObj = ${MipObj1}
        !            86: 
        !            87: # Different objects are required depending on whether there is to be
        !            88: # a hole between text and data space.
        !            89: #
        !            90: NoHoleObj = ${MipObj2}
        !            91: HoleObj   = hole.obj ${HoleMipObj2} ${HoleMipObj3}
        !            92: 
        !            93: VaxObj = bigmath.o qfuncl.o vax.o prealloc.o
        !            94: 
        !            95: VaxSrc = bigmath.c qfuncl.c vax.c crt0.s hcrt0.s
        !            96: 
        !            97: # AllSrc does not (and should not) include ${Includes}
        !            98: 
        !            99: AllSrc = Makefile  fixmask.c fixpbig.e ${VaxSrc} ${MipSrc}
        !           100: 
        !           101: 
        !           102: .SUFFIXES : .c.l
        !           103: #
        !           104: # use temporary files rather than pipes to keep the number of procs. down
        !           105: # thus, users with low process quotas on VMS can still build lisp
        !           106: #
        !           107: .c.o :
        !           108:        @csh -cfe "echo cc -c  $*.c;\
        !           109:        rm -f $*.o;\
        !           110:        /lib/cpp $< -I../h > $*.tm0;\
        !           111:        /lib/ccom ${ProfFlag} $*.tm0 $*.tm1;\
        !           112:        fixmask <$*.tm1 >$*.tm2;\
        !           113:        sed -f fixpbig.e <$*.tm2 >$*.tm3;\
        !           114:        /lib/c2 $*.tm3 >$*.tms;\
        !           115:        ${AS} -o $*.o $*.tms;\
        !           116:        rm $*.tms $*.tm0 $*.tm1 $*.tm2 $*.tm3"
        !           117: 
        !           118: .l.o :
        !           119:        liszt $< > #resc
        !           120:        @echo liszt $< done
        !           121: 
        !           122: # one special case:
        !           123: #  add -DPROF if you want to profile the assembler code
        !           124: 
        !           125: # EXPLICITLY USE "unixcpp" SO THAT "$"s IN ASSEMBLER CODE WORK!
        !           126: qfuncl.o: qfuncl.c
        !           127:        /lib/unixcpp -I../h ${ProfFlag2} qfuncl.c | ${AS} -o qfuncl.o
        !           128: 
        !           129: bigmath.o: bigmath.c
        !           130:        /lib/unixcpp -I../h ${ProfFlag2} bigmath.c | ${AS} -o bigmath.o
        !           131: 
        !           132: ../rlc.o: ../rlc.c 
        !           133:        cc -S -O -DHOLE=${HOLE} ../rlc.c
        !           134:        ${AS} -o rlc.o rlc.s
        !           135:        rm rlc.s
        !           136:        mv rlc.o ../rlc.o
        !           137: 
        !           138: ../low.o: ../low.c
        !           139:        cc -I../h -R -S ../low.c
        !           140:        ${AS} -R -o low.o low.s
        !           141:        rm low.s
        !           142:        mv low.o ../low.o
        !           143: 
        !           144: ../Salloc.o: ../alloc.c
        !           145:        (echo "# define HOLE"; cat ../alloc.c) > Salloc.c;\
        !           146:        make Salloc.o; mv Salloc.o .. < /dev/null ; rm Salloc.c
        !           147:        
        !           148: ../Sdata.o: ../data.c
        !           149:        (echo "# define HOLE=${HOLE}"; cat ../data.c) > Sdata.c;\
        !           150:        make Sdata.o; mv Sdata.o .. < /dev/null  ; rm Sdata.c
        !           151: 
        !           152: fixmask: fixmask.c
        !           153:        cc -O -o fixmask fixmask.c
        !           154: 
        !           155: # rawlisp is the standard raw lisp system.
        !           156: 
        !           157: rawlisp: fixmask fixpbig.e rawlisp.com \
        !           158:                ${BottomObj} ${NoHoleObj} ${MipObj4} ${VaxObj} 
        !           159:        rm -f rawlisp
        !           160:        vms @rawlisp.com
        !           161:        ls -l rawlisp
        !           162: 
        !           163: 
        !           164: # hlisp is a raw lisp system with a hole between text and data
        !           165: 
        !           166: rawhlisp: fixmask fixpbig.e rawhlisp.com \
        !           167:                ${BottomObj} ${HoleObj} ${MipObj4} ${VaxObj} 
        !           168:        rm -f rawhlisp
        !           169:        vms @rawhlisp.com ${HOLE}
        !           170:        ls -l rawhlisp
        !           171: 
        !           172: 
        !           173: clean:
        !           174:        rm -f *.o
        !           175: 
        !           176: lint:
        !           177:        lint h/*.h *.c
        !           178: 
        !           179: install: nlisp 
        !           180:        -rm -f ${ObjDir}/lisp
        !           181:        mv nlisp ${ObjDir}/lisp
        !           182:        @echo lisp installed
        !           183: 
        !           184: nlisp: rawlisp ${LibDir}
        !           185:        -rm -f nlisp
        !           186:        (cd ${LibDir} ; make Liszt=${Liszt} required)
        !           187:        echo "(progn (setq build:map 'map \
        !           188:                           build:lisp-type 'franz \
        !           189:                           lisp-library-directory '${LibDir} \
        !           190:                           build:dir '${LibDir} \
        !           191:                           lisp-object-directory '${ObjDir}) \
        !           192:                     (load '${LibDir}/buildlisp)\
        !           193:                     (dumplisp nlisp))" | rawlisp
        !           194:        ${LibDir}/tackon map nlisp
        !           195:        @echo nlisp built
        !           196: 
        !           197: 
        !           198: donlisp:
        !           199:        -rm -f nlisp
        !           200:        make LibDir=${LibDir} Liszt=${Liszt} ObjDir=${ObjDir} nlisp
        !           201: 
        !           202: #--- snlisp: create a totally interpreted lisp.
        !           203: #      dump as snlisp
        !           204: snlisp: rawlisp
        !           205:        echo "(progn (setq build:load t         \
        !           206:                           build:lisp-type 'franz \
        !           207:                           build:dir '${LibDir} \
        !           208:                           lisp-object-directory '${ObjDir}\
        !           209:                           lisp-library-directory '${LibDir})\
        !           210:                     (load '${LibDir}/buildlisp)\
        !           211:                     (dumplisp snlisp))" | rawlisp
        !           212: 
        !           213: 
        !           214: tags:  
        !           215:        ctags $(VaxSrc) ${MipSrc}
        !           216: 
        !           217: #--- copysource : copy source files to another directory
        !           218: #  called via   make CopyTo=/xx/yyy/zz copysource
        !           219: # 
        !           220: copysource: ${AllSrc}
        !           221:        (tar cf - ${AllSrc} | (cd ${CopyTo} ; tar xf -))
        !           222: 
        !           223: copyobjects: ${AllObj}
        !           224:        (tar cf - ${AllObj} | (cd ${CopyTo} ; tar xf -))
        !           225: 
        !           226: scriptcatall: ${AllSrc}
        !           227:        @../../scriptcat . franz/vax ${AllSrc}
        !           228:        @../../scriptcat .. franz ${Includes}
        !           229: 
        !           230:        
        !           231: #--- prealloc.o: the "C" runtime startup for EUNICE with data structure
        !           232: #      preallocation and restart capabilities
        !           233: #              NFILES  - # file descriptors of data structure to allocate
        !           234: #              RESTART - allow restart from saved image
        !           235: #
        !           236: prealloc.o:    Makefile
        !           237:        /lib/cpp -DNFILES=20 -DRESTART /usr/include/eunice/prealloc.c prealloc.tm0
        !           238:        /lib/ccom prealloc.tm0 prealloc.tm1
        !           239:        /lib/c2 prealloc.tm1 prealloc.tm2
        !           240:        sed -f /usr/include/eunice/sedfixup.e <prealloc.tm2 >prealloc.tm3
        !           241:        ${AS} -o prealloc.o prealloc.tm3
        !           242:        rm prealloc.tm0 prealloc.tm1 prealloc.tm2 prealloc.tm3
        !           243: 
        !           244: rawlisp.com: rawlisp.unx totxtfile
        !           245:        totxtfile rawlisp.unx rawlisp.com
        !           246: 
        !           247: rawhlisp.com: rawhlisp.unx totxtfile
        !           248:        totxtfile rawhlisp.unx rawhlisp.com
        !           249: 
        !           250: hole.obj: hole.unx totxtfile
        !           251:        sed "s/%d/${HOLE}/" < hole.unx | totxtfile hole.mar
        !           252:        vms macro/nolist hole.mar
        !           253: 
        !           254: totxtfile: totxtfile.c
        !           255:        cc -O totxtfile.c -o totxtfile

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.