summaryrefslogtreecommitdiffstats
path: root/indexlib
diff options
context:
space:
mode:
Diffstat (limited to 'indexlib')
-rw-r--r--indexlib/CMakeLists.txt56
-rw-r--r--indexlib/ConfigureChecks.cmake24
-rw-r--r--indexlib/indexlib-config.in8
3 files changed, 84 insertions, 4 deletions
diff --git a/indexlib/CMakeLists.txt b/indexlib/CMakeLists.txt
new file mode 100644
index 000000000..bb8646605
--- /dev/null
+++ b/indexlib/CMakeLists.txt
@@ -0,0 +1,56 @@
+#################################################
+#
+# (C) 2010-2011 Serghei Amelian
+# serghei (DOT) amelian (AT) gmail.com
+#
+# Improvements and feedback are welcome
+#
+# This file is released under GPL >= 2
+#
+#################################################
+
+project( indexlib )
+
+include( ConfigureChecks.cmake )
+
+string( REPLACE "-include tqt.h" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" )
+set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -include compat.h ${USE_EXCEPTIONS}" )
+
+include_directories(
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ${CMAKE_BINARY_DIR}
+)
+
+
+##### headers ###################################
+
+install( FILES
+ create.h index.h lockfile.h
+ DESTINATION ${INCLUDE_INSTALL_DIR}/index )
+
+
+##### other data ################################
+
+configure_file( indexlib-config.in indexlib-config @ONLY )
+
+install( PROGRAMS
+ ${CMAKE_CURRENT_BINARY_DIR}/indexlib-config
+ DESTINATION ${BIN_INSTALL_DIR} )
+
+
+##### index (shared) ############################
+
+tde_add_library( index SHARED
+ SOURCES
+ bitstream.cpp compressed.cpp create.cpp exception.cpp ifile.cpp
+ leafdata.cpp leafdatavector.cpp lockfile.cpp logfile.cpp match.cpp
+ mmap_manager.cpp quotes.cpp slow.cpp stringarray.cpp stringset.cpp
+ tokenizer.cpp
+ LINK z
+ DESTINATION ${LIB_INSTALL_DIR}
+)
+
+
+##### install import cmake modules ###############
+
+tde_install_export( )
diff --git a/indexlib/ConfigureChecks.cmake b/indexlib/ConfigureChecks.cmake
new file mode 100644
index 000000000..77664377f
--- /dev/null
+++ b/indexlib/ConfigureChecks.cmake
@@ -0,0 +1,24 @@
+#################################################
+#
+# (C) 2010-2011 Serghei Amelian
+# serghei (DOT) amelian (AT) gmail.com
+#
+# Improvements and feedback are welcome
+#
+# This file is released under GPL >= 2
+#
+#################################################
+
+include( CheckIncludeFileCXX )
+
+tde_save( CMAKE_CXX_FLAGS CMAKE_REQUIRED_INCLUDES )
+unset( CMAKE_CXX_FLAGS )
+set( CMAKE_REQUIRED_INCLUDES ${BOOST_INCLUDE_DIR} )
+
+check_include_file_cxx( "boost/format.hpp" HAVE_BOOST )
+
+if( NOT HAVE_BOOST )
+ tde_message_fatal( "boost library is required, but was not found on your system.\n Try to set boost include dir to BOOST_INCLUDE_DIR." )
+endif( )
+
+tde_restore( CMAKE_CXX_FLAGS CMAKE_REQUIRED_INCLUDES )
diff --git a/indexlib/indexlib-config.in b/indexlib/indexlib-config.in
index f478bad4c..5462c8a81 100644
--- a/indexlib/indexlib-config.in
+++ b/indexlib/indexlib-config.in
@@ -13,10 +13,10 @@ options:
EOH
}
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=@EXEC_INSTALL_PREFIX@
+libdir=@LIB_INSTALL_DIR@
+includedir=@INCLUDE_INSTALL_DIR@
flags=""