Skip to content

Commit ce605a0

Browse files
Merge pull request #242 from UIUCLibrary/dev
Dev
2 parents 6a2ed8e + 17894d6 commit ce605a0

File tree

16 files changed

+299
-235
lines changed

16 files changed

+299
-235
lines changed

CMakeLists.txt

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.24)
22
project(pyexiv2bind)
33

44
find_package(Python3 COMPONENTS Interpreter Development)
5+
find_package(Catch2)
56

67
if (WIN32 AND CMAKE_BUILD_TYPE STREQUAL "Debug")
78
set(CMAKE_DEBUG_POSTFIX "d")
@@ -17,18 +18,12 @@ option(pyexiv2bind_build_tests "build test suite" ON)
1718
include_directories(${CMAKE_BINARY_DIR})
1819
include(FetchContent)
1920
FetchContent_Declare(libpybind11
20-
URL https://github.com/pybind/pybind11/archive/refs/tags/v2.10.4.tar.gz
21-
URL_HASH SHA1=5c366a92fc4b3937bcc3389405edbe362b1f3cbd
21+
URL https://github.com/pybind/pybind11/archive/refs/tags/v2.13.6.tar.gz
22+
URL_HASH SHA1=8c7e3e8fec829ced31a495dec281153511f33c63
2223
DOWNLOAD_EXTRACT_TIMESTAMP TRUE
2324
EXCLUDE_FROM_ALL
2425
)
2526

26-
FetchContent_Declare(libcatch2
27-
URL https://github.com/catchorg/Catch2/archive/v3.7.1.tar.gz
28-
URL_HASH SHA1=0c67df1524fd3ce88f656a3865ba4d4e4886168f
29-
DOWNLOAD_EXTRACT_TIMESTAMP TRUE
30-
)
31-
3227
if(pyexiv2bind_generate_python_bindings)
3328
FetchContent_MakeAvailable(libpybind11)
3429
endif(pyexiv2bind_generate_python_bindings)

Jenkinsfile

Lines changed: 247 additions & 200 deletions
Large diffs are not rendered by default.

MANIFEST.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Include the license file
22
include tox.ini CHANGELOG.rst README.rst CMakeLists.txt tests/CMakeLists.txt
3-
include conanfile.py
3+
include conanfile.py conan.lock
44
include src/py3exiv2bind/core.pyi
55
include patches/*.patch
66
include patches/*.cmake

ci/docker/linux/jenkins/Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@ ARG PIP_INDEX_URL
6161
ARG CONAN_USER_HOME
6262
ARG CONAN_DOWNLOAD_CACHE=/tmp/conan_download_cache
6363
ARG CONAN_CENTER_PROXY_V2_URL
64-
COPY conanfile.py /tmp/conanfile.py
6564
ARG UV_CACHE_DIR
6665
ARG PIP_DOWNLOAD_CACHE
6766
COPY --from=uv_builder /uv /uvx /bin/
@@ -73,6 +72,8 @@ RUN --mount=type=cache,target=${PIP_DOWNLOAD_CACHE} \
7372
--mount=type=cache,target=${CONAN_DOWNLOAD_CACHE} \
7473
--mount=type=bind,source=pyproject.toml,target=pyproject.toml \
7574
--mount=type=bind,source=uv.lock,target=uv.lock \
75+
--mount=type=bind,source=conanfile.py,target=/tmp/conanfile.py \
76+
--mount=type=bind,source=conan.lock,target=/tmp/conan.lock \
7677
uv run --only-group conan conan profile detect --exist-ok && \
7778
cp ${CONAN_HOME}/global.conf /tmp/global.conf.original && \
7879
echo "core.sources:download_cache = $CONAN_DOWNLOAD_CACHE" >> ${CONAN_HOME}/global.conf && \

ci/docker/linux/tox/Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ ARG CONAN_HOME
4242
COPY ci/docker/linux/tox/conan/profile.ini ${CONAN_HOME}/profiles/default
4343
COPY ci/docker/shared/conan/remotes.json ${CONAN_HOME}/remotes.json
4444

45-
COPY conanfile.py /tmp/conanfile.py
4645
ARG UV_CACHE_DIR
4746
ARG PIP_DOWNLOAD_CACHE
4847
ARG CONAN_CENTER_PROXY_V2_URL
@@ -52,6 +51,8 @@ RUN --mount=type=cache,target=${PIP_DOWNLOAD_CACHE} \
5251
--mount=type=cache,target=${CONAN_DOWNLOAD_CACHE} \
5352
--mount=type=bind,source=pyproject.toml,target=pyproject.toml \
5453
--mount=type=bind,source=uv.lock,target=uv.lock \
54+
--mount=type=bind,source=conanfile.py,target=/tmp/conanfile.py \
55+
--mount=type=bind,source=conan.lock,target=/tmp/conan.lock \
5556
uv run --only-group conan conan profile detect --exist-ok && \
5657
cp ${CONAN_HOME}/global.conf /tmp/global.conf.original && \
5758
echo "core.sources:download_cache = $CONAN_DOWNLOAD_CACHE" >> ${CONAN_HOME}/global.conf && \

cmake_scripts/external_exiv22.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ FetchContent_Declare(
5656
# URL https://github.com/Exiv2/exiv2/archive/refs/tags/v0.28.1.tar.gz
5757
# URL_HASH SHA256=3078651f995cb6313b1041f07f4dd1bf0e9e4d394d6e2adc6e92ad0b621291fa
5858
GIT_REPOSITORY https://github.com/Exiv2/exiv2.git
59-
GIT_TAG v0.28.1
59+
GIT_TAG v0.28.7
6060
# GIT_REPOSITORY https://github.com/Exiv2/exiv2.git
6161
# GIT_TAG ${EXIV2_VERSION_TAG}
6262
SYSTEM

conan.lock

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"version": "0.5",
3+
"requires": [
4+
"zlib/1.3.1#b8bc2603263cf7eccbd6e17e66b0ed76%1755184481.162043",
5+
"libiconv/1.17#1e65319e945f2d31941a9d28cc13c058%1755178573.409999",
6+
"expat/2.5.0#91e43e4544923e4c934bfad1fa4306f9%1755186526.919869",
7+
"catch2/3.11.0#a560b55882ff2deb1f4bafad832a1b98%1763673919.270116",
8+
"brotli/1.0.9#8419c3e664bc762bc479561c5c7d2274%1755186526.576017"
9+
],
10+
"build_requires": [
11+
"cmake/3.31.9#f9b9bb4bdfa37937619a33e9218703a6%1761647880.115"
12+
],
13+
"python_requires": [],
14+
"config_requires": []
15+
}

conanfile.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ def requirements(self):
1919
self.requires("zlib/1.3.1")
2020
if self.settings.os in ["Macos", "Linux"]:
2121
self.requires("libiconv/1.17")
22+
23+
def build_requirements(self):
24+
self.test_requires('catch2/3.11.0')
2225
def imports(self):
2326
self.copy("*.dll", dst="bin", src="bin") # From bin to bin
2427
self.copy("*.dylib*", dst=".", src="lib") # From lib to bin

pyproject.toml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
[build-system]
22
requires = [
33
"setuptools>=77.0.0",
4-
"wheel",
54
"ninja",
6-
"uiucprescon.build @ https://github.com/UIUCLibrary/uiucprescon_build/releases/download/v0.4.0/uiucprescon_build-0.4.0-py3-none-any.whl",
5+
"pybind11>=2.13",
6+
"uiucprescon.build @ https://github.com/UIUCLibrary/uiucprescon_build/releases/download/v0.4.2/uiucprescon_build-0.4.2-py3-none-any.whl",
77
"cmake<4.0",
8-
# "conan>=1.50.0,<2.0"
98
"conan>=2.0"
109
]
1110
build-backend = "uiucprescon.build"

scripts/resources/package_for_linux/Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ ARG UV_INDEX_URL
4444

4545
COPY scripts/resources/package_for_linux/conan/profile.ini ${CONAN_HOME}/profiles/default
4646
COPY ci/docker/shared/conan/remotes.json ${CONAN_HOME}/remotes.json
47-
COPY conanfile.py /tmp/conanfile.py
4847
COPY ci/docker/linux/tox/update_conan_compiler.py /tmp/update_conan_compiler.py
4948
ARG UV_CACHE_DIR
5049
ARG PIP_DOWNLOAD_CACHE
@@ -54,6 +53,8 @@ RUN --mount=type=bind,source=pyproject.toml,target=pyproject.toml \
5453
--mount=type=bind,source=uv.lock,target=uv.lock \
5554
--mount=type=cache,target=${PIP_DOWNLOAD_CACHE} \
5655
--mount=type=cache,target=${UV_CACHE_DIR} \
56+
--mount=type=bind,source=conanfile.py,target=/tmp/conanfile.py \
57+
--mount=type=bind,source=conan.lock,target=/tmp/conan.lock \
5758
uv run --only-group conan conan profile detect --exist-ok && \
5859
cp ${CONAN_HOME}/global.conf /tmp/global.conf.original && \
5960
echo "core.sources:download_cache = $CONAN_DOWNLOAD_CACHE" >> ${CONAN_HOME}/global.conf && \

0 commit comments

Comments
 (0)