[CMake] ignoring a specific library

Mark Wyszomierski markww at gmail.com
Wed Nov 7 12:31:25 EST 2007


Hi Philip,

Thanks for your help. I down-graded to 2.4.6 but no luck. Here's my exact text:

SET(VS_MULTITHREADED_DEBUG_IGNORE_LIBRARY_FLAGS
   "/NODEFAULTLIB:nafxcwd.lib
    /NODEFAULTLIB:libcmtd.lib"
)
SET_TARGET_PROPERTIES(my_test_app PROPERTIES
       LINK_FLAGS_DEBUG
       ${VS_MULTITHREADED_DEBUG_IGNORE_LIBRARY_FLAGS})

After creating the solution files, I don't see anything in the ignore
default library fields - any ideas?

Thanks,
Mark



On 11/2/07, Philip Lowman <philip at yhbt.com> wrote:
> Mark Wyszomierski wrote:
> > Is it possible to add an ignore library to CMakeLists.txt? This is
> > specifically for a win32 project. I want to ignore:
> >
> >     nafxcwd.lib
> >     libcmtd.lib
>
> Here's how I do this with CMake 2.4.6.  Unfortunately passing more than
> one /NODEFAULTLIB arguments was broken in CMake 2.4.7 (see Bug #5455).
>
> In short, use the SET_TARGET_PROPERTIES() with the LINK_FLAGS or
> LINK_FLAGS_DEBUG, LINK_FLAGS_RELEASE, etc. options.
>
>
> SET(VS_MULTITHREADED_DEBUG_DLL_IGNORE_LIBRARY_FLAGS
>    "/NODEFAULTLIB:libc.lib
>     /NODEFAULTLIB:libcmt.lib
>     /NODEFAULTLIB:msvcrt.lib
>     /NODEFAULTLIB:libcd.lib
>     /NODEFAULTLIB:libcmtd.lib"
> )
> SET(VS_MULTITHREADED_RELEASE_DLL_IGNORE_LIBRARY_FLAGS
>    "/NODEFAULTLIB:libc.lib
>     /NODEFAULTLIB:libcmt.lib
>     /NODEFAULTLIB:libcd.lib
>     /NODEFAULTLIB:libcmtd.lib
>     /NODEFAULTLIB:msvcrtd.lib"
> )
>
> IF(MSVC)
>     SET_TARGET_PROPERTIES(simulator-static PROPERTIES
>        LINK_FLAGS_DEBUG
>        ${VS_MULTITHREADED_DEBUG_DLL_IGNORE_LIBRARY_FLAGS})
>
>     SET_TARGET_PROPERTIES(simulator-static PROPERTIES
>         LINK_FLAGS_RELWITHDEBINFO
>         ${VS_MULTITHREADED_RELEASE_DLL_IGNORE_LIBRARY_FLAGS})
>     SET_TARGET_PROPERTIES(simulator-static PROPERTIES
>         LINK_FLAGS_RELEASE
>         ${VS_MULTITHREADED_RELEASE_DLL_IGNORE_LIBRARY_FLAGS})
>     SET_TARGET_PROPERTIES(simulator-static PROPERTIES
>         LINK_FLAGS_MINSIZEREL
>         ${VS_MULTITHREADED_RELEASE_DLL_IGNORE_LIBRARY_FLAGS})
> ENDIF(MSVC)
>
>
> --
> Philip Lowman
> Sr. Simulation Development Engineer, Modeling and Simulation Technology
> General Dynamics Land Systems
> http://www.gdls.com
>


More information about the CMake mailing list