Hi Stefano, Le 2024-11-19 23:00, stefa...@debian.org a écrit :
Hi pini (2024.11.19_21:37:51_+0000)I've committed it to git. But I'll team-upload it without the h5vol part, as I also have a low confidence in it.No, I spoke too soon. Autopkgtest fails: The 3.13 library seems to have been built as if it was for 3.12. I'll look deeper tomorrow.
You're right: the 3.13 library was built using part of the 3.12 config (include path):
[309/344] /usr/bin/c++ -DADIOS2_PYTHON_MODULE_NAME=adios2_bindings_serial -Dadios2_py3_13_EXPORTS -I/build/adios2-4h5QNS/adios2-2.10.1+dfsg1/bindings/CXX11 -I/build/adios2-4h5QNS/adios2-2.10.1+dfsg1/source -I/build/adios2-4h5QNS/adios2-2.10.1+dfsg1/build-serial/source -isystem /usr/include/python3.12 -g -O2 -ffile-prefix-map=/build/adios2-4h5QNS/adios2-2.10.1+dfsg1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++11 -fPIC -fvisibility=hidden -MD -MT bindings/Python3.13/Python/CMakeFiles/adios2_py3.13.dir/py11ADIOS.cpp.o -MF bindings/Python3.13/Python/CMakeFiles/adios2_py3.13.dir/py11ADIOS.cpp.o.d -o bindings/Python3.13/Python/CMakeFiles/adios2_py3.13.dir/py11ADIOS.cpp.o -c /build/adios2-4h5QNS/adios2-2.10.1+dfsg1/build-serial/build_source/bindings/Python3.13/Python/py11ADIOS.cpp
Here is an improved patch proposal. Best, _g.
diff -Nru adios2-2.10.1+dfsg1/debian/changelog adios2-2.10.1+dfsg1/debian/changelog --- adios2-2.10.1+dfsg1/debian/changelog 2024-10-12 20:20:05.000000000 +0200 +++ adios2-2.10.1+dfsg1/debian/changelog 2024-11-17 13:57:53.000000000 +0100 @@ -1,3 +1,16 @@ +adios2 (2.10.1+dfsg1-12.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Fix patch multiple_python_versions.patch so that the corresponding + Python interpreter is used for each Python release we build against + (closes: #1086088) + * New patch fix_h5vol_library.patch: set suffix and version for h5vol + library + * Install h5vol library into auxiliary packages (fix FTBFS at + dh_missing step) + + -- Gilles Filippini <p...@debian.org> Sun, 17 Nov 2024 13:57:53 +0100 + adios2 (2.10.1+dfsg1-12) unstable; urgency=medium * adios2 cmake config files check if plugin files are installed, so diff -Nru adios2-2.10.1+dfsg1/debian/libadios2-mpi-auxiliary-2.10.install adios2-2.10.1+dfsg1/debian/libadios2-mpi-auxiliary-2.10.install --- adios2-2.10.1+dfsg1/debian/libadios2-mpi-auxiliary-2.10.install 2024-10-12 20:20:05.000000000 +0200 +++ adios2-2.10.1+dfsg1/debian/libadios2-mpi-auxiliary-2.10.install 2024-11-17 13:57:53.000000000 +0100 @@ -1,5 +1,5 @@ #!/bin/sh -for l in atl dill ffs evpath perfstubs; do +for l in atl dill ffs evpath perfstubs h5vol; do echo install-mpi/usr/lib/${DEB_HOST_GNU_TYPE}/libadios2_mpi_${l}.so.* usr/lib/${DEB_HOST_GNU_TYPE} done diff -Nru adios2-2.10.1+dfsg1/debian/libadios2-mpi-auxiliary-dev.install adios2-2.10.1+dfsg1/debian/libadios2-mpi-auxiliary-dev.install --- adios2-2.10.1+dfsg1/debian/libadios2-mpi-auxiliary-dev.install 2024-10-12 20:20:05.000000000 +0200 +++ adios2-2.10.1+dfsg1/debian/libadios2-mpi-auxiliary-dev.install 2024-11-17 13:57:53.000000000 +0100 @@ -1,5 +1,5 @@ #!/bin/sh -for l in atl dill ffs evpath perfstubs; do +for l in atl dill ffs evpath perfstubs h5vol; do echo install-mpi/usr/lib/${DEB_HOST_GNU_TYPE}/libadios2_mpi_${l}.so usr/lib/${DEB_HOST_GNU_TYPE} done echo install-mpi/usr/lib/${DEB_HOST_GNU_TYPE}/cmake/adios2/mpi/thirdparty usr/lib/${DEB_HOST_GNU_TYPE}/cmake/adios2/mpi diff -Nru adios2-2.10.1+dfsg1/debian/libadios2-serial-auxiliary-2.10.install adios2-2.10.1+dfsg1/debian/libadios2-serial-auxiliary-2.10.install --- adios2-2.10.1+dfsg1/debian/libadios2-serial-auxiliary-2.10.install 2024-10-12 20:20:05.000000000 +0200 +++ adios2-2.10.1+dfsg1/debian/libadios2-serial-auxiliary-2.10.install 2024-11-17 13:57:53.000000000 +0100 @@ -1,5 +1,5 @@ #!/bin/sh -for l in atl dill ffs evpath perfstubs; do +for l in atl dill ffs evpath perfstubs h5vol; do echo install-serial/usr/lib/${DEB_HOST_GNU_TYPE}/libadios2_serial_${l}.so.* usr/lib/${DEB_HOST_GNU_TYPE} done diff -Nru adios2-2.10.1+dfsg1/debian/libadios2-serial-auxiliary-dev.install adios2-2.10.1+dfsg1/debian/libadios2-serial-auxiliary-dev.install --- adios2-2.10.1+dfsg1/debian/libadios2-serial-auxiliary-dev.install 2024-10-12 20:20:05.000000000 +0200 +++ adios2-2.10.1+dfsg1/debian/libadios2-serial-auxiliary-dev.install 2024-11-17 13:57:53.000000000 +0100 @@ -1,5 +1,5 @@ #!/bin/sh -for l in atl dill ffs evpath perfstubs; do +for l in atl dill ffs evpath perfstubs h5vol; do echo install-serial/usr/lib/${DEB_HOST_GNU_TYPE}/libadios2_serial_${l}.so usr/lib/${DEB_HOST_GNU_TYPE} done echo install-serial/usr/lib/${DEB_HOST_GNU_TYPE}/cmake/adios2/serial/thirdparty usr/lib/${DEB_HOST_GNU_TYPE}/cmake/adios2/serial diff -Nru adios2-2.10.1+dfsg1/debian/patches/fix_h5vol_library.patch adios2-2.10.1+dfsg1/debian/patches/fix_h5vol_library.patch --- adios2-2.10.1+dfsg1/debian/patches/fix_h5vol_library.patch 1970-01-01 01:00:00.000000000 +0100 +++ adios2-2.10.1+dfsg1/debian/patches/fix_h5vol_library.patch 2024-11-17 13:57:53.000000000 +0100 @@ -0,0 +1,18 @@ +Index: adios2/source/h5vol/CMakeLists.txt +=================================================================== +--- adios2.orig/source/h5vol/CMakeLists.txt ++++ adios2/source/h5vol/CMakeLists.txt +@@ -43,6 +43,13 @@ else() + target_link_libraries(adios2_h5vol PRIVATE adios2::c) + endif() + ++# Set library version information ++set_target_properties(adios2_h5vol PROPERTIES ++ OUTPUT_NAME adios2${ADIOS2_LIBRARY_SUFFIX}_h5vol ++ VERSION ${ADIOS2_LIBRARY_VERSION} ++ SOVERSION ${ADIOS2_LIBRARY_SOVERSION} ++) ++ + # VOL install should only contain the .so and no headers + install(TARGETS adios2_h5vol + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} diff -Nru adios2-2.10.1+dfsg1/debian/patches/multiple_python_versions.patch adios2-2.10.1+dfsg1/debian/patches/multiple_python_versions.patch --- adios2-2.10.1+dfsg1/debian/patches/multiple_python_versions.patch 2024-10-12 20:20:05.000000000 +0200 +++ adios2-2.10.1+dfsg1/debian/patches/multiple_python_versions.patch 2024-11-17 13:57:53.000000000 +0100 @@ -1,7 +1,7 @@ -Index: adios2/bindings/CMakeLists.txt +Index: adios2-2.10.1+dfsg1/bindings/CMakeLists.txt =================================================================== ---- adios2.orig/bindings/CMakeLists.txt 2024-09-07 10:34:14.068238876 +0200 -+++ adios2/bindings/CMakeLists.txt 2024-09-07 10:34:14.064238838 +0200 +--- adios2-2.10.1+dfsg1.orig/bindings/CMakeLists.txt ++++ adios2-2.10.1+dfsg1/bindings/CMakeLists.txt @@ -3,8 +3,19 @@ # accompanying file Copyright.txt for details. #------------------------------------------------------------------------------# @@ -24,15 +24,16 @@ endif() if(ADIOS2_HAVE_Fortran) -Index: adios2/bindings/Python/CMakeLists.txt +Index: adios2-2.10.1+dfsg1/bindings/Python/CMakeLists.txt =================================================================== ---- adios2.orig/bindings/Python/CMakeLists.txt 2024-09-07 10:34:14.068238876 +0200 -+++ adios2/bindings/Python/CMakeLists.txt 2024-09-07 10:35:00.572674138 +0200 -@@ -1,4 +1,11 @@ +--- adios2-2.10.1+dfsg1.orig/bindings/Python/CMakeLists.txt ++++ adios2-2.10.1+dfsg1/bindings/Python/CMakeLists.txt +@@ -1,4 +1,12 @@ -Python_add_library(adios2_py MODULE +# If a specific Python version should be used, it will be defined in ADIOS2_Python_Version.txt +if(EXISTS ${CMAKE_CURRENT_LIST_DIR}/ADIOS2_Python_Version.txt) + file(READ ${CMAKE_CURRENT_LIST_DIR}/ADIOS2_Python_Version.txt PYVER) ++ include(${PROJECT_SOURCE_DIR}/cmake/DetectPythonOptions.cmake) +endif() + +include(${PROJECT_SOURCE_DIR}/cmake/ADIOSFunctions.cmake) @@ -41,7 +42,7 @@ WITH_SOABI py11ADIOS.cpp py11IO.cpp -@@ -9,9 +16,9 @@ +@@ -9,9 +17,9 @@ Python_add_library(adios2_py MODULE py11Query.cpp py11glue.cpp ) @@ -53,7 +54,7 @@ py11ADIOSMPI.cpp py11IOMPI.cpp ) -@@ -23,7 +30,7 @@ +@@ -23,7 +31,7 @@ else() set(maybe_adios2_core_mpi) set(maybe_mpi4py) endif() @@ -62,7 +63,7 @@ ${maybe_adios2_cxx11_mpi} adios2_cxx11 ${maybe_adios2_core_mpi} adios2_core adios2::thirdparty::pybind11 -@@ -35,7 +42,7 @@ +@@ -35,7 +43,7 @@ configure_file( @ONLY ) @@ -71,7 +72,7 @@ CXX_VISIBILITY_PRESET hidden OUTPUT_NAME adios2_bindings${ADIOS2_LIBRARY_SUFFIX} ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_PYTHON_OUTPUT_DIRECTORY}/adios2/bindings -@@ -52,14 +59,14 @@ +@@ -52,14 +60,14 @@ endif() string(REGEX REPLACE "[^/]+" ".." relative_base "${install_location}/bindings") if(CMAKE_SYSTEM_NAME MATCHES "Linux") @@ -89,10 +90,10 @@ ) install(FILES ${CMAKE_PYTHON_OUTPUT_DIRECTORY}/adios2/bindings/__init__.py DESTINATION ${install_location}/bindings -Index: adios2/cmake/DetectPythonOptions.cmake +Index: adios2-2.10.1+dfsg1/cmake/DetectPythonOptions.cmake =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ adios2/cmake/DetectPythonOptions.cmake 2024-09-07 10:34:14.064238838 +0200 +--- /dev/null ++++ adios2-2.10.1+dfsg1/cmake/DetectPythonOptions.cmake @@ -0,0 +1,89 @@ +#------------------------------------------------------------------------------# +# Distributed under the OSI-approved Apache License, Version 2.0. See @@ -183,11 +184,11 @@ + ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_PYTHONDIR} + ) +endif() -Index: adios2/cmake/DetectOptions.cmake +Index: adios2-2.10.1+dfsg1/cmake/DetectOptions.cmake =================================================================== ---- adios2.orig/cmake/DetectOptions.cmake 2024-09-07 10:34:14.068238876 +0200 -+++ adios2/cmake/DetectOptions.cmake 2024-09-07 10:34:14.064238838 +0200 -@@ -393,53 +393,53 @@ +--- adios2-2.10.1+dfsg1.orig/cmake/DetectOptions.cmake ++++ adios2-2.10.1+dfsg1/cmake/DetectOptions.cmake +@@ -393,53 +393,53 @@ if(NOT SHARED_LIBS_SUPPORTED) endif() endif() @@ -286,11 +287,11 @@ # Sst if(ADIOS2_USE_SST AND NOT WIN32) -Index: adios2/testing/adios2/engine/CMakeLists.txt +Index: adios2-2.10.1+dfsg1/testing/adios2/engine/CMakeLists.txt =================================================================== ---- adios2.orig/testing/adios2/engine/CMakeLists.txt 2024-09-07 10:34:14.068238876 +0200 -+++ adios2/testing/adios2/engine/CMakeLists.txt 2024-09-07 10:34:14.064238838 +0200 -@@ -13,7 +13,9 @@ +--- adios2-2.10.1+dfsg1.orig/testing/adios2/engine/CMakeLists.txt ++++ adios2-2.10.1+dfsg1/testing/adios2/engine/CMakeLists.txt +@@ -13,7 +13,9 @@ if(ADIOS2_HAVE_HDF5) add_subdirectory(hdf5) endif() @@ -301,10 +302,10 @@ add_subdirectory(dataman) endif() -Index: adios2/testing/adios2/bindings/CMakeLists.txt +Index: adios2-2.10.1+dfsg1/testing/adios2/bindings/CMakeLists.txt =================================================================== ---- adios2.orig/testing/adios2/bindings/CMakeLists.txt 2024-09-07 10:34:14.068238876 +0200 -+++ adios2/testing/adios2/bindings/CMakeLists.txt 2024-09-07 10:34:14.064238838 +0200 +--- adios2-2.10.1+dfsg1.orig/testing/adios2/bindings/CMakeLists.txt ++++ adios2-2.10.1+dfsg1/testing/adios2/bindings/CMakeLists.txt @@ -3,7 +3,9 @@ # accompanying file Copyright.txt for details. #------------------------------------------------------------------------------# @@ -316,24 +317,23 @@ add_subdirectory(python) endif() -Index: adios2/CMakeLists.txt +Index: adios2-2.10.1+dfsg1/CMakeLists.txt =================================================================== ---- adios2.orig/CMakeLists.txt 2024-09-07 10:34:14.068238876 +0200 -+++ adios2/CMakeLists.txt 2024-09-07 10:34:14.064238838 +0200 -@@ -192,6 +192,12 @@ - mark_as_advanced(ADIOS2_Blosc2_PREFER_SHARED) +--- adios2-2.10.1+dfsg1.orig/CMakeLists.txt ++++ adios2-2.10.1+dfsg1/CMakeLists.txt +@@ -193,6 +193,11 @@ mark_as_advanced(ADIOS2_Blosc2_PREFER_SH mark_as_advanced(ADIOS2_USE_PIP) include(${PROJECT_SOURCE_DIR}/cmake/DetectOptions.cmake) -+include(${PROJECT_SOURCE_DIR}/cmake/DetectPythonOptions.cmake) -+ + +if(ADIOS2_Python_Version) + # use the last Python version in the list to run tests + list(GET ADIOS2_Python_Version -1 ADIOS2_Python_Default_Test) +endif() - ++ if(ADIOS2_HAVE_CUDA OR ADIOS2_HAVE_Kokkos_CUDA) set(CMAKE_CUDA_STANDARD 11) -@@ -421,6 +427,8 @@ + set(CMAKE_CUDA_STANDARD_REQUIRED TRUE) +@@ -421,6 +426,8 @@ message(" include: ${CMAKE_INSTALL_IN message(" cmake: ${CMAKE_INSTALL_CMAKEDIR}") if(DEFINED CMAKE_INSTALL_PYTHONDIR) message(" python: ${CMAKE_INSTALL_PYTHONDIR}") @@ -342,11 +342,11 @@ endif() message("") message(" Features:") -Index: adios2/thirdparty/CMakeLists.txt +Index: adios2-2.10.1+dfsg1/thirdparty/CMakeLists.txt =================================================================== ---- adios2.orig/thirdparty/CMakeLists.txt 2024-09-07 10:34:14.068238876 +0200 -+++ adios2/thirdparty/CMakeLists.txt 2024-09-07 10:34:14.064238838 +0200 -@@ -48,7 +48,7 @@ +--- adios2-2.10.1+dfsg1.orig/thirdparty/CMakeLists.txt ++++ adios2-2.10.1+dfsg1/thirdparty/CMakeLists.txt +@@ -48,7 +48,7 @@ if(BUILD_TESTING) endif() endif() diff -Nru adios2-2.10.1+dfsg1/debian/patches/series adios2-2.10.1+dfsg1/debian/patches/series --- adios2-2.10.1+dfsg1/debian/patches/series 2024-10-12 20:20:05.000000000 +0200 +++ adios2-2.10.1+dfsg1/debian/patches/series 2024-11-17 13:57:53.000000000 +0100 @@ -12,3 +12,4 @@ fix_cmake_dill_ffi.patch fix_examples_cmake.patch fix_example_hello_bpFWriteCRead_PR4239.patch +fix_h5vol_library.patch
signature.asc
Description: OpenPGP digital signature