ccc: Don't be pedantically compatible with -Z options, these are the
result of an internal implementation detail of gcc. llvm-svn: 62389
This commit is contained in:
parent
563dc04faa
commit
ee5a4a8cce
|
@ -525,11 +525,6 @@ class OptionParser:
|
||||||
self.stdOption = self.addOption(JoinedOption('-std='))
|
self.stdOption = self.addOption(JoinedOption('-std='))
|
||||||
self.addOption(JoinedOrSeparateOption('--sysroot'))
|
self.addOption(JoinedOrSeparateOption('--sysroot'))
|
||||||
|
|
||||||
# Version control
|
|
||||||
self.addOption(JoinedOrSeparateOption('-B'))
|
|
||||||
self.addOption(JoinedOrSeparateOption('-V'))
|
|
||||||
self.addOption(JoinedOrSeparateOption('-b'))
|
|
||||||
|
|
||||||
# Blanket pass-through options.
|
# Blanket pass-through options.
|
||||||
|
|
||||||
self.WaOption = self.addOption(CommaJoinedOption('-Wa,'))
|
self.WaOption = self.addOption(CommaJoinedOption('-Wa,'))
|
||||||
|
@ -557,21 +552,22 @@ class OptionParser:
|
||||||
self.undefOption = self.addOption(FlagOption('-undef'))
|
self.undefOption = self.addOption(FlagOption('-undef'))
|
||||||
|
|
||||||
self.wOption = self.addOption(FlagOption('-w'))
|
self.wOption = self.addOption(FlagOption('-w'))
|
||||||
self.addOption(JoinedOrSeparateOption('-allowable_client'))
|
self.bundle_loaderOption = self.addOption(SeparateOption('-bundle_loader'))
|
||||||
|
self.bundleOption = self.addOption(FlagOption('-bundle'))
|
||||||
self.client_nameOption = self.addOption(JoinedOrSeparateOption('-client_name'))
|
self.client_nameOption = self.addOption(JoinedOrSeparateOption('-client_name'))
|
||||||
self.compatibility_versionOption = self.addOption(JoinedOrSeparateOption('-compatibility_version'))
|
self.compatibility_versionOption = self.addOption(JoinedOrSeparateOption('-compatibility_version'))
|
||||||
self.current_versionOption = self.addOption(JoinedOrSeparateOption('-current_version'))
|
self.current_versionOption = self.addOption(JoinedOrSeparateOption('-current_version'))
|
||||||
self.dependencyFileOption = self.addOption(SeparateOption('-dependency-file'))
|
self.dependencyFileOption = self.addOption(SeparateOption('-dependency-file'))
|
||||||
self.dylinkerOption = self.addOption(FlagOption('-dylinker'))
|
self.dynamiclibOption = self.addOption(FlagOption('-dynamiclib'))
|
||||||
|
self.dynamicOption = self.addOption(FlagOption('-dynamic'))
|
||||||
self.dylinker_install_nameOption = self.addOption(JoinedOrSeparateOption('-dylinker_install_name'))
|
self.dylinker_install_nameOption = self.addOption(JoinedOrSeparateOption('-dylinker_install_name'))
|
||||||
self.addOption(JoinedOrSeparateOption('-exported_symbols_list'))
|
self.dylinkerOption = self.addOption(FlagOption('-dylinker'))
|
||||||
|
|
||||||
self.iGroup = OptionGroup('-i')
|
self.iGroup = OptionGroup('-i')
|
||||||
self.addOption(JoinedOrSeparateOption('-idirafter', self.iGroup))
|
self.addOption(JoinedOrSeparateOption('-idirafter', self.iGroup))
|
||||||
self.addOption(JoinedOrSeparateOption('-iquote', self.iGroup))
|
self.addOption(JoinedOrSeparateOption('-iquote', self.iGroup))
|
||||||
self.isysrootOption = self.addOption(JoinedOrSeparateOption('-isysroot', self.iGroup))
|
self.isysrootOption = self.addOption(JoinedOrSeparateOption('-isysroot', self.iGroup))
|
||||||
self.includeOption = self.addOption(JoinedOrSeparateOption('-include', self.iGroup))
|
self.includeOption = self.addOption(JoinedOrSeparateOption('-include', self.iGroup))
|
||||||
self.addOption(JoinedOption('-i', self.iGroup))
|
|
||||||
|
|
||||||
self.keep_private_externsOption = self.addOption(JoinedOrSeparateOption('-keep_private_externs'))
|
self.keep_private_externsOption = self.addOption(JoinedOrSeparateOption('-keep_private_externs'))
|
||||||
self.private_bundleOption = self.addOption(FlagOption('-private_bundle'))
|
self.private_bundleOption = self.addOption(FlagOption('-private_bundle'))
|
||||||
|
@ -579,10 +575,8 @@ class OptionParser:
|
||||||
self.segprotOption = self.addOption(JoinedOrSeparateOption('-segprot'))
|
self.segprotOption = self.addOption(JoinedOrSeparateOption('-segprot'))
|
||||||
self.sub_libraryOption = self.addOption(JoinedOrSeparateOption('-sub_library'))
|
self.sub_libraryOption = self.addOption(JoinedOrSeparateOption('-sub_library'))
|
||||||
self.sub_umbrellaOption = self.addOption(JoinedOrSeparateOption('-sub_umbrella'))
|
self.sub_umbrellaOption = self.addOption(JoinedOrSeparateOption('-sub_umbrella'))
|
||||||
self.umbrellaOption = self.addOption(JoinedOrSeparateOption('-umbrella'))
|
self.umbrellaOption = self.addOption(SeparateOption('-umbrella'))
|
||||||
self.undefinedOption = self.addOption(JoinedOrSeparateOption('-undefined'))
|
self.undefinedOption = self.addOption(JoinedOrSeparateOption('-undefined'))
|
||||||
self.addOption(JoinedOrSeparateOption('-unexported_symbols_list'))
|
|
||||||
self.addOption(JoinedOrSeparateOption('-weak_framework'))
|
|
||||||
self.headerpad_max_install_namesOption = self.addOption(JoinedOption('-headerpad_max_install_names'))
|
self.headerpad_max_install_namesOption = self.addOption(JoinedOption('-headerpad_max_install_names'))
|
||||||
self.twolevel_namespaceOption = self.addOption(FlagOption('-twolevel_namespace'))
|
self.twolevel_namespaceOption = self.addOption(FlagOption('-twolevel_namespace'))
|
||||||
self.twolevel_namespace_hintsOption = self.addOption(FlagOption('-twolevel_namespace_hints'))
|
self.twolevel_namespace_hintsOption = self.addOption(FlagOption('-twolevel_namespace_hints'))
|
||||||
|
@ -592,7 +586,6 @@ class OptionParser:
|
||||||
self.prebind_all_twolevel_modulesOption = self.addOption(FlagOption('-prebind_all_twolevel_modules'))
|
self.prebind_all_twolevel_modulesOption = self.addOption(FlagOption('-prebind_all_twolevel_modules'))
|
||||||
self.remapOption = self.addOption(FlagOption('-remap'))
|
self.remapOption = self.addOption(FlagOption('-remap'))
|
||||||
self.read_only_relocsOption = self.addOption(SeparateOption('-read_only_relocs'))
|
self.read_only_relocsOption = self.addOption(SeparateOption('-read_only_relocs'))
|
||||||
self.addOption(FlagOption('-single_module'))
|
|
||||||
self.nomultidefsOption = self.addOption(FlagOption('-nomultidefs'))
|
self.nomultidefsOption = self.addOption(FlagOption('-nomultidefs'))
|
||||||
self.nostartfilesOption = self.addOption(FlagOption('-nostartfiles'))
|
self.nostartfilesOption = self.addOption(FlagOption('-nostartfiles'))
|
||||||
self.nodefaultlibsOption = self.addOption(FlagOption('-nodefaultlibs'))
|
self.nodefaultlibsOption = self.addOption(FlagOption('-nodefaultlibs'))
|
||||||
|
@ -612,13 +605,12 @@ class OptionParser:
|
||||||
self.POption = self.addOption(FlagOption('-P'))
|
self.POption = self.addOption(FlagOption('-P'))
|
||||||
self.QOption = self.addOption(FlagOption('-Q'))
|
self.QOption = self.addOption(FlagOption('-Q'))
|
||||||
self.QnOption = self.addOption(FlagOption('-Qn'))
|
self.QnOption = self.addOption(FlagOption('-Qn'))
|
||||||
self.addOption(FlagOption('-all_load'))
|
|
||||||
self.addOption(FlagOption('--constant-cfstrings'))
|
self.addOption(FlagOption('--constant-cfstrings'))
|
||||||
self.traditionalOption = self.addOption(FlagOption('-traditional'))
|
self.traditionalOption = self.addOption(FlagOption('-traditional'))
|
||||||
self.traditionalCPPOption = self.addOption(FlagOption('-traditional-cpp'))
|
self.traditionalCPPOption = self.addOption(FlagOption('-traditional-cpp'))
|
||||||
# FIXME: Alias.
|
# FIXME: Alias.
|
||||||
self.addOption(FlagOption('--traditional'))
|
self.addOption(FlagOption('--traditional'))
|
||||||
self.addOption(FlagOption('-no_dead_strip_inits_and_terms'))
|
self.no_dead_strip_inits_and_termsOption = self.addOption(FlagOption('-no_dead_strip_inits_and_terms'))
|
||||||
self.addOption(JoinedOption('-weak-l', isLinkerInput=True))
|
self.addOption(JoinedOption('-weak-l', isLinkerInput=True))
|
||||||
self.addOption(SeparateOption('-weak_framework', isLinkerInput=True))
|
self.addOption(SeparateOption('-weak_framework', isLinkerInput=True))
|
||||||
self.addOption(SeparateOption('-weak_library', isLinkerInput=True))
|
self.addOption(SeparateOption('-weak_library', isLinkerInput=True))
|
||||||
|
@ -627,48 +619,41 @@ class OptionParser:
|
||||||
self.sectalignOption = self.addOption(MultiArgOption('-sectalign', numArgs=3))
|
self.sectalignOption = self.addOption(MultiArgOption('-sectalign', numArgs=3))
|
||||||
self.sectobjectsymbolsOption = self.addOption(MultiArgOption('-sectobjectsymbols', numArgs=2))
|
self.sectobjectsymbolsOption = self.addOption(MultiArgOption('-sectobjectsymbols', numArgs=2))
|
||||||
self.segcreateOption = self.addOption(MultiArgOption('-segcreate', numArgs=3))
|
self.segcreateOption = self.addOption(MultiArgOption('-segcreate', numArgs=3))
|
||||||
self.segs_read_Option = self.addOption(JoinedOption('-segs_read_'))
|
|
||||||
self.seglinkeditOption = self.addOption(FlagOption('-seglinkedit'))
|
self.seglinkeditOption = self.addOption(FlagOption('-seglinkedit'))
|
||||||
self.noseglinkeditOption = self.addOption(FlagOption('-noseglinkedit'))
|
self.noseglinkeditOption = self.addOption(FlagOption('-noseglinkedit'))
|
||||||
self.sectcreateOption = self.addOption(MultiArgOption('-sectcreate', numArgs=3))
|
self.sectcreateOption = self.addOption(MultiArgOption('-sectcreate', numArgs=3))
|
||||||
self.sectorderOption = self.addOption(MultiArgOption('-sectorder', numArgs=3))
|
self.sectorderOption = self.addOption(MultiArgOption('-sectorder', numArgs=3))
|
||||||
self.Zall_loadOption = self.addOption(FlagOption('-Zall_load'))
|
|
||||||
self.Zallowable_clientOption = self.addOption(SeparateOption('-Zallowable_client'))
|
self.all_loadOption = self.addOption(FlagOption('-all_load'))
|
||||||
self.Zbind_at_loadOption = self.addOption(SeparateOption('-Zbind_at_load'))
|
self.allowable_clientOption = self.addOption(SeparateOption('-allowable_client'))
|
||||||
self.ZbundleOption = self.addOption(FlagOption('-Zbundle'))
|
self.bind_at_loadOption = self.addOption(FlagOption('-bind_at_load'))
|
||||||
self.Zbundle_loaderOption = self.addOption(JoinedOrSeparateOption('-Zbundle_loader'))
|
self.dead_stripOption = self.addOption(FlagOption('-dead_strip'))
|
||||||
self.Zdead_stripOption = self.addOption(FlagOption('-Zdead_strip'))
|
self.dylib_fileOption = self.addOption(SeparateOption('-dylib_file'))
|
||||||
self.Zdylib_fileOption = self.addOption(JoinedOrSeparateOption('-Zdylib_file'))
|
self.exported_symbols_listOption = self.addOption(SeparateOption('-exported_symbols_list'))
|
||||||
self.ZdynamicOption = self.addOption(FlagOption('-Zdynamic'))
|
self.flat_namespaceOption = self.addOption(FlagOption('-flat_namespace'))
|
||||||
self.ZdynamiclibOption = self.addOption(FlagOption('-Zdynamiclib'))
|
self.force_cpusubtype_ALLOption = self.addOption(FlagOption('-force_cpusubtype_ALL'))
|
||||||
self.Zexported_symbols_listOption = self.addOption(JoinedOrSeparateOption('-Zexported_symbols_list'))
|
self.force_flat_namespaceOption = self.addOption(FlagOption('-force_flat_namespace'))
|
||||||
self.Zflat_namespaceOption = self.addOption(FlagOption('-Zflat_namespace'))
|
self.image_baseOption = self.addOption(FlagOption('-image_base'))
|
||||||
self.Zfn_seg_addr_table_filenameOption = self.addOption(JoinedOrSeparateOption('-Zfn_seg_addr_table_filename'))
|
self.initOption = self.addOption(SeparateOption('-init'))
|
||||||
self.Zforce_cpusubtype_ALLOption = self.addOption(FlagOption('-Zforce_cpusubtype_ALL'))
|
self.install_nameOption = self.addOption(SeparateOption('-install_name'))
|
||||||
self.Zforce_flat_namespaceOption = self.addOption(FlagOption('-Zforce_flat_namespace'))
|
self.multi_moduleOption = self.addOption(FlagOption('-multi_module'))
|
||||||
self.Zimage_baseOption = self.addOption(FlagOption('-Zimage_base'))
|
self.multiply_definedOption = self.addOption(SeparateOption('-multiply_defined'))
|
||||||
self.ZinitOption = self.addOption(JoinedOrSeparateOption('-Zinit'))
|
self.multiply_defined_unusedOption = self.addOption(SeparateOption('-multiply_defined_unused'))
|
||||||
self.Zmulti_moduleOption = self.addOption(FlagOption('-Zmulti_module'))
|
self.seg_addr_table_filenameOption = self.addOption(SeparateOption('-seg_addr_table_filename'))
|
||||||
self.Zmultiply_definedOption = self.addOption(JoinedOrSeparateOption('-Zmultiply_defined'))
|
self.seg_addr_tableOption = self.addOption(SeparateOption('-seg_addr_table'))
|
||||||
self.ZmultiplydefinedunusedOption = self.addOption(JoinedOrSeparateOption('-Zmultiplydefinedunused'))
|
self.segaddrOption = self.addOption(SeparateOption('-segaddr'))
|
||||||
self.ZmultiplydefinedunusedOption = self.addOption(JoinedOrSeparateOption('-Zmultiplydefinedunused'))
|
self.segs_read_only_addrOption = self.addOption(SeparateOption('-segs_read_only_addr'))
|
||||||
self.Zno_dead_strip_inits_and_termsOption = self.addOption(FlagOption('-Zno_dead_strip_inits_and_terms'))
|
self.segs_read_write_addrOption = self.addOption(SeparateOption('-segs_read_write_addr'))
|
||||||
self.Zseg_addr_tableOption = self.addOption(JoinedOrSeparateOption('-Zseg_addr_table'))
|
# FIXME: This probably isn't necessary.
|
||||||
self.ZsegaddrOption = self.addOption(JoinedOrSeparateOption('-Zsegaddr'))
|
self.segs_read_Option = self.addOption(JoinedOption('-segs_read_'))
|
||||||
self.Zsegs_read_only_addrOption = self.addOption(JoinedOrSeparateOption('-Zsegs_read_only_addr'))
|
self.single_moduleOption = self.addOption(FlagOption('-single_module'))
|
||||||
self.Zsegs_read_write_addrOption = self.addOption(JoinedOrSeparateOption('-Zsegs_read_write_addr'))
|
self.unexported_symbols_listOption = self.addOption(SeparateOption('-unexported_symbols_list'))
|
||||||
self.Zsingle_moduleOption = self.addOption(FlagOption('-Zsingle_module'))
|
self.weak_reference_mismatchesOption = self.addOption(SeparateOption('-weak_reference_mismatches'))
|
||||||
self.ZumbrellaOption = self.addOption(JoinedOrSeparateOption('-Zumbrella'))
|
|
||||||
self.Zunexported_symbols_listOption = self.addOption(JoinedOrSeparateOption('-Zunexported_symbols_list'))
|
|
||||||
self.Zweak_reference_mismatchesOption = self.addOption(JoinedOrSeparateOption('-Zweak_reference_mismatches'))
|
|
||||||
|
|
||||||
self.addOption(SeparateOption('-filelist', isLinkerInput=True))
|
self.addOption(SeparateOption('-filelist', isLinkerInput=True))
|
||||||
self.addOption(SeparateOption('-framework', isLinkerInput=True))
|
self.addOption(SeparateOption('-framework', isLinkerInput=True))
|
||||||
# FIXME: Alias.
|
|
||||||
self.addOption(SeparateOption('-install_name'))
|
self.addOption(JoinedOption('-i', self.iGroup))
|
||||||
self.Zinstall_nameOption = self.addOption(JoinedOrSeparateOption('-Zinstall_name'))
|
|
||||||
self.addOption(SeparateOption('-seg_addr_table'))
|
|
||||||
self.addOption(SeparateOption('-seg_addr_table_filename'))
|
|
||||||
|
|
||||||
# Where are these coming from? I can't find them...
|
# Where are these coming from? I can't find them...
|
||||||
self.eOption = self.addOption(JoinedOrSeparateOption('-e'))
|
self.eOption = self.addOption(JoinedOrSeparateOption('-e'))
|
||||||
|
@ -838,6 +823,11 @@ class OptionParser:
|
||||||
self.pthreadOption = self.addOption(FlagOption('-pthread'))
|
self.pthreadOption = self.addOption(FlagOption('-pthread'))
|
||||||
self.addOption(FlagOption('-pthreads'))
|
self.addOption(FlagOption('-pthreads'))
|
||||||
|
|
||||||
|
# Version control
|
||||||
|
self.addOption(JoinedOrSeparateOption('-B'))
|
||||||
|
self.addOption(JoinedOrSeparateOption('-V'))
|
||||||
|
self.addOption(JoinedOrSeparateOption('-b'))
|
||||||
|
|
||||||
def addOption(self, opt):
|
def addOption(self, opt):
|
||||||
self.options.append(opt)
|
self.options.append(opt)
|
||||||
return opt
|
return opt
|
||||||
|
|
|
@ -399,6 +399,11 @@ class Driver(object):
|
||||||
if hasCombine:
|
if hasCombine:
|
||||||
raise NotImplementedError,"-combine is not yet supported"
|
raise NotImplementedError,"-combine is not yet supported"
|
||||||
|
|
||||||
|
# Reject -Z* at the top level for now.
|
||||||
|
arg = args.getLastArg(self.parser.ZOption)
|
||||||
|
if arg:
|
||||||
|
raise Arguments.InvalidArgumentsError("%s: unsupported use of internal gcc option" % ' '.join(args.render(arg)))
|
||||||
|
|
||||||
if (not inputs and
|
if (not inputs and
|
||||||
not args.getLastArg(self.parser.hashHashHashOption)):
|
not args.getLastArg(self.parser.hashHashHashOption)):
|
||||||
raise Arguments.InvalidArgumentsError("no input files")
|
raise Arguments.InvalidArgumentsError("no input files")
|
||||||
|
|
|
@ -132,7 +132,7 @@ class Darwin_AssembleTool(Tool):
|
||||||
if (arglist.getLastArg(arglist.parser.m_kernelOption) or
|
if (arglist.getLastArg(arglist.parser.m_kernelOption) or
|
||||||
arglist.getLastArg(arglist.parser.staticOption) or
|
arglist.getLastArg(arglist.parser.staticOption) or
|
||||||
arglist.getLastArg(arglist.parser.f_appleKextOption)):
|
arglist.getLastArg(arglist.parser.f_appleKextOption)):
|
||||||
if not arglist.getLastArg(arglist.parser.ZdynamicOption):
|
if not arglist.getLastArg(arglist.parser.dynamicOption):
|
||||||
cmd_args.append('-static')
|
cmd_args.append('-static')
|
||||||
|
|
||||||
for arg in arglist.getArgs2(arglist.parser.WaOption,
|
for arg in arglist.getArgs2(arglist.parser.WaOption,
|
||||||
|
@ -291,7 +291,7 @@ class Darwin_X86_CompileTool(Tool):
|
||||||
# The gcc spec is broken here, it refers to dynamic but
|
# The gcc spec is broken here, it refers to dynamic but
|
||||||
# that has been translated. Start by being bug compatible.
|
# that has been translated. Start by being bug compatible.
|
||||||
|
|
||||||
# if not arglist.getLastArg(arglist.parser.ZdynamicOption):
|
# if not arglist.getLastArg(arglist.parser.dynamicOption):
|
||||||
cmd_args.append('-D__STATIC__')
|
cmd_args.append('-D__STATIC__')
|
||||||
else:
|
else:
|
||||||
cmd_args.append('-D__DYNAMIC__')
|
cmd_args.append('-D__DYNAMIC__')
|
||||||
|
@ -627,16 +627,16 @@ class Darwin_X86_LinkTool(Tool):
|
||||||
# -lobjc-gnu. How do we wish to handle such things?
|
# -lobjc-gnu. How do we wish to handle such things?
|
||||||
pass
|
pass
|
||||||
|
|
||||||
if not arglist.getLastArg(arglist.parser.ZdynamiclibOption):
|
if not arglist.getLastArg(arglist.parser.dynamiclibOption):
|
||||||
if arglist.getLastArg(arglist.parser.Zforce_cpusubtype_ALLOption):
|
if arglist.getLastArg(arglist.parser.force_cpusubtype_ALLOption):
|
||||||
self.addDarwinArch(cmd_args, arch, arglist)
|
self.addDarwinArch(cmd_args, arch, arglist)
|
||||||
cmd_args.append('-force_cpusubtype_all')
|
cmd_args.append('-force_cpusubtype_all')
|
||||||
else:
|
else:
|
||||||
self.addDarwinSubArch(cmd_args, arch, arglist)
|
self.addDarwinSubArch(cmd_args, arch, arglist)
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.ZbundleOption):
|
if arglist.getLastArg(arglist.parser.bundleOption):
|
||||||
cmd_args.append('-bundle')
|
cmd_args.append('-bundle')
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zbundle_loaderOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.bundle_loaderOption,
|
||||||
'-bundle_loader')
|
'-bundle_loader')
|
||||||
arglist.addAllArgs(cmd_args, arglist.parser.client_nameOption)
|
arglist.addAllArgs(cmd_args, arglist.parser.client_nameOption)
|
||||||
if arglist.getLastArg(arglist.parser.compatibility_versionOption):
|
if arglist.getLastArg(arglist.parser.compatibility_versionOption):
|
||||||
|
@ -646,19 +646,19 @@ class Darwin_X86_LinkTool(Tool):
|
||||||
if arglist.getLastArg(arglist.parser.current_versionOption):
|
if arglist.getLastArg(arglist.parser.current_versionOption):
|
||||||
print >>sys.stderr, "-current_version only allowed with -dynamiclib"
|
print >>sys.stderr, "-current_version only allowed with -dynamiclib"
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
if arglist.getLastArg(arglist.parser.Zforce_flat_namespaceOption):
|
if arglist.getLastArg(arglist.parser.force_flat_namespaceOption):
|
||||||
cmd_args.append('-force_flat_namespace')
|
cmd_args.append('-force_flat_namespace')
|
||||||
if arglist.getLastArg(arglist.parser.Zinstall_nameOption):
|
if arglist.getLastArg(arglist.parser.install_nameOption):
|
||||||
print >>sys.stderr, "-install_name only allowed with -dynamiclib"
|
print >>sys.stderr, "-install_name only allowed with -dynamiclib"
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
arglist.addLastArg(cmd_args, arglist.parser.keep_private_externsOption)
|
arglist.addLastArg(cmd_args, arglist.parser.keep_private_externsOption)
|
||||||
arglist.addLastArg(cmd_args, arglist.parser.private_bundleOption)
|
arglist.addLastArg(cmd_args, arglist.parser.private_bundleOption)
|
||||||
else:
|
else:
|
||||||
cmd_args.append('-dylib')
|
cmd_args.append('-dylib')
|
||||||
if arglist.getLastArg(arglist.parser.ZbundleOption):
|
if arglist.getLastArg(arglist.parser.bundleOption):
|
||||||
print >>sys.stderr, "-bundle not allowed with -dynamiclib"
|
print >>sys.stderr, "-bundle not allowed with -dynamiclib"
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
if arglist.getLastArg(arglist.parser.Zbundle_loaderOption):
|
if arglist.getLastArg(arglist.parser.bundle_loaderOption):
|
||||||
print >>sys.stderr, "-bundle_loader not allowed with -dynamiclib"
|
print >>sys.stderr, "-bundle_loader not allowed with -dynamiclib"
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
if arglist.getLastArg(arglist.parser.client_nameOption):
|
if arglist.getLastArg(arglist.parser.client_nameOption):
|
||||||
|
@ -669,17 +669,17 @@ class Darwin_X86_LinkTool(Tool):
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.current_versionOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.current_versionOption,
|
||||||
'-dylib_current_version')
|
'-dylib_current_version')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zforce_cpusubtype_ALLOption):
|
if arglist.getLastArg(arglist.parser.force_cpusubtype_ALLOption):
|
||||||
self.addDarwinArch(cmd_args, arch, arglist)
|
self.addDarwinArch(cmd_args, arch, arglist)
|
||||||
# NOTE: We don't add -force_cpusubtype_ALL on this path. Ok.
|
# NOTE: We don't add -force_cpusubtype_ALL on this path. Ok.
|
||||||
else:
|
else:
|
||||||
self.addDarwinSubArch(cmd_args, arch, arglist)
|
self.addDarwinSubArch(cmd_args, arch, arglist)
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zforce_flat_namespaceOption):
|
if arglist.getLastArg(arglist.parser.force_flat_namespaceOption):
|
||||||
print >>sys.stderr, "-force_flat_namespace not allowed with -dynamiclib"
|
print >>sys.stderr, "-force_flat_namespace not allowed with -dynamiclib"
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zinstall_nameOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.install_nameOption,
|
||||||
'-dylib_install_name')
|
'-dylib_install_name')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.keep_private_externsOption):
|
if arglist.getLastArg(arglist.parser.keep_private_externsOption):
|
||||||
|
@ -689,37 +689,37 @@ class Darwin_X86_LinkTool(Tool):
|
||||||
print >>sys.stderr, "-private_bundle not allowed with -dynamiclib"
|
print >>sys.stderr, "-private_bundle not allowed with -dynamiclib"
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zall_loadOption):
|
if arglist.getLastArg(arglist.parser.all_loadOption):
|
||||||
cmd_args.append('-all_load')
|
cmd_args.append('-all_load')
|
||||||
|
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zallowable_clientOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.allowable_clientOption,
|
||||||
'-allowable_client')
|
'-allowable_client')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zbind_at_loadOption):
|
if arglist.getLastArg(arglist.parser.bind_at_loadOption):
|
||||||
cmd_args.append('-bind_at_load')
|
cmd_args.append('-bind_at_load')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zdead_stripOption):
|
if arglist.getLastArg(arglist.parser.dead_stripOption):
|
||||||
cmd_args.append('-dead_strip')
|
cmd_args.append('-dead_strip')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zno_dead_strip_inits_and_termsOption):
|
if arglist.getLastArg(arglist.parser.no_dead_strip_inits_and_termsOption):
|
||||||
cmd_args.append('-no_dead_strip_inits_and_terms')
|
cmd_args.append('-no_dead_strip_inits_and_terms')
|
||||||
|
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zdylib_fileOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.dylib_fileOption,
|
||||||
'-dylib_file')
|
'-dylib_file')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.ZdynamicOption):
|
if arglist.getLastArg(arglist.parser.dynamicOption):
|
||||||
cmd_args.append('-dynamic')
|
cmd_args.append('-dynamic')
|
||||||
|
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zexported_symbols_listOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.exported_symbols_listOption,
|
||||||
'-exported_symbols_list')
|
'-exported_symbols_list')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zflat_namespaceOption):
|
if arglist.getLastArg(arglist.parser.flat_namespaceOption):
|
||||||
cmd_args.append('-flat_namespace')
|
cmd_args.append('-flat_namespace')
|
||||||
|
|
||||||
arglist.addAllArgs(cmd_args, arglist.parser.headerpad_max_install_namesOption)
|
arglist.addAllArgs(cmd_args, arglist.parser.headerpad_max_install_namesOption)
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zimage_baseOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.image_baseOption,
|
||||||
'-image_base')
|
'-image_base')
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.ZinitOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.initOption,
|
||||||
'-init')
|
'-init')
|
||||||
|
|
||||||
if not arglist.getLastArg(arglist.parser.m_macosxVersionMinOption):
|
if not arglist.getLastArg(arglist.parser.m_macosxVersionMinOption):
|
||||||
|
@ -741,16 +741,16 @@ class Darwin_X86_LinkTool(Tool):
|
||||||
'-iphoneos_version_min')
|
'-iphoneos_version_min')
|
||||||
arglist.addLastArg(cmd_args, arglist.parser.nomultidefsOption)
|
arglist.addLastArg(cmd_args, arglist.parser.nomultidefsOption)
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zmulti_moduleOption):
|
if arglist.getLastArg(arglist.parser.multi_moduleOption):
|
||||||
cmd_args.append('-multi_module')
|
cmd_args.append('-multi_module')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.Zsingle_moduleOption):
|
if arglist.getLastArg(arglist.parser.single_moduleOption):
|
||||||
cmd_args.append('-single_module')
|
cmd_args.append('-single_module')
|
||||||
|
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zmultiply_definedOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.multiply_definedOption,
|
||||||
'-multiply_defined')
|
'-multiply_defined')
|
||||||
|
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.ZmultiplydefinedunusedOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.multiply_defined_unusedOption,
|
||||||
'-multiply_defined_unused')
|
'-multiply_defined_unused')
|
||||||
|
|
||||||
if arglist.getLastArg(arglist.parser.f_pieOption):
|
if arglist.getLastArg(arglist.parser.f_pieOption):
|
||||||
|
@ -765,31 +765,31 @@ class Darwin_X86_LinkTool(Tool):
|
||||||
arglist.addAllArgs(cmd_args, arglist.parser.sectorderOption)
|
arglist.addAllArgs(cmd_args, arglist.parser.sectorderOption)
|
||||||
arglist.addAllArgs(cmd_args, arglist.parser.seg1addrOption)
|
arglist.addAllArgs(cmd_args, arglist.parser.seg1addrOption)
|
||||||
arglist.addAllArgs(cmd_args, arglist.parser.segprotOption)
|
arglist.addAllArgs(cmd_args, arglist.parser.segprotOption)
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.ZsegaddrOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.segaddrOption,
|
||||||
'-segaddr')
|
'-segaddr')
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zsegs_read_only_addrOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.segs_read_only_addrOption,
|
||||||
'-segs_read_only_addr')
|
'-segs_read_only_addr')
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zsegs_read_write_addrOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.segs_read_write_addrOption,
|
||||||
'-segs_read_write_addr')
|
'-segs_read_write_addr')
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zseg_addr_tableOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.seg_addr_tableOption,
|
||||||
'-seg_addr_table')
|
'-seg_addr_table')
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zfn_seg_addr_table_filenameOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.seg_addr_table_filenameOption,
|
||||||
'-fn_seg_addr_table_filename')
|
'-seg_addr_table_filename')
|
||||||
arglist.addAllArgs(cmd_args, arglist.parser.sub_libraryOption)
|
arglist.addAllArgs(cmd_args, arglist.parser.sub_libraryOption)
|
||||||
arglist.addAllArgs(cmd_args, arglist.parser.sub_umbrellaOption)
|
arglist.addAllArgs(cmd_args, arglist.parser.sub_umbrellaOption)
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.isysrootOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.isysrootOption,
|
||||||
'-syslibroot')
|
'-syslibroot')
|
||||||
arglist.addLastArg(cmd_args, arglist.parser.twolevel_namespaceOption)
|
arglist.addLastArg(cmd_args, arglist.parser.twolevel_namespaceOption)
|
||||||
arglist.addLastArg(cmd_args, arglist.parser.twolevel_namespace_hintsOption)
|
arglist.addLastArg(cmd_args, arglist.parser.twolevel_namespace_hintsOption)
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.ZumbrellaOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.umbrellaOption,
|
||||||
'-umbrella')
|
'-umbrella')
|
||||||
arglist.addAllArgs(cmd_args, arglist.parser.undefinedOption)
|
arglist.addAllArgs(cmd_args, arglist.parser.undefinedOption)
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zunexported_symbols_listOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.unexported_symbols_listOption,
|
||||||
'-unexported_symbols_list')
|
'-unexported_symbols_list')
|
||||||
arglist.addAllArgsTranslated(cmd_args, arglist.parser.Zweak_reference_mismatchesOption,
|
arglist.addAllArgsTranslated(cmd_args, arglist.parser.weak_reference_mismatchesOption,
|
||||||
'-weak_reference_mismatches')
|
'-weak_reference_mismatches')
|
||||||
|
|
||||||
if not arglist.getLastArg(arglist.parser.Zweak_reference_mismatchesOption):
|
if not arglist.getLastArg(arglist.parser.weak_reference_mismatchesOption):
|
||||||
cmd_args.append('-weak_reference_mismatches')
|
cmd_args.append('-weak_reference_mismatches')
|
||||||
cmd_args.append('non-weak')
|
cmd_args.append('non-weak')
|
||||||
|
|
||||||
|
@ -853,7 +853,7 @@ class Darwin_X86_LinkTool(Tool):
|
||||||
not arglist.getLastArg(arglist.parser.nostdlibOption) and
|
not arglist.getLastArg(arglist.parser.nostdlibOption) and
|
||||||
not arglist.getLastArg(arglist.parser.nostartfilesOption)):
|
not arglist.getLastArg(arglist.parser.nostartfilesOption)):
|
||||||
# Derived from startfile spec.
|
# Derived from startfile spec.
|
||||||
if arglist.getLastArg(arglist.parser.ZdynamiclibOption):
|
if arglist.getLastArg(arglist.parser.dynamiclibOption):
|
||||||
# Derived from darwin_dylib1 spec.
|
# Derived from darwin_dylib1 spec.
|
||||||
if arglist.getLastArg(arglist.parser.m_iphoneosVersionMinOption):
|
if arglist.getLastArg(arglist.parser.m_iphoneosVersionMinOption):
|
||||||
cmd_args.append('-ldylib1.o')
|
cmd_args.append('-ldylib1.o')
|
||||||
|
@ -863,7 +863,7 @@ class Darwin_X86_LinkTool(Tool):
|
||||||
else:
|
else:
|
||||||
cmd_args.append('-ldylib1.10.5.o')
|
cmd_args.append('-ldylib1.10.5.o')
|
||||||
else:
|
else:
|
||||||
if arglist.getLastArg(arglist.parser.ZbundleOption):
|
if arglist.getLastArg(arglist.parser.bundleOption):
|
||||||
if not arglist.getLastArg(arglist.parser.staticOption):
|
if not arglist.getLastArg(arglist.parser.staticOption):
|
||||||
cmd_args.append('-lbundle1.o')
|
cmd_args.append('-lbundle1.o')
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -9,14 +9,14 @@ def main():
|
||||||
progDir = os.path.dirname(sys.argv[0])
|
progDir = os.path.dirname(sys.argv[0])
|
||||||
progName = os.path.basename(sys.argv[0])
|
progName = os.path.basename(sys.argv[0])
|
||||||
|
|
||||||
d = Driver.Driver(progDir, progName)
|
d = Driver.Driver(progName, progDir)
|
||||||
try:
|
try:
|
||||||
d.run(sys.argv[1:])
|
d.run(sys.argv[1:])
|
||||||
except Arguments.InvalidArgumentsError,e:
|
except Arguments.InvalidArgumentsError,e:
|
||||||
print >>sys.stderr, "%s: %s" % (progName, e.args[0])
|
print >>sys.stderr, "%s: %s" % (progName, e.args[0])
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
except Arguments.MissingArgumentError,e:
|
except Arguments.MissingArgumentError,e:
|
||||||
print >>sys.stderr, "%s: %s" % (progName, e.args[0])
|
print >>sys.stderr, "%s: argument to '%s' missing" % (progName, e.args[0].name)
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
except NotImplementedError,e:
|
except NotImplementedError,e:
|
||||||
print >>sys.stderr, "%s: not implemented: %s" % (progName, e.args[0])
|
print >>sys.stderr, "%s: not implemented: %s" % (progName, e.args[0])
|
||||||
|
|
Loading…
Reference in New Issue