19

プロジェクトのルートにある「BuildNumber.txt」というファイルにビルド番号が保存されているプロジェクトに取り組んでいます。私がやりたいことは、CMake にこのファイルから数値を読み取らせ、ヘッダー ファイルに適用できる変数を設定させることです。

setup.h.in

#define build_number "@BUILD_NUMBER@";

configure_file を使用すると、上記のような .in ファイル内のプレースホルダーを CMake 変数に置き換えることができます。BuildNumber.txt から変数に数値を読み込むように CMake を取得することは可能ですか?

4

2 に答える 2

32

そのために CMake コマンドfile (STRINGS ...)を使用できます。ビルド番号がファイルBuildNumber.txt内の 1 行にあると仮定すると、次のコマンドはそれを CMake 変数に読み込みますBUILD_NUMBER

file (STRINGS "BuildNumber.txt" BUILD_NUMBER)

ファイル コマンド リファレンスも参照してください。

于 2011-04-21T13:49:26.990 に答える
3

お使いの OS はわかりませんが、Windows または Linux を使用していると思います。

if (UNIX)
  set (show_contents_prog cat)
elseif (WIN32)
  set (show_contents_prog type)
endif (WIN32)

execute_process(COMMAND ${show_contents_prog} input.txt OUTPUT_VARIABLE file_contents)

これが役立つかもしれないと思います。

于 2011-04-21T04:23:26.800 に答える