Files
macports-ports/graphics/libfive/files/patch-use-macports-guile.diff
Szabolcs HorvátandRenee Otten a99e669752 libfive: update to 20241103
- Fixes build on recent macOS at the cost of breaking it on 10.14 and earlier
 - Use Guile 3.0
 - Add support for recent Python versions
 - Use Python 3.12 by default

Closes https://trac.macports.org/ticket/63664
2024-11-06 08:55:55 -05:00

43 lines
2.1 KiB
Diff

Make sure that MacPorts's Guile 3.0 is used, with the customized executable names.
--- CMakeLists.txt
+++ CMakeLists.txt
@@ -94,9 +94,11 @@ if(NOT MSVC)
find_package(Boost REQUIRED)
find_package(PkgConfig REQUIRED)
- pkg_check_modules(GUILE guile-2.2>=2.2.1)
- if (NOT(GUILE_FOUND))
- pkg_check_modules(GUILE guile-3.0>=3.0.0)
+ pkg_check_modules(GUILE guile-3.0>=3.0.0)
+
+ if (GUILE_FOUND)
+ pkg_get_variable(GUILE_EXEC guile-3.0 guile)
+ pkg_get_variable(GUILD_EXEC guile-3.0 guild)
endif()
pkg_check_modules(EIGEN REQUIRED eigen3>=3.2.92)
--- libfive/bind/guile/CMakeLists.txt
+++ libfive/bind/guile/CMakeLists.txt
@@ -28,10 +28,10 @@ foreach(SRC ${SRCS})
#
# Then, copy the file from Guile's compilation cache to the build directory
execute_process(
- COMMAND guile -c "(use-modules (system base compile))(format #t \"~A\" (compiled-file-name \"${FULL_SRC}\"))"
+ COMMAND ${GUILE_EXEC} -c "(use-modules (system base compile))(format #t \"~A\" (compiled-file-name \"${FULL_SRC}\"))"
OUTPUT_VARIABLE CCACHE_FILE)
add_custom_command(OUTPUT ${OUT}
- COMMAND ${CMAKE_COMMAND} -E env LIBFIVE_FRAMEWORK_DIR=$<TARGET_FILE_DIR:libfive>/ LIBFIVE_STDLIB_DIR=$<TARGET_FILE_DIR:libfive-stdlib>/ guild compile -L${CMAKE_CURRENT_SOURCE_DIR} ${FULL_SRC}
+ COMMAND ${CMAKE_COMMAND} -E env LIBFIVE_FRAMEWORK_DIR=$<TARGET_FILE_DIR:libfive>/ LIBFIVE_STDLIB_DIR=$<TARGET_FILE_DIR:libfive-stdlib>/ ${GUILD_EXEC} compile -L${CMAKE_CURRENT_SOURCE_DIR} ${FULL_SRC}
COMMAND ${CMAKE_COMMAND} -E copy ${CCACHE_FILE} ${CMAKE_CURRENT_BINARY_DIR}/${OUT}
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
DEPENDS ${FULL_SRC} libfive libfive-stdlib)
@@ -45,7 +45,7 @@ if(UNIX)
# Find the installation directory for compiled files
if (NOT DEFINED GUILE_CCACHE_DIR)
execute_process(
- COMMAND guile -c "(format #t \"~A\" (%site-ccache-dir))"
+ COMMAND ${GUILE_EXEC} -c "(format #t \"~A\" (%site-ccache-dir))"
OUTPUT_VARIABLE GUILE_CCACHE_DIR)
endif()