web-dev-qa-db-ja.com

CMake変数名は大文字と小文字を区別しますか?

CMakeは変数名をどのように扱いますか?大文字と小文字は区別されますか?

FindFoo.cmakeを使用する場合

find_package(Foo)

FOO_FOUNDFoo_FOUNDfoo_FOUNDを使用できますか?

14
usr1234567

CMake変数では大文字と小文字が区別されます。 ドキュメント を参照してください。


補足として、コマンドは大文字と小文字を区別せず、それらの引数は大文字と小文字を区別します。 wiki を参照してください。 STATUSのようなキーワードは引数であるため、大文字と小文字が区別されます。例:

message(STATUS foo)
MESSAGE(status foo)

出力:

foo
statusfoo

警告としてマークされた2番目(デフォルトのメッセージタイプ)。

大文字と小文字の区別については、 ブール変数セクション も参照してください。

20
Antonio

それらはare大文字と小文字を区別します。

ここに例があります:

set(foo 42)

MESSAGE( STATUS ${foo})
MESSAGE( STATUS ${Foo})

出力:

-- 42
-- 
5
Mijago

FindFooのドキュメントを参照して、正しい_FOUND変数が何であるかを確認してください。または、いつかこのツールを使用するかもしれません:

https://youtu.be/BPgXuvPAl-8?t=659

1
steveire