Add -s flag, fix $OPT_FLAGS evaluating as an empty string, and correctly pass the arch needed by Windows with -O3 to the optimize build
This commit is contained in:
parent
9bc33ff794
commit
9de1f61924
2 changed files with 27 additions and 8 deletions
|
@ -103,13 +103,13 @@ endif(NOT CMAKE_BUILD_TYPE)
|
|||
MESSAGE("Adding Optimize build")
|
||||
if("${ENABLE_LTO}" STREQUAL "yes")
|
||||
MESSAGE("LTO is enabled for Optimize build")
|
||||
set(CMAKE_CXX_FLAGS_OPTIMIZE "-O3 -march=native -flto" CACHE STRING "Flags for a more highly optimized build" FORCE)
|
||||
set(CMAKE_C_FLAGS_OPTIMIZE "-O3 -march=native -flto" CACHE STRING "Flags for a more highly optimized build with LTO" FORCE)
|
||||
set(CMAKE_CXX_FLAGS_OPTIMIZE "-O3 -march=native -flto -s" CACHE STRING "Flags for a more highly optimized build" FORCE)
|
||||
set(CMAKE_C_FLAGS_OPTIMIZE "-O3 -march=native -flto -s" CACHE STRING "Flags for a more highly optimized build with LTO" FORCE)
|
||||
set(CMAKE_EXE_LINKER_FLAGS_OPTIMIZE "-fuse-ld=gold" CACHE STRING "Flags for a more highly optimized build with LTO" FORCE)
|
||||
else()
|
||||
MESSAGE("LTO is not enabled for Optimize build")
|
||||
set(CMAKE_CXX_FLAGS_OPTIMIZE "-O3 -march=native" CACHE STRING "Flags for a more highly optimized build without LTO" FORCE)
|
||||
set(CMAKE_C_FLAGS_OPTIMIZE "-O3 -march=native" CACHE STRING "Flags for a more highly optimized build without LTO" FORCE)
|
||||
set(CMAKE_CXX_FLAGS_OPTIMIZE "-O3 -march=native -s" CACHE STRING "Flags for a more highly optimized build without LTO" FORCE)
|
||||
set(CMAKE_C_FLAGS_OPTIMIZE "-O3 -march=native -s" CACHE STRING "Flags for a more highly optimized build without LTO" FORCE)
|
||||
set(CMAKE_EXE_LINKER_FLAGS_OPTIMIZE "" CACHE STRING "" FORCE)
|
||||
endif()
|
||||
set(CMAKE_SHARED_LINKER_FLAGS_OPTIMIZE "" CACHE STRING "Not used" FORCE)
|
||||
|
@ -555,6 +555,22 @@ if(WIN32)
|
|||
string(REPLACE ";" " " CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
|
||||
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}" CACHE STRING "added -march=pentiumpro" FORCE)
|
||||
MESSAGE("added -march=pentiumpro to Release build")
|
||||
|
||||
separate_arguments(CMAKE_CXX_FLAGS_OPTIMIZE)
|
||||
list(REMOVE_ITEM CMAKE_CXX_FLAGS_OPTIMIZE "-march=native")
|
||||
list(APPEND CMAKE_CXX_FLAGS_OPTIMIZE "-march=pentiumpro")
|
||||
list(REMOVE_DUPLICATES CMAKE_CXX_FLAGS_OPTIMIZE)
|
||||
string(REPLACE ";" " " CMAKE_CXX_FLAGS_OPTIMIZE "${CMAKE_CXX_FLAGS_OPTIMIZE}")
|
||||
set(CMAKE_CXX_FLAGS_OPTIMIZE "${CMAKE_CXX_FLAGS_OPTIMIZE}" CACHE STRING "added -march=pentiumpro" FORCE)
|
||||
MESSAGE("added -march=pentiumpro to Optimize build")
|
||||
|
||||
separate_arguments(CMAKE_C_FLAGS_OPTIMIZE)
|
||||
list(REMOVE_ITEM CMAKE_C_FLAGS_OPTIMIZE "-march=native")
|
||||
list(APPEND CMAKE_C_FLAGS_OPTIMIZE "-march=pentiumpro")
|
||||
list(REMOVE_DUPLICATES CMAKE_C_FLAGS_OPTIMIZE)
|
||||
string(REPLACE ";" " " CMAKE_C_FLAGS_OPTIMIZE "${CMAKE_C_FLAGS_OPTIMIZE}")
|
||||
set(CMAKE_C_FLAGS_OPTIMIZE "${CMAKE_C_FLAGS_OPTIMIZE}" CACHE STRING "added -march=pentiumpro" FORCE)
|
||||
MESSAGE("added -march=pentiumpro to Optimize build")
|
||||
endif(WIN32)
|
||||
|
||||
# replace the default Debug flag of -g with -O0 -DDEBUG -ggdb3
|
||||
|
|
11
SConstruct
11
SConstruct
|
@ -511,13 +511,16 @@ for env in [test_env, client_env, env]:
|
|||
|
||||
# because apparently telling the compiler, linker, AND windres to be 32-bit just isn't enough
|
||||
if env["PLATFORM"] == 'win32':
|
||||
env["OPT_FLAGS"] = "$OPT_FLAGS -march=pentiumpro"
|
||||
env["ARCH"] = "-march=pentiumpro"
|
||||
env["OPT_FLAGS"] = env["OPT_FLAGS"] + " " + env["ARCH"]
|
||||
else:
|
||||
env["ARCH"] = "-march=native"
|
||||
|
||||
if env["enable_lto"] == "yes":
|
||||
env["HIGH_OPT_COMP_FLAGS"] = "-O3 -march=native -flto"
|
||||
env["HIGH_OPT_LINK_FLAGS"] = "$HIGH_OPT_COMP_FLAGS -fuse-ld=gold"
|
||||
env["HIGH_OPT_COMP_FLAGS"] = "-O3 " + env["ARCH"] + " -flto -s"
|
||||
env["HIGH_OPT_LINK_FLAGS"] = env["HIGH_OPT_COMP_FLAGS"] + " -fuse-ld=gold"
|
||||
else:
|
||||
env["HIGH_OPT_COMP_FLAGS"] = "-O3 -march=native"
|
||||
env["HIGH_OPT_COMP_FLAGS"] = "-O3 " + env["ARCH"] + " -s"
|
||||
env["HIGH_OPT_LINK_FLAGS"] = ""
|
||||
|
||||
if "clang" in env["CXX"]:
|
||||
|
|
Loading…
Add table
Reference in a new issue