Changeset: 063b05bb3840 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=063b05bb3840
Added Files:
        ctest/cmake/detect-fits.cmake
        ctest/cmake/detect-libr.cmake
        ctest/cmake/detect-snappy.cmake
        ctest/cmake/set-cmake-vars.cmake
        ctest/cmake/test_detect_fits.c.in
        ctest/cmake/test_detect_libr.c.in
        ctest/cmake/test_detect_snappy.c.in
Modified Files:
        cmake/monetdb-defines.cmake
        cmake/monetdb-findpackages.cmake
        cmake/monetdb-functions.cmake
        cmake/monetdb-options.cmake
        ctest/cmake/CMakeLists.txt
        ctest/cmake/detect-curl.cmake
        monetdb5/extras/rapi/CMakeLists.txt
        monetdb_config.h.in
        monetdb_config_win32.h.in
        sql/backends/monet5/UDF/capi/CMakeLists.txt
Branch: mbedded
Log Message:

cleanup cmake code, add tests and fix bugs


diffs (truncated from 577 to 300 lines):

diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake
--- a/cmake/monetdb-defines.cmake
+++ b/cmake/monetdb-defines.cmake
@@ -137,10 +137,13 @@ macro(monetdb_macro_variables)
   set(HAVE_LIBLZ4 ${LZ4_FOUND})
   set(HAVE_PROJ ${PROJ_FOUND})
   set(HAVE_SNAPPY ${SNAPPY_FOUND})
+  set(HAVE_FITS ${CFITSIO_FOUND})
   set(HAVE_UUID ${HAVE_UUID_GENERATE})
   set(HAVE_VALGRIND ${VALGRIND_FOUND})
   set(HAVE_NETCDF ${NETCDF_FOUND})
   set(HAVE_READLINE ${READLINE_FOUND})
+  set(HAVE_LIBR ${LIBR_FOUND})
+  set(RHOME "${LIBR_HOME}")
 
   set(SOCKET_LIBRARIES "")
   if (WIN32)
@@ -153,6 +156,11 @@ macro(monetdb_macro_variables)
   if(WIN_GETADDRINFO)
     set(HAVE_GETADDRINFO 1)
   endif()
+  set(HAVE_CUDF
+    ${CINTEGRATION}
+    CACHE
+    INTERNAL
+    "C udfs extension is available")
 
   set(DIR_SEP  "/")
   set(PATH_SEP ":")
diff --git a/cmake/monetdb-findpackages.cmake b/cmake/monetdb-findpackages.cmake
--- a/cmake/monetdb-findpackages.cmake
+++ b/cmake/monetdb-findpackages.cmake
@@ -64,7 +64,7 @@ if(WITH_BZ2)
 endif()
 
 if(WITH_CURL)
-  find_package(CURL CONFIG)
+  find_package(CURL)
 endif()
 
 if(WITH_ZLIB)
@@ -80,7 +80,7 @@ if(WITH_PROJ)
 endif()
 
 if(WITH_SNAPPY)
-  find_package(Snappy CONFIG)
+  find_package(Snappy)
 endif()
 
 if(WITH_UUID)
@@ -99,10 +99,6 @@ if(FITS)
   find_package(CFitsIO)
 endif()
 
-if(CINTEGRATION)
-  set(HAVE_CUDF ON CACHE INTERNAL "C udfs extension is available")
-endif()
-
 if(NETCDF)
   find_package(NetCDF)
 endif()
@@ -150,8 +146,6 @@ endif(ODBC)
 
 if(RINTEGRATION)
   find_package(LibR)
-  set(HAVE_LIBR "${LIBR_FOUND}")
-  set(RHOME "${LIBR_HOME}")
 endif()
 
 # vim: set ts=2:sw=2:et
diff --git a/cmake/monetdb-functions.cmake b/cmake/monetdb-functions.cmake
--- a/cmake/monetdb-functions.cmake
+++ b/cmake/monetdb-functions.cmake
@@ -131,12 +131,14 @@ function(monetdb_cmake_summary)
   message(STATUS "Zlib library: ${ZLIB_FOUND}")
   message(STATUS "Lz4 library: ${LZ4_FOUND}")
   message(STATUS "Proj library: ${PROJ_FOUND}")
+  message(STATUS "Snappy library: ${SNAPPY_FOUND}")
   message(STATUS "Geos library: ${GEOS_FOUND}")
   message(STATUS "Gdal library: ${GDAL_FOUND}")
   message(STATUS "Cfitsio library: ${CFITSIO_FOUND}")
   message(STATUS "Kvm library: ${KVM_FOUND}")
   message(STATUS "Netcdf library: ${NETCDF_FOUND}")
   message(STATUS "Readline library: ${READLINE_FOUND}")
+  message(STATUS "R library: ${LIBR_FOUND}")
   message(STATUS "-----------------------------------------")
   message(STATUS "")
 endfunction()
diff --git a/cmake/monetdb-options.cmake b/cmake/monetdb-options.cmake
--- a/cmake/monetdb-options.cmake
+++ b/cmake/monetdb-options.cmake
@@ -69,8 +69,6 @@ cmake_dependent_option(SHP
   GEOM
   ON)
 
-set(ENABLE_MAPI "YES" CACHE STRING "Enable MAPI (default=YES)") # Check with 
HAVE_MAPI
-
 option(SANITIZER 
   "Enable support for the GCC address sanitizer (default=OFF)"
   OFF)
diff --git a/ctest/cmake/CMakeLists.txt b/ctest/cmake/CMakeLists.txt
--- a/ctest/cmake/CMakeLists.txt
+++ b/ctest/cmake/CMakeLists.txt
@@ -30,6 +30,9 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/dete
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-proj.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-netcdf.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-readline.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/detect-libr.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/detect-snappy.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/detect-fits.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-unixgetaddrinfo.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-wingetaddrinfo.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-getaddrinfo.cmake)
@@ -38,3 +41,4 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/dete
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-pthreadsig.cmake)
 
 include(${CMAKE_CURRENT_SOURCE_DIR}/set-dir-vars.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/set-cmake-vars.cmake)
diff --git a/ctest/cmake/detect-curl.cmake b/ctest/cmake/detect-curl.cmake
--- a/ctest/cmake/detect-curl.cmake
+++ b/ctest/cmake/detect-curl.cmake
@@ -30,16 +30,16 @@ elseif (${LINUX_DISTRO} STREQUAL "ubuntu
   endif()
 elseif(${LINUX_DISTRO} STREQUAL "fedora")
   if(${LINUX_DISTRO_VERSION} STREQUAL "30")
-    set(DETECT "1")
-    set(UNDETECT "0")
+    set(DETECT "0")
+    set(UNDETECT "1")
   endif()
   if(${LINUX_DISTRO_VERSION} STREQUAL "31")
-    set(DETECT "1")
-    set(UNDETECT "0")
+    set(DETECT "0")
+    set(UNDETECT "1")
   endif()
   if(${LINUX_DISTRO_VERSION} STREQUAL "32")
-    set(DETECT "1")
-    set(UNDETECT "0")
+    set(DETECT "0")
+    set(UNDETECT "1")
   endif()
 else()
   message(ERROR "Linux distro: ${LINUX_DISTRO} not known")
diff --git a/ctest/cmake/detect-fits.cmake b/ctest/cmake/detect-fits.cmake
new file mode 100644
--- /dev/null
+++ b/ctest/cmake/detect-fits.cmake
@@ -0,0 +1,64 @@
+#[[
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0.  If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
+#]]
+
+if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+  get_os_release_info(LINUX_DISTRO LINUX_DISTRO_VERSION)
+endif()
+
+if (${LINUX_DISTRO} STREQUAL "debian")
+  if(${LINUX_DISTRO_VERSION} STREQUAL "9")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "10")
+    set(DETECT "0")
+    set(UNDETECT "1")
+  endif()
+elseif (${LINUX_DISTRO} STREQUAL "ubuntu")
+  if(${LINUX_DISTRO_VERSION} STREQUAL "18")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "19")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "20")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+elseif(${LINUX_DISTRO} STREQUAL "fedora")
+  if(${LINUX_DISTRO_VERSION} STREQUAL "30")
+    set(DETECT "0")
+    set(UNDETECT "1")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "31")
+    set(DETECT "0")
+    set(UNDETECT "1")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "32")
+    set(DETECT "0")
+    set(UNDETECT "1")
+  endif()
+else()
+  message(ERROR "Linux distro: ${LINUX_DISTRO} not known")
+  message(ERROR "Linux distro version: ${LINUX_DISTRO_VERSION} not known")
+endif()
+
+configure_file(test_detect_fits.c.in
+  ${CMAKE_CURRENT_BINARY_DIR}/test_detect_fits.c
+  @ONLY)
+
+add_executable(test_detect_fits)
+target_sources(test_detect_fits
+  PRIVATE
+  ${CMAKE_CURRENT_BINARY_DIR}/test_detect_fits.c)
+target_link_libraries(test_detect_fits
+  PRIVATE
+  monetdb_config_header)
+add_test(testDetectFits test_detect_fits)
diff --git a/ctest/cmake/detect-libr.cmake b/ctest/cmake/detect-libr.cmake
new file mode 100644
--- /dev/null
+++ b/ctest/cmake/detect-libr.cmake
@@ -0,0 +1,64 @@
+#[[
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0.  If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
+#]]
+
+if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+  get_os_release_info(LINUX_DISTRO LINUX_DISTRO_VERSION)
+endif()
+
+if (${LINUX_DISTRO} STREQUAL "debian")
+  if(${LINUX_DISTRO_VERSION} STREQUAL "9")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "10")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+elseif (${LINUX_DISTRO} STREQUAL "ubuntu")
+  if(${LINUX_DISTRO_VERSION} STREQUAL "18")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "19")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "20")
+    set(DETECT "1")
+    set(UNDETECT "0")
+  endif()
+elseif(${LINUX_DISTRO} STREQUAL "fedora")
+  if(${LINUX_DISTRO_VERSION} STREQUAL "30")
+    set(DETECT "0")
+    set(UNDETECT "1")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "31")
+    set(DETECT "0")
+    set(UNDETECT "1")
+  endif()
+  if(${LINUX_DISTRO_VERSION} STREQUAL "32")
+    set(DETECT "0")
+    set(UNDETECT "1")
+  endif()
+else()
+  message(ERROR "Linux distro: ${LINUX_DISTRO} not known")
+  message(ERROR "Linux distro version: ${LINUX_DISTRO_VERSION} not known")
+endif()
+
+configure_file(test_detect_libr.c.in
+  ${CMAKE_CURRENT_BINARY_DIR}/test_detect_libr.c
+  @ONLY)
+
+add_executable(test_detect_libr)
+target_sources(test_detect_libr
+  PRIVATE
+  ${CMAKE_CURRENT_BINARY_DIR}/test_detect_libr.c)
+target_link_libraries(test_detect_libr
+  PRIVATE
+  monetdb_config_header)
+add_test(testDetectLibr test_detect_libr)
diff --git a/ctest/cmake/detect-snappy.cmake b/ctest/cmake/detect-snappy.cmake
new file mode 100644
--- /dev/null
+++ b/ctest/cmake/detect-snappy.cmake
@@ -0,0 +1,64 @@
+#[[
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0.  If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
+#]]
+
+if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+  get_os_release_info(LINUX_DISTRO LINUX_DISTRO_VERSION)
+endif()
+
+if (${LINUX_DISTRO} STREQUAL "debian")
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to