SCM Repository
View of /sml/trunk/src/system/makeml
Parent Directory
|
Revision Log
Revision 577 -
(download)
(annotate)
Fri Mar 10 08:07:18 2000 UTC (20 years, 10 months ago) by blume
File size: 2910 byte(s)
Fri Mar 10 08:07:18 2000 UTC (20 years, 10 months ago) by blume
File size: 2910 byte(s)
improved version of Dave's fixpt script added
#!/bin/sh this=$0 here=`pwd` cd ../.. twoup=`pwd` cd $here LINK=$twoup/bin/.link-sml if [ ! -x $LINK ] ; then echo $this: link script $LINK is not operational. exit 1 fi ALLOC=1M ARCH=sparc HEAP="sml" ARGS="" MODE="" RUN="" rebuilt=no bare=no # # Set CM_PATHCONFIG_DEFAULT to ../../lib/pathconfig # (using an absolute path!) # CM_PATHCONFIG_DEFAULT=$twoup/lib/pathconfig export CM_PATHCONFIG_DEFAULT # # use the arch-n-opsys script to determine the ARCH/OS if possible # if [ -f $twoup/bin/.arch-n-opsys ]; then ARCH_N_OPSYS=`$twoup/bin/.arch-n-opsys` if [ "$?" = "0" ]; then eval $ARCH_N_OPSYS echo $this: architecture = $ARCH fi fi # A function to create a directory hierarchy parallel to a given # hierarchy where ordinary files are hard-linked (i.e., shared). # The first argument must be a simple path (no / inside), and # the second argument must be an absolute path. link() { if [ -d $1 ] ; then if [ ! -d $2 ] ; then if [ -f $2 ] ; then echo $this: $2 exists as a non-directory exit 1 fi mkdir $2 fi cd $1 for i in * ; do link $i $2/$i done cd .. elif [ -f $1 ] ; then rm -f $2 ln $1 $2 fi } BOOT_DIR="sml.boot.${ARCH}-unix" while [ "$#" != "0" ] ; do arg=$1; shift case $arg in -run) if [ "$#" = "0" ]; then echo "$this: missing argument for \"-run\" option" exit 1 fi RUN="@SMLrun=$1"; shift ;; -bare) bare=yes MODE="@SMLbare" ;; -rebuild) if [ "$#" = "0" ]; then echo "$this: missing argument for \"-rebuild\" option" exit 1 fi rebuilt=yes MODE="@SMLrebuild=$1"; shift ;; -o) if [ "$#" = "0" ]; then echo "$this: missing argument for \"-o\" option" exit 1 fi HEAP=$1; shift ;; -alloc) if [ "$#" = "0" ]; then echo "$this: missing argument for \"-alloc\" option" exit 1 fi ALLOC=$1; shift ;; -boot) if [ "$#" = "0" ]; then echo "$this: missing argument for \"-boot\" option" exit 1 fi BOOT_DIR=$1; shift ;; @SML*) ARGS="$ARGS $arg" ;; *) echo "$this: unknown argument \"$arg\"" exit 1 ;; esac done cd $BOOT_DIR echo $LINK $RUN \ @SMLboot=BOOTLIST @SMLheap=$here/$HEAP @SMLalloc=$ALLOC $ARGS $MODE if $LINK $RUN \ @SMLboot=BOOTLIST @SMLheap=$here/$HEAP @SMLalloc=$ALLOC $ARGS $MODE then # # If this was a -rebuild run, we have to quit now... # if [ $rebuilt = yes ] ; then echo $this: New binfiles are ready. exit 0 fi echo $this: Heap image generated. else echo $this: Something broke. exit 1 fi # # Now move the libraries, generate the pathconfig file, and delete the bootdir. # cd $here if [ $bare = no ] ; then LIB_DIR=`pwd`/${HEAP}.lib rm -rf $LIB_DIR mkdir $LIB_DIR cd $BOOT_DIR for anchor in * ; do if [ -d $anchor ] ; then link $anchor $LIB_DIR/$anchor echo $anchor $anchor fi done >$LIB_DIR/pathconfig cd $here fi
root@smlnj-gforge.cs.uchicago.edu | ViewVC Help |
Powered by ViewVC 1.0.0 |