mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-05-03 17:27:47 +00:00
scripts: build modules to tmp directory before copying over to reload
This commit is contained in:
parent
1406549ced
commit
bd8c620e73
1 changed files with 10 additions and 1 deletions
|
@ -5,7 +5,8 @@ file(GLOB SCRIPT_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
|
|||
|
||||
message("exec: ${EXECUTABLE_OUTPUT_PATH}")
|
||||
|
||||
set(SCRIPT_LIB_DIR "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/" )
|
||||
set(SCRIPT_POSTBUILD_DIR "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/")
|
||||
set(SCRIPT_LIB_DIR "${EXECUTABLE_OUTPUT_PATH}/tmp/compiledscripts/" )
|
||||
set(EXECUTABLE_OUTPUT_PATH "${SCRIPT_LIB_DIR}")
|
||||
set(LIBRARY_OUTPUT_PATH "${SCRIPT_LIB_DIR}")
|
||||
set(RUNTIME_OUTPUT_DIRECTORY "${SCRIPT_LIB_DIR}")
|
||||
|
@ -55,15 +56,23 @@ foreach(_scriptDir ${children})
|
|||
|
||||
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/ScriptLoader.cpp.in" "${_scriptDir}/ScriptLoader.cpp")
|
||||
|
||||
set(ScriptTargetName "script_${_name}")
|
||||
|
||||
# Copy the modules over once they're built. Prevent watchdog from trying to reload partially written files.
|
||||
if(MSVC)
|
||||
add_custom_command(TARGET "script_${_name}" POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/script_${_name}.exp"
|
||||
COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/script_${_name}.lib"
|
||||
COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/script_${_name}.ilk"
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different "${SCRIPT_LIB_DIR}/script_${_name}.dll" ${SCRIPT_POSTBUILD_DIR}/${ScriptTargetName}.dll
|
||||
)
|
||||
else()
|
||||
add_custom_command(TARGET "script_${_name}" POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_FILE:${ScriptTargetName}> ${SCRIPT_POSTBUILD_DIR}/
|
||||
)
|
||||
endif()
|
||||
|
||||
unset(ScriptTargetName)
|
||||
unset(ScriptIncludes)
|
||||
unset(ScriptNames)
|
||||
endif()
|
||||
|
|
Loading…
Add table
Reference in a new issue