Skip to content

Commit 7dddb1e

Browse files
committed
fix(cmake): add rpath properties for installation, and fix where libArkReactor.dylib should be installed (alongside the executable)
1 parent b1e9674 commit 7dddb1e

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

CMakeLists.txt

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -181,16 +181,23 @@ endif ()
181181
if (NOT ARK_EMSCRIPTEN)
182182
# Installs the dynamic library file.
183183
install(TARGETS ArkReactor
184-
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
184+
LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR})
185185

186186
# Install header files
187187
install(DIRECTORY ${ark_SOURCE_DIR}/include/
188188
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
189189

190190
# Install the standard library
191191
if (NOT ARK_NO_STDLIB)
192+
if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
193+
set(ARK_STD_INSTALL_PATH ${CMAKE_INSTALL_LIBDIR}/Ark/std)
194+
else ()
195+
# custom installation prefix, no need for lib/Ark/std, use lib/std instead
196+
set(ARK_STD_INSTALL_PATH ${CMAKE_INSTALL_LIBDIR}/std)
197+
endif ()
198+
192199
install(DIRECTORY ${ark_SOURCE_DIR}/lib/std/
193-
DESTINATION ${CMAKE_INSTALL_LIBDIR}/Ark/std
200+
DESTINATION ${ARK_STD_INSTALL_PATH}
194201
FILES_MATCHING PATTERN "*.ark"
195202
PATTERN "std/tests" EXCLUDE
196203
PATTERN "std/.github" EXCLUDE)
@@ -339,7 +346,10 @@ if (ARK_BUILD_EXE)
339346
endif ()
340347
set_target_properties(arkscript PROPERTIES
341348
VS_DEBUGGER_WORKING_DIRECTORY "${ark_SOURCE_DIR}"
342-
VS_DEBUGGER_COMMAND "$<TARGET_FILE:arkscript>")
349+
VS_DEBUGGER_COMMAND "$<TARGET_FILE:arkscript>"
350+
BUILD_WITH_INSTALL_RPATH ON
351+
INSTALL_RPATH_USE_LINK_PATH ON
352+
INSTALL_RPATH "@executable_path")
343353

344354
enable_lto(arkscript)
345355

0 commit comments

Comments
 (0)