I am using CMAKE_DEBUG_POSTFIX to attach a string to end of each DLL
name being built using Visual Studio 2008. The DLLs have the name that
expect which is the target name + CMAKE_DEBUG_POSTFIX. The problem I
am running into is the SWIG wrapper DLL name does not match the
dllimport flag when building a debug build.
For example the following is an example SWIG module named, example:
SWIG_ADD_MODULE(example python example.i example.cxx)
So with the CMAKE_DEBUG_POSTFIX the name is expected to be
example_d (Debug)
example (Release)
The problem comes in when I set the CMAKE_SWIG_FLAGS. Right now it
contains the "--dllimport example". When I use the built DLLs within
C# the SWIG code works for a release build because the dll name and
the expected name in the code match. Otherwise when I do a debug build
in C# the SWIG code is attempting to load "example.dll" when it has
"example_d.dll" in the directory.
I was wondering what is a work around for this?
My initial guess is that if I could get a handle on the "example_d"
part of the name with a CMAKE variable I could use that in the
CMAKE_SIWG_FLAGS for something like:
SET ( CMAKE_SWIG_FLAGS "--dllimport ${TARGET_NAME}" )
Stephen
--
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