diff --git a/cMake/FreeCAD_Helpers/CopyLibpackDirectories.cmake b/cMake/FreeCAD_Helpers/CopyLibpackDirectories.cmake index baa64eb368..9cab4f3dbd 100644 --- a/cMake/FreeCAD_Helpers/CopyLibpackDirectories.cmake +++ b/cMake/FreeCAD_Helpers/CopyLibpackDirectories.cmake @@ -15,7 +15,9 @@ macro(CopyLibpackDirectories) if(FREECAD_LIBPACK_VERSION VERSION_GREATER_EQUAL "3.0.0") file(COPY ${FREECAD_LIBPACK_DIR}/plugins/tls DESTINATION ${CMAKE_BINARY_DIR}/bin) endif() - file(COPY ${FREECAD_LIBPACK_DIR}/resources DESTINATION ${CMAKE_BINARY_DIR}) + if(FREECAD_LIBPACK_VERSION VERSION_GREATER_EQUAL "3.0.0" AND FREECAD_LIBPACK_VERSION VERSION_LESS "3.1.0") + file(COPY ${FREECAD_LIBPACK_DIR}/resources DESTINATION ${CMAKE_BINARY_DIR}) + endif() message(STATUS "... end copying.\n=======================================\n") endif() @@ -40,7 +42,9 @@ macro(CopyLibpackDirectories) file(COPY ${FREECAD_LIBPACK_DIR}/plugins/imageformats DESTINATION ${CMAKE_BINARY_DIR}/bin) file(COPY ${FREECAD_LIBPACK_DIR}/plugins/platforms DESTINATION ${CMAKE_BINARY_DIR}/bin) file(COPY ${FREECAD_LIBPACK_DIR}/plugins/styles DESTINATION ${CMAKE_BINARY_DIR}/bin) - file(COPY ${FREECAD_LIBPACK_DIR}/resources DESTINATION ${CMAKE_BINARY_DIR}) + if(FREECAD_LIBPACK_VERSION VERSION_LESS "3.1.0") + file(COPY ${FREECAD_LIBPACK_DIR}/resources DESTINATION ${CMAKE_BINARY_DIR}) + endif() file(WRITE ${CMAKE_BINARY_DIR}/bin/qt.conf "[Paths]\nPrefix=..\n") endif() endif() @@ -59,7 +63,9 @@ macro(CopyLibpackDirectories) if(FREECAD_LIBPACK_VERSION VERSION_GREATER_EQUAL "3.0.0") install(DIRECTORY ${FREECAD_LIBPACK_DIR}/plugins/tls DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) endif() - install(DIRECTORY ${FREECAD_LIBPACK_DIR}/resources DESTINATION ${CMAKE_INSTALL_PREFIX}) + if(FREECAD_LIBPACK_VERSION VERSION_LESS "3.1.0") + install(DIRECTORY ${FREECAD_LIBPACK_DIR}/resources DESTINATION ${CMAKE_INSTALL_PREFIX}) + endif() install(DIRECTORY ${FREECAD_LIBPACK_DIR}/bin DESTINATION ${CMAKE_INSTALL_PREFIX}) install(DIRECTORY ${FREECAD_LIBPACK_DIR}/lib DESTINATION ${CMAKE_INSTALL_PREFIX} FILES_MATCHING PATTERN "*.dll") if(FREECAD_LIBPACK_VERSION VERSION_GREATER_EQUAL "3.0.0") diff --git a/cMake/UseLibPack3.cmake b/cMake/UseLibPack3.cmake index 7e760df3c5..bce443a9ed 100644 --- a/cMake/UseLibPack3.cmake +++ b/cMake/UseLibPack3.cmake @@ -15,11 +15,17 @@ set(SWIG_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/swig.exe CACHE FILEPATH "Swig" FO find_package(Qt6 REQUIRED PATHS ${FREECAD_LIBPACK_DIR}/lib/cmake NO_DEFAULT_PATH) message(STATUS "Found LibPack 3 Qt ${Qt6_VERSION}") +if(FREECAD_LIBPACK_VERSION VERSION_GREATER_EQUAL "3.1.0") + find_package(pybind11 REQUIRED PATHS ${FREECAD_LIBPACK_DIR}/share/cmake/pybind11 NO_DEFAULT_PATH) + message(STATUS "Found LibPack 3 pybind11 ${pybind11_VERSION}") + set(FREECAD_USE_PYBIND11 ON) +endif() + find_package(XercesC REQUIRED PATHS ${FREECAD_LIBPACK_DIR}/cmake NO_DEFAULT_PATH) message(STATUS "Found LibPack 3 XercesC ${XercesC_VERSION}") find_package(yaml-cpp REQUIRED PATHS ${FREECAD_LIBPACK_DIR}/lib/cmake NO_DEFAULT_PATH) -message(STATUS "Found LibPack 3 yaml-cpp ${XercesC_VERSION}") +message(STATUS "Found LibPack 3 yaml-cpp ${yaml-cpp_VERSION}") find_package(Coin REQUIRED PATHS ${FREECAD_LIBPACK_DIR}/lib/cmake NO_DEFAULT_PATH) message(STATUS "Found LibPack 3 Coin ${Coin_VERSION}") diff --git a/src/Mod/MeshPart/App/CMakeLists.txt b/src/Mod/MeshPart/App/CMakeLists.txt index d78fc8a197..05a7b5c29e 100644 --- a/src/Mod/MeshPart/App/CMakeLists.txt +++ b/src/Mod/MeshPart/App/CMakeLists.txt @@ -114,7 +114,8 @@ if (BUILD_FLAT_MESH) SET_BIN_DIR(flatmesh flatmesh /Mod/MeshPart) install(TARGETS flatmesh DESTINATION ${CMAKE_INSTALL_LIBDIR}) else() - if(NOT FREECAD_LIBPACK_USE OR FREECAD_LIBPACK_CHECKFILE_CLBUNDLER OR FREECAD_LIBPACK_CHECKFILE_VERSION) + if(NOT FREECAD_LIBPACK_USE OR FREECAD_LIBPACK_CHECKFILE_CLBUNDLER OR + (FREECAD_LIBPACK_CHECKFILE_VERSION AND FREECAD_LIBPACK_VERSION VERSION_LESS "3.1.0")) # boost-python >= 1.67 on some platforms has suffix if (FORCE_BOOST_PY_SUFFIX) set(BOOST_PY_SUFFIX ${FORCE_BOOST_PY_SUFFIX})