146439007SCharles.Forsyth# Directories common to all architectures. 246439007SCharles.Forsyth# Build in order: 346439007SCharles.Forsyth# - critical libraries used by the limbo compiler 446439007SCharles.Forsyth# - the limbo compiler (used to build some subsequent libraries) 546439007SCharles.Forsyth# - the remaining libraries 646439007SCharles.Forsyth# - commands 746439007SCharles.Forsyth# - utilities 846439007SCharles.Forsyth 946439007SCharles.ForsythEMUDIRS=\ 1046439007SCharles.Forsyth lib9\ 1146439007SCharles.Forsyth libbio\ 1246439007SCharles.Forsyth libmp\ 1346439007SCharles.Forsyth libsec\ 1446439007SCharles.Forsyth libmath\ 1518eb7a2dSCharles.Forsyth utils/iyacc\ 1646439007SCharles.Forsyth limbo\ 1746439007SCharles.Forsyth libinterp\ 184491bf45SCharles.Forsyth libkeyring\ 1946439007SCharles.Forsyth libdraw\ 2046439007SCharles.Forsyth libprefab\ 2146439007SCharles.Forsyth libtk\ 2246439007SCharles.Forsyth libfreetype\ 2346439007SCharles.Forsyth libmemdraw\ 2446439007SCharles.Forsyth libmemlayer\ 2546439007SCharles.Forsyth libdynld\ 2646439007SCharles.Forsyth utils/data2c\ 2746439007SCharles.Forsyth utils/ndate\ 2846439007SCharles.Forsyth emu\ 2946439007SCharles.Forsyth 3046439007SCharles.ForsythKERNEL_DIRS=\ 3146439007SCharles.Forsyth os\ 3246439007SCharles.Forsyth os/boot/pc\ 3346439007SCharles.Forsyth 3446439007SCharles.Forsyth# mkconfig is included at this point to allow it to override 3546439007SCharles.Forsyth#the preceding declarations (particularly KERNEL_DIRS) if need be 3646439007SCharles.Forsyth 3746439007SCharles.Forsyth<mkconfig 3846439007SCharles.Forsyth 3946439007SCharles.ForsythDIRS=\ 4046439007SCharles.Forsyth $EMUDIRS\ 41*ab3b8cccSCharles Forsyth# appl\ 4246439007SCharles.Forsyth 4346439007SCharles.Forsythfoo:QV: 4446439007SCharles.Forsyth echo mk all, clean, install, installall or nuke 4546439007SCharles.Forsyth 4646439007SCharles.Forsythall:V: all-$HOSTMODEL 4746439007SCharles.Forsythclean:V: clean-$HOSTMODEL 4846439007SCharles.Forsythinstall:V: install-$HOSTMODEL 4946439007SCharles.Forsythinstallall:V: installall-$HOSTMODEL 5046439007SCharles.Forsythemu:V: emu/all-$HOSTMODEL 5146439007SCharles.Forsythemuinstall:V: emu/install-$HOSTMODEL 5246439007SCharles.Forsythemuclean:V: emu/clean-$HOSTMODEL 5346439007SCharles.Forsythemunuke:V: emu/nuke-$HOSTMODEL 5446439007SCharles.Forsythkernel:V: kernel/all-$HOSTMODEL 5546439007SCharles.Forsythkernelall:V: kernel/all-$HOSTMODEL 5646439007SCharles.Forsythkernelclean:V: kernel/clean-$HOSTMODEL 5746439007SCharles.Forsythkernelinstall:V: kernel/install-$HOSTMODEL 5846439007SCharles.Forsythkernelinstallall:V: kernel/installall-$HOSTMODEL 5946439007SCharles.Forsythkernelnuke:V: kernel/nuke-$HOSTMODEL 6046439007SCharles.Forsythnuke:V: nuke-$HOSTMODEL 6146439007SCharles.Forsyth 6246439007SCharles.Forsythcleandist:V: clean 6346439007SCharles.Forsyth rm -f $ROOT/$OBJDIR/lib/lib*.a 6446439007SCharles.Forsyth 6546439007SCharles.Forsythnukedist:V: nuke 6646439007SCharles.Forsyth rm -f $ROOT/$OBJDIR/bin/*.exe 6746439007SCharles.Forsyth rm -f $ROOT/$OBJDIR/lib/lib*.a 6846439007SCharles.Forsyth 6946439007SCharles.Forsyth&-Posix:QV: 7046439007SCharles.Forsyth for j in $DIRS utils tools 7146439007SCharles.Forsyth do 7246439007SCharles.Forsyth echo "(cd $j; mk $MKFLAGS $stem)" 736e425a9dSCharles.Forsyth (cd $j; mk $MKFLAGS $stem) || exit 1 7446439007SCharles.Forsyth done 7546439007SCharles.Forsyth 7646439007SCharles.Forsyth&-Nt:QV: 7746439007SCharles.Forsyth for (j in $DIRS utils tools) 7846439007SCharles.Forsyth { 7946439007SCharles.Forsyth echo '@{builtin cd' $j '; mk $MKFLAGS $stem}' 8046439007SCharles.Forsyth @{builtin cd $j; mk.exe $MKFLAGS $stem } 8146439007SCharles.Forsyth } 8246439007SCharles.Forsyth 8346439007SCharles.Forsyth&-Inferno:QV: 8446439007SCharles.Forsyth for (j in $DIRS utils) 8546439007SCharles.Forsyth { 8646439007SCharles.Forsyth echo '@{builtin cd' $j '; mk $MKFLAGS $stem}' 8746439007SCharles.Forsyth @{builtin cd $j; mk $MKFLAGS $stem } 8846439007SCharles.Forsyth } 8946439007SCharles.Forsyth 9046439007SCharles.Forsyth&-Plan9:QV: 9146439007SCharles.Forsyth for (j in $DIRS utils) 9246439007SCharles.Forsyth { 9346439007SCharles.Forsyth echo '@{builtin cd' $j '; mk $MKFLAGS $stem}' 9446439007SCharles.Forsyth @{builtin cd $j; mk $MKFLAGS $stem } 9546439007SCharles.Forsyth } 9646439007SCharles.Forsyth 9746439007SCharles.Forsythemu/&-Posix:QV: 9846439007SCharles.Forsyth for j in $EMUDIRS 9946439007SCharles.Forsyth do 10046439007SCharles.Forsyth echo "(cd $j; mk $MKFLAGS $stem)" 1016e425a9dSCharles.Forsyth (cd $j; mk $MKFLAGS $stem) || exit 1 10246439007SCharles.Forsyth done 10346439007SCharles.Forsyth 10446439007SCharles.Forsythemu/&-Nt:QV: 10546439007SCharles.Forsyth for (j in $EMUDIRS) 10646439007SCharles.Forsyth { 10746439007SCharles.Forsyth echo '@{builtin cd' $j '; mk $MKFLAGS $stem}' 10846439007SCharles.Forsyth @{builtin cd $j; mk $MKFLAGS $stem } 10946439007SCharles.Forsyth } 11046439007SCharles.Forsyth 11146439007SCharles.Forsythemu/&-Plan9:QV: 11246439007SCharles.Forsyth for (j in $EMUDIRS) 11346439007SCharles.Forsyth { 11446439007SCharles.Forsyth echo '@{builtin cd' $j '; mk $MKFLAGS $stem}' 11546439007SCharles.Forsyth @{builtin cd $j; mk $MKFLAGS $stem } 11646439007SCharles.Forsyth } 11746439007SCharles.Forsyth 11846439007SCharles.Forsythkernel/&-Posix:QV: 11946439007SCharles.Forsyth for j in $KERNEL_DIRS 12046439007SCharles.Forsyth do 12146439007SCharles.Forsyth echo "(cd $j; mk $MKFLAGS $stem)" 1226e425a9dSCharles.Forsyth (cd $j; mk $MKFLAGS $stem) || exit 1 12346439007SCharles.Forsyth done 12446439007SCharles.Forsyth 12546439007SCharles.Forsythkernel/&-Nt:QV: 12646439007SCharles.Forsyth for (j in $KERNEL_DIRS) 12746439007SCharles.Forsyth { 12846439007SCharles.Forsyth echo '@{builtin cd' $j '; mk $MKFLAGS $stem}' 12946439007SCharles.Forsyth @{builtin cd $j; mk $MKFLAGS $stem } 13046439007SCharles.Forsyth } 13146439007SCharles.Forsyth 13246439007SCharles.Forsythkernel/&-Inferno:QV: 13346439007SCharles.Forsyth for (j in $KERNEL_DIRS) 13446439007SCharles.Forsyth { 13546439007SCharles.Forsyth echo '@{builtin cd' $j '; mk $MKFLAGS $stem}' 13646439007SCharles.Forsyth @{builtin cd $j; mk $MKFLAGS $stem } 13746439007SCharles.Forsyth } 13846439007SCharles.Forsyth 13946439007SCharles.Forsythkernel/&-Plan9:QV: 14046439007SCharles.Forsyth for (j in $KERNEL_DIRS) 14146439007SCharles.Forsyth { 14246439007SCharles.Forsyth echo '@{builtin cd' $j '; mk $MKFLAGS $stem}' 14346439007SCharles.Forsyth @{builtin cd $j; mk $MKFLAGS $stem } 14446439007SCharles.Forsyth } 14546439007SCharles.Forsyth 14646439007SCharles.Forsyth# Convenience targets 14746439007SCharles.Forsyth 14846439007SCharles.ForsythInferno-% inferno-% Inferno-386-% inferno-386-%:V: 14946439007SCharles.Forsyth mk 'SYSHOST=Inferno' 'OBJTYPE=386' $stem 15046439007SCharles.Forsyth 15146439007SCharles.ForsythInferno-arm-% inferno-arm-%:V: 15246439007SCharles.Forsyth mk 'SYSHOST=Inferno' 'OBJTYPE=arm' $stem 15346439007SCharles.Forsyth 15446439007SCharles.ForsythPlan9-% plan9-%:V: 15546439007SCharles.Forsyth mk 'SYSHOST=Plan9' 'OBJTYPE=386' $stem 15646439007SCharles.Forsyth 15746439007SCharles.ForsythIrix-% irix-%:V: 15846439007SCharles.Forsyth mk 'SYSHOST=Irix' 'OBJTYPE=mips' $stem 15946439007SCharles.Forsyth 16046439007SCharles.ForsythLinux-% linux-%:V: 16146439007SCharles.Forsyth mk 'SYSHOST=Linux' 'OBJTYPE=386' $stem 16246439007SCharles.Forsyth 16346439007SCharles.ForsythNetBSD-% netbsd-%:V: 16446439007SCharles.Forsyth mk 'SYSHOST=NetBSD' 'OBJTYPE=386' $stem 16546439007SCharles.Forsyth 16646439007SCharles.ForsythNt-% nt-% Win95-% win95-%:V: 16746439007SCharles.Forsyth mk 'SYSHOST=Nt' 'OBJTYPE=386' $stem 16846439007SCharles.Forsyth 16946439007SCharles.ForsythSolaris-% solaris-%:V: 17046439007SCharles.Forsyth mk 'SYSHOST=Solaris' 'OBJTYPE=sparc' $stem 1719bca6be9Sforsyth 1729bca6be9Sforsythmkdirs:V: mkdirs-$SHELLTYPE 1739bca6be9Sforsyth 1749bca6be9Sforsythmkdirs-rc:V: 1759bca6be9Sforsyth mkdir -p `{cat lib/emptydirs} 1769bca6be9Sforsyth chmod 555 mnt/* n/client/* n/* 1779bca6be9Sforsyth 1789bca6be9Sforsythmkdirs-sh:V: 1799bca6be9Sforsyth mkdir -p `cat lib/emptydirs` 1809bca6be9Sforsyth chmod 555 mnt/* n/client/* n/* 1819bca6be9Sforsyth 182ac8b4d5fSforsythmkdirs-nt:V: 1839f9e2f38SJesse Rudolph mkdir -p `{cmd /c type lib\emptydirs} 184