summaryrefslogtreecommitdiffstats
path: root/Modules/UseSWIG.cmake
Commit message (Collapse)AuthorAgeFilesLines
* SWIG: Add support for custom Swig source file extensionsThirumal Venkat2019-01-031-2/+24
|
* UseSWIG: add management of SWIG option -moduleMarc Chevrier2018-12-071-0/+25
| | | | | | | When file property SWIG_MODULE_NAME is specified, provide option -module to SWIG compiler. Fixes: #18374
* Merge topic 'UseSWIG-typos'Brad King2018-10-301-2/+2
|\ | | | | | | | | | | | | | | 2fc43415ef UseSWIG: Add target language and input file in command description 20fd16e756 UseSWIG: Typo, add missing letter Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2542
| * UseSWIG: Add target language and input file in command descriptionSylvain Joubert2018-10-291-1/+1
| |
| * UseSWIG: Typo, add missing letterSylvain Joubert2018-10-291-1/+1
| |
* | Merge topic 'UseSWIG-multi-input'Brad King2018-10-301-2/+9
|\ \ | | | | | | | | | | | | | | | | | | bb57cb80eb UseSWIG: multiple input files must be supported in version 2 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2539
| * | UseSWIG: multiple input files must be supported in version 2Marc Chevrier2018-10-291-2/+9
| |/ | | | | | | Fixes: #18506
| * Merge branch 'UseSWIG-php-regression' into release-3.13Brad King2018-10-081-0/+4
| |\ | | | | | | | | | Merge-request: !2448
* | | cmake_policy: Add undocumented GET_WARNING commandKyle Edwards2018-10-101-5/+2
| | | | | | | | | | | | | | | | | | | | | This command is intended for modules that issue policy warnings so they can get the warning string from CMake in a uniform manner, rather than duplicating the string. Several modules been updated to include an example of the usage of this new command.
* | | Merge topic 'UseSWIG-php-regression'Brad King2018-10-081-0/+4
|\ \ \ | |/ / |/| / | |/ | | | | | | ecd0fec40b UseSWIG: fix regression for PHP language Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2448
| * UseSWIG: fix regression for PHP languageMarc Chevrier2018-10-051-0/+4
| | | | | | | | | | | | | | Refactoring in commit v3.12.0-rc1~481^2 (UseSWIG: modernize module, 2018-01-29) accidentally regressed support for PHP. Fix it. Fixes: #18421
* | Merge topic 'UseSWIG-legacy-user-flags'Brad King2018-08-011-3/+4
|\ \ | |/ | | | | | | | | | | | | 2f88c177d0 UseSWIG: restore legacy behavior for SWIG_MODULE_<name>_EXTRA_FLAGS Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Julien Schueller <schueller@phimeca.com> Merge-request: !2245
| * UseSWIG: restore legacy behavior for SWIG_MODULE_<name>_EXTRA_FLAGSMarc Chevrier2018-07-311-3/+4
| | | | | | | | Fixes: #18226
* | UseSWIG: add policy to manage target naming strategy.Marc Chevrier2018-07-251-15/+26
| |
* | Merge topic 'UseSWIG-csharp-conditional'Brad King2018-07-191-1/+1
|\ \ | |/ | | | | | | | | | | | | | | ed289e0577 UseSWIG: Use CSharp language only if it is enabled Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ram-Z <me@rmz.io> Acked-by: Marc Chevrier <marc.chevrier@gmail.com> Merge-request: !2219
| * UseSWIG: Use CSharp language only if it is enabledBrad King2018-07-181-1/+1
| | | | | | | | | | | | | | | | | | In commit v3.12.0-rc1~2^2 (UseSWIG: Add CSHARP variant for wrapper files, 2018-06-08) we explicitly marked swig-generated `.cs` files as `LANGUAGE` CSharp so that the resulting sources can be compiled. However, this works only when the CSharp language has been enabled. Fixes: #18184
* | Merge branch 'backport-UseSWIG-legacy-targets' into UseSWIG-legacy-targetsBrad King2018-07-031-55/+113
|\ \ | |/ | | | | Resolve conflicts by integrating changes from both sides.
| * UseSWIG: reintroduce legacy target name managementMarc Chevrier2018-07-031-53/+111
| | | | | | | | Fixes: #18140
| * Merge branch 'UseSWIG-csharp-variant' into release-3.12Brad King2018-06-131-2/+7
| |\ | | | | | | | | | Merge-request: !2137
| * \ Merge branch 'UseSWIG-fix-genex' into release-3.12Brad King2018-06-121-7/+7
| |\ \ | | | | | | | | | | | | Merge-request: !2143
* | | | UseSWIG: add support of target property INCLUDE_DIRECTORIES consumptionMarc Chevrier2018-06-131-0/+22
| | | | | | | | | | | | | | | | Fixes: #18003
* | | | Merge topic 'UseSWIG-csharp-variant'Brad King2018-06-131-2/+7
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | 0c2fb4c896 UseSWIG: Add CSHARP variant for wrapper files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2137
| * | | UseSWIG: Add CSHARP variant for wrapper filesRishi Theivendran2018-06-121-2/+7
| | | | | | | | | | | | | | | | | | | | Issue: #18065 Fixes: #18066
* | | | Merge topic 'UseSWIG-fix-genex'Brad King2018-06-131-7/+7
|\ \ \ \ | |_|/ / |/| | / | | |/ | |/| | | | | | | 88dd5dc9ff UseSWIG: add support for generator expressions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2143
| * | UseSWIG: add support for generator expressionsMarc Chevrier2018-06-121-7/+7
| |/
* | UseSWIG: Fix handling of `SWIG_MODULE_NAME` source file propertyFelix Schwitzer2018-06-121-1/+1
|/ | | | | | | | | | | | Fix a typo from commit 0bef9eb410 (UseSWIG: modernize module, 2018-01-29) that caused `UseSWIG` to ignore an eventually set property `SWIG_MODLUE_NAME`. Building multiple python modules using the mentioned property as described in the docs could lead to an invalid, or even worse, inconsistent `build.ninja` file. The reason is that the generated list of support files was not unique. For each module the support file was always named the same, namely `path/to/builddir/MODULENAME.py`.
* UseSWIG: fix erroneous generator expressionsMarc Chevrier2018-04-101-7/+11
| | | | Add note regarding multi-config generators
* UseSWIG: Add new behavior for better support files managementMarc Chevrier2018-04-031-40/+115
| | | | fixes: #17840
* UseSWIG: fix prefix library for Java on WindowsMarc Chevrier2018-03-221-9/+17
| | | | Fixes: #17836
* UseSWIG: modernize moduleMarc Chevrier2018-02-141-148/+337
|
* UseSWIG: Re-work test frameworkMarc Chevrier2018-02-141-0/+6
|
* UseSWIG: Restore support for like-named .i files in different modulesMarc Chevrier2018-02-021-2/+4
| | | | | | | | | | | Fix logic added by commit 2ee10119ea (swig: fix incremental build in case of removed interface files, 2017-11-06). Name the extra targets added for Makefile generators using both the module name and .i base name to avoid collisions across modules. Also make sure the extra targets added for all .i files in a module are added as dependencies instead of just the last one. Fixes: #17704
* UseSWIG: Clarify documentation of SWIG_OUTFILE_DIRNoel Eck2018-01-311-2/+2
| | | | | | | | | The `SWIG_OUTFILE_DIR` variable provides the option to specify an output directory location. This commit removes portion stating that this is equal to the `swig -o` option since it does not set the output filename. Fixes: #17703 Signed-off-by: Noel Eck <noel.eck@intel.com>
* UseSWIG: Improve documentation markupBrad King2018-01-311-31/+42
|
* UseSWIG: Convert docs to a bracket commentBrad King2018-01-311-52/+53
|
* swig: fix incremental build in case of removed interface filesFelix Schwitzer2017-11-081-1/+34
| | | | | | | | | | | | | | Commit v3.8.0-rc1~123^2 (UseSWIG: Automatically scan dependencies of SWIG files for Makefiles, 2016-12-21) introduced automatic dependency scanning for files `%include`d in a swig interface definition file. This works fine as long as no such file is removed. But removing a dependent file breaks an incremental build and `make` complains about a missing dependency, see #16830. Integrate the approach proposed in the issue above into the SWIG-module, do the workaround in a conditional step as it arises only for Makefile generators. For other generators use the implementation before that commit. Fixes: #17433.
* Merge topic 'UseSWIG-Java-enabled'Brad King2017-08-031-2/+4
|\ | | | | | | | | | | | | b4fbf677 UseSWIG: Fix when Java is enabled as a language Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1095
| * UseSWIG: Fix when Java is enabled as a languageBrad King2017-08-021-2/+4
| | | | | | | | | | | | | | | | | | | | Since commit v3.8.0-rc1~251^2 (UseSWIG: Record generated java files as custom command outputs, 2016-11-28) the generated `.java` files are listed as sources in the call to `add_library` by swig_add_library. They are listed only as the outputs of custom commands and not intended for compilation as part of the library. Reported-by: Alan W. Irwin <irwin@beluga.phys.uvic.ca>
* | UseSWIG: Add `-dllimport` only if not already specifiedRobert Langlois2017-06-141-4/+7
|/ | | | | | | | SWIG fails with a redefined macro error when `-dllimport` is specified more than once. One case where you would want to specify your own dllimport is when using SWIG with netstandard2.0. .NET Core does not search for shared library like Mono or .NET, so you need a fully qualified shared library name.
* UseSWIG: Fall back to empty PREFIX for unknown languagesBrad King2017-04-251-0/+3
| | | | | | | Teach `SWIG_ADD_LIBRARY` to fall back to an empty library prefix for languages we don't explicitly define already. Suggested-by: Alan W. Irwin <irwin@beluga.phys.uvic.ca>
* Merge topic 'dont-include-CMakeParseArguments'Brad King2017-01-121-3/+0
|\ | | | | | | | | d6877e6c Don't include CMakeParseArguments
| * Don't include CMakeParseArgumentsDaniel Pfeifer2017-01-111-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | The cmake_parse_arguments command is builtin with version 3.5. The CMakeParseArguments module is empty and exists for backwards compatibility with CMake 3.4 and lower. Remove the includes of CMakeParseArguments from CMake's modules. The modules are always used with the current version of CMake. Leave the includes in the tests, as the tests may be run with an older version of CMake.
* | UseSWIG: Automatically scan dependencies of SWIG files for MakefilesAlexey Sokolov2017-01-101-0/+1
|/ | | | Issue: #4147
* UseSWIG: Record generated java files as custom command outputscaryoscelus2016-11-291-3/+4
| | | | | | When another target depends on the generated files CMake must know which custom command generates them in order to hook up the dependency properly. We already do this for Python. Add the Java files too.
* UseSWIG: Add USE_BUILD_SHARED_LIBS to accepted values for the TYPE argDaniele E. Domenichelli2016-11-141-1/+3
| | | | | | | | | | The new signature is SWIG_ADD_LIBRARY(<name> [TYPE <SHARED|MODULE|STATIC|USE_BUILD_SHARED_LIBS>] LANGUAGE <language> SOURCES <file>... )
* UseSWIG: Do not set PREFIX property for SHARED and STATIC lua librariesDaniele E. Domenichelli2016-11-111-1/+3
|
* UseSWIG: Do not set NO_SONAME property for SHARED and STATIC librariesDaniele E. Domenichelli2016-11-111-1/+3
|
* UseSWIG: Add swig_add_library macro.Daniele E. Domenichelli2016-11-111-7/+41
| | | | | | | | | | | | | | | | | swig_add_module does not allow to set the type for the library and instead always create the library as MODULE. This patch adds the new swig_add_library command with this signature: SWIG_ADD_LIBRARY(<name> [TYPE <SHARED|MODULE|STATIC>] LANGUAGE <language> SOURCES <file>... ) The swig_add_module is deprecated in favour of swig_add_library. Closes: #16415
* UseSWIG: Add option to specify swig output file directoryCong Zhang2016-11-011-3/+13
| | | | | | | | | | `swig` has two output-related options: * `-o <outfile>`: Set name of C/C++ output file to <outfile> * `-outdir <dir>`: Set language-specific files output directory to <dir> We already have `CMAKE_SWIG_OUTDIR` for the latter. Add a new `SWIG_OUTFILE_DIR` option for the former.
* Simplify CMake per-source license noticesBrad King2016-09-271-14/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Per-source copyright/license notice headers that spell out copyright holder names and years are hard to maintain and often out-of-date or plain wrong. Precise contributor information is already maintained automatically by the version control tool. Ultimately it is the receiver of a file who is responsible for determining its licensing status, and per-source notices are merely a convenience. Therefore it is simpler and more accurate for each source to have a generic notice of the license name and references to more detailed information on copyright holders and full license terms. Our `Copyright.txt` file now contains a list of Contributors whose names appeared source-level copyright notices. It also references version control history for more precise information. Therefore we no longer need to spell out the list of Contributors in each source file notice. Replace CMake per-source copyright/license notice headers with a short description of the license and links to `Copyright.txt` and online information available from "https://cmake.org/licensing". The online URL also handles cases of modules being copied out of our source into other projects, so we can drop our notices about replacing links with full license text. Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority of the replacements mechanically. Manually fix up shebang lines and trailing newlines in a few files. Manually update the notices in a few files that the script does not handle.