[kdepim] indexlib ported to cmake; added indexlib (optional) support to kmail

git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1225601 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
v3.5.13-sru
samelian 14 years ago
parent 760bf34acb
commit 75f32756ec

@ -59,6 +59,7 @@ option( WITH_NEWEXCHANGE "Enable newexchange support" OFF )
option( WITH_SCALIX "Enable scalix support" OFF ) option( WITH_SCALIX "Enable scalix support" OFF )
option( WITH_CALDAV "Enable caldav support" OFF ) option( WITH_CALDAV "Enable caldav support" OFF )
option( WITH_CARDDAV "Enable carddav support" OFF ) option( WITH_CARDDAV "Enable carddav support" OFF )
option( WITH_INDEXLIB "Enable indexlib support (in kmail)" OFF )
if( NOT WITH_ARTS ) if( NOT WITH_ARTS )
set( WITHOUT_ARTS 1 ) set( WITHOUT_ARTS 1 )
@ -72,6 +73,7 @@ endif( )
##### user requested modules #################### ##### user requested modules ####################
option( BUILD_ALL "Build all" OFF ) option( BUILD_ALL "Build all" OFF )
option( BUILD_INDEXLIB "Build indexlib" ${BUILD_ALL} )
option( BUILD_LIBKMIME "Build libkmime" ${BUILD_ALL} ) option( BUILD_LIBKMIME "Build libkmime" ${BUILD_ALL} )
option( BUILD_KTNEF "Build ktnef" ${BUILD_ALL} ) option( BUILD_KTNEF "Build ktnef" ${BUILD_ALL} )
option( BUILD_LIBKCAL "Build libkcal" ${BUILD_ALL} ) option( BUILD_LIBKCAL "Build libkcal" ${BUILD_ALL} )
@ -136,6 +138,7 @@ endif()
##### kdepim directories ######################## ##### kdepim directories ########################
tde_conditional_add_subdirectory( BUILD_INDEXLIB indexlib )
tde_conditional_add_subdirectory( BUILD_LIBKMIME libkmime ) tde_conditional_add_subdirectory( BUILD_LIBKMIME libkmime )
tde_conditional_add_subdirectory( BUILD_KTNEF ktnef ) tde_conditional_add_subdirectory( BUILD_KTNEF ktnef )
tde_conditional_add_subdirectory( BUILD_LIBKCAL libkcal ) tde_conditional_add_subdirectory( BUILD_LIBKCAL libkcal )

@ -14,6 +14,24 @@ if( BUILD_LIBKDEPIM OR BUILD_KMAIL )
endif( ) endif( )
if( BUILD_INDEXLIB OR BUILD_KMAIL )
# check for stl coping with namespace std
tde_save( CMAKE_CXX_FLAGS )
string( REGEX REPLACE "-include tqt.h" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" )
check_cxx_source_compiles("
#include <iterator>
struct s : public std::iterator<std::forward_iterator_tag, int> {};
int main(int, char**) { return 0; } "
HAVE_STLNAMESPACE )
tde_restore( CMAKE_CXX_FLAGS )
if( HAVE_STLNAMESPACE )
set( STD_NAMESPACE_PREFIX "std::" )
endif( )
endif( )
if( BUILD_LIBKDENETWORK OR BUILD_CERTMANAGER OR BUILD_KMAIL OR BUILD_KADDRESSBOOK ) if( BUILD_LIBKDENETWORK OR BUILD_CERTMANAGER OR BUILD_KMAIL OR BUILD_KADDRESSBOOK )
if( NOT HAVE_GPGME_0_4_BRANCH ) if( NOT HAVE_GPGME_0_4_BRANCH )

@ -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( )

@ -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 )

@ -13,10 +13,10 @@ options:
EOH EOH
} }
prefix=@prefix@ prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=@exec_prefix@ exec_prefix=@EXEC_INSTALL_PREFIX@
libdir=@libdir@ libdir=@LIB_INSTALL_DIR@
includedir=@includedir@ includedir=@INCLUDE_INSTALL_DIR@
flags="" flags=""

@ -11,7 +11,11 @@
project( kmail ) project( kmail )
include( ConfigureChecks.cmake ) if( WITH_INDEXLIB )
tde_import( indexlib )
add_definitions( -DHAVE_INDEXLIB )
set( INDEX_LIBRARY index-shared )
endif( )
tde_import( libkdenetwork ) tde_import( libkdenetwork )
tde_import( certmanager ) tde_import( certmanager )
@ -187,7 +191,7 @@ tde_add_library( ${target} SHARED AUTOMOC
SOURCES ${${target}_SRCS} SOURCES ${${target}_SRCS}
LINK LINK
emailfunctions-static kmime-shared kpgp-shared kdepim-shared kpimidentities-shared emailfunctions-static kmime-shared kpgp-shared kdepim-shared kpimidentities-shared
mimelib-shared ksieve-shared khtml-shared mimelib-shared ksieve-shared khtml-shared ${INDEX_LIBRARY}
DESTINATION ${LIB_INSTALL_DIR} DESTINATION ${LIB_INSTALL_DIR}
) )

@ -1,23 +0,0 @@
#################################################
#
# (C) 2010-2011 Serghei Amelian
# serghei (DOT) amelian (AT) gmail.com
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
# check for stl coping with namespace std
tde_save( CMAKE_CXX_FLAGS )
string( REGEX REPLACE "-include tqt.h" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" )
check_cxx_source_compiles("
#include <iterator>
struct s : public std::iterator<std::forward_iterator_tag, int> {};
int main(int, char**) { return 0; } "
HAVE_STLNAMESPACE )
tde_restore( CMAKE_CXX_FLAGS )
if( HAVE_STLNAMESPACE )
set( STD_NAMESPACE_PREFIX "std::" CACHE INTERNAL "" FORCE )
endif( )
Loading…
Cancel
Save