Mark Abraham <mark.j.abraham@...> writes: > > Hi David, > Thanks very much for your reply! That was extremely helpful, and will let several packages document a functional workflow for the future.On Tue, Aug 12, 2014 at 5:38 AM, David Cole <dlrdave- ydxpq3io...@public.gmane.org> wrote: > Unless it is overridden somewhere else along the way, the following is > used to create the link command line for a C++ executable: > (found in Modules/CMakeCXXInformation.cmake) > if(NOT CMAKE_CXX_LINK_EXECUTABLE) > set(CMAKE_CXX_LINK_EXECUTABLE > "<CMAKE_CXX_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> > <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>") > endif() > As you can see, by default, the C++ compiler is used as a front end to > link C++ executables... > Similarly for other types of targets, there are > CMAKE_CXX_CREATE_SHARED_LIBRARY and CMAKE_CXX_CREATE_SHARED_MODULE. And > for other languages, there are CMAKE_${LANG}_CREATE_... variables too. > > > Ah, that explains one source of confusion. I read CMAKE_CXX_LINK_EXECUTABLE with LINK as an adjective - specify the executable that does linking - whereas the above use of CREATE makes clear that the sense of LINK is intended to be as a verb - specify how to create an executable. The docs did say that this variable specifies a rule, now that I know what to look for. > > > In order to use the linker you want, you would have to define a custom > CMAKE_CXX_LINK_EXECUTABLE that uses "<CMAKE_LINKER>" in its definition > of the linker command line. > > > Right. It's easy to assume that this would be the default behaviour for constructing linking command lines. It's probably too late to consider a change, but I hope the original reasoning works well somewhere! > > Mark > > > HTH, > David C. > > > > > >
-- 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: http://public.kitware.com/mailman/listinfo/cmake