summaryrefslogtreecommitdiffstats
path: root/Modules/UseSWIG.cmake
diff options
context:
space:
mode:
authorJulien Schueller <schueller@phimeca.com>2013-11-26 10:15:33 (GMT)
committerBrad King <brad.king@kitware.com>2013-11-26 14:46:39 (GMT)
commita87c06328c4c836918216863c475beabf10d6c2d (patch)
tree6993b6101d6996aff0d454c45c22d28207418f34 /Modules/UseSWIG.cmake
parentda6b86f4f031b189768dc474721145a1b99f71ea (diff)
downloadCMake-a87c06328c4c836918216863c475beabf10d6c2d.zip
CMake-a87c06328c4c836918216863c475beabf10d6c2d.tar.gz
CMake-a87c06328c4c836918216863c475beabf10d6c2d.tar.bz2
UseSWIG: Name python module according to swig flags (#13318)
Diffstat (limited to 'Modules/UseSWIG.cmake')
-rw-r--r--Modules/UseSWIG.cmake11
1 files changed, 7 insertions, 4 deletions
diff --git a/Modules/UseSWIG.cmake b/Modules/UseSWIG.cmake
index 4329053..30919ff 100644
--- a/Modules/UseSWIG.cmake
+++ b/Modules/UseSWIG.cmake
@@ -59,12 +59,15 @@ macro(SWIG_MODULE_INITIALIZE name language)
set(SWIG_MODULE_${name}_SWIG_LANGUAGE_FLAG "${swig_lowercase_language}")
set(SWIG_MODULE_${name}_REAL_NAME "${name}")
+ if (CMAKE_SWIG_FLAGS MATCHES "-noproxy")
+ set (SWIG_MODULE_${name}_NOPROXY TRUE)
+ endif ()
if("${SWIG_MODULE_${name}_LANGUAGE}" STREQUAL "UNKNOWN")
message(FATAL_ERROR "SWIG Error: Language \"${language}\" not found")
- elseif("${SWIG_MODULE_${name}_LANGUAGE}" STREQUAL "PYTHON")
- # when swig is used without the -interface it will produce in the module.py
- # a 'import _modulename' statement, which implies having a corresponding
- # _modulename.so (*NIX), _modulename.pyd (Win32).
+ elseif("${SWIG_MODULE_${name}_LANGUAGE}" STREQUAL "PYTHON" AND NOT SWIG_MODULE_${name}_NOPROXY)
+ # swig will produce a module.py containing an 'import _modulename' statement,
+ # which implies having a corresponding _modulename.so (*NIX), _modulename.pyd (Win32),
+ # unless the -noproxy flag is used
set(SWIG_MODULE_${name}_REAL_NAME "_${name}")
elseif("${SWIG_MODULE_${name}_LANGUAGE}" STREQUAL "PERL")
set(SWIG_MODULE_${name}_EXTRA_FLAGS "-shadow")