ccc: Add support for another batch of OS X linker options, including
-mmacosx-version-min.
One might anticipate that at some point I will just break down and go
through the man page. That seems a little too obvious.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56890 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/ccc b/utils/ccc
index d4e9799..e3ee172 100755
--- a/utils/ccc
+++ b/utils/ccc
@@ -195,6 +195,11 @@
while i < len(args):
arg = args[i]
+ if '=' in arg:
+ argkey,argvalue = arg.split('=',1)
+ else:
+ argkey,argvalue = arg,None
+
# Modes ccc supports
if arg == '-save-temps':
save_temps = 1
@@ -225,21 +230,23 @@
compile_opts.append(arg)
# Options with one argument that should pass through to compiler
- if arg in [ '-include', '-idirafter', '-iprefix',
- '-iquote', '-isystem', '-iwithprefix',
- '-iwithprefixbefore']:
+ if argkey in [ '-include', '-idirafter', '-iprefix',
+ '-iquote', '-isystem', '-iwithprefix',
+ '-iwithprefixbefore', '-mmacosx-version-min']:
compile_opts.append(arg)
compile_opts.append(args[i+1])
i += 1
# Options with no arguments that should pass through
- if arg in ('-dynamiclib','-bundle'):
+ if arg in ('-dynamiclib', '-bundle', '-headerpad_max_install_names'):
link_opts.append(arg)
# Options with one argument that should pass through
if arg in ('-framework', '-multiply_defined', '-bundle_loader',
- '-e', '-unexported_symbols_list', '-install_name',
- '-compatibility_version', '-current_version'):
+ '-e', '-install_name',
+ '-unexported_symbols_list', '-exported_symbols_list',
+ '-compatibility_version', '-current_version', '-init',
+ '-seg1addr', '-dylib_file'):
link_opts.append(arg)
link_opts.append(args[i+1])
i += 1