Hi, I set this:
set (STATIC_LIBRARY_FLAGS_RELWITHDEBINFO "${STATIC_LIBRARY_FLAGS_RELWITHDEBINFO} /LTCG") and it didn't seem to work. MSVC still has no LTCG flag set for any of my static libraries. does this feature work? cheers, Paul On 23 June 2011 01:02, Ben Medina <ben.med...@gmail.com> wrote: > So that the answer stays on the list: > > One must use the STATIC_LIBRARY_FLAGS property, rather than > LINK_FLAGS, for static libraries. > > On Tue, Jun 21, 2011 at 3:12 PM, Ben Medina <ben.med...@gmail.com> wrote: > > Since I got no feedback, I assume it's a bug. I've filed it here: > > > > 0012295: LINK_FLAGS_RELEASE has no effect on static libraries for MSVC > > generators > > > > http://www.cmake.org/Bug/view.php?id=12295 > > > > On Mon, Jun 13, 2011 at 11:50 AM, Ben Medina <ben.med...@gmail.com> > wrote: > >> Hello all, > >> > >> I'm using CMake 2.8.4 and am seeing an odd differenc between static > >> and shared libraries in regard to the LINK_FLAGS property. In > >> particular, I'm enabling "Whole program optimization" in Visual Studio > >> 2010, which is done by add /GL as a compiler flag and /LTCG as a > >> linker flag for the release configuration. However, the link flag is > >> not used for static libraries, leading to a build warning about > >> compiling with /GL but linking without /LTCG. > >> > >> Here's an example: > >> > >> cmake_minimum_required (VERSION 2.8) > >> project (link_test) > >> > >> set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GL") > >> > >> add_library (static_test STATIC a.cpp) > >> set_target_properties ( > >> static_test > >> PROPERTIES > >> LINK_FLAGS_RELEASE "/LTCG" > >> ) > >> > >> add_library (shared_test SHARED a.cpp) > >> set_target_properties ( > >> shared_test > >> PROPERTIES > >> LINK_FLAGS_RELEASE "/LTCG" > >> ) > >> > >> Just add an empty file called a.cpp to the directory, then build the > >> whole project in release configuration. You'll get a warning like this > >> for the static_test library: > >> > >> 2> a.obj : MSIL .netmodule or module compiled with /GL found; > >> restarting link with /LTCG; add /LTCG to the link command line to > >> improve > >> > >> Why is CMake not applying LINK_FLAGS_RELEASE to the static library? > >> > >> Thanks, > >> Ben > >> > > > _______________________________________________ > 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://www.cmake.org/mailman/listinfo/cmake >
-- 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://www.cmake.org/mailman/listinfo/cmake