]> git.tdb.fi Git - builder.git/blobdiff - source/builder.cpp
Move some target creation logic to SourcePackage
[builder.git] / source / builder.cpp
index e8f8927d580ea0e2739aadf1bd32b055f420e1a5..115968982ef93cb5b71700ae868a1c647ad3b499 100644 (file)
@@ -24,7 +24,6 @@
 #include "gnulinker.h"
 #include "installedfile.h"
 #include "package.h"
-#include "pkgconfigfile.h"
 #include "pkgconfiggenerator.h"
 #include "sharedlibrary.h"
 #include "sourcepackage.h"
@@ -495,24 +494,8 @@ int Builder::create_targets()
        world->add_depend(tarballs);
 
        for(PackageMap::const_iterator i=packages.begin(); i!=packages.end(); ++i)
-       {
-               if(!i->second || !i->second->is_configured())
-                       continue;
-
-               SourcePackage *spkg = dynamic_cast<SourcePackage *>(i->second);
-               if(!spkg)
-                       continue;
-
-               const ComponentList &components = spkg->get_components();
-               for(ComponentList::const_iterator j=components.begin(); j!=components.end(); ++j)
-                       j->create_targets();
-
-               if(spkg->get_install_flags()&(SourcePackage::LIB|SourcePackage::INCLUDE))
-               {
-                       PkgConfigFile *pc = new PkgConfigFile(*this, *spkg);
-                       install->add_depend(toolchain.get_tool("CP").create_target(*pc));
-               }
-       }
+               if(i->second && i->second->is_configured())
+                       i->second->create_targets();
 
        // Apply what-ifs
        // XXX This does not currently work with targets found during dependency discovery