Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/src/compiler/makeml
ViewVC logotype

Annotation of /sml/trunk/src/compiler/makeml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 251 - (view) (download)

1 : monnier 146 #!/bin/ksh
2 :     #
3 :    
4 :     FULL=""
5 :     ALLOC=1M
6 :    
7 :     ARCH=sparc
8 :     OPSYS=solaris
9 :     RUN_DIR=../../bin/.run
10 :     OBJS_DIR=../runtime/objs
11 :     HEAP_IMAGE=""
12 :     RUN=""
13 :     RUN_ARGS=""
14 :     SET_FLAGS=""
15 :     REBUILD=""
16 :    
17 :     #
18 :     # use the arch-n-opsys script to determine the ARCH/OS if possible
19 :     #
20 :     if [ -f ../../bin/.arch-n-opsys ]; then
21 :     ARCH_N_OPSYS=`../../bin/.arch-n-opsys`
22 :     if [ "$?" = "0" ]; then
23 :     eval $ARCH_N_OPSYS
24 :     fi
25 :     fi
26 :    
27 :     while [ "$#" != "0" ]
28 :     do
29 :     arg=$1; shift
30 :     case $arg in
31 :     -full) FULL="@SMLfull" ;;
32 :     -bare) FULL="@SMLbare" ;;
33 :     -rebuild)
34 :     if [ "$#" = "0" ]; then
35 :     echo "makeml: missing argument for \"-rebuild\" option"
36 :     exit 1
37 :     fi
38 :     REBUILD="@SMLrebuild=$1"; shift
39 :     ;;
40 :     -arch)
41 :     if [ "$#" = "0" ]; then
42 :     echo "makeml: missing argument for \"-arch\" option"
43 :     exit 1
44 :     fi
45 :     ARCH=$1; shift
46 :     ;;
47 :     -opsys)
48 :     if [ "$#" = "0" ]; then
49 :     echo "makeml: missing argument for \"-opsys\" option"
50 :     exit 1
51 :     fi
52 :     OPSYS=$1; shift
53 :     ;;
54 :     -o)
55 :     if [ "$#" = "0" ]; then
56 :     echo "makeml: missing argument for \"-o\" option"
57 :     exit 1
58 :     fi
59 :     HEAP_IMAGE=$1; shift
60 :     ;;
61 :     -run)
62 :     if [ "$#" = "0" ]; then
63 :     echo "makeml: missing argument for \"-run\" option"
64 :     exit 1
65 :     fi
66 :     RUN=$1; shift
67 :     ;;
68 :     -alloc)
69 :     if [ "$#" = "0" ]; then
70 :     echo "makeml: missing argument for \"-alloc\" option"
71 :     exit 1
72 :     fi
73 :     ALLOC=$1; shift
74 :     ;;
75 :     -boot)
76 :     if [ "$#" = "0" ]; then
77 :     echo "makeml: missing argument for \"-boot\" option"
78 :     exit 1
79 :     fi
80 :     BOOT_DIR=$1; shift
81 :     ;;
82 :     @SML*)
83 :     RUN_ARGS="$RUN_ARGS $arg"
84 :     ;;
85 :     *) echo "makeml: unknown argument \"$arg\""
86 :     exit 1
87 :     ;;
88 :     esac
89 :     done
90 :    
91 :     if [ "$RUN" = "" ]; then
92 :     if [ "$OPSYS" = "win32" ]; then
93 :     RUN_CMD="run.$ARCH-$OPSYS.exe"
94 :     else
95 :     RUN_CMD="run.$ARCH-$OPSYS"
96 :     fi
97 :     if [ -x "$RUN_DIR/$RUN_CMD" ]; then
98 :     RUN="$RUN_DIR/$RUN_CMD"
99 :     elif [ -x "$OBJS_DIR/$RUN_CMD" ]; then
100 :     RUN="$OBJS_DIR/$RUN_CMD"
101 :     else
102 :     echo "makeml: unable to find run-time system \"$RUN_CMD\""
103 :     exit 1
104 :     fi
105 :     fi
106 :    
107 :     if [ "$HEAP_IMAGE" = "" ]; then
108 :     if [ "$FULL" = "" ]; then
109 :     HEAP_IMAGE="sml"
110 :     else
111 :     HEAP_IMAGE="sml-full"
112 :     fi
113 :     fi
114 :    
115 :     if [ "$BOOT_DIR" = "" ]; then
116 :     BOOT_DIR="./bin.$ARCH-unix"
117 :     fi
118 :    
119 :     if [ ! -d ./bin.$ARCH-unix ]; then
120 :     ln -s $BOOT_DIR ./bin.$ARCH-unix
121 :     fi
122 :    
123 :     #echo "$RUN @SMLboot=$BOOT_DIR @SMLalloc=$ALLOC $RUN_ARGS $FULL -b $BOOT_DIR"
124 :     #$RUN @SMLboot=$BOOT_DIR @SMLalloc=$ALLOC $RUN_ARGS $FULL -b $BOOT_DIR <<XXXX
125 :     echo "$RUN @SMLboot=$BOOT_DIR @SMLalloc=$ALLOC $RUN_ARGS $FULL $REBUILD"
126 :     $RUN @SMLboot=$BOOT_DIR @SMLalloc=$ALLOC $RUN_ARGS $FULL $REBUILD <<XXXX
127 :     $SET_FLAGS
128 :     val use = Compiler.Interact.useFile;
129 :     val _ = (SMLofNJ.exportML "$HEAP_IMAGE";
130 :     print Compiler.banner;
131 :     print "\n");
132 :     XXXX
133 :    
134 :     if [ -L ./bin.$ARCH-unix ]; then
135 :     rm -f ./bin.$ARCH-unix
136 :     fi

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0