summaryrefslogtreecommitdiff
path: root/utils/makellvm
diff options
context:
space:
mode:
authorVikram S. Adve <vadve@cs.uiuc.edu>2002-09-19 14:54:53 +0000
committerVikram S. Adve <vadve@cs.uiuc.edu>2002-09-19 14:54:53 +0000
commit39c36e868d2dd0071f209a71374d08c3b440af09 (patch)
tree6e9d128fbcceee598723b1632769575ef80e4378 /utils/makellvm
parent75fb432dcbb6c535d3e6279211c801776d5f67ab (diff)
downloadllvm-39c36e868d2dd0071f209a71374d08c3b440af09.tar.gz
llvm-39c36e868d2dd0071f209a71374d08c3b440af09.tar.bz2
llvm-39c36e868d2dd0071f209a71374d08c3b440af09.tar.xz
Add support for passing in arbitrary flags to gmake (except -n and -h
which are interpreted by this script). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3818 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/makellvm')
-rwxr-xr-xutils/makellvm40
1 files changed, 35 insertions, 5 deletions
diff --git a/utils/makellvm b/utils/makellvm
index f7ee7de150..9c8eab486d 100755
--- a/utils/makellvm
+++ b/utils/makellvm
@@ -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)