From 7238020a20213fba109b517a77f526e39d5a92f7 Mon Sep 17 00:00:00 2001 From: Stefan Radomski Date: Thu, 13 Jun 2013 01:44:26 +0200 Subject: Conditionalized datamodel compilation --- config.h.in | 5 +++++ src/uscxml/Factory.cpp | 17 ++++++++++------- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/config.h.in b/config.h.in index 63659f5..a66a825 100644 --- a/config.h.in +++ b/config.h.in @@ -50,6 +50,11 @@ #cmakedefine DIST_PREPARE #cmakedefine SWI_BINARY "@SWI_BINARY@" +/** whether we want some feature */ +#cmakedefine BUILD_DM_PROLOG +#cmakedefine BUILD_DM_ECMA +#cmakedefine BUILD_DM_XPATH + /** Optional libraries we found */ #cmakedefine UMUNDO_FOUND #cmakedefine MILES_FOUND diff --git a/src/uscxml/Factory.cpp b/src/uscxml/Factory.cpp index 84d7632..3032c09 100644 --- a/src/uscxml/Factory.cpp +++ b/src/uscxml/Factory.cpp @@ -148,27 +148,34 @@ Factory::Factory() { } #endif -#ifdef V8_FOUND +#if defined V8_FOUND and defined BUILD_DM_ECMA { V8DataModel* dataModel = new V8DataModel(); registerDataModel(dataModel); } #endif -#ifdef JSC_FOUND +#if defined JSC_FOUND and defined BUILD_DM_ECMA { JSCDataModel* dataModel = new JSCDataModel(); registerDataModel(dataModel); } #endif -#ifdef SWI_FOUND +#if defined SWI_FOUND and defined BUILD_DM_PROLOG { SWIDataModel* dataModel = new SWIDataModel(); registerDataModel(dataModel); } #endif +#ifdef BUILD_DM_PROLOG + { + XPathDataModel* dataModel = new XPathDataModel(); + registerDataModel(dataModel); + } +#endif + #ifdef PROTOBUF_FOUND { MMIHTTPIOProcessor* ioProcessor = new MMIHTTPIOProcessor(); @@ -182,10 +189,6 @@ Factory::Factory() { registerDataModel(dataModel); } { - XPathDataModel* dataModel = new XPathDataModel(); - registerDataModel(dataModel); - } - { USCXMLInvoker* invoker = new USCXMLInvoker(); registerInvoker(invoker); } -- cgit v0.12