Changeset: e6d797cbd7f2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e6d797cbd7f2
Added Files:
sql/CMakeLists.txt
sql/backends/CMakeLists.txt
sql/backends/monet5/CMakeLists.txt
sql/common/CMakeLists.txt
sql/include/CMakeLists.txt
sql/scripts/CMakeLists.txt
sql/server/CMakeLists.txt
sql/storage/CMakeLists.txt
sql/storage/bat/CMakeLists.txt
tools/mserver/monet_version.c.in
Removed Files:
tools/mserver/monet_version.c
Modified Files:
CMakeLists.txt
clients/mapilib/monetdb-mapi.pc.in
cmake/monetdb_config.h.in
common/options/CMakeLists.txt
common/stream/CMakeLists.txt
common/stream/monetdb-stream.pc.in
gdk/CMakeLists.txt
gdk/monetdb-gdk.pc.in
monetdb5/extras/mal_optimizer_template/CMakeLists.txt
monetdb5/mal/CMakeLists.txt
monetdb5/modules/atoms/CMakeLists.txt
monetdb5/modules/kernel/CMakeLists.txt
monetdb5/modules/mal/CMakeLists.txt
monetdb5/optimizer/CMakeLists.txt
monetdb5/scheduler/CMakeLists.txt
monetdb5/tools/CMakeLists.txt
monetdb5/tools/monetdb5.pc.in
sql/server/rel_exp.c
sql/server/rel_exp.h
sql/server/rel_select.c
sql/storage/bat/bat_storage.c
Branch: cmake-fun
Log Message:
Compiles SQL layer and installs some of the libraries, include files and
scripts.
diffs (truncated from 773 to 300 lines):
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -17,7 +17,7 @@ set(PACKAGE "MonetDB" CACHE STRING "")
find_package(PkgConfig)
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" CACHE INTERNAL "Location of
custom CMake modules.")
-include(GNUInstallDirs REQUIRED)
+include(CheckCCompilerFlag REQUIRED)
include(CheckCSourceCompiles REQUIRED)
include(CheckCSourceRuns REQUIRED)
include(CheckIncludeFile REQUIRED)
@@ -27,7 +27,6 @@ include(CheckTypeSize REQUIRED)
include(CheckStructHasMember REQUIRED)
include(FindIconv REQUIRED)
include(TestLargeFiles REQUIRED)
-include(CheckCCompilerFlag REQUIRED)
include(TestBigEndian REQUIRED)
cmake_policy(SET CMP0075 NEW)
@@ -202,14 +201,6 @@ else()
message(FATAL_ERROR "PASSWORD_BACKEND invalid, choose one of MD5, SHA1,
RIPEMD160, SHA224, SHA256, SHA384, SHA512")
endif()
-# instalation directories
-set(LOGDIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/log/monetdb" CACHE STRING
"Where to put log files (LOCALSTATEDIR/log/monetdb)")
-set(RUNDIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/run/monetdb" CACHE STRING
"Where to put pid files (LOCALSTATEDIR/run/monetdb)")
-set(BINDIR "${CMAKE_INSTALL_FULL_BINDIR}")
-set(DATA_DIR "${CMAKE_INSTALL_FULL_DATAROOTDIR}")
-set(LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}")
-set(LOCALSTATEDIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}")
-
opj_test_large_files(_LARGE_FILES)
opj_test_large_files(_LARGEFILE_SOURCE)
opj_test_large_files(_FILE_OFFSET_BITS)
@@ -758,12 +749,10 @@ if(NOT ${WITH_LZ4} STREQUAL "NO")
endif()
endif()
-if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+find_library(M_LIBRARY NAMES m)
+if(M_LIBRARY)
set(MATH_LIBS "m")
endif()
-if(UNIX)
- set(DL_LIBS "${CMAKE_DL_LIBS}")
-endif()
# Malloc libs
set(CMAKE_REQUIRED_LIBRARIES "${CMAKE_REQUIRED_LIBRARIES};umem")
@@ -1787,12 +1776,12 @@ if(NOT ${ENABLE_INT128} STREQUAL "NO")
set(HAVE___UINT128_T ON)
endif()
- if(NOT HAVE_SIZEOF___INT128 AND NOT HAVE_SIZEOF___INT128_T AND NOT
HAVE_SIZEOF___UINT128_T)
- if(${ENABLE_INT128} STREQUAL "YES")
- message(FATAL_ERROR "128-bit integers not supported by
platform")
- else()
- message(WARN " 128-bit integers not supported by
platform")
- endif()
+ if(HAVE_SIZEOF___INT128 OR HAVE_SIZEOF___INT128_T OR
HAVE_SIZEOF___UINT128_T)
+ set(HAVE_HGE ON)
+ elseif(${ENABLE_INT128} STREQUAL "YES")
+ message(FATAL_ERROR "128-bit integers not supported by
platform")
+ else()
+ message(WARN " 128-bit integers not supported by platform")
endif()
endif()
@@ -1932,6 +1921,20 @@ set(BUILT_BY "$ENV{USER}@${BUILD_HOST}")
set(COMPILER_CALL "${CMAKE_C_COMPILER}${CMAKE_C_FLAGS}")
set(LINKER_CALL "${CMAKE_LINKER}${CMAKE_REQUIRED_FLAGS}")
+# instalation directories
+if(UNIX)
+ include(GNUInstallDirs REQUIRED)
+
+ set(LOGDIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/log/monetdb" CACHE
STRING "Where to put log files (LOCALSTATEDIR/log/monetdb)")
+ set(RUNDIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/run/monetdb" CACHE
STRING "Where to put pid files (LOCALSTATEDIR/run/monetdb)")
+ set(BINDIR "${CMAKE_INSTALL_FULL_BINDIR}")
+ set(DATA_DIR "${CMAKE_INSTALL_FULL_DATAROOTDIR}")
+ set(LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}")
+ set(LOCALSTATEDIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}")
+ set(INCLUDEDIR "${CMAKE_INSTALL_FULL_INCLUDEDIR}/monetdb")
+ set(PKGCONFIGDIR "${LIBDIR}/pkgconfig")
+endif()
+
configure_file(${CMAKE_SOURCE_DIR}/cmake/monetdb_config.h.in
${CMAKE_SOURCE_DIR}/monetdb_config.h)
include_directories(${CMAKE_SOURCE_DIR})
diff --git a/clients/mapilib/monetdb-mapi.pc.in
b/clients/mapilib/monetdb-mapi.pc.in
--- a/clients/mapilib/monetdb-mapi.pc.in
+++ b/clients/mapilib/monetdb-mapi.pc.in
@@ -5,9 +5,9 @@
# Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
+exec_prefix=${exec_prefix}
+libdir=${libdir}
+includedir=${includedir}
Name: monetdb-mapi
Description: MonetDB MAPI C-client libary
diff --git a/cmake/monetdb_config.h.in b/cmake/monetdb_config.h.in
--- a/cmake/monetdb_config.h.in
+++ b/cmake/monetdb_config.h.in
@@ -77,15 +77,6 @@
#include <ws2tcpip.h>
#endif /* _MSC_VER */
-/* Build definitions */
-#cmakedefine BUILT_BY "@BUILT_BY@"
-
-/* Compiler call details */
-#cmakedefine COMPILER_CALL "@COMPILER_CALL@"
-
-/* Linker call details */
-#cmakedefine LINKER_CALL "@LINKER_CALL@"
-
/* Mercurial repository version */
#cmakedefine MERCURIAL_ID "@MERCURIAL_ID@"
diff --git a/common/options/CMakeLists.txt b/common/options/CMakeLists.txt
--- a/common/options/CMakeLists.txt
+++ b/common/options/CMakeLists.txt
@@ -7,3 +7,4 @@
#]]
add_library(moptions STATIC monet_options.c monet_options.h monet_getopt.h)
+install(FILES monet_options.h DESTINATION ${INCLUDEDIR})
diff --git a/common/stream/CMakeLists.txt b/common/stream/CMakeLists.txt
--- a/common/stream/CMakeLists.txt
+++ b/common/stream/CMakeLists.txt
@@ -13,3 +13,35 @@ add_library(stream SHARED stream.c strea
target_link_libraries(stream ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES}
${SNAPPY_LIBRARIES} ${LZ4_LIBRARIES}
${LIBLZMA_LIBRARY} ${CURL_LIBRARY}
${Iconv_LIBRARY})
target_include_directories(stream PRIVATE ${Iconv_INCLUDE_DIR})
+install(TARGETS stream LIBRARY DESTINATION ${LIBDIR})
+
+install(FILES stream_socket.h stream.h DESTINATION ${INCLUDEDIR})
+
+if(NOT WIN32)
+ if(CURL_LIBRARY)
+ set(PKG_CURL "-lcurl")
+ endif()
+ if(ZLIB_LIBRARIES)
+ set(PKG_ZLIB "-lz")
+ endif()
+ if(LIBLZMA_LIBRARY)
+ set(PKG_LIBLZMA "-llzma")
+ endif()
+ if(LZ4_LIBRARIES)
+ set(PKG_LZ4 "-llz4")
+ endif()
+ if(BZIP2_LIBRARIES)
+ set(PKG_BZIP2 "-lbz2")
+ endif()
+ if(SNAPPY_LIBRARIES)
+ set(PKG_SNAPPY "-lsnappy")
+ endif()
+ if(SOCKET_LIBS)
+ set(PKG_SOCKET_LIBS "-l${SOCKET_LIBS}") #TODO fix this
+ endif()
+ if(Iconv_LIBRARY AND NOT Iconv_IS_BUILT_IN)
+ set(PKG_LIBICONV "-l${Iconv_LIBRARY}")
+ endif()
+ configure_file(monetdb-stream.pc.in monetdb-stream.pc @ONLY)
+ install(FILES monetdb-stream.pc DESTINATION ${PKGCONFIGDIR})
+endif()
diff --git a/common/stream/monetdb-stream.pc.in
b/common/stream/monetdb-stream.pc.in
--- a/common/stream/monetdb-stream.pc.in
+++ b/common/stream/monetdb-stream.pc.in
@@ -4,15 +4,15 @@
#
# Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${exec_prefix}
+libdir=${libdir}
+includedir=${includedir}
Name: monetdb-stream
Description: MonetDB streams libary
Version: @PACKAGE_VERSION@
Requires: @PKG_CURL@ @PKG_ZLIB@ @PKG_LIBLZMA@ @PKG_LZ4@ @PKG_BZIP2@
@PKG_SNAPPY@
-Libs: -L${libdir} -lstream @SOCKET_LIBS@ @LIBICONV@
+Libs: -L${libdir} -lstream @PKG_SOCKET_LIBS@ @PKG_LIBICONV@
Cflags: -I${includedir}/monetdb
diff --git a/gdk/CMakeLists.txt b/gdk/CMakeLists.txt
--- a/gdk/CMakeLists.txt
+++ b/gdk/CMakeLists.txt
@@ -35,6 +35,39 @@ add_library(bat SHARED
gdk_analytic_func.c gdk_analytic.h)
add_dependencies(bat moptions mutils stream)
target_link_libraries(bat moptions mutils stream ${MATH_LIBS}
${SOCKET_LIBRARIES} ${MALLOC_LIBS} ${PTHREAD_LIBRARIES}
- ${DL_LIBS})
+ ${CMAKE_DL_LIBS})
set_target_properties(bat PROPERTIES COMPILE_DEFINITIONS "LIBGDK")
set_target_properties(bat PROPERTIES VERSION ${GDK_VERSION} SOVERSION
${GDK_VERSION_MAJOR})
+install(TARGETS bat LIBRARY DESTINATION ${LIBDIR})
+
+install(FILES
+ gdk.h
+ gdk_analytic.h
+ gdk_atomic.h
+ gdk_atoms.h
+ gdk_bbp.h
+ gdk_calc.h
+ gdk_cand.h
+ gdk_delta.h
+ gdk_posix.h
+ gdk_hash.h
+ gdk_system.h
+ gdk_utils.h
+ DESTINATION ${INCLUDEDIR})
+
+if(NOT WIN32)
+ if(MATH_LIBS)
+ set(PKG_MATH_LIBS "-l${MATH_LIBS}")
+ endif()
+ if(MALLOC_LIBS)
+ set(PKG_MALLOC_LIBS "-l${MALLOC_LIBS}")
+ endif()
+ if(PTHREAD_LIBRARIES)
+ set(PKG_PTHREAD_LIBRARIES "-${PTHREAD_LIBRARIES}")
+ endif()
+ if(CMAKE_DL_LIBS)
+ set(PKG_DL_LIBS "-l${CMAKE_DL_LIBS}")
+ endif()
+ configure_file(monetdb-gdk.pc.in monetdb-gdk.pc @ONLY)
+ install(FILES monetdb-gdk.pc DESTINATION ${PKGCONFIGDIR})
+endif()
diff --git a/gdk/monetdb-gdk.pc.in b/gdk/monetdb-gdk.pc.in
--- a/gdk/monetdb-gdk.pc.in
+++ b/gdk/monetdb-gdk.pc.in
@@ -4,15 +4,15 @@
#
# Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${exec_prefix}
+libdir=${libdir}
+includedir=${includedir}
Name: monetdb-gdk
Description: MonetDB GDK libary
Version: @PACKAGE_VERSION@
Requires: monetdb-stream
-Libs: -L${libdir} -lbat @MATH_LIBS@ @MALLOC_LIBS@ @PTHREAD_LIBS@ @DL_LIBS@
@KVM_LIBS@
+Libs: -L${libdir} -lbat @PKG_MATH_LIBS@ @PKG_MALLOC_LIBS@
@PKG_PTHREAD_LIBRARIES@ @PKG_DL_LIBS@
Cflags: -I${includedir}/monetdb
diff --git a/monetdb5/extras/mal_optimizer_template/CMakeLists.txt
b/monetdb5/extras/mal_optimizer_template/CMakeLists.txt
--- a/monetdb5/extras/mal_optimizer_template/CMakeLists.txt
+++ b/monetdb5/extras/mal_optimizer_template/CMakeLists.txt
@@ -11,3 +11,7 @@ include_directories(../../optimizer ../.
add_library(opt_sql_append MODULE opt_sql_append.c opt_sql_append.h)
add_dependencies(opt_sql_append monetdb5 bat)
target_link_libraries(opt_sql_append monetdb5 bat)
+
+install(FILES opt_sql_append.mal DESTINATION ${LIBDIR}/monetdb5)
+
+install(FILES 91_opt_sql_append.mal DESTINATION ${LIBDIR}/monetdb5/autoload)
diff --git a/monetdb5/mal/CMakeLists.txt b/monetdb5/mal/CMakeLists.txt
--- a/monetdb5/mal/CMakeLists.txt
+++ b/monetdb5/mal/CMakeLists.txt
@@ -41,5 +41,22 @@ add_library(mal STATIC
mal_type.c mal_type.h
mal_utils.c mal_utils.h
mal_private.h)
+set_target_properties(mal PROPERTIES COMPILE_DEFINITIONS "LIBMAL")
-set_target_properties(mal PROPERTIES COMPILE_DEFINITIONS "LIBMAL")
+install(FILES
+ mal.h
+ mal_client.h
+ mal_errors.h
+ mal_exception.h
+ mal_factory.h
+ mal_function.h
+ mal_instruction.h
+ mal_interpreter.h
+ mal_listing.h
+ mal_module.h
+ mal_namespace.h
+ mal_profiler.h
+ mal_resolve.h
+ mal_stack.h
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list