From 37e09e148f09f4c65d36b6406bbadeb9ed040b8a Mon Sep 17 00:00:00 2001 From: Michael Schlottke-Lakemper Date: Sun, 31 Dec 2023 14:23:32 +0100 Subject: [PATCH] OpenFHE: fix library install directory in CMake (#7880) * OpenFHE: fix library path in CMakeTargets file * Properly fix the library install dir in upstream sources --- O/OpenFHE/build_tarballs.jl | 6 +++ .../patches/windows-fix-cmake-libdir.patch | 39 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 O/OpenFHE/bundled/patches/windows-fix-cmake-libdir.patch diff --git a/O/OpenFHE/build_tarballs.jl b/O/OpenFHE/build_tarballs.jl index 2c3db6afe93..e71b487c731 100644 --- a/O/OpenFHE/build_tarballs.jl +++ b/O/OpenFHE/build_tarballs.jl @@ -16,10 +16,16 @@ sources = [ script = raw""" cd $WORKSPACE/srcdir/openfhe-development/ +# Add missing `` header to avoid disambiguities in macOS builds if [[ "${target}" == *-apple* ]]; then atomic_patch -p1 "${WORKSPACE}/srcdir/patches/macos-include-cmath.patch" fi +# Set proper install directories for libraries on Windows +if [[ "${target}" == *-mingw* ]]; then + atomic_patch -p1 "${WORKSPACE}/srcdir/patches/windows-fix-cmake-libdir.patch" +fi + mkdir build && cd build cmake .. \ diff --git a/O/OpenFHE/bundled/patches/windows-fix-cmake-libdir.patch b/O/OpenFHE/bundled/patches/windows-fix-cmake-libdir.patch new file mode 100644 index 00000000000..24a793e7072 --- /dev/null +++ b/O/OpenFHE/bundled/patches/windows-fix-cmake-libdir.patch @@ -0,0 +1,39 @@ +--- a/src/binfhe/CMakeLists.txt ++++ b/src/binfhe/CMakeLists.txt +@@ -26,7 +26,9 @@ if ( BUILD_SHARED ) + set_property(TARGET OPENFHEbinfhe PROPERTY RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) + install(TARGETS OPENFHEbinfhe + EXPORT OpenFHETargets +- DESTINATION lib) ++ RUNTIME DESTINATION bin ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) + endif() + + if( BUILD_STATIC ) +--- a/src/core/CMakeLists.txt ++++ b/src/core/CMakeLists.txt +@@ -28,7 +28,9 @@ if ( BUILD_SHARED ) + set_property(TARGET OPENFHEcore PROPERTY RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) + install(TARGETS OPENFHEcore + EXPORT OpenFHETargets +- DESTINATION lib) ++ RUNTIME DESTINATION bin ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) + endif() + + +--- a/src/pke/CMakeLists.txt ++++ b/src/pke/CMakeLists.txt +@@ -26,7 +26,9 @@ if( BUILD_SHARED ) + set_property(TARGET OPENFHEpke PROPERTY RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) + install(TARGETS OPENFHEpke + EXPORT OpenFHETargets +- DESTINATION lib) ++ RUNTIME DESTINATION bin ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) + endif() + + if( BUILD_STATIC )