|
|
1.1 ! root 1: # $Header: Makefile,v 1.25 83/09/12 16:26:12 sklower Exp $ ! 2: # Makefile for total Franz Lisp system. ! 3: # ! 4: # Read the file ReadMe for directions on how to build the system. ! 5: # ! 6: # capabilities of this directory. ! 7: # copylibrary: copies distribution copy of lisp directory to LibDir ! 8: # fast: make a new lisp and liszt assuming that a liszt and lisp ! 9: # already exist. Results are franz/mylisp and liszt/nliszt. ! 10: # Use 'make install' to install it. ! 11: # install: moves franz/mylisp to ObjDir/lisp and moves ! 12: # liszt/nliszt to ObjDir/liszt ! 13: # ! 14: #-- the rest of the capabilities are for use when making a distribution ! 15: # directory. ! 16: # copyallsource: copies lisp distrib files in the current directory tree ! 17: # to the tree CopyTo. ! 18: # CopyTo should exist already, but the subdirectories ! 19: # need not exist. ! 20: # ! 21: # Before doing one of the below, you should make sure that the on line ! 22: # manual is up to date. Go to the doc subdirectory and type ! 23: # 'make rall install' ! 24: # ! 25: # lispdist: makes a new distribution directory in LispDist. ! 26: # LispDist should already exist. ! 27: # ! 28: # lispscriptdist: make a shell script lisp distribution. The result is put ! 29: # in LispDist as a set of text files comprising a shell script. ! 30: # The files are broken into a nice size for transport over the berknet. ! 31: # The first thing that lispscriptdist does is to, ! 32: # 'make prelispscriptdist' ! 33: # Which insures that the files are ready to go. ! 34: # Also, the value of Version should be set to the version number of ! 35: # lisp you are making. ! 36: # ! 37: #--- Default paths and programs ! 38: DESTDIR = ! 39: .DEFAULT: all ! 40: ! 41: # the following line is modifed by './lispconf', don't modify it by hand. ! 42: #ifdef vax ! 43: Mach = vax ! 44: #else ! 45: #Mach = 68k ! 46: #endif ! 47: ! 48: RootDir = /usr/src/ucb/lisp ! 49: #ifdef ucbstd ! 50: LibDir = ${DESTDIR}/usr/lib/lisp ! 51: ObjDir = ${DESTDIR}/usr/ucb ! 52: #else ! 53: #LibDir = ${DESTDIR}${RootDir}/lisplib ! 54: #ObjDir = ${DESTDIR}${RootDir}/bin ! 55: #endif ! 56: LispDist = /usr/src/ucb/lispdist ! 57: CopyTo = /dev/null ! 58: Lisp = ${ObjDir}/lisp ! 59: Liszt = ${ObjDir}/liszt ! 60: Version = 38.79 ! 61: ! 62: # definitions that you shouldn't change ! 63: FranzD = franz/${Mach} ! 64: LisztD = liszt/${Mach} ! 65: CcodeDir = ../../${FranzD} ! 66: ! 67: #--- this directory also has some sources ! 68: Src = Makefile ReadMe lispconf lispnews scriptcat Notice cvt.awk ! 69: ! 70: #make as lisp and lisp assuming that there are .s files in the ! 71: #lisplib and liszt subdirs ! 72: fromasm: ! 73: #ifdef unisoft ! 74: # (cd as68 ; make DESTDIR=${LibDir} install) ! 75: #endif ! 76: (cd utils ; make LibDir=${LibDir} all) ! 77: (cd ${LibDir} ; make LibDir=${LibDir} as nld fromasm) ! 78: (cd ${FranzD} ; make LibDir=${LibDir} ObjDir=${ObjDir} nlisp) ! 79: (cd ${LisztD} ; make Lisp=${CcodeDir}/nlisp fromasm) ! 80: (cd liszt ; make Liszt=${Mach}/nliszt lxref) ! 81: ! 82: ## when the lisp system is rebuilt as part of the entire Nbsd distribution, ! 83: # three calls are made: ! 84: # first 'make' to build lisp,liszt and lxref ! 85: # next 'make DESTDIR=xxx install' to install the new lisp ! 86: # finally 'make clean' to clean out objects ! 87: # ! 88: # the 'make all' is done when just a 'make' is done ! 89: all: ! 90: (cd utils ; make LibDir=${LibDir} all) ! 91: (cd ${LibDir} ; make as nld) ! 92: (cd ${FranzD} ; make LibDir=${LibDir} ObjDir=${ObjDir} donlisp) ! 93: (cd ${LisztD} ; make Lisp=${CcodeDir}/nlisp nliszt) ! 94: (cd liszt ; make Liszt=${Mach}/nliszt lxref) ! 95: ! 96: ! 97: copylibrary: ! 98: #ifdef ucbstd ! 99: (cd lisplib ; make CopyTo=${LibDir} copysource) ! 100: -mkdir ${LibDir}/manual ! 101: (cd doc; make LibDir=${LibDir} FromDir=../lisplib \ ! 102: CopyTo=${LibDir}/manual copymanual) ! 103: #endif ! 104: ! 105: fast: ! 106: date ! 107: (cd utils ; make LibDir=${LibDir} all) ! 108: (cd ${LibDir}; make as nld tackon) ! 109: (cd ${FranzD}; make Lisp=${Lisp} Liszt=${Liszt} LibDir=${LibDir}\ ! 110: ObjDir=${ObjDir} donlisp) ! 111: (cd ${LisztD}; make Lisp=${CcodeDir}/nlisp Liszt=${Liszt} donliszt) ! 112: (X=`pwd` ; cd ${LibDir}; make Liszt=$$X/${LisztD}/nliszt clean all) ! 113: date ! 114: (cd ${FranzD}; make Liszt=../../${LisztD}/nliszt \ ! 115: ObjDir=${ObjDir} LibDir=${LibDir} donlisp) ! 116: date ! 117: (cd ${LisztD}; make Lisp=${CcodeDir}/nlisp \ ! 118: Liszt=./nliszt cleanobj nliszt) ! 119: (cd liszt ; make Liszt=${Mach}/nliszt lxref) ! 120: date ! 121: ! 122: slow: ! 123: date ! 124: (cd utils ; make LibDir=${LibDir} all) ! 125: (cd ${LibDir}; make as nld) ! 126: (cd ${FranzD}; make LibDir=${LibDir} ObjDir=${ObjDir} snlisp) ! 127: date ! 128: (cd ${LisztD}; make Lisp=${CcodeDir}/snlisp snliszt) ! 129: (cd ${LisztD}; make Lisp=${CcodeDir}/snlisp Liszt=./snliszt nliszt) ! 130: rm -f ${LisztD}/snliszt ! 131: date ! 132: rm -f ${FranzD}/snlisp ! 133: (X=`pwd`; cd ${FranzD};make Liszt=$$X/${LisztD}/nliszt \ ! 134: ObjDir=${ObjDir}\ ! 135: LibDir=${LibDir} nlisp) ! 136: (cd ${LisztD}; make Lisp=${CcodeDir}/nlisp Liszt=./nliszt nliszt) ! 137: (X=`pwd`; cd ${LibDir} ; make Liszt=$$X/${LisztD}/nliszt all) ! 138: (X=`pwd`; cd ${LibDir} ; make Liszt=$$X/${LisztD}/nliszt struct-again) ! 139: (X=`pwd`; cd ${FranzD} ; make Liszt=$$X/${LisztD}/nliszt \ ! 140: ObjDir=${ObjDir}\ ! 141: LibDir=${LibDir} donlisp) ! 142: (cd ${LisztD}; make Lisp=${CcodeDir}/nlisp Liszt=./nliszt nliszt) ! 143: (cd liszt ; make Liszt=${Mach}/nliszt lxref) ! 144: date ! 145: ! 146: install: ! 147: (cd ${FranzD}; make ObjDir=${ObjDir} LibDir=${LibDir} install) ! 148: (cd ${LisztD}; make ObjDir=${ObjDir} LibDir=${LibDir} install) ! 149: (cd liszt; make ObjDir=${ObjDir} LibDir=${LibDir} install) ! 150: ! 151: ! 152: copyallsource: ! 153: -mkdir ${CopyTo}/franz ! 154: -mkdir ${CopyTo}/franz/vax ! 155: -mkdir ${CopyTo}/franz/68k ! 156: -mkdir ${CopyTo}/liszt ! 157: -mkdir ${CopyTo}/liszt/vax ! 158: -mkdir ${CopyTo}/liszt/68k ! 159: -mkdir ${CopyTo}/doc ! 160: -mkdir ${CopyTo}/utils ! 161: -mkdir ${CopyTo}/lisplib ! 162: -mkdir ${CopyTo}/lisplib/manual ! 163: -mkdir ${CopyTo}/lisplib/autorun ! 164: -mkdir ${CopyTo}/pearl ! 165: cp ${Src} ${CopyTo} ! 166: (cd franz; make CopyTo=${CopyTo}/franz copysource) ! 167: (cd franz/vax; make CopyTo=${CopyTo}/franz/vax copysource) ! 168: (cd franz/68k; make CopyTo=${CopyTo}/franz/68k copysource) ! 169: (cd liszt; make CopyTo=${CopyTo}/liszt copysource) ! 170: (cd liszt/vax; make CopyTo=${CopyTo}/liszt/vax copysource) ! 171: (cd liszt/68k; make CopyTo=${CopyTo}/liszt/68k copysource) ! 172: (cd ${LibDir} ; make CopyTo=${CopyTo}/lisplib copysource) ! 173: (cd doc; make CopyTo=${CopyTo}/doc copysource) ! 174: (cd utils; make CopyTo=${CopyTo}/utils copysource) ! 175: (cd doc; \ ! 176: make FromDir=${LibDir} CopyTo=${CopyTo}/lisplib/manual copymanual) ! 177: (cd pearl; make CopyTo=${CopyTo}/pearl copysource) ! 178: ! 179: lispdist: ! 180: (cd ${LispDist}; rm -f -r *) ! 181: make CopyTo=${LispDist} copyallsource ! 182: ! 183: copyallobjects: ! 184: (cd franz/vax; make CopyTo=${CopyTo}/franz/vax copyobjects) ! 185: (cd franz/68k; make CopyTo=${CopyTo}/franz/68k copyobjects) ! 186: (cd liszt/vax; make CopyTo=${CopyTo}/liszt/vax copyobjects) ! 187: (cd ${LibDir} ; make CopyTo=${CopyTo}/lisplib copyobjects) ! 188: ! 189: prelispscriptdist: ! 190: (cd doc ; make all) ! 191: ! 192: lispscriptdist: ! 193: (cd ${LispDist}; rm -f -r opus*) ! 194: make prelispscriptdist ! 195: (make genlispscript | (cd ${LispDist} ; \ ! 196: divide -500000 -popus${Version}. -l)) ! 197: ! 198: xtra: ! 199: (cd ${LispDist}; rm -f -r x${Mach}*) ! 200: make Mach=${Mach} setupx ! 201: (make Mach=${Mach} genxtra) | \ ! 202: (cd ${LispDist} ; divide -500000 -px${Mach}.${Version}. -l) ! 203: ! 204: lispas: ! 205: make genas68 > ${LispDist}/lispas ! 206: ! 207: setupx: ! 208: (X=`pwd`; cd ${LibDir};\ ! 209: make Liszt="$$X/liszt/${Mach}/nliszt -e '(sstatus feature for-${Mach})'" xtra) ! 210: (cd liszt/${Mach}; make -f Makefile2 xtra) ! 211: ! 212: genlispscript: ! 213: @echo \# Franz Lisp distribution Opus ${Version} ! 214: @echo mkdir franz ! 215: @echo mkdir franz/h ! 216: @echo mkdir franz/vax ! 217: @echo mkdir franz/68k ! 218: @echo mkdir liszt ! 219: @echo mkdir liszt/vax ! 220: @echo mkdir liszt/68k ! 221: @echo mkdir doc ! 222: @echo mkdir utils ! 223: @echo mkdir pearl ! 224: @echo mkdir lisplib ! 225: @echo mkdir lisplib/manual ! 226: @echo mkdir lisplib/autorun ! 227: @scriptcat . . ${Src} ! 228: @echo chmod 775 lispconf ! 229: @(cd franz ; make scriptcatall) ! 230: @(cd franz/vax ; make scriptcatall) ! 231: @(cd franz/68k ; make scriptcatall) ! 232: @(cd liszt ; make scriptcatall) ! 233: @(cd liszt/vax ; make scriptcatall) ! 234: @(cd liszt/68k ; make scriptcatall) ! 235: @(cd doc ; make LibDir=${LibDir} scriptcatall) ! 236: @(cd utils ; make scriptcatall ) ! 237: @(X=`pwd` ; cd pearl ; make CdTo=$$X scriptcatall) ! 238: @(X=`pwd` ; cd ${LibDir} ; make CdTo=$$X scriptcatall) ! 239: @echo \# end of Franz Lisp Distribution ! 240: ! 241: genas68: ! 242: @(echo mkdir as68;cd as68; make scriptcat) ! 243: ! 244: genxtra: ! 245: @(X=`pwd` ; cd ${LibDir} ; make CdTo=$$X scriptcatxtra) ! 246: @(cd liszt/${Mach} ; make -f Makefile2 scriptcatxtra) ! 247: ! 248: clean: ! 249: cd franz ; make clean ! 250: cd franz/vax; make clean ! 251: cd franz/68k; make clean ! 252: cd liszt ; make clean ! 253: cd liszt/vax; make clean ! 254: cd liszt/68k; make clean ! 255: cd doc ; make clean
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.