Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,16 @@
# THE SOFTWARE.
#

cmake_minimum_required(VERSION 3.6)
cmake_minimum_required(VERSION 3.19)

project(TileDB)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake/Modules")

# Update TileDB's own git submodules. This directory, not CMAKE_SOURCE_DIR, which
# is the parent project when TileDB is added as a subdirectory
execute_process(COMMAND git submodule update --recursive --init
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
RESULT_VARIABLE submodule_update_exit_code)
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
RESULT_VARIABLE submodule_update_exit_code)
if(NOT(submodule_update_exit_code EQUAL 0))
message(FATAL_ERROR "Failure to recursively update git submodules")
endif()
Expand All @@ -59,7 +59,7 @@ set(GCSSDK_ROOT_DIR "${TILEDB_DEPS_INSTALL_DIR}/gcssdk-install/${GCSSDK_VERSION}
set(GCSSDK_URL "https://github.com/googleapis/google-cloud-cpp/archive/${GCSSDK_VERSION}.zip" CACHE STRING "URL to google-cloud-cpp github release")
set(GCSSDK_URL_HASH "SHA256=37b840a14980d4b3bee55af039258f2c79132e5f5edfa13570899d201ffcf032" CACHE STRING "Hash of the google-cloud-cpp download, or empty to skip the check")

# Set the following to true downstream when TileDB is added as a subdirectory
# Set the following to true downstream when TileDB is added as a subdirectory
set(TILEDB_DISABLE_TESTS False CACHE BOOL "Disable TileDB Testing")
set(TILEDB_DISABLE_UNINSTALL False CACHE BOOL "Disable TileDB Uninstall")

Expand Down Expand Up @@ -252,7 +252,7 @@ if(COMPRESSION_LEVEL_GZIP)
endif()
if(COMPRESSION_LEVEL_ZSTD)
add_definitions(-DTILEDB_COMPRESSION_LEVEL_ZSTD=${COMPRESSION_LEVEL_ZSTD})
message(STATUS
message(STATUS
"Set Zstandard compression level to ${COMPRESSION_LEVEL_ZSTD}."
)
endif()
Expand Down Expand Up @@ -286,13 +286,13 @@ if(DOXYGEN_FOUND)
add_custom_command(
OUTPUT ${CMAKE_BINARY_DIR}/doxyfile.in
COMMAND mkdir -p doxygen
COMMAND echo INPUT = ${CMAKE_SOURCE_DIR}/doc/mainpage.dox
COMMAND echo INPUT = ${CMAKE_SOURCE_DIR}/doc/mainpage.dox
${TILEDB_CORE_HEADERS} > ${CMAKE_BINARY_DIR}/doxyfile.in
COMMAND echo FILE_PATTERNS = *.h >> ${CMAKE_BINARY_DIR}/doxyfile.in
COMMENT "Preparing for Doxygen documentation" VERBATIM
)
add_custom_target(
doc ${DOXYGEN_EXECUTABLE} ${CMAKE_SOURCE_DIR}/doc/Doxyfile.mk >
doc ${DOXYGEN_EXECUTABLE} ${CMAKE_SOURCE_DIR}/doc/Doxyfile.mk >
${CMAKE_BINARY_DIR}/Doxyfile.log 2>&1
COMMENT "Generating API documentation with Doxygen" VERBATIM
DEPENDS ${CMAKE_BINARY_DIR}/doxyfile.in
Expand Down
8 changes: 4 additions & 4 deletions cmake/Modules/FindBLOSC.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@
# - BLOSC_LIBRARIES, the Blosc library path
# - BLOSC_FOUND, whether Blosc has been found

# Find header files
# Find header files
if(BLOSC_SEARCH_HEADER_PATHS)
find_path(
BLOSC_INCLUDE_DIR blosc.h
PATHS ${BLOSC_SEARCH_HEADER_PATHS}
find_path(
BLOSC_INCLUDE_DIR blosc.h
PATHS ${BLOSC_SEARCH_HEADER_PATHS}
NO_DEFAULT_PATH
)
else()
Expand Down
2 changes: 1 addition & 1 deletion cmake/Modules/FindGCSClient.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ elseif(NOT GCSSDK_FOUND)
PREFIX ${GCSSDK_PREFIX}
URL ${GCSSDK_URL}
${GCSSDK_URL_HASH_ARGS}
PATCH_COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/core/include/misc/tiledb_openssl_shim.h
PATCH_COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/core/include/misc/tiledb_openssl_shim.h
${GCSSDK_PREFIX}/src/gcssdk-build/google/cloud/storage &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/gcssdk/gcs_ossl.patch &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/gcssdk/gcc13.patch
Expand Down
14 changes: 7 additions & 7 deletions cmake/Modules/FindS3Client.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ elseif(NOT AWSSDK_FOUND)
URL_HASH SHA256=394723034b81cc7cd528401775bc7aca2b12c7471c92350c80a0e2fb9d2909fe
CMAKE_ARGS ${AWSSDK_COMMON_CMAKE_ARGS}
DEPENDS aws-c-common-build)

ExternalProject_Add(aws-c-event-stream-build
URL "https://github.com/awslabs/aws-c-event-stream/archive/v0.1.5.tar.gz"
URL_HASH SHA256=f1b423a487b5d6dca118bfc0d0c6cc596dc476b282258a3228e73a8f730422d4
Expand All @@ -126,13 +126,13 @@ elseif(NOT AWSSDK_FOUND)
PREFIX ${AWSSDK_PREFIX}
URL ${AWSSDK_URL}
${AWSSDK_URL_HASH_ARGS}
PATCH_COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/core/include/misc/tiledb_openssl_shim.h
PATCH_COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/core/include/misc/tiledb_openssl_shim.h
${AWSSDK_PREFIX}/src/awssdk-build/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/awssdk/build.patch &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/awssdk/cjson.patch &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/awssdk/eventstreamdecoder.patch &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/awssdk/aws_ossl.patch &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/awssdk/missing_includes.patch
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/awssdk/eventstreamdecoder.patch &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/awssdk/aws_ossl.patch &&
patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/cmake/patches/awssdk/missing_includes.patch
CMAKE_ARGS ${AWSSDK_COMMON_CMAKE_ARGS}
-DENABLE_TESTING=OFF
-DENABLE_UNITY_BUILD=ON
Expand All @@ -141,7 +141,7 @@ elseif(NOT AWSSDK_FOUND)
-DBUILD_ONLY=config\\$<SEMICOLON>s3\\$<SEMICOLON>transfer\\$<SEMICOLON>identity-management\\$<SEMICOLON>sts
-DMINIMIZE_SIZE=ON
-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS})


add_dependencies(awssdk-build aws-c-common-build)
add_dependencies(awssdk-build aws-c-event-stream-build)
Expand All @@ -162,7 +162,7 @@ elseif(NOT AWSSDK_FOUND)
set(AWSSDK_LINK_LIBRARIES)

file(MAKE_DIRECTORY ${AWSSDK_INCLUDE_DIR})

foreach(_AWSSDK_LIB ${_AWSSDK_LIBS})
# aws-c-common -> AWS-C-COMMON
string(TOUPPER ${_AWSSDK_LIB} _AWSSDK_LIB_UPPER)
Expand Down
14 changes: 7 additions & 7 deletions core/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@
#

# Include core header directories
file(GLOB TILEDB_CORE_INCLUDE_DIRS "include/*"
"src/codec/external/lz4"
"src/codec/external/bitshuffle")
file(GLOB TILEDB_CORE_INCLUDE_DIRS "include/*"
"src/codec/external/lz4"
"src/codec/external/bitshuffle")
include_directories(${TILEDB_CORE_INCLUDE_DIRS})

# Gather the core source files
Expand Down Expand Up @@ -72,9 +72,9 @@ set_target_properties(tiledb_static tiledb_shared PROPERTIES OUTPUT_NAME "tiledb

# See https://glandium.org/blog/?p=2764 for workaound for undefined weak symbols in MacOS
if(APPLE)
set(TILEDB_LINK_OPTIONS "-Wl,-U,_EVP_MAC_CTX_free;-Wl,-U,_EVP_MAC_CTX_new;-Wl,-U,_EVP_MAC_fetch;;-Wl,-U,_EVP_MAC_final;-Wl,-U,_EVP_MAC_free;-Wl,-U,_EVP_MAC_init;-Wl,-U,_EVP_MAC_update;-Wl,-U,_EVP_MD_get_size;-Wl,-U,_OSSL_PARAM_construct_end;-Wl,-U,_OSSL_PARAM_construct_utf8_string")
target_link_options(tiledb_static PUBLIC ${TILEDB_LINK_OPTIONS})
target_link_options(tiledb_shared PUBLIC ${TILEDB_LINK_OPTIONS})
set(TILEDB_LINK_OPTIONS "-Wl,-U,_EVP_MAC_CTX_free;-Wl,-U,_EVP_MAC_CTX_new;-Wl,-U,_EVP_MAC_fetch;;-Wl,-U,_EVP_MAC_final;-Wl,-U,_EVP_MAC_free;-Wl,-U,_EVP_MAC_init;-Wl,-U,_EVP_MAC_update;-Wl,-U,_EVP_MD_get_size;-Wl,-U,_OSSL_PARAM_construct_end;-Wl,-U,_OSSL_PARAM_construct_utf8_string")
target_link_options(tiledb_static PUBLIC ${TILEDB_LINK_OPTIONS})
target_link_options(tiledb_shared PUBLIC ${TILEDB_LINK_OPTIONS})
endif()

# The SDKs' static libraries use libcurl and OpenSSL, so these follow them on the link line
Expand All @@ -84,7 +84,7 @@ target_link_libraries(tiledb_shared ${TILEDB_LIB_DEPENDENCIES})

# Install libraries
install(
TARGETS tiledb_static tiledb_shared
TARGETS tiledb_static tiledb_shared
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
)
Expand Down
2 changes: 1 addition & 1 deletion core/include/c_api/tiledb_constants.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
#include <stdint.h>

/** Version. */
#define TILEDB_VERSION "0.5.2"
#define TILEDB_VERSION "0.6.0"

@nalinigans nalinigans Oct 15, 2026 •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was not released externally and so not updated... But great to see it getting updated. That said:

If you'd like to tag 0.6.0 once this is in, GenomicsDB's submodule bump could point at the tag

That works!


/**@{*/
/** Return code. */
Expand Down
2 changes: 1 addition & 1 deletion test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ include(SetCatch2Version)
foreach(TILEDB_TEST_SOURCE ${TILEDB_TEST_SOURCES})
get_filename_component(FILENAME ${TILEDB_TEST_SOURCE} NAME)
string(REGEX REPLACE ".cc$" "" TARGET ${FILENAME})

add_executable(${TARGET} EXCLUDE_FROM_ALL ${TILEDB_TEST_SOURCE})
target_link_libraries(${TARGET} tiledb_static ${TILEDB_LIB_DEPENDENCIES} Catch2::Catch2)

Expand Down
Loading