mirror of https://github.com/bjornbytes/lovr.git
CMake: always move libraries;
Instead of only moving them when lovr is rebuilt. That way plugins get moved into bin when their source changes.
This commit is contained in:
parent
aa929482cd
commit
7605d0b04e
|
@ -321,7 +321,6 @@ if(NOT LOVR_BUILD_EXE)
|
||||||
target_compile_definitions(lovr PUBLIC LOVR_OMIT_MAIN) # specifically for win32 WinMain
|
target_compile_definitions(lovr PUBLIC LOVR_OMIT_MAIN) # specifically for win32 WinMain
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
set_target_properties(lovr PROPERTIES C_VISIBILITY_PRESET ${LOVR_SYMBOL_VISIBILITY})
|
set_target_properties(lovr PROPERTIES C_VISIBILITY_PRESET ${LOVR_SYMBOL_VISIBILITY})
|
||||||
set_target_properties(lovr PROPERTIES C_STANDARD 11)
|
set_target_properties(lovr PROPERTIES C_STANDARD 11)
|
||||||
set_target_properties(lovr PROPERTIES C_STANDARD_REQUIRED ON)
|
set_target_properties(lovr PROPERTIES C_STANDARD_REQUIRED ON)
|
||||||
|
@ -539,6 +538,9 @@ foreach(path ${LOVR_RESOURCES})
|
||||||
file(WRITE ${output} "const unsigned char ${identifier}[] = {${data}};\nconst unsigned int ${identifier}_len = sizeof(${identifier});\n")
|
file(WRITE ${output} "const unsigned char ${identifier}[] = {${data}};\nconst unsigned int ${identifier}_len = sizeof(${identifier});\n")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
|
# Add a custom target that is always out of date so libraries are always moved
|
||||||
|
add_custom_target(move_libraries ALL)
|
||||||
|
|
||||||
# Platforms
|
# Platforms
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
target_sources(lovr PRIVATE src/core/os_win32.c)
|
target_sources(lovr PRIVATE src/core/os_win32.c)
|
||||||
|
@ -561,7 +563,7 @@ if(WIN32)
|
||||||
|
|
||||||
function(move_dll)
|
function(move_dll)
|
||||||
if(TARGET ${ARGV0})
|
if(TARGET ${ARGV0})
|
||||||
add_custom_command(TARGET lovr POST_BUILD
|
add_custom_command(TARGET move_libraries POST_BUILD
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
$<TARGET_FILE:${ARGV0}>
|
$<TARGET_FILE:${ARGV0}>
|
||||||
$<TARGET_FILE_DIR:lovr>/$<TARGET_FILE_NAME:${ARGV0}>
|
$<TARGET_FILE_DIR:lovr>/$<TARGET_FILE_NAME:${ARGV0}>
|
||||||
|
@ -606,13 +608,13 @@ elseif(APPLE)
|
||||||
if(TARGET ${ARGV0})
|
if(TARGET ${ARGV0})
|
||||||
get_target_property(TARGET_TYPE ${ARGV0} TYPE)
|
get_target_property(TARGET_TYPE ${ARGV0} TYPE)
|
||||||
if(${TARGET_TYPE} STREQUAL "MODULE_LIBRARY")
|
if(${TARGET_TYPE} STREQUAL "MODULE_LIBRARY")
|
||||||
add_custom_command(TARGET lovr POST_BUILD
|
add_custom_command(TARGET move_libraries POST_BUILD
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
$<TARGET_FILE:${ARGV0}>
|
$<TARGET_FILE:${ARGV0}>
|
||||||
${EXE_DIR}/$<TARGET_FILE_NAME:${ARGV0}>
|
${EXE_DIR}/$<TARGET_FILE_NAME:${ARGV0}>
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
add_custom_command(TARGET lovr POST_BUILD
|
add_custom_command(TARGET move_libraries POST_BUILD
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
$<TARGET_SONAME_FILE:${ARGV0}>
|
$<TARGET_SONAME_FILE:${ARGV0}>
|
||||||
${EXE_DIR}/$<TARGET_SONAME_FILE_NAME:${ARGV0}>
|
${EXE_DIR}/$<TARGET_SONAME_FILE_NAME:${ARGV0}>
|
||||||
|
@ -720,12 +722,13 @@ elseif(ANDROID)
|
||||||
|
|
||||||
# Copy plugin libraries to lib folder before packaging APK
|
# Copy plugin libraries to lib folder before packaging APK
|
||||||
foreach(target ${ALL_PLUGIN_TARGETS})
|
foreach(target ${ALL_PLUGIN_TARGETS})
|
||||||
add_custom_command(TARGET lovr POST_BUILD
|
add_custom_command(TARGET move_libraries POST_BUILD
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
$<TARGET_FILE:${target}>
|
$<TARGET_FILE:${target}>
|
||||||
raw/lib/${ANDROID_ABI}/$<TARGET_FILE_NAME:${target}>
|
raw/lib/${ANDROID_ABI}/$<TARGET_FILE_NAME:${target}>
|
||||||
)
|
)
|
||||||
endforeach()
|
endforeach()
|
||||||
|
add_dependencies(buildAPK move_libraries)
|
||||||
endif()
|
endif()
|
||||||
elseif(UNIX)
|
elseif(UNIX)
|
||||||
if(LOVR_USE_LINUX_EGL)
|
if(LOVR_USE_LINUX_EGL)
|
||||||
|
@ -744,13 +747,13 @@ elseif(UNIX)
|
||||||
if(TARGET ${ARGV0})
|
if(TARGET ${ARGV0})
|
||||||
get_target_property(TARGET_TYPE ${ARGV0} TYPE)
|
get_target_property(TARGET_TYPE ${ARGV0} TYPE)
|
||||||
if(${TARGET_TYPE} STREQUAL "MODULE_LIBRARY")
|
if(${TARGET_TYPE} STREQUAL "MODULE_LIBRARY")
|
||||||
add_custom_command(TARGET lovr POST_BUILD
|
add_custom_command(TARGET move_libraries POST_BUILD
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
$<TARGET_FILE:${ARGV0}>
|
$<TARGET_FILE:${ARGV0}>
|
||||||
${CMAKE_BINARY_DIR}/bin/$<TARGET_FILE_NAME:${ARGV0}>
|
${CMAKE_BINARY_DIR}/bin/$<TARGET_FILE_NAME:${ARGV0}>
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
add_custom_command(TARGET lovr POST_BUILD
|
add_custom_command(TARGET move_libraries POST_BUILD
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
$<TARGET_SONAME_FILE:${ARGV0}>
|
$<TARGET_SONAME_FILE:${ARGV0}>
|
||||||
${CMAKE_BINARY_DIR}/bin/$<TARGET_SONAME_FILE_NAME:${ARGV0}>
|
${CMAKE_BINARY_DIR}/bin/$<TARGET_SONAME_FILE_NAME:${ARGV0}>
|
||||||
|
|
Loading…
Reference in New Issue