@@ -45,7 +45,7 @@ def __init__(
4545 undefine_symbols = None ,
4646 cflags = "" ,
4747 compiler = None ,
48- xml_generator = "castxml" ,
48+ xml_generator = None ,
4949 keep_xml = False ,
5050 compiler_path = None ,
5151 flags = None ):
@@ -187,11 +187,16 @@ def __ensure_dir_exists(self, dir_path, meaning):
187187 (meaning , dir_path ))
188188
189189 def raise_on_wrong_settings (self ):
190- """validates the configuration settings and raises RuntimeError on
191- error"""
190+ """
191+ Validates the configuration settings and raises RuntimeError on error
192+ """
192193 self .__ensure_dir_exists (self .working_directory , 'working directory' )
193194 for idir in self .include_paths :
194195 self .__ensure_dir_exists (idir , 'include directory' )
196+ if self .__xml_generator not in ["castxml" , "gccxml" ]:
197+ msg = ('xml_generator("%s") should either be ' +
198+ '"castxml" or "gccxml".' ) % self .xml_generator
199+ raise RuntimeError (msg )
195200
196201
197202class xml_generator_configuration_t (parser_configuration_t ):
@@ -215,7 +220,7 @@ def __init__(
215220 ignore_gccxml_output = False ,
216221 cflags = "" ,
217222 compiler = None ,
218- xml_generator = "castxml" ,
223+ xml_generator = None ,
219224 keep_xml = False ,
220225 compiler_path = None ,
221226 flags = None ):
@@ -277,31 +282,12 @@ def ignore_gccxml_output(self, val=True):
277282
278283 def raise_on_wrong_settings (self ):
279284 super (xml_generator_configuration_t , self ).raise_on_wrong_settings ()
280- if os .path .isfile (self .xml_generator_path ):
281- return
282- if os .name == 'nt' :
283- gccxml_name = 'gccxml' + '.exe'
284- environment_var_delimiter = ';'
285- elif os .name == 'posix' :
286- gccxml_name = 'gccxml'
287- environment_var_delimiter = ':'
288- else :
289- raise RuntimeError (
290- 'unable to find out location of the xml generator' )
291- may_be_gccxml = os .path .join (self .xml_generator_path , gccxml_name )
292- if os .path .isfile (may_be_gccxml ):
293- self .xml_generator_path = may_be_gccxml
294- else :
295- for path in os .environ ['PATH' ].split (environment_var_delimiter ):
296- xml_generator_path = os .path .join (path , gccxml_name )
297- if os .path .isfile (xml_generator_path ):
298- self .xml_generator_path = xml_generator_path
299- break
300- else :
301- msg = (
302- 'xml_generator_path("%s") should exists or to be a ' +
303- 'valid file name.' ) % self .xml_generator_path
304- raise RuntimeError (msg )
285+ if self .xml_generator_path is None or \
286+ not os .path .isfile (self .xml_generator_path ):
287+ msg = (
288+ 'xml_generator_path("%s") should be set and exist.' ) \
289+ % self .xml_generator_path
290+ raise RuntimeError (msg )
305291
306292
307293class _StringDeprecationWrapper (str ):
0 commit comments