From 0c54b775a4aaec799fbbfc89cbec07222bb806b3 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 18 Feb 2014 16:08:44 +0100 Subject: Help: Document the purpose of usage requirements clearly. People will be tempted to put things there for convenience, thereby causing conflicts similar to http://thread.gmane.org/gmane.comp.compilers.clang.devel/35162/focus=35169 where it is conceivable that the LLVM developers could put a flag on a target for convenience, which would cause conflicts for some downstreams. --- Help/manual/cmake-buildsystem.7.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Help/manual/cmake-buildsystem.7.rst b/Help/manual/cmake-buildsystem.7.rst index 03eb163..d252473 100644 --- a/Help/manual/cmake-buildsystem.7.rst +++ b/Help/manual/cmake-buildsystem.7.rst @@ -112,6 +112,12 @@ Each command may be invoked with multiple uses of each keyword: INTERFACE USING_ARCHIVE_LIB ) +Note that usage requirements are not designed as a way to make downstreams +use particular :prop_tgt:`COMPILE_OPTIONS` or +:prop_tgt:`COMPILE_DEFINITIONS` etc for convenience only. The contents of +the properties must be **requirements**, not merely recommendations or +convenience. + Target Properties ----------------- -- cgit v0.12