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