[cmake-developers] CMake usage requirements in KDE Frameworks

Alexander Neundorf neundorf at kde.org
Thu Mar 21 14:47:31 EDT 2013


On Thursday 21 March 2013, Brad King wrote:
> On 03/20/2013 04:31 PM, Alexander Neundorf wrote:
...
> > So e.g. I could do
> > tid(hello
> > 
> >    PRIVATE ${Foo_INCLUDE_DIRS} ${Bar_INCLUDE_DIRS}
> >    ${CMAKE_SOURCE_DIR}/blub INTERFACE_BUILD ${CMAKE_SOURCE_DIR}/blub
> >    ${Bar_INCLUDE_DIRS}
> >    INTERFACE_INSTALL ${INCLUDE_INSTALL_DIR} ${Bar_INCLUDE_DIRS} )
> > 
> > In which way would this be problematic ?
> 
> list(APPEND somelist INTERFACE_INSTALL ${y} INTERFACE_BUILD ${x})
> ...
> tid(hello INTERFACE_INSTALL ${somelist} ${INCLUDE_INSTALL_DIR})
> 
> The genex approach binds tightly so this does not happen.
> 
> The PUBLIC/PRIVATE/INTERFACE information belongs in the tid() call
> so those keywords should not be in lists.  The BUILD/INSTALL
> information belongs with each (path/directory) value so the genex
> binds tightly to it and can be in lists.


Ok.

Still, is the "PUBLIC" part necessary ?
IMO PRIVATE and INTERFACE suffice, and for me it seems more straighforward to 
separate only between these two.

Alex



More information about the cmake-developers mailing list