[Insight-developers] SimpleITK - CMake question (The Saga of Eggs on Windows…)
Bradley Lowekamp
blowekamp at mail.nih.gov
Sat Sep 17 17:26:47 EDT 2011
Thanks JC,
That is very helpful and explains what is going on. And explains that this is a bit of a tricky problem.
It appears that the LOCATION property from:
> get_target_property( SIMPLEITK_BINARY_MODULE
> ${SWIG_MODULE_SimpleITK_REAL_NAME} LOCATION )
> configure_file( ${SimpleITK_SOURCE_DIR}/Wrapping/PythonPackage/setup.py.in
> ${SimpleITK_BINARY_DIR}/Wrapping/PythonPackage/setup.py )
already has the CMAKE_CFG_INITDIR value embedded in it. So the value of SIMPLEITK_BINARY_MODULE is "C:Build/SimpleITK/lib/$(Configuration)/_SimpleITK.pyd".
This value is then later used at configuration time in a "configure_file". Unfortunately, the documentation linked below, reminds me that the configuration type is not known at configuration time and is only known at compilation. So it's impossible to know the value of "$(Configure)" when the configuration file is generated.
I guess I need a build time version of "configure_file" which is aware of what build type is occurring…. Anyone done that before?
Thanks,
Brad
========================================================
Bradley Lowekamp
Lockheed Martin Contractor for
Office of High Performance Computing and Communications
National Library of Medicine
blowekamp at mail.nih.gov
On Sep 17, 2011, at 5:07 PM, Jean-Christophe Fillion-Robin wrote:
> Hi Bradley,
>
> I am assuming you want the variable to be substituted at build time ...
>
> Instead of ${Configure} .. try with ${CMAKE_CFG_INTDIR}
>
> See http://www.cmake.org/cmake/help/cmake-2-8-docs.html#variable:CMAKE_CFG_INTDIR
>
> Hth
> Jc
>
> On Sat, Sep 17, 2011 at 2:59 PM, Bradley Lowekamp <blowekamp at mail.nih.gov> wrote:
> Hello,
>
> There is a cmake variable which is having the following value:
> "C:Build/SimpleITK/lib/$(Configure)/_SimpleITK.pyd"
>
> And is needs to be:
> "C:Build/SimpleITK/lib/Release/_SimpleITK.pyd"
>
> I can finally get the python egg for distribution on windows system, But for some reason the "Configure" is not being substituted as needed.
>
> Here is some other CMake snippets relevant:
>
> # from SimpleITK/CMAKE/UseSWIGLocal.cmake
> ...
> ADD_LIBRARY(${SWIG_MODULE_${name}_REAL_NAME}
> MODULE
> ${swig_generated_sources}
> ${swig_other_sources})
> ...
>
> # from SimpleITK/Wrapping/CMakeLists.txt
> ..
> get_target_property( SIMPLEITK_BINARY_MODULE
> ${SWIG_MODULE_SimpleITK_REAL_NAME} LOCATION )
> configure_file( ${SimpleITK_SOURCE_DIR}/Wrapping/PythonPackage/setup.py.in
> ${SimpleITK_BINARY_DIR}/Wrapping/PythonPackage/setup.py )
> …
>
>
> Any help would be appreciated.
>
> Thanks,
> Brad
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://kitware.com/products/protraining.html
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers
>
>
>
> --
> +1 919 869 8849
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/mailman/private/insight-developers/attachments/20110917/5ef8c575/attachment.htm>
More information about the Insight-developers
mailing list