Merge pull request #295 from terrillmoore/patch-1
[libffi.git] / msvcc.sh
index 9208076..eef61c8 100755 (executable)
--- a/msvcc.sh
+++ b/msvcc.sh
@@ -44,7 +44,8 @@
 
 args_orig=$@
 args="-nologo -W3"
-md=-MD
+static_crt=
+debug_crt=
 cl="cl"
 ml="ml"
 safeseh="-safeseh"
@@ -54,6 +55,10 @@ while [ $# -gt 0 ]
 do
   case $1
   in
+    --version)
+      args="-help"
+      shift 1
+    ;;
     -fexceptions)
       # Don't enable exceptions for now.
       #args="$args -EHac"
@@ -63,11 +68,14 @@ do
       shift 1
     ;;
     -m64)
-      cl="cl"   # "$MSVC/x86_amd64/cl"
       ml="ml64" # "$MSVC/x86_amd64/ml64"
       safeseh=
       shift 1
     ;;
+    -clang-cl)
+      cl="clang-cl"
+      shift 1
+    ;;
     -O0)
       args="$args -Od"
       shift 1
@@ -110,9 +118,14 @@ do
       defines="$defines $1"
       shift 1
     ;;
+    -DUSE_STATIC_RTL)
+      # Link against static CRT.
+      static_crt=1
+      shift 1
+    ;;
     -DUSE_DEBUG_RTL)
       # Link against debug CRT.
-      md=-MDd
+      debug_crt=1
       shift 1
     ;;
     -c)
@@ -207,6 +220,16 @@ if [ -n "$opt" ]; then
     args="$args -link -OPT:REF -OPT:ICF -INCREMENTAL:NO"
 fi
 
+if [ -n "$static_crt" ]; then
+    md=-MT
+else
+    md=-MD
+fi
+
+if [ -n "$debug_crt" ]; then
+    md="${md}d"
+fi
+
 if [ -n "$assembly" ]; then
     if [ -z "$outdir" ]; then
       outdir="."