#include <msp/fs/utils.h>
#include <msp/io/print.h>
#include <msp/strings/lexicalcast.h>
+#include "booleanevaluator.h"
#include "builder.h"
#include "component.h"
#include "csourcefile.h"
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)