@ -692,6 +692,7 @@ external dependencies (including libraries) must go to "dependencies".''')
sub = SubprojectHolder ( None , os . path . join ( self . subproject_dir , subp_name ) ,
disabled_feature = disabled_feature , exception = exception )
self . subprojects [ subp_name ] = sub
self . coredata . initialized_subprojects . add ( subp_name )
return sub
def get_subproject ( self , subp_name ) :
@ -807,6 +808,7 @@ external dependencies (including libraries) must go to "dependencies".''')
self . build_def_files = list ( set ( self . build_def_files + subi . build_def_files ) )
self . build . merge ( subi . build )
self . build . subprojects [ subp_name ] = subi . project_version
self . coredata . initialized_subprojects . add ( subp_name )
self . summary . update ( subi . summary )
return self . subprojects [ subp_name ]
@ -975,7 +977,7 @@ external dependencies (including libraries) must go to "dependencies".''')
# If this is the first invocation we alway sneed to initialize
# builtins, if this is a subproject that is new in a re-invocation we
# need to initialize builtins for that
if self . environment . first_invocation or ( self . subproject != ' ' and self . subproject not in self . subprojects ) :
if self . environment . first_invocation or ( self . subproject != ' ' and self . subproject not in self . coredata . initialized_ subprojects) :
default_options = self . project_default_options . copy ( )
default_options . update ( self . default_project_options )
self . coredata . init_builtins ( self . subproject )