<table><tr><td style="">kfunk added inline comments.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D7217" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>INLINE COMMENTS</strong><div><div style="margin: 6px 0 12px 0;"><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D7217#inline-29427" rel="noreferrer">View Inline</a><span style="color: #4b4d51; font-weight: bold;">KDevPlatformMacrosPrivate.cmake:1</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #74777d">#</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #74777d"># KDevelop Platform Private Macros</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">Usually these files are called FooInternal.cmake [1] . Please use this pattern</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">% dpkg -S Private | grep cmake
% dpkg -S Internal | grep cmake                                                                                                                                        
kdelibs5-dev: /usr/share/kde4/apps/cmake/modules/FindKDE4Internal.cmake
libphonon-dev: /usr/share/phonon/buildsystem/FindPhononInternal.cmake
cmake-data: /usr/share/cmake-3.7/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake
cmake-data: /usr/share/cmake-3.7/Modules/Internal/FeatureTesting.cmake
cmake-data: /usr/share/cmake-3.7/Modules/Compiler/Clang-DetermineCompilerInternal.cmake
cmake-data: /usr/share/cmake-3.7/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake
libphonon4qt5-dev: /usr/share/phonon4qt5/buildsystem/FindPhononInternal.cmake
cmake-data: /usr/share/cmake-3.7/Modules/Internal</pre></div></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D7217#inline-29425" rel="noreferrer">View Inline</a><span style="color: #4b4d51; font-weight: bold;">kossebau</span> wrote in <span style="color: #4b4d51; font-weight: bold;">KDevPlatformMacrosPrivate.cmake:32-39</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><p style="padding: 0; margin: 8px;">Hm, on another look I am still wondering what the advantage of doing the $<BUILD_INTERFACE> variant is over just setting those include dirs globally.<br />
It adds the very same non-lib-specific dirs to any lib.</p>

<p style="padding: 0; margin: 8px;">And the ${KDevPlatform_*_DIR}/plugins ones even is rather a hack, as none of the libs these include dirs get set for actually provide those headers. That rule just makes sure that anyone using any of these libs also sees the additional headers provided by any plugins. While actually those wanting those additional headers from plugins should get a separate interface-only library target and link properly against it, no?</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p style="padding: 0; margin: 8px;">Hm, on another look I am still wondering what the advantage of doing the $<BUILD_INTERFACE> variant is over just setting those include dirs globally.</p></blockquote>

<p style="padding: 0; margin: 8px;">It adds the very same non-lib-specific dirs to any lib.</p>

<p style="padding: 0; margin: 8px;">Still feels cleaner to me. You might have a small test executable which does not link to any of these libs => then without this this test target might see include paths it is not interested in.</p></div></div></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R32 KDevelop</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D7217" rel="noreferrer">https://phabricator.kde.org/D7217</a></div></div><br /><div><strong>To: </strong>kossebau, KDevelop, apol<br /><strong>Cc: </strong>kfunk, kdevelop-devel<br /></div>