X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fcomponent.cpp;h=fa6fd5670a5e1cf56251224e7aaf7b80279f02ed;hb=02097e6a1ddbffbc2217005c3c2ebba528f5248f;hp=d23e1b3d1cc34825250b44b81570094514c69682;hpb=6140518acb736f9020005245686bfbc5fca2d329;p=builder.git diff --git a/source/component.cpp b/source/component.cpp index d23e1b3..fa6fd56 100644 --- a/source/component.cpp +++ b/source/component.cpp @@ -4,6 +4,7 @@ #include #include #include +#include "booleanevaluator.h" #include "builder.h" #include "component.h" #include "csourcefile.h" @@ -348,7 +349,8 @@ void Component::Loader::if_arch(const string &cond) void Component::Loader::if_feature(const string &cond) { - bool match = obj.package.match_feature(cond); + BooleanEvaluator eval(sigc::mem_fun(&obj.package, &SourcePackage::match_feature)); + bool match = eval.evaluate(cond); obj.package.get_builder().get_logger().log("configure", format("%s/%s: feature %s %smatched", obj.package.get_name(), obj.name, cond, (match ? "" : "not "))); if(match)