diff options
Diffstat (limited to 'cmake/Functions.cmake')
-rw-r--r-- | cmake/Functions.cmake | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/cmake/Functions.cmake b/cmake/Functions.cmake index 6c7a49415..07791e0e9 100644 --- a/cmake/Functions.cmake +++ b/cmake/Functions.cmake @@ -429,16 +429,21 @@ function(add_rsp_command target buildDir) add_custom_command( OUTPUT ${buildDir}/${cmakeTarget}.a BYPRODUCTS - ${buildDir}/${cmakeTarget}.o + ${buildDir}/${cmakeTarget}_objs.o + ${buildDir}/${cmakeTarget}_arcs.o COMMAND clang++ -r -nostdlib -arch ${arch} - -o ${buildDir}/${cmakeTarget}.o + -o ${buildDir}/${cmakeTarget}_objs.o -Wl,-keep_private_externs @${buildDir}/${ninjaTarget}_objects.rsp + COMMAND clang++ -r -nostdlib -arch ${arch} + -o ${buildDir}/${cmakeTarget}_arcs.o + -Wl,-keep_private_externs -Wl,-all_load @${buildDir}/${ninjaTarget}_archives.rsp - COMMAND ar -cr + COMMAND ar -crs ${buildDir}/${cmakeTarget}.a - ${buildDir}/${cmakeTarget}.o + ${buildDir}/${cmakeTarget}_objs.o + ${buildDir}/${cmakeTarget}_arcs.o DEPENDS ${buildDir}/${ninjaTarget}.stamp WORKING_DIRECTORY "${buildDir}/../../.." @@ -725,7 +730,7 @@ macro(append_build_type_setup) extend_gn_list(gnArgArg ARGS enable_precompiled_headers - CONDITION BUILD_WITH_PCH + CONDITION BUILD_WITH_PCH AND NOT LINUX ) extend_gn_list(gnArgArg ARGS dcheck_always_on |