summaryrefslogtreecommitdiffstats
path: root/Modules/UseSWIG.cmake
Commit message (Collapse)AuthorAgeFilesLines
* FindSWIG: Do not generate erroneous outputs with -noproxyBen Webb2015-09-091-4/+6
| | | | | | | | | | | | | Generally for a module foo, SWIG generates (in Python mode) an extension module _foo.so and a proxy Python module foo.py. However, if -noproxy is specified, instead it builds only foo.so (without the leading underscore). The custom command generated by CMake correctly handles the removal of this underscore when -noproxy is given; however, it still adds foo.py to the expected outputs. This upsets build tools that expect foo.py to be generated (for example, 'make' will run the SWIG command twice). Fix this by removing foo.py from the set of extra generated files when -noproxy is specified.
* Revert "add_custom_command: Diagnose MAIN_DEPENDENCY limitation."Nils Gladitz2015-04-301-1/+2
| | | | | | | | | | | | This reverts commit 242c3966 (add_custom_command: Diagnose MAIN_DEPENDENCY limitation, 2015-03-09) and the follow up commit b372a99a (UseSWIG: Do not use MAIN_DEPENDENCY on custom commands, 2015-03-26). I misdiagnosed the underlying issue that prompted creation of policy CMP0057. The actual issue surfaces when a single custom command's MAIN_DEPENDENCY is listed in more than one target; this issue will have to be addressed independently.
* UseSWIG: Fix module name detection with relative source file (#15508)Tuukka Pasanen2015-04-151-1/+1
| | | | | | | When SWIG_GET_EXTRA_OUTPUT_FILES checks to see if a source file exists for use in reading the module name, it must pass an absolute path to the if(EXISTS) command. Teach SWIG_ADD_SOURCE_TO_MODULE to give it the absolute path it already knows.
* UseSWIG: Do not use MAIN_DEPENDENCY on custom commands (#15480)Felix Schwitzer2015-03-301-2/+1
| | | | | | | | | Add the dependency on the main swig input source file as a normal DEPENDS option. We cannot use MAIN_DEPENDENCY because if there are multiple target languages then multiple custom commands would want to use the same MAIN_DEPENDENCY, but at most one custom command may specify a given source file as its MAIN_DEPENDENCY. Exposed by a CMP0057 warning.
* UseSWIG: Avoid if() auto-dereferene in quoted argumentsBrad King2015-03-091-4/+4
| | | | | | | Protect against variables named "CSHARP", "PERL", "PYTHON", or "UNKNOWN" when CMP0054 is not set to NEW. Reported-by: Tuukka Pasanen <tuukka@iocaste.ilmi.fi>
* UseSWIG: Fix R module prefixJulien Schueller2014-10-141-0/+2
|
* Merge topic 'UseSWIG-fix-noproxy-check'Brad King2014-06-271-1/+1
|\ | | | | | | | | e932ac9c UseSWIG: Fix check for noproxy flag (#14990)
| * UseSWIG: Fix check for noproxy flag (#14990)Brad King2014-06-251-1/+1
| | | | | | | | | | | | | | | | | | The check for this flag added by commit v3.0.0-rc1~284^2 (UseSWIG: Name python module according to swig flags, 2013-11-26) can get false positives on flags like "-noproxydel". Improve the check to match only "-noproxy". Suggested-by: Garth Wells <gnw20@cam.ac.uk>
* | UseSWIG: Add support for Go and LuaJulien Schueller2014-04-291-0/+4
| |
* | Merge topic 'UseSWIG-guess_module_name'Brad King2014-04-211-17/+56
|\ \ | | | | | | | | | | | | | | | 2c96192f UseSWIG: Revise and format documentation e147c5c5 UseSWIG: Detect module name from interface file (#10080)
| * | UseSWIG: Revise and format documentationJulien Schueller2014-04-211-16/+32
| | | | | | | | | | | | Also add some documentation of SWIG_MODULE_NAME.
| * | UseSWIG: Detect module name from interface file (#10080)Julien Schueller2014-04-211-1/+24
| | | | | | | | | | | | | | | If no SWIG_MODULE_NAME is specified explicitly and the .i file exists, scan it for the module name declaration.
* | | Remove .* expressions from beginning and end of MATCHES regexsRolf Eike Beer2014-04-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | All these expressions work the same: "foo" ".*foo.*" "^.*foo.*$" This assumes that the "Intel*" expressions were meant to be "Intel.*".
* | | Merge topic 'UseSWIG-NO_SONAME'Brad King2014-04-011-0/+1
|\ \ \ | |/ / |/| | | | | | | | f26147b8 UseSWIG: Enable NO_SONAME on swig modules (#14815)
| * | UseSWIG: Enable NO_SONAME on swig modules (#14815)Julien Schueller2014-04-011-0/+1
| | | | | | | | | | | | Swig modules are plugins and do not need the SONAME field set.
* | | Revert "UseSWIG: Name extra generated files after module name (#10080)"Julien Schueller2014-03-201-4/+3
|/ / | | | | | | This reverts commit f0111deb1ea21f667b2fbf57f55d5ee2a80f5ccc.
* | UseSWIG: Name extra generated files after module name (#10080)Julien Schueller2014-02-241-3/+4
|/
* Help: Fix some erroneous code block markers in Module docs.Stephen Kelly2014-01-071-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are many style errors in these files. This patch fixes only the syntactical errors. The script which ported these to rst tripped on some incorrectly formatted blocks in the original input documentation. Use a new script to find problematic code (and then fix them manually): #!/usr/bin/env python import os rootDir = '.' def checkFile(fname): f = open(fname) lines = f.readlines() started = False counter = 0 for l in lines: if "#" in l: started = True elif started: return lin = l.find("(") if lin != -1 and l.find(")", lin) == -1 and \ not "(To distribute this file outside of CMake, substitute the full" in l: for lp in lines[counter+1:]: if lp == "# ::\n": print "\n\n######### " + fname + "\n\n" print ''.join(lines[max(counter-2, 0):counter+6]) break elif lp == "#\n" : continue break counter += 1 for dirName, subdirList, fileList in os.walk(rootDir): for fname in fileList: checkFile(os.path.join(dirName, fname))
* Merge topic 'UseSWIG-octave'Brad King2013-12-021-1/+4
|\ | | | | | | | | f39671c UseSWIG: Handle octave extensions.
| * UseSWIG: Handle octave extensions.Julien Schueller2013-11-291-1/+4
| |
* | Merge topic 'UseSWIG-fix12184'Brad King2013-12-021-2/+12
|\ \ | | | | | | | | | | | | 74f5545 UseSWIG: set .bundle ext on OSX and no prefix (#12184)
| * | UseSWIG: set .bundle ext on OSX and no prefix (#12184)Julien Schueller2013-11-281-2/+12
| |/
* | Merge topic 'UseSWIG-fix13318'Brad King2013-12-021-4/+7
|\ \ | |/ |/| | | | | a87c063 UseSWIG: Name python module according to swig flags (#13318)
| * UseSWIG: Name python module according to swig flags (#13318)Julien Schueller2013-11-261-4/+7
| |
* | Merge topic 'UseSWIG-fix14520'Brad King2013-11-261-0/+1
|\ \ | | | | | | | | | | | | 20028d6 UseSWIG: Remove duplicate include dirs (#14520)
| * | UseSWIG: Remove duplicate include dirs (#14520)Julien Schueller2013-11-251-0/+1
| | | | | | | | | | | | Shorten the swig command line.
* | | Merge topic 'UseSWIG-fix13814'Brad King2013-11-261-0/+4
|\ \ \ | |_|/ |/| | | | | | | | acc59e5 UseSWIG: Handle a dll name different than module name (#13814)
| * | UseSWIG: Handle a dll name different than module name (#13814)Julien Schueller2013-11-251-0/+4
| |/
* | UseSWIG: Fix .i relative source file location (#13173,#13772,#14459)Julien Schueller2013-11-251-30/+2
|/
* Convert builtin help to reStructuredText source filesKitware Robot2013-10-151-17/+28
| | | | | | | | Run the convert-help.bash script to convert documentation: ./convert-help.bash "/path/to/CMake-build/bin" Then remove it.
* Remove CMake-language block-end command argumentsKitware Robot2012-08-131-32/+32
| | | | | | | | | | | | | | | | | Ancient versions of CMake required else(), endif(), and similar block termination commands to have arguments matching the command starting the block. This is no longer the preferred style. Run the following shell code: for c in else endif endforeach endfunction endmacro endwhile; do echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | egrep -z -v 'Tests/CMakeTests/While-Endwhile-' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Convert CMake-language commands to lower caseKitware Robot2012-08-131-129/+129
| | | | | | | | | | | | | | | | | Ancient CMake versions required upper-case commands. Later command names became case-insensitive. Now the preferred style is lower-case. Run the following shell code: cmake --help-command-list | grep -v "cmake version" | while read c; do echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-5/+5
| | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* UseSWIG: clean up string comparesRolf Eike Beer2012-02-231-8/+5
|
* Merge topic 'revert-fixbug_0004147'Brad King2011-06-281-59/+0
|\ | | | | | | | | fc04531 Revert "Add a new function SWIG_GET_WRAPPER_DEPENDENCIES to UseSWIG.cmake"
| * Revert "Add a new function SWIG_GET_WRAPPER_DEPENDENCIES to UseSWIG.cmake"Brad King2011-06-271-59/+0
| | | | | | | | | | | | | | | | | | This reverts commit 1088b0278e74526298d0821589973918da33c44b. Wrapper dependency scanning (fix for #4147) does not work at CMake configuration time if an input file is provided by a custom command (regression #12307). Revert to original behavior until a solution is found.
* | Merge topic 'fixbug_0011782'Brad King2011-04-121-0/+1
|\ \ | | | | | | | | | | | | 0378396 UseSWIG.cmake did not support multiple modules and parallel builds
| * | UseSWIG.cmake did not support multiple modules and parallel buildsMathieu Malaterre2011-04-081-0/+1
| | | | | | | | | | | | | | | | | | This commit fixes BUG: 0011782. UseSWIG would be using the same variable to declare module information. The problem would only be noticed in parallel builds Fix this variable declaration by properly resetting it.
* | | Merge topic 'fixbug_0011215'Brad King2011-04-121-2/+2
|\ \ \ | |_|/ |/| | | | | | | | c088536 UseSWIG.cmake does not expand $(OutDir)
| * | UseSWIG.cmake does not expand $(OutDir)Mathieu Malaterre2011-04-081-2/+2
| |/ | | | | | | | | | | This commit fixes BUG: 0011215 by properly expanding $(OutDir) Instead of creating the output directory using file(MAKE_DIRECTORY) we use cmake -E to create the directory at execution time
* | Add a new function SWIG_GET_WRAPPER_DEPENDENCIES to UseSWIG.cmakeMathieu Malaterre2011-04-081-0/+59
|/ | | | | | | This commit fixes BUG: 0004147 it directly uses swig executable to compute a list of dependencies directly from the .i files to make sure to rebuild the swig module any of its direct dep. is touched
* Modules: Fix spelling 'To distributed' -> 'To distribute'Todd Gamblin2010-08-091-1/+1
|
* FIX: BUG: 0002199 Adding documentation for swig_generated_file_fullnameMathieu Malaterre2009-10-301-1/+6
|
* FIX: BUG: 0007915 Integrate portion of the patch. Also add .pyd support for ↵Mathieu Malaterre2009-10-301-2/+32
| | | | python module.
* Convert CMake non-find modules to BSD LicenseBrad King2009-09-281-0/+13
| | | | | | | This adds copyright/license notification blocks CMake's non-find modules. Most of the modules had no notices at all. Some had notices referring to the BSD license already. This commit normalizes existing notices and adds missing notices.
* BUG: fix for bug 6151Bill Hoffman2008-01-021-3/+8
|
* ENH: patch applied for bug 4517Ken Martin2007-03-051-38/+25
|
* ENH: Added interface to add extra dependencies.Brad King2006-08-251-0/+4
|
* ENH: cleanupsKen Martin2005-12-151-1/+1
|
* ENH: add documentation support for modulesBill Hoffman2005-12-141-8/+3
|