aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt16
1 files changed, 8 insertions, 8 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b4921ce..5046a00 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,18 +1,18 @@
cmake_minimum_required(VERSION 3.16)
project(montis LANGUAGES C)
-option(MONTIS_BUILD_BUNDLED_SOUL "Build the bundled Haskell soul (montis.so)" ON)
+option(MONTIS_BUILD_BUNDLED_WORLD "Build the bundled Haskell world (montis.so)" ON)
if(DEFINED MONTIS_BUILD_BUNDLED_PLUGIN)
- set(MONTIS_BUILD_BUNDLED_SOUL "${MONTIS_BUILD_BUNDLED_PLUGIN}")
+ set(MONTIS_BUILD_BUNDLED_WORLD "${MONTIS_BUILD_BUNDLED_PLUGIN}")
endif()
add_subdirectory(ark)
add_subdirectory(cross)
-if(MONTIS_BUILD_BUNDLED_SOUL)
+if(MONTIS_BUILD_BUNDLED_WORLD)
add_custom_target(
- soul_build ALL
+ world_build ALL
COMMAND sh -c "if [ -d \"$1\" ] && [ ! -L \"$1\" ]; then rm -rf \"$2\"; mv \"$1\" \"$2\"; fi" sh "${CMAKE_SOURCE_DIR}/montis/.stack-work" "${CMAKE_BINARY_DIR}/stack-work"
COMMAND "${CMAKE_COMMAND}" -E make_directory "${CMAKE_BINARY_DIR}/stack-work"
COMMAND "${CMAKE_COMMAND}" -E create_symlink "${CMAKE_BINARY_DIR}/stack-work" "${CMAKE_SOURCE_DIR}/montis/.stack-work"
@@ -20,14 +20,14 @@ if(MONTIS_BUILD_BUNDLED_SOUL)
# Not sure why stack is generating an a.out file, but remove it.
COMMAND "${CMAKE_COMMAND}" -E rm -f "${CMAKE_SOURCE_DIR}/montis/a.out"
DEPENDS ark cross
- COMMENT "Building bundled Haskell soul with Stack"
+ COMMENT "Building bundled Haskell world with Stack"
VERBATIM
)
add_custom_target(
run
- COMMAND sh -c "SOUL_SO=$(find '${CMAKE_BINARY_DIR}/stack-work' -name montis.so -type f | head -n 1); if [ -z \"$SOUL_SO\" ]; then echo 'montis.so not found in ${CMAKE_BINARY_DIR}/stack-work' 1>&2; exit 1; fi; \"$<TARGET_FILE:ark>\" -s foot -p \"$SOUL_SO\""
- DEPENDS ark soul_build
+ COMMAND sh -c "WORLD_SO=$(find '${CMAKE_BINARY_DIR}/stack-work' -name montis.so -type f | head -n 1); if [ -z \"$WORLD_SO\" ]; then echo 'montis.so not found in ${CMAKE_BINARY_DIR}/stack-work' 1>&2; exit 1; fi; \"$<TARGET_FILE:ark>\" -s foot -p \"$WORLD_SO\""
+ DEPENDS ark world_build
USES_TERMINAL
VERBATIM
)
@@ -36,7 +36,7 @@ endif()
install(TARGETS ark RUNTIME DESTINATION bin)
-if(MONTIS_BUILD_BUNDLED_SOUL)
+if(MONTIS_BUILD_BUNDLED_WORLD)
install(CODE [[
execute_process(
COMMAND sh -c "find '${CMAKE_BINARY_DIR}/stack-work' -name montis.so -type f | head -n 1"