Files
sablink-distro/dev-libs/soprano/files/soprano-make-optional-targets.patch
T
2009-06-08 16:01:08 +02:00

192 lines
7.6 KiB
Diff

Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (revision 918069)
+++ CMakeLists.txt (working copy)
@@ -1,4 +1,4 @@
-project(soprano)
+project(soprano)
cmake_minimum_required(VERSION 2.6.2)
@@ -9,10 +9,8 @@
set(CMAKE_SOPRANO_VERSION_RELEASE 60)
set(CMAKE_SOPRANO_VERSION_STRING "${CMAKE_SOPRANO_VERSION_MAJOR}.${CMAKE_SOPRANO_VERSION_MINOR}.${CMAKE_SOPRANO_VERSION_RELEASE}")
-enable_testing()
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
-
if(WIN32)
set(CMAKE_DEBUG_POSTFIX "d")
endif(WIN32)
@@ -20,37 +18,45 @@
################## find packages ################################
set(QT_MIN_VERSION "4.4.0")
-find_package(Qt4 REQUIRED)
+find_package(Qt4 REQUIRED)
# properly set up compile flags (QT_DEBUG/QT_NO_DEBUG, ...)
include(${QT_USE_FILE})
-find_package(Redland)
+option(ENABLE_Redland "Raptor RDF parser/serializer and Redland storage backend" OFF)
+if(ENABLE_Redland)
+ find_package(Redland)
+endif(ENABLE_Redland)
-find_package(CLucene)
-if(CLucene_FOUND)
- if(CLUCENE_VERSION AND CLUCENE_VERSION STRGREATER "0.9.19" OR CLUCENE_VERSION STREQUAL "0.9.19")
- set(CL_VERSION_19_OR_GREATER TRUE)
- endif(CLUCENE_VERSION AND CLUCENE_VERSION STRGREATER "0.9.19" OR CLUCENE_VERSION STREQUAL "0.9.19")
- set(SOPRANO_BUILD_INDEX_LIB 1 CACHE INTERNAL "Soprano Index is built" FORCE)
-endif(CLucene_FOUND)
+option(ENABLE_CLucene "CLucene-based full-text search index library" ON)
+if(ENABLE_CLucene)
+ find_package(CLucene)
+ if(CLucene_FOUND)
+ if(CLUCENE_VERSION AND CLUCENE_VERSION STRGREATER "0.9.19" OR CLUCENE_VERSION STREQUAL "0.9.19")
+ set(CL_VERSION_19_OR_GREATER TRUE)
+ endif(CLUCENE_VERSION AND CLUCENE_VERSION STRGREATER "0.9.19" OR CLUCENE_VERSION STREQUAL "0.9.19")
+ set(SOPRANO_BUILD_INDEX_LIB 1 CACHE INTERNAL "Soprano Index is built" FORCE)
+ endif(CLucene_FOUND)
+endif(ENABLE_CLucene)
-find_package(JNI)
-if(JAVA_INCLUDE_PATH AND JAVA_JVM_LIBRARY)
- file(READ ${JAVA_INCLUDE_PATH}/jni.h jni_header_data)
- string(REGEX MATCH "JNI_VERSION_1_4" JNI_1_4_FOUND "${jni_header_data}")
- if(JNI_1_4_FOUND)
- message(STATUS "Found Java JNI >= 1.4: ${JAVA_INCLUDE_PATH}, ${JAVA_JVM_LIBRARY}")
- else(JNI_1_4_FOUND)
- message( "Need JNI version 1.4 or higher for the Sesame2 backend.")
- endif(JNI_1_4_FOUND)
-else(JAVA_INCLUDE_PATH AND JAVA_JVM_LIBRARY)
- message(STATUS "Could not find Java JNI")
- if("$ENV{JAVA_HOME}" STREQUAL "")
- message("Make sure JAVA_HOME is set")
- endif("$ENV{JAVA_HOME}" STREQUAL "")
-endif(JAVA_INCLUDE_PATH AND JAVA_JVM_LIBRARY)
+option(ENABLE_Sesame2 "Sesame2 storage backend (java-based)" ON)
+if(ENABLE_Sesame2)
+ find_package(JNI)
+ if(JAVA_INCLUDE_PATH AND JAVA_JVM_LIBRARY)
+ file(READ ${JAVA_INCLUDE_PATH}/jni.h jni_header_data)
+ string(REGEX MATCH "JNI_VERSION_1_4" JNI_1_4_FOUND "${jni_header_data}")
+ if(JNI_1_4_FOUND)
+ message(STATUS "Found Java JNI >= 1.4: ${JAVA_INCLUDE_PATH}, ${JAVA_JVM_LIBRARY}")
+ else(JNI_1_4_FOUND)
+ message( "Need JNI version 1.4 or higher for the Sesame2 backend.")
+ endif(JNI_1_4_FOUND)
+ else(JAVA_INCLUDE_PATH AND JAVA_JVM_LIBRARY)
+ message(STATUS "Could not find Java JNI")
+ if("$ENV{JAVA_HOME}" STREQUAL "")
+ message("Make sure JAVA_HOME is set")
+ endif("$ENV{JAVA_HOME}" STREQUAL "")
+ endif(JAVA_INCLUDE_PATH AND JAVA_JVM_LIBRARY)
+endif(ENABLE_Sesame2)
-
################## setup install directories ################################
set (LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" )
set (LIB_DESTINATION "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE STRING "Library directory name")
@@ -63,40 +69,47 @@
# By default cmake builds the targets with full RPATH to everything in the build directory,
# but then removes the RPATH when installing.
# These two options below make it set the RPATH of the installed targets to all
-# RPATH directories outside the current CMAKE_BINARY_DIR and also the library
+# RPATH directories outside the current CMAKE_BINARY_DIR and also the library
# install directory. Alex
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
-set(CMAKE_INSTALL_RPATH ${LIB_DESTINATION} )
+set(CMAKE_INSTALL_RPATH ${LIB_DESTINATION})
if(APPLE)
- set(CMAKE_INSTALL_NAME_DIR ${LIB_DESTINATION})
+ set(CMAKE_INSTALL_NAME_DIR ${LIB_DESTINATION})
endif(APPLE)
################## some compiler settings ################################
if(CMAKE_COMPILER_IS_GNUCXX AND NOT WIN32 )
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-check-new -fno-common")
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-check-new -fno-common")
endif(CMAKE_COMPILER_IS_GNUCXX AND NOT WIN32 )
if(MSVC)
- add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Zc:wchar_t-)
+ add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Zc:wchar_t-)
endif(MSVC)
if(MINGW)
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -Wpointer-arith -Wformat-security -fno-check-new -fno-common")
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -Wpointer-arith -Wformat-security -fno-check-new -fno-common")
endif(MINGW)
################## add subdirectories ################################
if(CLucene_FOUND)
- add_subdirectory(index)
+ add_subdirectory(index)
endif(CLucene_FOUND)
-add_subdirectory(soprano)
+
+add_subdirectory(soprano)
add_subdirectory(backends)
add_subdirectory(parsers)
add_subdirectory(serializers)
#add_subdirectory(queryparsers)
add_subdirectory(server)
add_subdirectory(tools)
-add_subdirectory(test)
+
+option(ENABLE_tests "Parser/storage backend tests)" ON)
+if(ENABLE_tests)
+ enable_testing()
+ add_subdirectory(test)
+endif(ENABLE_tests)
+
add_subdirectory(rules)
add_subdirectory(includes)
@@ -109,24 +122,26 @@
################## apidox ################################
-find_package(Doxygen)
+option(ENABLE_docs "API documentation" ON)
+if(ENABLE_docs)
+ find_package(Doxygen)
-if(DOXYGEN_EXECUTABLE)
- configure_file(${soprano_SOURCE_DIR}/Doxyfile.cmake ${soprano_BINARY_DIR}/Doxyfile)
+ if(DOXYGEN_EXECUTABLE)
+ configure_file(${soprano_SOURCE_DIR}/Doxyfile.cmake ${soprano_BINARY_DIR}/Doxyfile)
- if(EXISTS ${QT_DOC_DIR}/html)
- set(QTDOCS "${QT_DOC_DIR}/html")
- else(EXISTS ${QT_DOC_DIR}/html)
- set(QTDOCS "http://doc.trolltech.com/4.3/")
- endif(EXISTS ${QT_DOC_DIR}/html)
+ if(EXISTS ${QT_DOC_DIR}/html)
+ set(QTDOCS "${QT_DOC_DIR}/html")
+ else(EXISTS ${QT_DOC_DIR}/html)
+ set(QTDOCS "http://doc.trolltech.com/4.3/")
+ endif(EXISTS ${QT_DOC_DIR}/html)
- add_custom_target(
- apidox
- COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
- COMMAND docs/html/installdox -l qt4.tag@${QTDOCS} docs/html/*.html)
-endif(DOXYGEN_EXECUTABLE)
+ add_custom_target(
+ apidox
+ COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
+ COMMAND docs/html/installdox -l qt4.tag@${QTDOCS} docs/html/*.html)
+ endif(DOXYGEN_EXECUTABLE)
+endif(ENABLE_docs)
-
################## status messages ################################
message("---------------------------------------------------------------------------------------")
message("-- Soprano Components that will be built:")