Add support for passing in arbitrary flags to gmake (except -n and -h
authorVikram S. Adve <vadve@cs.uiuc.edu>
Thu, 19 Sep 2002 14:54:53 +0000 (14:54 +0000)
committerVikram S. Adve <vadve@cs.uiuc.edu>
Thu, 19 Sep 2002 14:54:53 +0000 (14:54 +0000)
which are interpreted by this script).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3818 91177308-0d34-0410-b5e6-96231b3b80d8

utils/makellvm

index f7ee7de1500530cfa12a762ad863df8f1fd42d5d..9c8eab486d6f7a033bd9ff50c42e03292ff80d7a 100755 (executable)
@@ -1,16 +1,46 @@
 #!/bin/csh -f
 
+set pstatus = 0
+onintr cleanup
+alias usage 'echo "USAGE: $0:t [-h] [-n] [gmake-flag...] [toolname]"; set pstatus = 1; goto cleanup'
+
        ## LLVMDIR is simply the directory where this script resides!
 set thisExec = $0              ## cannot use :h on $0 for some reason
 set LLVMDIR = `echo {$thisExec:h} | sed 's/\/utils$//'`
 set EXEC = opt
+set GMAKE_OPTS = ""
+
+set doit = 1
+unset options_done
+while ( !( $?options_done ) && ($#argv > 0))
+    switch ($argv[1])
+       case -h :
+           usage
+       case -n :
+           set doit = 0; shift argv; breaksw
+       case -* :
+           set GMAKE_OPTS = ( $GMAKE_OPTS $argv[1] ); shift argv; breaksw
+       default :
+           set options_done; breaksw
+    endsw
+end
 
 if ($#argv > 0) then
-    if ($argv[1] == "-h") then
-       echo 'USAGE: makellvm [toolname]   (toolname defaults to "opt").'
-       exit 0
-    endif
     set EXEC = $argv[1]
 endif
 
-gmake && (cd $LLVMDIR/tools/$EXEC && gmake)
+set CMD = "gmake $GMAKE_OPTS && (cd $LLVMDIR/tools/$EXEC && gmake $GMAKE_OPTS)"
+
+if ($doit == 1) then
+    csh -f -c "$CMD"
+else
+    echo '(NOT EXECUTING) COMMAND:'
+    echo "  $CMD"
+endif
+
+
+#=========================================================
+# CODE TO BE EXECUTED IF INTERRUPT IS RECEIVED
+#=========================================================
+cleanup:
+    exit($pstatus)