wintermute-devel team mailing list archive
-
wintermute-devel team
-
Mailing list archive
-
Message #00158
[Merge] lp:~gentoolx/wintermute/database-config.header into lp:~wintermute-devel/wintermute/database
Adrian Borucki has proposed merging lp:~gentoolx/wintermute/database-config.header into lp:~wintermute-devel/wintermute/database.
Requested reviews:
Jacky Alciné (jackyalcine): feature-introduction
For more details, see:
https://code.launchpad.net/~gentoolx/wintermute/database-config.header/+merge/60129
This merge introduces initial config.hpp support for providing compile-time informations about runtime-configuration.
--
https://code.launchpad.net/~gentoolx/wintermute/database-config.header/+merge/60129
Your team Wintermute Developers is subscribed to branch lp:~wintermute-devel/wintermute/database.
=== modified file 'CMakeLists.txt'
--- CMakeLists.txt 2011-05-04 11:44:59 +0000
+++ CMakeLists.txt 2011-05-05 22:20:59 +0000
@@ -1,16 +1,24 @@
cmake_minimum_required(VERSION 2.8)
project(WntrData)
-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules/")
+#
+# Custom modules
+#
+list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/Modules")
-## Finding needed libraries.
+#
+# Dependency packages
+#
+find_package(LibXML++ REQUIRED)
find_package(Boost COMPONENTS filesystem signals REQUIRED)
-find_package(LibXML++ REQUIRED)
-##
+#
+# Main variables
+#
set(WntrData_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib")
set(WntrData_INCLUDE_DIRS
${LibXML++_INCLUDE_DIRS}
+ ${Boost_INCLUDE_DIRS}
"${CMAKE_INSTALL_PREFIX}/include/wntr/data")
set(WntrData_CMAKE_DIR "${CMAKE_INSTALL_PREFIX}/share/cmake/WntrData")
set(WNTRDATA_DEPLIBS
@@ -18,9 +26,12 @@
${Boost_LIBRARIES}
jsoncpp)
-## Includes
+#
+# Includes
+#
include_directories(
"${PROJECT_SOURCE_DIR}/include/wntr/data/"
+ "${PROJECT_BINARY_DIR}"
${WntrData_INCLUDE_DIRS}
)
@@ -35,9 +46,16 @@
endif(ISJSON)
#########################################################################
+#
+# Files
+#
file(GLOB WNTRDATA_SHPP include/wntr/data/*.hpp)
file(GLOB WNTRDATA_SCPP src/*.cpp)
file(GLOB CMAKE_MODULES "${PROJECT_SOURCE_DIR}/cmake/Modules/*.cmake")
+
+#
+# Targets
+#
add_library(
wntrdata
SHARED
@@ -45,6 +63,9 @@
${WNTRDATA_SCPP}
)
+#
+# Properties
+#
set_target_properties(
wntrdata
PROPERTIES
@@ -52,24 +73,41 @@
SOVERSION 0
)
+#
+# Linking
+#
target_link_libraries(
wntrdata
${WNTRDATA_DEPLIBS}
)
+#
+# Configures
+#
configure_file("cmake/WntrDataConfig.cmake.in"
"${PROJECT_BINARY_DIR}/WntrDataConfig.cmake" @ONLY)
+configure_file("${PROJECT_SOURCE_DIR}/config.hpp.in"
+ "${PROJECT_BINARY_DIR}/config.hpp")
+
+#
+# Installs
+#
install(TARGETS wntrdata
- DESTINATION "${WntrData_LIB_DIR}" EXPORT WntrDataLibraryDepends)
+ DESTINATION "${WntrData_LIB_DIR}"
+ EXPORT WntrDataLibraryDepends)
+
install(EXPORT WntrDataLibraryDepends
DESTINATION "${WntrData_CMAKE_DIR}")
+
install(FILES "${PROJECT_BINARY_DIR}/WntrDataConfig.cmake"
DESTINATION "${WntrData_CMAKE_DIR}")
install(FILES ${WNTRDATA_SHPP}
DESTINATION include/wntr/data/)
+
install(FILES ${CMAKE_MODULES}
DESTINATION share/cmake-2.8/Modules/)
+
install(FILES "${PROJECT_SOURCE_DIR}/wntrdata.pc"
DESTINATION lib/pkgconfig/)
=== added file 'config.hpp.in'
--- config.hpp.in 1970-01-01 00:00:00 +0000
+++ config.hpp.in 2011-05-05 22:20:59 +0000
@@ -0,0 +1,10 @@
+/** File providing compile-time data about runtime-configuration.
+ */
+#ifndef __CONFIG_HPP__
+#define __CONFIG_HPP__
+
+#define __WDATA_CONFIG_DIR__ "@WNTRDATA_CONFIG_DIR@"
+#define __WDATA_DATA_DIR__ "@WNTRDATA_DATA_DIR@"
+
+#endif // __CONFIG_HPP__
+
=== modified file 'src/linguistics.cpp'
--- src/linguistics.cpp 2011-05-05 21:54:59 +0000
+++ src/linguistics.cpp 2011-05-05 22:20:59 +0000
@@ -34,6 +34,7 @@
#include "except.hpp"
#include "linguistics.hpp"
+#include "config.hpp"
using namespace std;
using namespace Json;
@@ -60,7 +61,11 @@
JsonNode::JsonDataSources JsonNode::_data;
string Configuration::_locale = "en";
+<<<<<<< TREE
string Configuration::_root = WNTRDATA_DATA_DIR; // LINGUISTICS_STORE
+=======
+ string Configuration::_root = __WDATA_DATA_DIR__;
+>>>>>>> MERGE-SOURCE
/// @todo Fix the XmlNode and JsonNode readers; they're not working!
void Configuration::Initialize(const string& locale, const string& root) {
Follow ups