2

CMake を使用してプロジェクトの Makefile を生成しています。

いくつかのファイルを異なるオプションでコンパイルしたいと思います。たとえば、すべてのファイルは -fX ですが、test フォルダー内のファイルは -fno-X です。

それは CMake で可能ですか?

ソースファイルを含む私の CMakeLists.txt ファイルの一部は次のとおりです。

file(
    GLOB_RECURSE
    compiler_files
    src/*.cpp
)

file(GLOB to_remove src/eddi.cpp)
list(REMOVE_ITEM compiler_files ${to_remove})

add_library(Compiler OBJECT ${compiler_files})

add_executable(eddic $<TARGET_OBJECTS:Compiler> src/eddi.cpp)
target_link_libraries (eddic boost_program_options)
4

1 に答える 1

3

set_source_files_properties次のコマンドを使用して、特定のファイルにコンパイル フラグを追加できます 。

SET_SOURCE_FILES_PROPERTIES(
  ${list_of_noX_files}
  PROPERTIES
  COMPILE_FLAGS "-fno-X"
)

この場合、変数にリストされたファイルは、デフォルト オプションに追加されlist_of_noX_filesたオプションでコンパイルされます。-fno-X

于 2013-02-06T10:56:42.857 に答える