harfang3d/languages/hg_lua/CMakeLists.txt

47 lines
1.8 KiB
CMake
Raw Normal View History

2021-10-13 12:40:31 +00:00
add_custom_command(
OUTPUT
${CMAKE_CURRENT_BINARY_DIR}/binding/bind_Lua.cpp
${CMAKE_CURRENT_BINARY_DIR}/binding/bind_Lua.h
${CMAKE_CURRENT_BINARY_DIR}/binding/fabgen.h
COMMAND
${Python3_EXECUTABLE} bind.py ${CMAKE_CURRENT_SOURCE_DIR}/../../binding/bind_harfang.py --lua --out ${CMAKE_CURRENT_BINARY_DIR}/binding ${HG_BINDING_DEFINES}
MAIN_DEPENDENCY
${CMAKE_CURRENT_SOURCE_DIR}/../../binding/bind_harfang.py
WORKING_DIRECTORY
${HG_FABGEN_PATH}
COMMENT
"Generating Harfang binding for Lua extension")
add_library(hg_lua SHARED
${CMAKE_CURRENT_BINARY_DIR}/binding/bind_Lua.cpp
${CMAKE_CURRENT_BINARY_DIR}/binding/bind_Lua.h
${CMAKE_CURRENT_BINARY_DIR}/binding/fabgen.h)
target_include_directories(hg_lua PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../../extern/lua/src)
target_link_libraries(hg_lua engine foundation platform)
set_target_properties(hg_lua PROPERTIES OUTPUT_NAME "harfang" PREFIX "" DEBUG_POSTFIX "")
2022-10-29 07:23:29 +00:00
if(APPLE)
set_target_properties(hg_lua PROPERTIES SUFFIX ".so")
endif()
2021-10-13 12:40:31 +00:00
set_target_properties(hg_lua PROPERTIES FOLDER "harfang/languages")
2022-10-29 07:23:29 +00:00
2021-10-13 12:40:31 +00:00
add_dependencies(hg_lua lua)
if(WIN32)
set_target_properties(hg_lua PROPERTIES COMPILE_FLAGS /bigobj)
elseif(UNIX)
target_compile_definitions(hg_lua PUBLIC LUA_USE_LINUX)
endif()
2022-05-02 15:25:11 +00:00
install(TARGETS hg_lua lua RUNTIME DESTINATION hg_lua LIBRARY DESTINATION hg_lua COMPONENT lua)
2021-10-13 12:40:31 +00:00
2022-06-05 12:04:47 +00:00
install_cppsdk_dependencies(hg_lua lua)
foreach(_target assetc fbx_converter assimp_converter gltf_importer gltf_exporter)
if(TARGET ${_target})
install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}/hg_lua/harfang -DBUILD_TYPE=$<CONFIG> -P $<TARGET_PROPERTY:${_target},BINARY_DIR>/cmake_install.cmake)"
COMPONENT lua)
endif()
endforeach()
install(FILES bin.lua DESTINATION hg_lua/harfang COMPONENT lua)