diff --git a/build.sh b/build.sh index 3c75792..aff31f2 100755 --- a/build.sh +++ b/build.sh @@ -1,5 +1,3 @@ -#!/bin/bash - # 默认构建命令 build_command="cmake -Bbuild -DCMAKE_BUILD_TYPE=Release" build_command_release="cmake --build build --config Release" diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt index 85d00d2..455707f 100644 --- a/client/CMakeLists.txt +++ b/client/CMakeLists.txt @@ -23,4 +23,15 @@ endif() if(DEFINED MINGW32_XP_BOOST) target_link_directories(tsc PRIVATE ${MBOOST_LIB_DIR}) target_link_libraries(tsc PRIVATE ${MBOOST_LIBS}) -endif() \ No newline at end of file +endif() +if(UNIX) +execute_process( + COMMAND uname -a + OUTPUT_VARIABLE UNAME_OUT + OUTPUT_STRIP_TRAILING_WHITESPACE +) +if(UNAME_OUT MATCHES "alpine" OR UNAME_OUT MATCHES "Alpine") +message(STATUS "tsc on musl static link") +target_link_libraries(tsc PRIVATE -static;-static-libstdc++) +endif() +endif() diff --git a/config/MSystem.cmake b/config/MSystem.cmake index 5f0233d..bc41589 100644 --- a/config/MSystem.cmake +++ b/config/MSystem.cmake @@ -19,7 +19,9 @@ elseif(UNAME_OUTPUT MATCHES "riscv64") else() set(SYSTEM_ARCH "unknown") endif() - +if(UNAME_OUTPUT MATCHES "alpine" OR UNAME_OUTPUT MATCHES "Alpine") + set(SYSTEM_ARCH "musl_${SYSTEM_ARCH}") +endif() elseif (WIN32) # 先调用 ver 命令 execute_process(COMMAND cmd /c ver @@ -41,4 +43,4 @@ elseif (WIN32) else() message(FATAL_ERROR "unknow system type.") endif() -message(STATUS "SYSTEM_ARCH: ${SYSTEM_ARCH}") \ No newline at end of file +message(STATUS "SYSTEM_ARCH: ${SYSTEM_ARCH}") diff --git a/filecomplete b/filecomplete index a7c6434..86e71fb 160000 --- a/filecomplete +++ b/filecomplete @@ -1 +1 @@ -Subproject commit a7c6434a7c333a19727aeab8212d20604426b701 +Subproject commit 86e71fbb462efce80e601db0807bca0887829836 diff --git a/ofen b/ofen index 36e05d2..c4572bb 160000 --- a/ofen +++ b/ofen @@ -1 +1 @@ -Subproject commit 36e05d261821048a4c2fec1042434dd2dfc9b6de +Subproject commit c4572bbfef4b39d40f8f530aecdf0998d1821232 diff --git a/server/CMakeLists.txt b/server/CMakeLists.txt index aa3bc8e..1c54891 100644 --- a/server/CMakeLists.txt +++ b/server/CMakeLists.txt @@ -22,4 +22,15 @@ if (UNIX) endif() if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_SYSTEM_NAME MATCHES "Windows") target_link_libraries(tss PRIVATE ws2_32 wsock32) -endif() \ No newline at end of file +endif() +if(UNIX) +execute_process( + COMMAND uname -a + OUTPUT_VARIABLE UNAME_OUT + OUTPUT_STRIP_TRAILING_WHITESPACE +) +if(UNAME_OUT MATCHES "alpine" OR UNAME_OUT MATCHES "Alpine") +message(STATUS "on musl static link") +target_link_libraries(tss PRIVATE -static;-static-libstdc++) +endif() +endif()