ccc: Don't be pedantically compatible with -Z options, these are the
result of an internal implementation detail of gcc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62389 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/ccc/ccclib/Arguments.py b/tools/ccc/ccclib/Arguments.py
index ed9e1f2..ebdd3fd 100644
--- a/tools/ccc/ccclib/Arguments.py
+++ b/tools/ccc/ccclib/Arguments.py
@@ -525,11 +525,6 @@
self.stdOption = self.addOption(JoinedOption('-std='))
self.addOption(JoinedOrSeparateOption('--sysroot'))
- # Version control
- self.addOption(JoinedOrSeparateOption('-B'))
- self.addOption(JoinedOrSeparateOption('-V'))
- self.addOption(JoinedOrSeparateOption('-b'))
-
# Blanket pass-through options.
self.WaOption = self.addOption(CommaJoinedOption('-Wa,'))
@@ -557,21 +552,22 @@
self.undefOption = self.addOption(FlagOption('-undef'))
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.compatibility_versionOption = self.addOption(JoinedOrSeparateOption('-compatibility_version'))
self.current_versionOption = self.addOption(JoinedOrSeparateOption('-current_version'))
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.addOption(JoinedOrSeparateOption('-exported_symbols_list'))
+ self.dylinkerOption = self.addOption(FlagOption('-dylinker'))
self.iGroup = OptionGroup('-i')
self.addOption(JoinedOrSeparateOption('-idirafter', self.iGroup))
self.addOption(JoinedOrSeparateOption('-iquote', self.iGroup))
self.isysrootOption = self.addOption(JoinedOrSeparateOption('-isysroot', 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.private_bundleOption = self.addOption(FlagOption('-private_bundle'))
@@ -579,10 +575,8 @@
self.segprotOption = self.addOption(JoinedOrSeparateOption('-segprot'))
self.sub_libraryOption = self.addOption(JoinedOrSeparateOption('-sub_library'))
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.addOption(JoinedOrSeparateOption('-unexported_symbols_list'))
- self.addOption(JoinedOrSeparateOption('-weak_framework'))
self.headerpad_max_install_namesOption = self.addOption(JoinedOption('-headerpad_max_install_names'))
self.twolevel_namespaceOption = self.addOption(FlagOption('-twolevel_namespace'))
self.twolevel_namespace_hintsOption = self.addOption(FlagOption('-twolevel_namespace_hints'))
@@ -592,7 +586,6 @@
self.prebind_all_twolevel_modulesOption = self.addOption(FlagOption('-prebind_all_twolevel_modules'))
self.remapOption = self.addOption(FlagOption('-remap'))
self.read_only_relocsOption = self.addOption(SeparateOption('-read_only_relocs'))
- self.addOption(FlagOption('-single_module'))
self.nomultidefsOption = self.addOption(FlagOption('-nomultidefs'))
self.nostartfilesOption = self.addOption(FlagOption('-nostartfiles'))
self.nodefaultlibsOption = self.addOption(FlagOption('-nodefaultlibs'))
@@ -612,13 +605,12 @@
self.POption = self.addOption(FlagOption('-P'))
self.QOption = self.addOption(FlagOption('-Q'))
self.QnOption = self.addOption(FlagOption('-Qn'))
- self.addOption(FlagOption('-all_load'))
self.addOption(FlagOption('--constant-cfstrings'))
self.traditionalOption = self.addOption(FlagOption('-traditional'))
self.traditionalCPPOption = self.addOption(FlagOption('-traditional-cpp'))
# FIXME: Alias.
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(SeparateOption('-weak_framework', isLinkerInput=True))
self.addOption(SeparateOption('-weak_library', isLinkerInput=True))
@@ -627,48 +619,41 @@
self.sectalignOption = self.addOption(MultiArgOption('-sectalign', numArgs=3))
self.sectobjectsymbolsOption = self.addOption(MultiArgOption('-sectobjectsymbols', numArgs=2))
self.segcreateOption = self.addOption(MultiArgOption('-segcreate', numArgs=3))
- self.segs_read_Option = self.addOption(JoinedOption('-segs_read_'))
self.seglinkeditOption = self.addOption(FlagOption('-seglinkedit'))
self.noseglinkeditOption = self.addOption(FlagOption('-noseglinkedit'))
self.sectcreateOption = self.addOption(MultiArgOption('-sectcreate', 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.Zbind_at_loadOption = self.addOption(SeparateOption('-Zbind_at_load'))
- self.ZbundleOption = self.addOption(FlagOption('-Zbundle'))
- self.Zbundle_loaderOption = self.addOption(JoinedOrSeparateOption('-Zbundle_loader'))
- self.Zdead_stripOption = self.addOption(FlagOption('-Zdead_strip'))
- self.Zdylib_fileOption = self.addOption(JoinedOrSeparateOption('-Zdylib_file'))
- self.ZdynamicOption = self.addOption(FlagOption('-Zdynamic'))
- self.ZdynamiclibOption = self.addOption(FlagOption('-Zdynamiclib'))
- self.Zexported_symbols_listOption = self.addOption(JoinedOrSeparateOption('-Zexported_symbols_list'))
- self.Zflat_namespaceOption = self.addOption(FlagOption('-Zflat_namespace'))
- self.Zfn_seg_addr_table_filenameOption = self.addOption(JoinedOrSeparateOption('-Zfn_seg_addr_table_filename'))
- self.Zforce_cpusubtype_ALLOption = self.addOption(FlagOption('-Zforce_cpusubtype_ALL'))
- self.Zforce_flat_namespaceOption = self.addOption(FlagOption('-Zforce_flat_namespace'))
- self.Zimage_baseOption = self.addOption(FlagOption('-Zimage_base'))
- self.ZinitOption = self.addOption(JoinedOrSeparateOption('-Zinit'))
- self.Zmulti_moduleOption = self.addOption(FlagOption('-Zmulti_module'))
- self.Zmultiply_definedOption = self.addOption(JoinedOrSeparateOption('-Zmultiply_defined'))
- self.ZmultiplydefinedunusedOption = self.addOption(JoinedOrSeparateOption('-Zmultiplydefinedunused'))
- self.ZmultiplydefinedunusedOption = self.addOption(JoinedOrSeparateOption('-Zmultiplydefinedunused'))
- self.Zno_dead_strip_inits_and_termsOption = self.addOption(FlagOption('-Zno_dead_strip_inits_and_terms'))
- self.Zseg_addr_tableOption = self.addOption(JoinedOrSeparateOption('-Zseg_addr_table'))
- self.ZsegaddrOption = self.addOption(JoinedOrSeparateOption('-Zsegaddr'))
- self.Zsegs_read_only_addrOption = self.addOption(JoinedOrSeparateOption('-Zsegs_read_only_addr'))
- self.Zsegs_read_write_addrOption = self.addOption(JoinedOrSeparateOption('-Zsegs_read_write_addr'))
- self.Zsingle_moduleOption = self.addOption(FlagOption('-Zsingle_module'))
- 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.all_loadOption = self.addOption(FlagOption('-all_load'))
+ self.allowable_clientOption = self.addOption(SeparateOption('-allowable_client'))
+ self.bind_at_loadOption = self.addOption(FlagOption('-bind_at_load'))
+ self.dead_stripOption = self.addOption(FlagOption('-dead_strip'))
+ self.dylib_fileOption = self.addOption(SeparateOption('-dylib_file'))
+ self.exported_symbols_listOption = self.addOption(SeparateOption('-exported_symbols_list'))
+ self.flat_namespaceOption = self.addOption(FlagOption('-flat_namespace'))
+ self.force_cpusubtype_ALLOption = self.addOption(FlagOption('-force_cpusubtype_ALL'))
+ self.force_flat_namespaceOption = self.addOption(FlagOption('-force_flat_namespace'))
+ self.image_baseOption = self.addOption(FlagOption('-image_base'))
+ self.initOption = self.addOption(SeparateOption('-init'))
+ self.install_nameOption = self.addOption(SeparateOption('-install_name'))
+ self.multi_moduleOption = self.addOption(FlagOption('-multi_module'))
+ self.multiply_definedOption = self.addOption(SeparateOption('-multiply_defined'))
+ self.multiply_defined_unusedOption = self.addOption(SeparateOption('-multiply_defined_unused'))
+ self.seg_addr_table_filenameOption = self.addOption(SeparateOption('-seg_addr_table_filename'))
+ self.seg_addr_tableOption = self.addOption(SeparateOption('-seg_addr_table'))
+ self.segaddrOption = self.addOption(SeparateOption('-segaddr'))
+ self.segs_read_only_addrOption = self.addOption(SeparateOption('-segs_read_only_addr'))
+ self.segs_read_write_addrOption = self.addOption(SeparateOption('-segs_read_write_addr'))
+ # FIXME: This probably isn't necessary.
+ self.segs_read_Option = self.addOption(JoinedOption('-segs_read_'))
+ self.single_moduleOption = self.addOption(FlagOption('-single_module'))
+ self.unexported_symbols_listOption = self.addOption(SeparateOption('-unexported_symbols_list'))
+ self.weak_reference_mismatchesOption = self.addOption(SeparateOption('-weak_reference_mismatches'))
self.addOption(SeparateOption('-filelist', isLinkerInput=True))
self.addOption(SeparateOption('-framework', isLinkerInput=True))
- # FIXME: Alias.
- self.addOption(SeparateOption('-install_name'))
- self.Zinstall_nameOption = self.addOption(JoinedOrSeparateOption('-Zinstall_name'))
- self.addOption(SeparateOption('-seg_addr_table'))
- self.addOption(SeparateOption('-seg_addr_table_filename'))
+
+ self.addOption(JoinedOption('-i', self.iGroup))
# Where are these coming from? I can't find them...
self.eOption = self.addOption(JoinedOrSeparateOption('-e'))
@@ -838,6 +823,11 @@
self.pthreadOption = self.addOption(FlagOption('-pthread'))
self.addOption(FlagOption('-pthreads'))
+ # Version control
+ self.addOption(JoinedOrSeparateOption('-B'))
+ self.addOption(JoinedOrSeparateOption('-V'))
+ self.addOption(JoinedOrSeparateOption('-b'))
+
def addOption(self, opt):
self.options.append(opt)
return opt