summaryrefslogtreecommitdiffstats
path: root/Modules/CMakeAddFortranSubdirectory.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Don't include CMakeParseArgumentsDaniel Pfeifer2017-01-111-1/+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.
* 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.
* Convert builtin help to reStructuredText source filesKitware Robot2013-10-151-26/+34
| | | | | | | | Run the convert-help.bash script to convert documentation: ./convert-help.bash "/path/to/CMake-build/bin" Then remove it.
* Allow two cmake_add_fortran_subdirectory calls in the same project.Bill Hoffman2012-02-161-6/+6
| | | | | | Configure the build_mingw.cmake.in config_mingw.cmake.in files into the binary directory of the directory being built, not the top level binary directory for the project.
* CMakeAddFortranSubdirectory: Add NO_EXTERNAL_INSTALL optionBrad King2012-02-091-1/+15
| | | | | | | | We do not yet support "make install" in the external project case. Document this explicitly in the interface. Require the caller to use an option to "disable" the unsupported behavior. This will allow us to add the behavior by default in the future without clobbering existing projects that handle the installation themselves.
* CMakeAddFortranSubdirectory: Always parse argumentsBrad King2012-02-091-4/+5
| | | | Parse arguments even in add_subdirectory() mode to validate them.
* CMakeAddFortranSubdirectory: Make IMPORTED targets GLOBALBill Hoffman2012-02-091-2/+2
| | | | | | | cmake_add_fortran_directory uses imported targets when using the mingw fortran compiler. This change makes those targets global in scope so they act just like the real targets that exist when a fortran compiler exists and regular add_subdirectory is used.
* CMakeAddFortranSubdirectory: Validate gfortran architectureBrad King2012-02-091-5/+21
| | | | | | Verify that MINGW_GFORTRAN not only points to a MinGW gfortran but also one that compiles for the target architecture. This prevents using a 32-bit gfortran in a 64-bit MSVC build.
* CMakeAddFortranSubdirectory: Find gfortran in PATHBrad King2012-02-091-4/+7
| | | | | | In the find_program(MINGW_GFORTRAN) call use the PATHS option for hard-coded guesses instead of HINTS. This allows the user environment to override the guesses and corrects usage of the command options.
* CMakeAddFortranSubdirectory: Fix documentation format and typosBrad King2012-02-091-14/+12
| | | | | Indent the function signature correctly. Fix some typos. Fix the copyright year.
* CMakeAddFortranSubdirectory: Allow full paths to directoriesBrad King2012-02-091-6/+13
| | | | | | | Fix the implementation to allow full paths with spaces. Change the interpretation of relative paths to be with respect to the current binary directory. This matches the convention used in ExternalProject. Test both full and relative paths in the VSGNUFortran test.
* Add CMakeAddFortranSubdirectory to use MinGW gfortran in VSBill Hoffman2012-02-091-0/+167
This patch adds a new module that allows for easy integration of MinGW gfortran and the Visual Studio compiler. It is done in a function called cmake_add_fortran_subdirectory. The patch also includes a test for this feature.