Brad King wrote:

> So, if the first argument after the lhs is "LINK_PUBLIC"
> or "LINK_PRIVATE" then it is the existing signature, and if
> it is "PUBLIC" or "PRIVATE" or "INTERFACE" then it is the
> "new" signature, right?

Right. That's almost what is in my tll-new-signatures branch:

 target_link_libraries(<target> INTERFACE <lib> ...)

 target_link_libraries(<target> <PRIVATE|PUBLIC> <lib> ...
                               [<PRIVATE|PUBLIC> <lib> ...] ...])

However, it should be only:

 target_link_libraries(<target> <PRIVATE|PUBLIC|INTERFACE> <lib> ...
                               [<PRIVATE|PUBLIC|INTERFACE> <lib> ...] ...])

right?

I can change that so that all of the following are valid:

 tll(tgt PRIVATE a PUBLIC b INTERFACE c)
 tll(tgt INTERFACE c PRIVATE a PUBLIC b)
 tll(tgt INTERFACE c PUBLIC b PRIVATE a)
 tll(tgt INTERFACE c PUBLIC b PRIVATE a PUBLIC d INTERFACE e)

I believe 

 tll(tgt LINK_PRIVATE a LINK_PUBLIC b LINK_PRIVATE c)

is valid today. I can't think of a reason to want that, but I guess we 
shouldn't change it.

Thanks,

Steve.


--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers

Reply via email to