INTERFACE_LINK_LIBRARIES/LINK_INTERFACE_LIBRARIES

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

INTERFACE_LINK_LIBRARIES/LINK_INTERFACE_LIBRARIES

Hendrik Greving
If CMP0022 is set to new, since project is still using LINK_INTERFACE_LIBRARIES I have added EXPORT_LINK_INTERFACE_LIBRARIES to install(EXPORT) and export() calls. Looking at the generated exported cmake files, I only see the INTERFACE_LINK_LIBRARIES link property set. There are downstream projects that are using the previously mentioned project importing targets from it. These downstream projects still have CMP0022 set to OLD. Will this work? My understanding is that these downstream projects now don't see the linked libraries since they will ignore INTERFACE_LINK_LIBRARIES?

Is it possible to achieve both, and have the main project generate the LINK_INTERFACE_LIBRARIES properties with CMP0022 set to NEW?

--

Powered by www.kitware.com

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

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

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

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: INTERFACE_LINK_LIBRARIES/LINK_INTERFACE_LIBRARIES

Hendrik Greving
In other words, when providing the EXPORT_LINK_INTERFACE_LIBRARIES flag for exported targets (in main project that was changed to CMP0022 NEW), I was expecting the IMPORTED_LINK_INTERFACE_LIBRARIES property set in the <exported_target>.cmake file so that projects that import it (with CMP0022 OLD) can see it. Instead, I am only seeing the INTERFACE_LINK_LIBRARIES property set.

On Fri, Nov 9, 2018 at 1:58 PM Hendrik Greving <[hidden email]> wrote:
If CMP0022 is set to new, since project is still using LINK_INTERFACE_LIBRARIES I have added EXPORT_LINK_INTERFACE_LIBRARIES to install(EXPORT) and export() calls. Looking at the generated exported cmake files, I only see the INTERFACE_LINK_LIBRARIES link property set. There are downstream projects that are using the previously mentioned project importing targets from it. These downstream projects still have CMP0022 set to OLD. Will this work? My understanding is that these downstream projects now don't see the linked libraries since they will ignore INTERFACE_LINK_LIBRARIES?

Is it possible to achieve both, and have the main project generate the LINK_INTERFACE_LIBRARIES properties with CMP0022 set to NEW?

--

Powered by www.kitware.com

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

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

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

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake