web-dev-qa-db-ja.com

CMakeマーチハードウェア

GCCの-march=に相当するもの、特に-march=nativeを有効にするCMakeの方法は何ですか?次のようなCHECK_CXX_COMPILER_FLAGに勝るものはありませんか。

include(CheckCXXCompilerFlag)
CHECK_CXX_COMPILER_FLAG("-march=native" COMPILER_SUPPORTS_MARCH_NATIVE)
if(COMPILER_SUPPORTS_MARCH_NATIVE)
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
endif()
16
Levi Morrison

はい、この機能テストは、引数をCMAKE_CXX_FLAGSに適用する適切な方法です。

おそらく、@ LeviMorrisonが示唆しているように、これをoptionの後ろに隠すことで改善される可能性があります。

option(OPTIMIZE_FOR_NATIVE "Build with -march=native" OFF)
2
Brian Cain