]> git.ipfire.org Git - thirdparty/vectorscan.git/commitdiff
cmake: collection of fixes
authorMatthew Barr <matthew.barr@intel.com>
Thu, 29 Oct 2015 06:29:06 +0000 (17:29 +1100)
committerMatthew Barr <matthew.barr@intel.com>
Fri, 30 Oct 2015 00:28:38 +0000 (11:28 +1100)
CMakeLists.txt
src/fdr/CMakeLists.txt

index 9760d36a4446ee4f9a96d88699c706442fa4758d..77e04a5e48fb5ecadc74f5585b87d0eeefb08623 100644 (file)
@@ -36,19 +36,19 @@ else()
     set(RELEASE_BUILD FALSE)
 endif()
 
-set(BINDIR ${PROJECT_BINARY_DIR}/bin)
-set(LIBDIR ${PROJECT_BINARY_DIR}/lib)
+set(BINDIR "${PROJECT_BINARY_DIR}/bin")
+set(LIBDIR "${PROJECT_BINARY_DIR}/lib")
 
 # First for the generic no-config case
-set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${BINDIR})
-set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LIBDIR})
-set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBDIR})
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${BINDIR}")
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${LIBDIR}")
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${LIBDIR}")
 # Second, for multi-config builds (e.g. msvc)
 foreach (OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES})
     string (TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG)
-    set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${BINDIR})
-    set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${LIBDIR})
-    set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${LIBDIR})
+    set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${BINDIR}")
+    set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${LIBDIR}")
+    set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${LIBDIR}")
 endforeach (OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES)
 
 
@@ -71,13 +71,14 @@ find_package(Boost ${BOOST_MINVERSION})
 if(NOT Boost_FOUND)
     # we might have boost in tree, so provide a hint and try again
     message(STATUS "trying include dir for boost")
-    set(BOOST_INCLUDEDIR ${CMAKE_SOURCE_DIR}/include)
+    set(BOOST_INCLUDEDIR "${CMAKE_SOURCE_DIR}/include")
     find_package(Boost ${BOOST_MINVERSION})
     if(NOT Boost_FOUND)
-        message(FATAL_ERROR "Boost ${BOOST_MINVERSION} or later not found. Either install system pacakges if available or extract Boost headers to ${CMAKE_SOURCE_DIR}/include")
+        message(FATAL_ERROR "Boost ${BOOST_MINVERSION} or later not found. Either install system pacakges if available, extract Boost headers to ${CMAKE_SOURCE_DIR}/include, or set the CMake BOOST_ROOT variable.")
     endif()
 endif()
 
+
 # -- make this work? set(python_ADDITIONAL_VERSIONS 2.7 2.6)
 find_package(PythonInterp)
 find_program(RAGEL ragel)
@@ -88,6 +89,10 @@ else()
     message(FATAL_ERROR "No python interpreter found")
 endif()
 
+if(${RAGEL} STREQUAL "RAGEL-NOTFOUND")
+    message(FATAL_ERROR "Ragel state machine compiler not found")
+endif()
+
 option(OPTIMISE "Turns off compiler optimizations (on by default unless debug output enabled or coverage testing)" TRUE)
 
 option(DEBUG_OUTPUT "Enable debug output (warning: very verbose)" FALSE)
@@ -290,10 +295,10 @@ CHECK_CXX_COMPILER_FLAG("-Wunused-variable" CXX_WUNUSED_VARIABLE)
 endif()
 
 if (NOT XCODE)
-    include_directories(SYSTEM ${Boost_INCLUDE_DIR})
+    include_directories(SYSTEM ${Boost_INCLUDE_DIRS})
 else()
     # cmake doesn't think Xcode supports isystem
-    set(EXTRA_CXX_FLAGS "${EXTRA_CXX_FLAGS} -isystem ${Boost_INCLUDE_DIR}")
+    set(EXTRA_CXX_FLAGS "${EXTRA_CXX_FLAGS} -isystem ${Boost_INCLUDE_DIRS}")
 endif()
 
 
index 4790c52726719b27704fbbc0d8e64cead4775368..25396689f1be902ed542c4936d42f07dc71bea01 100644 (file)
@@ -13,11 +13,11 @@ set(AUTOGEN_PY_FILES
 function(fdr_autogen type out)
     add_custom_command (
         COMMENT "AUTOGEN ${out}"
-        OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${out}
-        COMMAND ${PYTHON} ${CMAKE_CURRENT_SOURCE_DIR}/autogen.py ${type} > ${CMAKE_CURRENT_BINARY_DIR}/${out}
+        OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${out}"
+        COMMAND ${PYTHON} "${CMAKE_CURRENT_SOURCE_DIR}/autogen.py" ${type} > "${CMAKE_CURRENT_BINARY_DIR}/${out}"
         DEPENDS ${AUTOGEN_PY_FILES}
         )
-    add_custom_target(autogen_${type} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${out})
+    add_custom_target(autogen_${type} DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${out}")
 endfunction(fdr_autogen)
 
 #now build the functions