Add clang flags (untested)

This commit is contained in:
rtm516 2026-03-14 11:00:36 +00:00
parent ad55c38d02
commit 0f2a5b4319
No known key found for this signature in database
GPG key ID: 331715B8B007C67A
3 changed files with 17 additions and 1 deletions

View file

@ -30,9 +30,19 @@ function(configure_msvc_target target)
$<$<COMPILE_LANGUAGE:CXX>:/EHsc>
$<$<COMPILE_LANGUAGE:CXX>:/GR>
$<$<AND:$<CONFIG:Debug>,$<COMPILE_LANGUAGE:C,CXX>>:/Od>
$<$<AND:$<CONFIG:Release>,$<COMPILE_LANGUAGE:C,CXX>>:/GL /O2 /Oi /GT /GF /Ob3>
$<$<AND:$<CONFIG:Release>,$<COMPILE_LANGUAGE:C,CXX>>:/GL /O2 /Oi /GT /GF>
)
endfunction()
function(configure_clang_target target)
target_compile_options(${target} PRIVATE
$<$<AND:$<CONFIG:Debug>,$<COMPILE_LANGUAGE:C,CXX>>:-O0 -Wall>
$<$<AND:$<CONFIG:Release>,$<COMPILE_LANGUAGE:C,CXX>>:-O2 -w -flto>
)
target_link_options(${target} PRIVATE
$<$<CONFIG:Release>:-flto>
)
endfunction()
# ---
# Configuration

View file

@ -45,6 +45,9 @@ if(MSVC)
$<$<CONFIG:Release>:/LTCG:incremental>
)
endif()
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
configure_clang_target(Minecraft.Client)
endif()
set_target_properties(Minecraft.Client PROPERTIES
VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>"

View file

@ -29,3 +29,6 @@ target_precompile_headers(Minecraft.World PRIVATE "$<$<COMPILE_LANGUAGE:CXX>:std
if(MSVC)
configure_msvc_target(Minecraft.World)
endif()
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
configure_clang_target(Minecraft.World)
endif()