This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMake".
The branch, next has been updated via 319ec8fe8e53b480fe6400d83887bbaee2f89695 (commit) via 75e12d93debb950e1f82b7527b23d7c79aeec0e9 (commit) via 0ded1778b4f857180331b7aef0b207b8fe14013d (commit) via fee677bb29fabb273c0ac4028f0ad64a2b0cf194 (commit) via c6827bcb61cd04a5783ae64cff3e2e819e895b95 (commit) via 65512c37a33423db4ef458f85871f5cafc0306a3 (commit) via 0fd099b487dfdaf8fd9865938fbef933a6e52cc5 (commit) from deb696247fb4a48477ed100e5ddd49f8d13e2400 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=319ec8fe8e53b480fe6400d83887bbaee2f89695 commit 319ec8fe8e53b480fe6400d83887bbaee2f89695 Merge: deb6962 75e12d9 Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Feb 8 12:02:33 2012 -0500 Commit: CMake Topic Stage <kwro...@kitware.com> CommitDate: Wed Feb 8 12:02:33 2012 -0500 Merge topic 'cmake_add_fortran_subdirectory' into next 75e12d9 CMakeAddFortranSubdirectory: Add NO_EXTERNAL_INSTALL option 0ded177 CMakeAddFortranSubdirectory: Always parse arguments fee677b Remove unused Modules/external_mingw_project.cmake.in c6827bc Rename directory Modules/{ => CMake}AddFortranSubdirectory 65512c3 Hide CheckFortran back in Tests and use CheckLanguage instead 0fd099b Merge branch 'add-CheckLanguage-module' into cmake_add_fortran_subdirectory http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=75e12d93debb950e1f82b7527b23d7c79aeec0e9 commit 75e12d93debb950e1f82b7527b23d7c79aeec0e9 Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Feb 8 11:58:57 2012 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Wed Feb 8 11:58:57 2012 -0500 CMakeAddFortranSubdirectory: Add NO_EXTERNAL_INSTALL option 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. diff --git a/Modules/CMakeAddFortranSubdirectory.cmake b/Modules/CMakeAddFortranSubdirectory.cmake index 681b09e..ddb79fb 100644 --- a/Modules/CMakeAddFortranSubdirectory.cmake +++ b/Modules/CMakeAddFortranSubdirectory.cmake @@ -19,10 +19,17 @@ # LINK_LIBRARIES # link interface libraries for LIBRARIES # [LINK_LIBS <lib> <dep>...]... # CMAKE_COMMAND_LINE ... # extra command line flags to pass to cmake +# NO_EXTERNAL_INSTALL # skip installation of external project # ) # Relative paths in ARCHIVE_DIR and RUNTIME_DIR are interpreted with respect # to the build directory corresponding to the source directory in which the # function is invoked. +# +# Limitations: +# +# NO_EXTERNAL_INSTALL is required for forward compatibility with a +# future version that supports installation of the external project +# binaries during "make install". #============================================================================= # Copyright 2011-2012 Kitware, Inc. @@ -100,9 +107,16 @@ endfunction() function(cmake_add_fortran_subdirectory subdir) # Parse arguments to function + set(options NO_EXTERNAL_INSTALL) set(oneValueArgs PROJECT ARCHIVE_DIR RUNTIME_DIR) set(multiValueArgs LIBRARIES LINK_LIBRARIES CMAKE_COMMAND_LINE) - cmake_parse_arguments(ARGS "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + cmake_parse_arguments(ARGS "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + if(NOT ARGS_NO_EXTERNAL_INSTALL) + message(FATAL_ERROR + "Option NO_EXTERNAL_INSTALL is required (for forward compatibility) " + "but was not given." + ) + endif() # if we are not using MSVC without fortran support # then just use the usual add_subdirectory to build diff --git a/Tests/VSGNUFortran/subdir/CMakeLists.txt b/Tests/VSGNUFortran/subdir/CMakeLists.txt index df018b3..0b99199 100644 --- a/Tests/VSGNUFortran/subdir/CMakeLists.txt +++ b/Tests/VSGNUFortran/subdir/CMakeLists.txt @@ -12,4 +12,5 @@ cmake_add_fortran_subdirectory(fortran -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=${CMAKE_LIBRARY_OUTPUT_DIRECTORY} LINK_LIBRARIES # link interface libraries LINK_LIBS hello world # hello needs world to link - ) + NO_EXTERNAL_INSTALL + ) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0ded1778b4f857180331b7aef0b207b8fe14013d commit 0ded1778b4f857180331b7aef0b207b8fe14013d Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Feb 8 11:55:07 2012 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Wed Feb 8 11:57:00 2012 -0500 CMakeAddFortranSubdirectory: Always parse arguments Parse arguments even in add_subdirectory() mode to validate them. diff --git a/Modules/CMakeAddFortranSubdirectory.cmake b/Modules/CMakeAddFortranSubdirectory.cmake index 148749f..681b09e 100644 --- a/Modules/CMakeAddFortranSubdirectory.cmake +++ b/Modules/CMakeAddFortranSubdirectory.cmake @@ -25,7 +25,7 @@ # function is invoked. #============================================================================= -# Copyright 2011 Kitware, Inc. +# Copyright 2011-2012 Kitware, Inc. # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. @@ -99,6 +99,11 @@ endfunction() function(cmake_add_fortran_subdirectory subdir) + # Parse arguments to function + set(oneValueArgs PROJECT ARCHIVE_DIR RUNTIME_DIR) + set(multiValueArgs LIBRARIES LINK_LIBRARIES CMAKE_COMMAND_LINE) + cmake_parse_arguments(ARGS "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + # if we are not using MSVC without fortran support # then just use the usual add_subdirectory to build # the fortran library @@ -111,10 +116,6 @@ function(cmake_add_fortran_subdirectory subdir) # if we have MSVC without Intel fortran then setup # external projects to build with mingw fortran - # Parse arguments to function - set(oneValueArgs PROJECT ARCHIVE_DIR RUNTIME_DIR) - set(multiValueArgs LIBRARIES LINK_LIBRARIES CMAKE_COMMAND_LINE) - cmake_parse_arguments(ARGS "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) set(source_dir "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}") set(project_name "${ARGS_PROJECT}") set(library_dir "${ARGS_ARCHIVE_DIR}") http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fee677bb29fabb273c0ac4028f0ad64a2b0cf194 commit fee677bb29fabb273c0ac4028f0ad64a2b0cf194 Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Feb 8 11:28:11 2012 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Wed Feb 8 11:28:11 2012 -0500 Remove unused Modules/external_mingw_project.cmake.in This file was added with CMakeAddFortranSubdirectory.cmake but is not used. diff --git a/Modules/external_mingw_project.cmake.in b/Modules/external_mingw_project.cmake.in deleted file mode 100644 index 5db8a1e..0000000 --- a/Modules/external_mingw_project.cmake.in +++ /dev/null @@ -1,54 +0,0 @@ -include(ExternalProject) - -set(LAPACK_BUILD_DIR "${fortranc_BINARY_DIR}/lapack-build") -find_program(MINGW_GFORTRAN gfortran - c:/MinGW/bin - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\MinGW;InstallLocation]/bin") -if(NOT MINGW_GFORTRAN) - message(FATAL_ERROR - "gfortran not found, please install MinGW with the gfortran option." - " This is required to build blas/lapack") -endif() -get_filename_component(MINGW_PATH ${MINGW_GFORTRAN} PATH) -file(TO_NATIVE_PATH "${MINGW_PATH}" MINGW_PATH) -string(REPLACE "\\" "\\\\" MINGW_PATH "${MINGW_PATH}") -configure_file(${fortranc_SOURCE_DIR}/config_mingw.cmake.in - ${fortranc_BINARY_DIR}/config_mingw.cmake @ONLY) -configure_file(${fortranc_SOURCE_DIR}/build_mingw.cmake.in - ${fortranc_BINARY_DIR}/build_mingw.cmake @ONLY) - -externalproject_add(LAPACK - SOURCE_DIR ${fortranc_SOURCE_DIR}/lapack - BINARY_DIR ${fortranc_BINARY_DIR}/lapack-build - CONFIGURE_COMMAND ${CMAKE_COMMAND} - -P ${fortranc_BINARY_DIR}/config_mingw.cmake - BUILD_COMMAND ${CMAKE_COMMAND} - -P ${fortranc_BINARY_DIR}/build_mingw.cmake - INSTALL_COMMAND "" -) - -externalproject_add_step(LAPACK forcebuild - COMMAND ${CMAKE_COMMAND} - -E remove ${CMAKE_CURRENT_BUILD_DIR}/lapack-prefix/src/lapack-stamp/lapack-build - DEPENDEES configure - DEPENDERS build - ALWAYS 1 -) - -add_library(blas SHARED IMPORTED) -add_library(lapack SHARED IMPORTED) -# Import target "blas" for configuration "" -set_property(TARGET blas APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG) -set_target_properties(blas PROPERTIES - IMPORTED_IMPLIB_NOCONFIG "${LAPACK_BUILD_DIR}/lib/libblas.lib" - IMPORTED_LOCATION_NOCONFIG "${LAPACK_BUILD_DIR}/bin/libblas.dll" - ) - -# Import target "lapack" for configuration "" -set_property(TARGET lapack APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG) -set_target_properties(lapack PROPERTIES - IMPORTED_IMPLIB_NOCONFIG "${LAPACK_BUILD_DIR}/lib/liblapack.lib" - IMPORTED_LINK_INTERFACE_LIBRARIES_NOCONFIG "blas" - IMPORTED_LOCATION_NOCONFIG "${LAPACK_BUILD_DIR}/bin/liblapack.dll" - ) -add_dependencies(lapack LAPACK) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c6827bcb61cd04a5783ae64cff3e2e819e895b95 commit c6827bcb61cd04a5783ae64cff3e2e819e895b95 Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Feb 8 11:26:25 2012 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Wed Feb 8 11:26:25 2012 -0500 Rename directory Modules/{ => CMake}AddFortranSubdirectory The latter matches the module name that uses it. diff --git a/Modules/CMakeAddFortranSubdirectory.cmake b/Modules/CMakeAddFortranSubdirectory.cmake index cc42ee3..148749f 100644 --- a/Modules/CMakeAddFortranSubdirectory.cmake +++ b/Modules/CMakeAddFortranSubdirectory.cmake @@ -83,11 +83,11 @@ function(_setup_mingw_config_and_build source_dir) file(TO_NATIVE_PATH "${MINGW_PATH}" MINGW_PATH) string(REPLACE "\\" "\\\\" MINGW_PATH "${MINGW_PATH}") configure_file( - ${_MS_MINGW_SOURCE_DIR}/AddFortranSubdirectory/config_mingw.cmake.in + ${_MS_MINGW_SOURCE_DIR}/CMakeAddFortranSubdirectory/config_mingw.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/config_mingw.cmake @ONLY) configure_file( - ${_MS_MINGW_SOURCE_DIR}/AddFortranSubdirectory/build_mingw.cmake.in + ${_MS_MINGW_SOURCE_DIR}/CMakeAddFortranSubdirectory/build_mingw.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/build_mingw.cmake @ONLY) endfunction() diff --git a/Modules/AddFortranSubdirectory/build_mingw.cmake.in b/Modules/CMakeAddFortranSubdirectory/build_mingw.cmake.in similarity index 100% rename from Modules/AddFortranSubdirectory/build_mingw.cmake.in rename to Modules/CMakeAddFortranSubdirectory/build_mingw.cmake.in diff --git a/Modules/AddFortranSubdirectory/config_mingw.cmake.in b/Modules/CMakeAddFortranSubdirectory/config_mingw.cmake.in similarity index 100% rename from Modules/AddFortranSubdirectory/config_mingw.cmake.in rename to Modules/CMakeAddFortranSubdirectory/config_mingw.cmake.in http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=65512c37a33423db4ef458f85871f5cafc0306a3 commit 65512c37a33423db4ef458f85871f5cafc0306a3 Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Feb 8 11:22:19 2012 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Wed Feb 8 11:22:19 2012 -0500 Hide CheckFortran back in Tests and use CheckLanguage instead The CheckFortran module was moved to the Modules directory for use by CMakeAddFortranSubdirectory. Move it back to Tests and use the more general CheckLanguage module instead. diff --git a/Modules/CMakeAddFortranSubdirectory.cmake b/Modules/CMakeAddFortranSubdirectory.cmake index 8cfe2fb..cc42ee3 100644 --- a/Modules/CMakeAddFortranSubdirectory.cmake +++ b/Modules/CMakeAddFortranSubdirectory.cmake @@ -39,7 +39,7 @@ set(_MS_MINGW_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}) -include(CheckFortran) +include(CheckLanguage) include(ExternalProject) include(CMakeParseArguments) @@ -102,6 +102,7 @@ function(cmake_add_fortran_subdirectory subdir) # if we are not using MSVC without fortran support # then just use the usual add_subdirectory to build # the fortran library + check_language(Fortran) if(NOT (MSVC AND (NOT CMAKE_Fortran_COMPILER))) add_subdirectory(${subdir}) return() diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 0839997..9c97828 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -16,7 +16,7 @@ MACRO(ADD_TEST_MACRO NAME COMMAND) LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${dir}") ENDMACRO(ADD_TEST_MACRO) -INCLUDE(${CMake_SOURCE_DIR}/Modules/CheckFortran.cmake) +INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/CheckFortran.cmake) # Fake a user home directory to avoid polluting the real one. IF(DEFINED ENV{HOME} AND NOT CTEST_NO_TEST_HOME) diff --git a/Modules/CheckFortran.cmake b/Tests/CheckFortran.cmake similarity index 100% rename from Modules/CheckFortran.cmake rename to Tests/CheckFortran.cmake http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0fd099b487dfdaf8fd9865938fbef933a6e52cc5 commit 0fd099b487dfdaf8fd9865938fbef933a6e52cc5 Merge: 4b5e270 5db99e8 Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Feb 8 11:18:44 2012 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Wed Feb 8 11:18:44 2012 -0500 Merge branch 'add-CheckLanguage-module' into cmake_add_fortran_subdirectory ----------------------------------------------------------------------- Summary of changes: Modules/CMakeAddFortranSubdirectory.cmake | 32 +++++++++--- .../build_mingw.cmake.in | 0 .../config_mingw.cmake.in | 0 Modules/external_mingw_project.cmake.in | 54 -------------------- Tests/CMakeLists.txt | 2 +- {Modules => Tests}/CheckFortran.cmake | 0 Tests/VSGNUFortran/subdir/CMakeLists.txt | 3 +- 7 files changed, 27 insertions(+), 64 deletions(-) rename Modules/{AddFortranSubdirectory => CMakeAddFortranSubdirectory}/build_mingw.cmake.in (100%) rename Modules/{AddFortranSubdirectory => CMakeAddFortranSubdirectory}/config_mingw.cmake.in (100%) delete mode 100644 Modules/external_mingw_project.cmake.in rename {Modules => Tests}/CheckFortran.cmake (100%) hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits