Compare commits

...

2 Commits

Author SHA1 Message Date
x-tools-author
02c637ae25 chore: add ignored file 2025-08-22 00:31:35 +08:00
x-tools-author
bc9685b8ed chore: do something make macOS happy 2025-08-22 00:30:11 +08:00
3 changed files with 31 additions and 4 deletions

3
.gitignore vendored
View File

@ -25,4 +25,5 @@ compile_commands.json
libs
bin
scripts
xapps/xprivate
xapps/xprivate
.DS_Store

View File

@ -276,7 +276,17 @@ endfunction()
# --------------------------------------------------------------------------------------------------
# Deploy Qt for macOS
function(x_deploy_qt_for_mac target)
# Do nothing...
if(NOT DEFINED MACDEPLOYQT_EXECUTABLE)
return()
endif()
message(STATUS "Target path of macOS is: $<TARGET_FILE:${target}>")
add_custom_command(
TARGET ${target}
POST_BUILD
COMMAND ${MACDEPLOYQT_EXECUTABLE} "$<TARGET_FILE:${target}>/../../../"
COMMENT "Deploy Qt for macOS..."
VERBATIM)
endfunction()
# --------------------------------------------------------------------------------------------------
@ -290,10 +300,10 @@ endfunction()
function(x_deploy_qt target)
if(WIN32)
x_deploy_qt_for_windows(${target})
elseif(UNIX AND NOT APPLE)
x_deploy_qt_for_linux(${target})
elseif(APPLE)
x_deploy_qt_for_mac(${target})
elseif(UNIX)
x_deploy_qt_for_linux(${target})
endif()
endfunction()

View File

@ -89,6 +89,22 @@ if(WIN32)
link_directories(${lib_dir})
list(APPEND X_LIBS "libiconv-static")
set(X_ICONV_LIBS "libiconv-static")
elseif(APPLE)
set(working_dir ${CMAKE_SOURCE_DIR}/3rd/${file_name})
if(NOT EXISTS ${working_dir}/out/lib/libiconv.la)
execute_process(COMMAND ./configure --prefix=${working_dir}/out
WORKING_DIRECTORY ${working_dir})
execute_process(COMMAND make WORKING_DIRECTORY ${working_dir})
execute_process(COMMAND make install WORKING_DIRECTORY ${working_dir})
endif()
if(EXISTS ${working_dir}/out/lib/libiconv.la)
add_compile_definitions(X_ENABLE_ICONV)
include_directories(${working_dir}/out/include)
link_directories(${working_dir}/out/lib)
list(APPEND X_LIBS "charset" "iconv")
set(X_ICONV_LIBS "charset;iconv")
endif()
else()
set(working_dir ${CMAKE_SOURCE_DIR}/3rd/${file_name})
if(NOT EXISTS ${working_dir}/out/lib/libiconv.so)