26 "--show-symbol-table",
27 "--show-function-table",
40 "--string-abstraction",
49 "--compile_all_input",
50 "--no_compile_all_input",
61 "--reinitialize_workdir",
77 "--no_export_all_vtbl",
78 "--force_new_nothrow",
79 "--no_force_new_nothrow",
81 "--no_friend_injection",
85 "--no_implicit_include",
86 "--implicit_include_searches",
87 "--no_implicit_include_searches",
88 "--implicit_typename",
89 "--no_implicit_typename",
90 "--nonstd_qualifier_deduction",
91 "--no_nonstd_qualifier_deduction",
92 "--old_specializations",
93 "--no_old_specializations",
95 "--no_parse_templates",
104 "--depend_system_headers",
105 "--no_depend_system_headers",
120 "--remove_unneeded_entities",
121 "--no_remove_unneeded_entities",
122 "--alternative_tokens",
123 "--no_alternative_tokens",
132 "--exceptions_unwind",
133 "--no_exceptions_unwind",
135 "--no_export_all_vtbl",
136 "--export_defs_implicitly",
137 "--no_export_defs_implicitly",
138 "--extend_initializers",
139 "--no_extend_initializers",
143 "--loose_implicit_cast",
145 "--no_multibyte_chars",
146 "--narrow_volatile_bitfields",
149 "--signed_bitfields",
150 "--unsigned_bitfields",
154 "--unaligned_access",
155 "--no_unaligned_access",
182 "--brief_diagnostics",
183 "--no_brief_diagnostics",
185 "--wrap_diagnostics",
186 "--no_wrap_diagnostics",
188 "--arm_linux_configure",
205 "--pending_instantiations=",
207 "--default_extension=",
222 "--min_array_alignment=",
223 "--pointer_alignment=",
225 "--library_interface=",
238 "--arm_linux_config_file=",
241 "--configure_sysroot=",
242 "--configure_cpp_headers=",
243 "--configure_extra_includes=",
244 "--configure_extra_libraries=",
270 for(
int i=1; i<argc; i++)
272 if(strcmp(argv[i],
"-")==0 ||
275 args.push_back(argv[i]);
291 if(strlen(argv[i])>prefix.size())
292 set(prefix, std::string(argv[i], prefix.size(), std::string::npos));
298 set(prefix, argv[i+1]);
308 set(prefix, std::string(argv[i], prefix.size(), std::string::npos));
312 std::cout <<
"Warning: uninterpreted armcc option '" static bool prefix_in_list(const char *option, const char **list, std::string &prefix)
static const char * options_with_prefix[]
static bool in_list(const char *option, const char **list)
virtual bool parse(int, const char **)
void set(const std::string &opt, const std::string &value)
static const char * options_with_arg[]
static const char * options_no_arg[]
parses the command line options into a cmdlinet
A special command line object to mimic ARM's armcc.