Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into rr/sc-60366-sparse-gl…
Browse files Browse the repository at this point in the history
…obal-order-reader-merge
  • Loading branch information
rroelke committed Feb 3, 2025
2 parents 353cd78 + ca7bd07 commit 6f8784c
Show file tree
Hide file tree
Showing 43 changed files with 1,520 additions and 336 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build-rtools40.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ jobs:
VCPKG_ROOT: ${{ github.workspace }}/vcpkg
shell: c:\rtools40\usr\bin\bash.exe --login {0}
- name: "Upload binaries"
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: mingw-w64-${{ matrix.msystem }}-tiledb
path: .github/workflows/mingw-w64-tiledb/*.pkg.tar.*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
# Save the tiledb_unit binary for use in the next step
- name: 'Upload Artifact'
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: tiledb_unit
path: ${{ github.workspace }}/build/test/tiledb_unit
Expand All @@ -66,7 +66,7 @@ jobs:
- uses: actions/checkout@v3

- name: Download a single artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: tiledb_unit
path: ${{ github.workspace }}/build/test/
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -406,7 +406,7 @@ jobs:
- name: 'upload dumpfile artifacts' # https://github.com/actions/upload-artifact#where-does-the-upload-go
if: ${{ always() == true && startsWith(matrix.os, 'windows-') == true }} # only run this job if the build step failed
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
retention-days: 10
name: "coredumps.${{ github.job }}.${{ matrix.os }}.${{matrix.environ}}.${{ github.run_number }}.${{github.run_id}}.${{github.run_attempt}}"
Expand Down
7 changes: 2 additions & 5 deletions .github/workflows/check-formatting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,5 @@ jobs:
printenv
shell: bash

- name: Check formatting (linux only)'
run: |
source $GITHUB_WORKSPACE/scripts/ci/check_formatting_linux.sh
shell: bash
if: ${{ runner.os == 'Linux' }}
- name: Check formatting
run: $GITHUB_WORKSPACE/scripts/ci/check_formatting_linux.sh
12 changes: 9 additions & 3 deletions .github/workflows/ci-linux_mac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -236,12 +236,18 @@ jobs:
run: ./scripts/ci/posix/dump-core-stacks.sh

- name: List files in build directory on failure
run: du --exclude _deps -h $GITHUB_WORKSPACE/build
run: |
if [ $(uname) = "Darwin" ] ; then
# MacOS du lacks --exclude
du -h $GITHUB_WORKSPACE/build
else
du --exclude _deps -h $GITHUB_WORKSPACE/build
fi
if: ${{ failure() }}

- name: 'Upload failure artifacts (Linux)' # https://github.com/actions/upload-artifact#where-does-the-upload-go
if: ${{ startsWith(matrix.os, 'ubuntu-') == true }} # only run this job if the build step failed
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
retention-days: 10
name: "coredumps.${{ github.job }}.${{ matrix.os }}.${{ github.run_number }}.${{github.run_id}}.${{github.run_attempt}}"
Expand All @@ -251,7 +257,7 @@ jobs:
- name: 'Upload failure artifacts (macOS)' # https://github.com/actions/upload-artifact#where-does-the-upload-go
if: ${{ failure() == true && startsWith(matrix.os, 'macos-') == true }} # only run this job if the build step failed
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
retention-days: 10
name: "${{ matrix.os }}.coredumps.${{ github.job }}.${{ github.run_number }}.${{github.run_id}}.${{github.run_attempt}}"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/nightly-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,4 +146,4 @@ jobs:
with:
name: nightly GitHub Actions build
label: nightly
assignee: KiterLuc,teo-tsirpanis,davisp
assignee: davisp,dudoslav,ihnorton,teo-tsirpanis
18 changes: 10 additions & 8 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
TILEDB_PACKAGE_VERSION: ${{ steps.get-values.outputs.release_version }}
run: cd build && cpack --config CPackSourceConfig.cmake
- name: Upload Release Artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: release
path: |
Expand Down Expand Up @@ -124,9 +124,9 @@ jobs:
TILEDB_PACKAGE_VERSION: ${{ steps.get-values.outputs.release_version }}
run: cmake --build build -j4 --config Release --target package
- name: Upload release artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: release
name: release-${{ matrix.platform }}
path: |
build/tiledb-*.tar.gz*
build/tiledb-*.zip*
Expand All @@ -142,9 +142,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download release artifacts
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: release
pattern: release-*
merge-multiple: true
path: dist
- name: Test names of release artifacts
run: |
Expand All @@ -161,9 +162,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download release artifacts
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: release
name: release-*
merge-multiple: true
path: dist
- name: Publish release artifacts
uses: actions/github-script@v6
Expand Down Expand Up @@ -214,4 +216,4 @@ jobs:
with:
name: Release failed
label: release
assignee: KiterLuc,teo-tsirpanis,davisp
assignee: davisp,dudoslav,ihnorton,teo-tsirpanis
29 changes: 1 addition & 28 deletions bootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -196,36 +196,9 @@ if [ "${linkage}" = "shared" ] && [ "${enable_static_tiledb}" = "ON" ]; then
die "cannot specify both --linkage=shared and --enable-static-tiledb"
fi

# Check clang compiler
if [[ x"${CC}" = x"" ]]; then
CC=gcc
fi

if [[ x"${CXX}" = x"" ]]; then
CXX=g++
fi

c_compiler=`which ${CC}`
cxx_compiler=`which ${CXX}`
cmake=`which cmake`

if [[ ! -x ${c_compiler} ]]; then
die "cannot find c compiler"
fi

if [[ ! -x ${cxx_compiler} ]]; then
die "cannot find cplusplus compiler"
fi

if [[ ! -x ${cmake} ]]; then
die "cannot find cmake"
fi

# Configure
${cmake} -DCMAKE_BUILD_TYPE=${build_type} \
cmake -DCMAKE_BUILD_TYPE=${build_type} \
-DCMAKE_INSTALL_PREFIX="${prefix_dirs}" \
-DCMAKE_C_COMPILER="${c_compiler}" \
-DCMAKE_CXX_COMPILER="${cxx_compiler}" \
-DCMAKE_PREFIX_PATH="${dependency_dir}" \
-DBUILD_SHARED_LIBS=${build_shared_libs} \
-DTILEDB_ASSERTIONS=${tiledb_assertions} \
Expand Down
1 change: 1 addition & 0 deletions ports/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,4 @@ For ease of review when patching existing ports, you are recommended to make one
| `aws-sdk-cpp` | Patching to fix MinGW build failures, and to avoid building test-only SDKs (https://github.com/aws/aws-sdk-cpp/pull/3061). |
| `libmagic` | Using a custom CMake-based port that is not accepted upstream. |
| `libfaketime` | Port does not yet exist upstream |
| `spdlog` | Patching to compile with `-fvisibility=hidden` |
67 changes: 67 additions & 0 deletions ports/spdlog/portfile.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO gabime/spdlog
REF "v${VERSION}"
SHA512 d8f36a3d65a43d8c64900e46137827aadb05559948b2f5a389bea16ed1bfac07d113ee11cf47970913298d6c37400355fe6895cda8fa6dcf6abd9da0d8f199e9
HEAD_REF v1.x
)

vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
benchmark SPDLOG_BUILD_BENCH
wchar SPDLOG_WCHAR_SUPPORT
)

# SPDLOG_WCHAR_FILENAMES can only be configured in triplet file since it is an alternative (not additive)
if(NOT DEFINED SPDLOG_WCHAR_FILENAMES)
set(SPDLOG_WCHAR_FILENAMES OFF)
endif()
if(NOT VCPKG_TARGET_IS_WINDOWS AND SPDLOG_WCHAR_FILENAMES)
message(FATAL_ERROR "Build option 'SPDLOG_WCHAR_FILENAMES' is for Windows.")
endif()

string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" SPDLOG_BUILD_SHARED)

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
${FEATURE_OPTIONS}
-DCMAKE_CXX_VISIBILITY_PRESET=hidden
-DSPDLOG_FMT_EXTERNAL=ON
-DSPDLOG_INSTALL=ON
-DSPDLOG_BUILD_SHARED=${SPDLOG_BUILD_SHARED}
-DSPDLOG_WCHAR_FILENAMES=${SPDLOG_WCHAR_FILENAMES}
-DSPDLOG_BUILD_EXAMPLE=OFF
)

vcpkg_cmake_install()
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/spdlog)
vcpkg_fixup_pkgconfig()
vcpkg_copy_pdbs()

# add support for integration other than cmake
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/include/spdlog/tweakme.h
"// #define SPDLOG_FMT_EXTERNAL"
"#ifndef SPDLOG_FMT_EXTERNAL\n#define SPDLOG_FMT_EXTERNAL\n#endif"
)
if(SPDLOG_WCHAR_SUPPORT)
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/include/spdlog/tweakme.h
"// #define SPDLOG_WCHAR_TO_UTF8_SUPPORT"
"#ifndef SPDLOG_WCHAR_TO_UTF8_SUPPORT\n#define SPDLOG_WCHAR_TO_UTF8_SUPPORT\n#endif"
)
endif()
if(SPDLOG_WCHAR_FILENAMES)
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/include/spdlog/tweakme.h
"// #define SPDLOG_WCHAR_FILENAMES"
"#ifndef SPDLOG_WCHAR_FILENAMES\n#define SPDLOG_WCHAR_FILENAMES\n#endif"
)
endif()

file(REMOVE_RECURSE
"${CURRENT_PACKAGES_DIR}/include/spdlog/fmt/bundled"
"${CURRENT_PACKAGES_DIR}/debug/include"
"${CURRENT_PACKAGES_DIR}/debug/share"
)

file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
8 changes: 8 additions & 0 deletions ports/spdlog/usage
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
The package spdlog provides CMake targets:

find_package(spdlog CONFIG REQUIRED)
target_link_libraries(main PRIVATE spdlog::spdlog)

# Or use the header-only version
find_package(spdlog CONFIG REQUIRED)
target_link_libraries(main PRIVATE spdlog::spdlog_header_only)
30 changes: 30 additions & 0 deletions ports/spdlog/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"name": "spdlog",
"version-semver": "1.14.1",
"description": "Very fast, header-only/compiled, C++ logging library.",
"homepage": "https://github.com/gabime/spdlog",
"license": "MIT",
"dependencies": [
"fmt",
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
],
"features": {
"benchmark": {
"description": "Use google benchmark",
"dependencies": [
"benchmark"
]
},
"wchar": {
"description": "Build with wchar_t (Windows only)",
"supports": "windows"
}
}
}
2 changes: 1 addition & 1 deletion scripts/ci/check_formatting_linux.sh
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ set -e pipefail
ls -la
sudo ./scripts/install-clangformat.sh

src=$GITHUB_WORKSPACE
src=$(dirname $0)/../..
cd $src

$src/scripts/run-clang-format.sh $src clang-format-17 0
4 changes: 4 additions & 0 deletions scripts/install-clangformat.sh
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,10 @@ install_clang_format() {

run() {
install_clang_format

echo
echo "clang-format --version" $(clang-format --version)
echo
}

run
6 changes: 3 additions & 3 deletions test/src/test-cppapi-current-domain.cc
Original file line number Diff line number Diff line change
Expand Up @@ -468,7 +468,7 @@ TEST_CASE_METHOD(
CHECK_THROWS_WITH(
query_read2.submit(),
Catch::Matchers::ContainsSubstring(
"A range was set outside of the current domain."));
"was set outside of the current domain"));

tiledb::Query query_read3(ctx_, array_read, TILEDB_READ);
tiledb::Subarray subarray_read3(ctx_, array_read);
Expand All @@ -483,7 +483,7 @@ TEST_CASE_METHOD(
CHECK_THROWS_WITH(
query_read3.submit(),
Catch::Matchers::ContainsSubstring(
"A range was set outside of the current domain."));
"was set outside of the current domain"));

array_read.close();

Expand Down Expand Up @@ -588,7 +588,7 @@ TEST_CASE_METHOD(
.set_data_buffer("a", a_with_cd2)
.set_data_buffer("dim1", dim1_with_cd2);
auto matcher = Catch::Matchers::ContainsSubstring(
"A range was set outside of the current domain.");
"was set outside of the current domain");
REQUIRE_THROWS_WITH(query_for_cd2.submit(), matcher);
array_with_cd2.close();

Expand Down
Loading

0 comments on commit 6f8784c

Please sign in to comment.