summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
author“pengxuanzheng” <[email protected]>2022-07-27 09:43:41 +0000
committer“pengxuanzheng” <[email protected]>2022-07-28 07:33:53 +0000
commita076662ade64ace4c1019fd726b5077c5df76abe (patch)
treecc889d584bf66115f8cb917569a872cae0c205c0 /src
parentb72a2c160fd81df15732b17468aa24d81c43b4a1 (diff)
✨ feat(TSG-11154): 增加静态库v1.1.3
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt25
1 files changed, 20 insertions, 5 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index fe1aacf..ac7c491 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -13,11 +13,26 @@ if (TSG_LUA_DEBUG)
add_definitions(-DTSG_LUA_DEBUG)
endif()
+if (BUILD_STATIC_LIB)
+ add_library(${lib_name}_static STATIC ${DIR_LIB_SRCS})
+ target_link_libraries(${lib_name}_static dl luajit2-static)
+ set_target_properties(${lib_name}_static PROPERTIES OUTPUT_NAME ${lib_name})
-add_library(${lib_name}_shared SHARED ${DIR_LIB_SRCS})
-target_link_libraries(${lib_name}_shared dl luajit2-static)
-set_target_properties(${lib_name}_shared PROPERTIES OUTPUT_NAME ${lib_name})
+ add_custom_command(TARGET ${lib_name}_static POST_BUILD
+ COMMAND ar x ${CMAKE_CURRENT_BINARY_DIR}/lib${lib_name}.a
+ COMMAND ar x ${LUAJIT_INSTALL_PREFIX}/lib/libluajit-5.1.a
+ COMMAND ar cru lib${lib_name}.a *.o
+ COMMAND ranlib lib${lib_name}.a
+ COMMAND rm *.o
+ )
+ install(TARGETS ${lib_name}_static LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib ARCHIVE DESTINATION ${CMAKE_INSTALL_PREFIX}/lib COMPONENT LIBRARIES)
+else()
+ add_library(${lib_name}_shared SHARED ${DIR_LIB_SRCS})
+ target_link_libraries(${lib_name}_shared dl luajit2-static)
+ set_target_properties(${lib_name}_shared PROPERTIES OUTPUT_NAME ${lib_name})
+
+ install(TARGETS ${lib_name}_shared LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib COMPONENT LIBRARIES)
+endif()
-install(TARGETS ${lib_name}_shared LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib COMPONENT LIBRARIES)
install(FILES ${CMAKE_SOURCE_DIR}/src/tsg_lua_interface.h DESTINATION ${CMAKE_INSTALL_PREFIX}/include/MESA COMPONENT HEADER)
-install(PROGRAMS ${CMAKE_SOURCE_DIR}/example/checktools/checktools.lua DESTINATION ${LUAJIT_INSTALL_PREFIX}/bin COMPONENT LIBRARIES)
+install(PROGRAMS ${CMAKE_SOURCE_DIR}/example/checktools/checktools.lua DESTINATION ${LUAJIT_INSTALL_PREFIX}/bin COMPONENT LIBRARIES) \ No newline at end of file