]> git.tdb.fi Git - builder.git/blobdiff - source/component.cpp
Collect libpath for static library dependencies from the libs themselves
[builder.git] / source / component.cpp
index fa6fd5670a5e1cf56251224e7aaf7b80279f02ed..4e7f547f36f7d05b9212a09f957907e1c79c75a8 100644 (file)
@@ -90,15 +90,6 @@ void Component::create_build_info()
        if(type==LIBRARY || type==MODULE)
                if(build_info.libmode<BuildInfo::DYNAMIC)
                        build_info.libmode = BuildInfo::DYNAMIC;
-
-       if(build_info.libmode<BuildInfo::DYNAMIC)
-       {
-               for(Package::Requirements::iterator i=all_reqs.begin(); i!=all_reqs.end(); ++i)
-               {
-                       const BuildInfo &ebi = (*i)->get_exported_build_info();
-                       build_info.libpath.insert(build_info.libpath.end(), ebi.libpath.begin(), ebi.libpath.end());
-               }
-       }
 }
 
 BuildInfo Component::get_build_info_for_path(const FS::Path &path) const
@@ -340,7 +331,8 @@ void Component::Loader::build_info()
 
 void Component::Loader::if_arch(const string &cond)
 {
-       bool match = obj.package.get_builder().get_current_arch().match_name(cond);
+       BooleanEvaluator eval(sigc::hide<1>(sigc::mem_fun(&obj.package.get_builder().get_current_arch(), &Architecture::match_name)), false);
+       bool match = eval.evaluate(cond);
        obj.package.get_builder().get_logger().log("configure",
                format("%s/%s: arch %s %smatched", obj.package.get_name(), obj.name, cond, (match ? "" : "not ")));
        if(match)