Changeset: dde2d19c63d0 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/dde2d19c63d0 Modified Files: MonetDB.spec cmake/monetdb-defines.cmake gdk/gdk_bat.c gdk/gdk_bbp.c monetdb_config.h.in sql/storage/store.c Branch: default Log Message:
Merge with Dec2023 branch. diffs (truncated from 432 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -151,7 +151,6 @@ BuildRequires: pkgconfig(libR) # BuildRequires: pkgconfig(gdal) # -DSHP=ON # BuildRequires: pkgconfig(netcdf) # -DNETCDF=ON # BuildRequires: pkgconfig(proj) # -DWITH_PROJ=ON -# BuildRequires: pkgconfig(snappy) # -DWITH_SNAPPY=ON # BuildRequires: pkgconfig(valgrind) # -DWITH_VALGRIND=ON %if (0%{?fedora} >= 22) @@ -868,7 +867,6 @@ sed -i 's/1\.2/1.1/' misc/selinux/monetd -DWITH_PCRE=ON \ -DWITH_PROJ=OFF \ -DWITH_READLINE=ON \ - -DWITH_SNAPPY=OFF \ -DWITH_VALGRIND=OFF \ -DWITH_XML2=ON \ -DWITH_ZLIB=ON @@ -895,9 +893,6 @@ install -d -m 0775 %{buildroot}%{_locals install -d -m 0775 %{buildroot}%{_rundir}/monetdb # remove unwanted stuff -# .la files -rm -f %{buildroot}%{_libdir}/*.la -rm -f %{buildroot}%{_libdir}/monetdb5/*.la rm -f %{buildroot}%{_libdir}/monetdb5/lib_opt_sql_append.so rm -f %{buildroot}%{_libdir}/monetdb5/lib_microbenchmark*.so rm -f %{buildroot}%{_libdir}/monetdb5/lib_udf*.so diff --git a/README.rst b/README.rst --- a/README.rst +++ b/README.rst @@ -69,8 +69,8 @@ CINTEGRATION Enable support for C CMAKE_SUMMARY Show a summary of the cmake configuration (for debug purposes, default=OFF) CMAKE_UNITTESTS Build and run the unittest for the build system (default=OFF) FITS Enable support for FITS -GEOM Enable support for geom module -INT128 Enable support for 128-bit integers +GEOM Enable support for geom module (using libgeos library) +INT128 Enable support for 128-bit integers (if compiler supports them) NETCDF Enable support for netcdf ODBC Compile the MonetDB ODBC driver PY3INTEGRATION Enable support for Python 3 integration into MonetDB @@ -82,7 +82,9 @@ TESTING Enable support for t WITH_BZ2 Include bz2 support WITH_CMOCKA Include cmocka support (default=OFF) WITH_CURL Include curl support +WITH_LZ4 Include lz4 support WITH_LZMA Include lzma support +WITH_OPENSSL Include TLS support (secure client/server connection) WITH_PCRE Include pcre support WITH_PROJ Include proj support WITH_READLINE Include readline support @@ -98,27 +100,27 @@ On Fedora, the following packages are re ``bison``, ``cmake``, ``gcc``, ``pkgconf``, ``python3``. The following packages are optional but recommended: -``bzip2-devel``, ``pcre-devel``, ``readline-devel``, -``xz-devel``, ``zlib-devel``. +``bzip2-devel``, ``lz4-devel``, ``openssl-devel``, ``pcre-devel``, +``readline-devel``, ``xz-devel``, ``zlib-devel``. The following packages are optional: ``cfitsio-devel``, ``gdal-devel``, ``geos-devel``, ``libasan``, -``libcurl-devel``, ``libxml2-devel``, ``netcdf-devel``, ``proj-devel``, -``python3-devel``, ``python3-numpy``, ``R-core-devel``, -``unixODBC-devel``, ``valgrind-devel``. +``libcmocka-devel``, ``libcurl-devel``, ``libxml2-devel``, +``netcdf-devel``, ``proj-devel``, ``python3-devel``, ``python3-numpy``, +``R-core-devel``, ``unixODBC-devel``, ``valgrind-devel``. On Ubuntu and Debian the following packages are required: ``bison``, ``cmake``, ``gcc``, ``pkg-config``, ``python3``. The following packages are optional but recommended: -``libbz2-dev``, ``libpcre3-dev``, ``libreadline-dev``, -``liblzma-dev``, ``zlib1g-dev``. +``libbz2-dev``, ``liblz4-dev``, ``libpcre3-dev``, ``libreadline-dev``, +``liblzma-dev``, ``libssl-dev``, ``zlib1g-dev``. The following packages are optional: -``libasan5``, ``libcfitsio-dev``, ``libcurl4-gnutls-dev``, -``libgdal-dev``, ``libgeos-dev``, ``libnetcdf-dev``, ``libproj-dev``, -``libxml2-dev``, ``python3-dev``, ``python3-numpy``, ``r-base-dev``, -``unixodbc-dev``, ``valgrind``. +``libasan5``, ``libcfitsio-dev``, ``libcmocka-dev``, +``libcurl4-gnutls-dev``, ``libgdal-dev``, ``libgeos-dev``, +``libnetcdf-dev``, ``libproj-dev``, ``libxml2-dev``, ``python3-dev``, +``python3-numpy``, ``r-base-dev``, ``unixodbc-dev``, ``valgrind``. ``cmake`` must be at least version 3.12, ``python`` must be at least version 3.5. diff --git a/cmake/Modules/FindSnappy.cmake b/cmake/Modules/FindSnappy.cmake deleted file mode 100644 --- a/cmake/Modules/FindSnappy.cmake +++ /dev/null @@ -1,35 +0,0 @@ -# - Find snappy -# Find the native snappy headers and libraries. -# -# SNAPPY_INCLUDE_DIR - where to find snappy.h, etc. -# SNAPPY_LIBRARIES - List of libraries when using snappy. -# SNAPPY_FOUND - True if snappy found. - -find_path(SNAPPY_INCLUDE_DIR NAMES snappy.h) -find_library(SNAPPY_LIBRARIES NAMES snappy) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Snappy - DEFAULT_MSG - SNAPPY_LIBRARIES - SNAPPY_INCLUDE_DIR) - -mark_as_advanced(SNAPPY_INCLUDE_DIR - SNAPPY_LIBRARIES) - -if(SNAPPY_FOUND) - if(NOT TARGET SNAPPY::SNAPPY AND - (EXISTS "${SNAPPY_LIBRARIES}")) - add_library(SNAPPY::SNAPPY UNKNOWN IMPORTED) - set_target_properties(SNAPPY::SNAPPY - PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES "${SNAPPY_INCLUDE_DIR}") - - if(EXISTS "${SNAPPY_LIBRARIES}") - set_target_properties(SNAPPY::SNAPPY - PROPERTIES - IMPORTED_LINK_INTERFACE_LANGUAGES "C" - IMPORTED_LOCATION "${SNAPPY_LIBRARIES}") - endif() - endif() -endif() diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake --- a/cmake/monetdb-defines.cmake +++ b/cmake/monetdb-defines.cmake @@ -146,7 +146,6 @@ macro(monetdb_macro_variables) set(HAVE_LIBZ ${ZLIB_FOUND}) set(HAVE_LIBLZ4 ${LZ4_FOUND}) set(HAVE_PROJ ${PROJ_FOUND}) - set(HAVE_SNAPPY ${SNAPPY_FOUND}) set(HAVE_FITS ${CFITSIO_FOUND}) set(HAVE_VALGRIND ${VALGRIND_FOUND}) set(HAVE_NETCDF ${NETCDF_FOUND}) diff --git a/cmake/monetdb-findpackages.cmake b/cmake/monetdb-findpackages.cmake --- a/cmake/monetdb-findpackages.cmake +++ b/cmake/monetdb-findpackages.cmake @@ -65,10 +65,6 @@ if(WITH_PROJ) find_package(Proj 6.0) endif() -if(WITH_SNAPPY) - find_package(Snappy) -endif() - if(WITH_VALGRIND) find_package(Valgrind) endif() diff --git a/cmake/monetdb-functions.cmake b/cmake/monetdb-functions.cmake --- a/cmake/monetdb-functions.cmake +++ b/cmake/monetdb-functions.cmake @@ -98,7 +98,6 @@ 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 "Fits library: ${CFITSIO_FOUND}") diff --git a/cmake/monetdb-options.cmake b/cmake/monetdb-options.cmake --- a/cmake/monetdb-options.cmake +++ b/cmake/monetdb-options.cmake @@ -133,10 +133,6 @@ option(WITH_PCRE "Include pcre support" ON) -option(WITH_SNAPPY - "Include snappy support" - ON) - option(WITH_VALGRIND "Include valgrind support" ON) diff --git a/common/utils/matomic.h b/common/utils/matomic.h --- a/common/utils/matomic.h +++ b/common/utils/matomic.h @@ -72,17 +72,17 @@ #if ATOMIC_LLONG_LOCK_FREE != 1 #error "we need _Atomic(unsigned [long] long) to be lock free" #endif -typedef atomic_ulong ATOMIC_TYPE; +typedef atomic_ulong ATOMIC_TYPE __attribute__((__aligned__(8))); typedef unsigned long ATOMIC_BASE_TYPE; #else -typedef atomic_ullong ATOMIC_TYPE; +typedef atomic_ullong ATOMIC_TYPE __attribute__((__aligned__(8))); typedef unsigned long long ATOMIC_BASE_TYPE; #endif #elif SIZEOF_LONG == 8 #if ATOMIC_LONG_LOCK_FREE != 2 #error "we need _Atomic(unsigned long) to be lock free" #endif -typedef atomic_ulong ATOMIC_TYPE; +typedef atomic_ulong ATOMIC_TYPE __attribute__((__aligned__(8))); typedef unsigned long ATOMIC_BASE_TYPE; #else #error "we need a 64 bit atomic type" @@ -97,17 +97,17 @@ typedef unsigned long ATOMIC_BASE_TYPE; #if ATOMIC_LLONG_LOCK_FREE != 1 #error "we need _Atomic(unsigned [long] long) to be lock free" #endif -typedef atomic_ulong ATOMIC_TYPE; +typedef atomic_ulong ATOMIC_TYPE __attribute__((__aligned__(8))); typedef unsigned long ATOMIC_BASE_TYPE; #else -typedef volatile atomic_ullong ATOMIC_TYPE; +typedef volatile atomic_ullong ATOMIC_TYPE __attribute__((__aligned__(8))); typedef unsigned long long ATOMIC_BASE_TYPE; #endif #elif SIZEOF_LONG == 8 #if ATOMIC_LONG_LOCK_FREE != 2 #error "we need _Atomic(unsigned long) to be lock free" #endif -typedef volatile atomic_ulong ATOMIC_TYPE; +typedef volatile atomic_ulong ATOMIC_TYPE __attribute__((__aligned__(8))); typedef unsigned long ATOMIC_BASE_TYPE; #else #error "we need a 64 bit atomic type" @@ -272,7 +272,7 @@ typedef volatile int ATOMIC_FLAG; * __sync_* primitives is not supported) */ typedef uint64_t ATOMIC_BASE_TYPE; -typedef volatile ATOMIC_BASE_TYPE ATOMIC_TYPE; +typedef volatile ATOMIC_BASE_TYPE ATOMIC_TYPE __attribute__((__aligned__ (8))); #define ATOMIC_VAR_INIT(val) (val) #define ATOMIC_INIT(var, val) (*(var) = (val)) diff --git a/ctest/cmake/CMakeLists.txt b/ctest/cmake/CMakeLists.txt --- a/ctest/cmake/CMakeLists.txt +++ b/ctest/cmake/CMakeLists.txt @@ -31,7 +31,6 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/dete 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-valgrind.cmake) include(${CMAKE_CURRENT_SOURCE_DIR}/detect-geos.cmake) diff --git a/ctest/cmake/detect-snappy.cmake b/ctest/cmake/detect-snappy.cmake deleted file mode 100644 --- a/ctest/cmake/detect-snappy.cmake +++ /dev/null @@ -1,53 +0,0 @@ -#[[ -# SPDX-License-Identifier: MPL-2.0 -# -# 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 2024 MonetDB Foundation; -# Copyright August 2008 - 2023 MonetDB B.V.; -# Copyright 1997 - July 2008 CWI. -#]] - -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") - assert_package_detected( - detect FALSE - legacyvariable HAVE_SNAPPY - variablename SNAPPY_FOUND) - endif() - if(${LINUX_DISTRO_VERSION} STREQUAL "10") - assert_package_detected( - detect FALSE - legacyvariable HAVE_SNAPPY - variablename SNAPPY_FOUND) - endif() -elseif (${LINUX_DISTRO} STREQUAL "ubuntu") - if(${LINUX_DISTRO_VERSION} VERSION_GREATER_EQUAL "18") - assert_package_detected( - detect FALSE - legacyvariable HAVE_SNAPPY - variablename SNAPPY_FOUND) - endif() -elseif(${LINUX_DISTRO} STREQUAL "fedora") - if(${LINUX_DISTRO_VERSION} STREQUAL "30") - assert_package_detected( - detect FALSE - legacyvariable HAVE_SNAPPY - variablename SNAPPY_FOUND) - endif() - if(${LINUX_DISTRO_VERSION} VERSION_GREATER_EQUAL "31") - assert_package_detected( - detect TRUE - legacyvariable HAVE_SNAPPY - variablename SNAPPY_FOUND) _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org