Skip to content

Commit ef8f143

Browse files
committed
Hidden folder for external dependency
1 parent a435e2e commit ef8f143

File tree

3 files changed

+13
-16
lines changed

3 files changed

+13
-16
lines changed

.github/workflows/build-wheels.yml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ jobs:
4747
brew install automake pkg-config ninja llvm
4848
4949
- name: Build wheels
50-
uses: pypa/cibuildwheel@v2.19.0
50+
uses: pypa/cibuildwheel@v2.23.3
5151
env:
5252
CIBW_BUILD_VERBOSITY: 3
5353
CIBW_ENVIRONMENT_PASS_LINUX: SETUPTOOLS_SCM_PRETEND_VERSION_FOR_TILEDB S3_BUCKET TILEDB_TOKEN TILEDB_NAMESPACE
@@ -67,6 +67,7 @@ jobs:
6767
CIBW_REPAIR_WHEEL_COMMAND_LINUX: auditwheel repair {wheel} -w {dest_dir}
6868
# Pin auditwheel version to ensure consistent behavior
6969
CIBW_BEFORE_BUILD_LINUX: pip install auditwheel==6.0.0
70+
CIBW_ENVIRONMENT: TILEDB_DOWNLOADED=ON
7071
with:
7172
output-dir: wheelhouse
7273

@@ -77,9 +78,12 @@ jobs:
7778

7879
- name: Test isolation
7980
run: |
80-
auditwheel show ./wheelhouse/*.whl
81-
unzip ./wheelhouse/*.whl
82-
81+
echo "=== Wheel audit information ==="
82+
auditwheel show ./wheelhouse/*.whl || true
83+
echo "=== Wheel contents ==="
84+
python -m zipfile -l ./wheelhouse/*.whl | grep -E "(\.so|\.dylib|\.dll|tiledb\.libs)" || echo "No shared libraries found in wheel"
85+
echo "=== Unzip wheel for detailed inspection ==="
86+
unzip -l ./wheelhouse/*.whl
8387
8488
8589
build_sdist:

pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ TILEDB_VERSION = {env="TILEDB_VERSION"}
7979
TILEDB_HASH = {env="TILEDB_HASH"}
8080
TILEDB_REMOVE_DEPRECATIONS = "OFF"
8181
TILEDB_SERIALIZATION = "OFF"
82+
TILEDB_DOWNLOADED = "ON"
8283

8384
[tool.pytest.ini_options]
8485
python_classes = "*Test*"

tiledb/CMakeLists.txt

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -39,23 +39,15 @@ endif()
3939
install(TARGETS main DESTINATION tiledb)
4040

4141
if(TILEDB_DOWNLOADED)
42-
if(BUILD_WHEEL)
43-
message(STATUS "Wheel build: skipping install of libtiledb.so (auditwheel will vendor it)")
44-
else()
45-
message(STATUS "System install: installing libtiledb.so into package")
46-
install(IMPORTED_RUNTIME_ARTIFACTS TileDB::tiledb_shared DESTINATION tiledb)
47-
endif()
42+
message(STATUS "System install: installing libtiledb.so into hidden folder")
43+
install(IMPORTED_RUNTIME_ARTIFACTS TileDB::tiledb_shared DESTINATION tiledb.libs/)
4844

4945
if (APPLE)
50-
set_target_properties(main PROPERTIES INSTALL_RPATH "@loader_path")
46+
set_target_properties(main PROPERTIES INSTALL_RPATH "@loader_path/../tiledb.libs")
5147
elseif(UNIX)
52-
set_target_properties(main PROPERTIES INSTALL_RPATH "\$ORIGIN")
48+
set_target_properties(main PROPERTIES INSTALL_RPATH "\$ORIGIN/../tiledb.libs")
5349
endif()
5450

55-
get_property(TILEDB_LOCATION TARGET TileDB::tiledb_shared PROPERTY LOCATION)
56-
get_filename_component(TILEDB_LOCATION ${TILEDB_LOCATION} DIRECTORY)
57-
message(STATUS "Setting RPATH for targets \"main\" and \"libtiledb\" to ${TILEDB_LOCATION}")
58-
set_target_properties(main PROPERTIES INSTALL_RPATH ${TILEDB_LOCATION})
5951
else()
6052
# If using external TileDB core library force it to be linked at runtime using RPATH
6153
get_property(TILEDB_LOCATION TARGET TileDB::tiledb_shared PROPERTY LOCATION)

0 commit comments

Comments
 (0)