1. ホーム
  2. cmake

[解決済み] CMakeで文字列を複数行に分割するには?

2022-09-18 14:29:16

質問

私は通常、プロジェクトにおいて、テキストファイルの行の長さが 80 を超える行を決して作成しないようにするポリシーを持っています。しかし、CMake では、1 つの巨大な行を避けるために、単純な文字列を複数の行に分割する方法がわからないという問題が発生します。この基本的なコードを考えてみましょう。

set(MYPROJ_VERSION_MAJOR "1")
set(MYPROJ_VERSION_MINOR "0")
set(MYPROJ_VERSION_PATCH "0")
set(MYPROJ_VERSION_EXTRA "rc1")
set(MYPROJ_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}-${VERSION_EXTRA}")

すでに80カラムの制限を越えています。では、CMakeで冗長にならずに複数行に分けるにはどうしたらいいのでしょうか(複数の list(APPEND ...) など)にならないようにするにはどうしたらいいでしょうか?

どのように解決するのですか?

の更新 CMake 3.0 およびそれ以降 :

で行の継続が可能です。 \ .参照 cmake-3.0-doc

message("\
This is the first line of a quoted argument. \
In fact it is the only line but since it is long \
the source code uses line continuation.\
")

CMakeのバージョンの利用可能性

Debian Wheezy (2013): 2.8.9

Debian Wheezy-backports: 2.8.11

Debian Jessy (2015): 3.0.2

Ubuntu 14.04 (LTS): 2.8.12

Ubuntu 15.04 : 3.0.2

Mac OSX : cmake-3は以下のサイトから入手可能です。 ホームブリュー , Macports および フィンク

Windows: cmake-3 は以下のサイトから入手可能です。 ショコラトリー