Skip to content

Commit 3faf72f

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 3faf72f

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

CMakeLists.txt

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,8 @@ file(GLOB_RECURSE SOURCE_FILES
7676
${ark_SOURCE_DIR}/thirdparties/fmt/src/format.cc)
7777

7878
add_library(ArkReactor SHARED ${SOURCE_FILES})
79+
set_target_properties(ArkReactor PROPERTIES
80+
INSTALL_NAME_DIR "@rpath")
7981

8082
if (NOT ARK_EMSCRIPTEN)
8183
enable_lto(ArkReactor)
@@ -181,7 +183,7 @@ endif ()
181183
if (NOT ARK_EMSCRIPTEN)
182184
# Installs the dynamic library file.
183185
install(TARGETS ArkReactor
184-
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
186+
LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR})
185187

186188
# Install header files
187189
install(DIRECTORY ${ark_SOURCE_DIR}/include/
@@ -190,7 +192,7 @@ if (NOT ARK_EMSCRIPTEN)
190192
# Install the standard library
191193
if (NOT ARK_NO_STDLIB)
192194
install(DIRECTORY ${ark_SOURCE_DIR}/lib/std/
193-
DESTINATION ${CMAKE_INSTALL_LIBDIR}/Ark/std
195+
DESTINATION ${CMAKE_INSTALL_LIBDIR}/std
194196
FILES_MATCHING PATTERN "*.ark"
195197
PATTERN "std/tests" EXCLUDE
196198
PATTERN "std/.github" EXCLUDE)
@@ -339,7 +341,10 @@ if (ARK_BUILD_EXE)
339341
endif ()
340342
set_target_properties(arkscript PROPERTIES
341343
VS_DEBUGGER_WORKING_DIRECTORY "${ark_SOURCE_DIR}"
342-
VS_DEBUGGER_COMMAND "$<TARGET_FILE:arkscript>")
344+
VS_DEBUGGER_COMMAND "$<TARGET_FILE:arkscript>"
345+
BUILD_WITH_INSTALL_RPATH ON
346+
INSTALL_RPATH_USE_LINK_PATH ON
347+
INSTALL_RPATH "@executable_path")
343348

344349
enable_lto(arkscript)
345350

0 commit comments

Comments
 (0)