diff --git a/CBLAS/CMakeLists.txt b/CBLAS/CMakeLists.txt --- a/CBLAS/CMakeLists.txt +++ b/CBLAS/CMakeLists.txt @@ -1,8 +1,6 @@ message(STATUS "CBLAS enabled") enable_language(C) -set(LAPACK_INSTALL_EXPORT_NAME ${CBLASLIB}-targets) - # Create a header file cblas.h for the routines called in my C programs include(CheckLanguage) check_language(Fortran) @@ -54,22 +52,3 @@ DESTINATION ${PKG_CONFIG_DIR} COMPONENT Development ) - -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/cblas-config-version.cmake.in - ${LAPACK_BINARY_DIR}/${CBLASLIB}-config-version.cmake @ONLY) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/cblas-config-build.cmake.in - ${LAPACK_BINARY_DIR}/${CBLASLIB}-config.cmake @ONLY) - -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/cblas-config-install.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${CBLASLIB}-config.cmake @ONLY) -install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${CBLASLIB}-config.cmake - ${LAPACK_BINARY_DIR}/${CBLASLIB}-config-version.cmake - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${CBLASLIB}-${LAPACK_VERSION} - COMPONENT Development - ) - -install(EXPORT ${CBLASLIB}-targets - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${CBLASLIB}-${LAPACK_VERSION} - COMPONENT Development - ) diff --git a/CBLAS/cmake/cblas-config-build.cmake.in b/CBLAS/cmake/cblas-config-build.cmake.in deleted file mode 100644 --- a/CBLAS/cmake/cblas-config-build.cmake.in +++ /dev/null @@ -1,14 +0,0 @@ -# Load the LAPACK package with which we were built. -set(LAPACK_DIR "@LAPACK_BINARY_DIR@") -find_package(LAPACK NO_MODULE) - -# Load lapack targets from the build tree, including lapacke targets. -if(NOT TARGET lapacke) - include("@LAPACK_BINARY_DIR@/@LAPACKLIB@-targets.cmake") -endif() - -# Report cblas header search locations from build tree. -set(CBLAS_INCLUDE_DIRS "@LAPACK_BINARY_DIR@/include") - -# Report cblas libraries. -set(CBLAS_LIBRARIES @CBLASLIB@) diff --git a/CBLAS/cmake/cblas-config-install.cmake.in b/CBLAS/cmake/cblas-config-install.cmake.in deleted file mode 100644 --- a/CBLAS/cmake/cblas-config-install.cmake.in +++ /dev/null @@ -1,19 +0,0 @@ -# Compute locations from /@{LIBRARY_DIR@/cmake/lapacke-/.cmake -get_filename_component(_CBLAS_SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) - -# Load the LAPACK package with which we were built. -set(LAPACK_DIR "@CMAKE_INSTALL_FULL_LIBDIR@/cmake/@LAPACKLIB@-@LAPACK_VERSION@") -find_package(LAPACK NO_MODULE) - -# Load lapacke targets from the install tree. -if(NOT TARGET @CBLASLIB@) - include(${_CBLAS_SELF_DIR}/@CBLASLIB@-targets.cmake) -endif() - -# Report lapacke header search locations. -set(CBLAS_INCLUDE_DIRS @CMAKE_INSTALL_FULL_INCLUDEDIR@) - -# Report lapacke libraries. -set(CBLAS_LIBRARIES @CBLASLIB@) - -unset(_CBLAS_SELF_DIR) diff --git a/CBLAS/cmake/cblas-config-version.cmake.in b/CBLAS/cmake/cblas-config-version.cmake.in deleted file mode 100644 --- a/CBLAS/cmake/cblas-config-version.cmake.in +++ /dev/null @@ -1,8 +0,0 @@ -set(PACKAGE_VERSION "@LAPACK_VERSION@") -if(NOT ${PACKAGE_FIND_VERSION} VERSION_GREATER ${PACKAGE_VERSION}) - set(PACKAGE_VERSION_COMPATIBLE 1) - if(${PACKAGE_FIND_VERSION} VERSION_EQUAL ${PACKAGE_VERSION}) - set(PACKAGE_VERSION_EXACT 1) - endif() -endif() - diff --git a/CBLAS/src/CMakeLists.txt b/CBLAS/src/CMakeLists.txt --- a/CBLAS/src/CMakeLists.txt +++ b/CBLAS/src/CMakeLists.txt @@ -172,9 +172,5 @@ if(HAS_ATTRIBUTE_WEAK_SUPPORT) target_compile_definitions(${CBLASLIB} PRIVATE HAS_ATTRIBUTE_WEAK_SUPPORT) endif() -target_include_directories(${CBLASLIB} PUBLIC - $ - $ -) target_link_libraries(${CBLASLIB} PUBLIC ${BLAS_LIBRARIES}) lapack_install_library(${CBLASLIB}) diff --git a/CMAKE/lapack-config-build.cmake.in b/CMAKE/lapack-config-build.cmake.in deleted file mode 100644 --- a/CMAKE/lapack-config-build.cmake.in +++ /dev/null @@ -1,14 +0,0 @@ -# Load lapack targets from the build tree if necessary. -set(_LAPACK_TARGET "@_lapack_config_build_guard_target@") -if(_LAPACK_TARGET AND NOT TARGET "${_LAPACK_TARGET}") - include("@LAPACK_BINARY_DIR@/@LAPACKLIB@-targets.cmake") -endif() -unset(_LAPACK_TARGET) - -# Hint for project building against lapack -set(LAPACK_Fortran_COMPILER_ID "@CMAKE_Fortran_COMPILER_ID@") - -# Report the blas and lapack raw or imported libraries. -set(LAPACK_blas_LIBRARIES "@BLAS_LIBRARIES@") -set(LAPACK_lapack_LIBRARIES "@LAPACK_LIBRARIES@") -set(LAPACK_LIBRARIES ${LAPACK_blas_LIBRARIES} ${LAPACK_lapack_LIBRARIES}) diff --git a/CMAKE/lapack-config-install.cmake.in b/CMAKE/lapack-config-install.cmake.in deleted file mode 100644 --- a/CMAKE/lapack-config-install.cmake.in +++ /dev/null @@ -1,19 +0,0 @@ -# Compute locations from /lib/cmake/lapack-/.cmake -get_filename_component(_LAPACK_SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) - -# Load lapack targets from the install tree if necessary. -set(_LAPACK_TARGET "@_lapack_config_install_guard_target@") -if(_LAPACK_TARGET AND NOT TARGET "${_LAPACK_TARGET}") - include("${_LAPACK_SELF_DIR}/@LAPACKLIB@-targets.cmake") -endif() -unset(_LAPACK_TARGET) - -# Hint for project building against lapack -set(LAPACK_Fortran_COMPILER_ID "@CMAKE_Fortran_COMPILER_ID@") - -# Report the blas and lapack raw or imported libraries. -set(LAPACK_blas_LIBRARIES "@BLAS_LIBRARIES@") -set(LAPACK_lapack_LIBRARIES "@LAPACK_LIBRARIES@") -set(LAPACK_LIBRARIES ${LAPACK_blas_LIBRARIES} ${LAPACK_lapack_LIBRARIES}) - -unset(_LAPACK_SELF_DIR) diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -155,11 +155,8 @@ endif() # -------------------------------------------------- -set(LAPACK_INSTALL_EXPORT_NAME ${LAPACKLIB}-targets) - macro(lapack_install_library lib) install(TARGETS ${lib} - EXPORT ${LAPACK_INSTALL_EXPORT_NAME} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT RuntimeLibraries RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT RuntimeLibraries @@ -218,8 +215,9 @@ # -------------------------------------------------- -# Subdirectories that need to be processed +# BLAS option(USE_OPTIMIZED_BLAS "Whether or not to use an optimized BLAS library instead of included netlib BLAS" OFF) +option(BUILD_BLAS "Build BLAS" OFF) # Check the usage of the user provided BLAS libraries if(BLAS_LIBRARIES) @@ -230,59 +228,41 @@ if(BLAS_FOUND) message(STATUS "--> BLAS supplied by user is WORKING, will use ${BLAS_LIBRARIES}.") else() - message(ERROR "--> BLAS supplied by user is not WORKING, CANNOT USE ${BLAS_LIBRARIES}.") - message(ERROR "--> Will use REFERENCE BLAS (by default)") - message(ERROR "--> Or Correct your BLAS_LIBRARIES entry ") - message(ERROR "--> Or Consider checking USE_OPTIMIZED_BLAS") + message(SEND_ERROR "--> BLAS supplied by user is NOT WORKING, cannot use ${BLAS_LIBRARIES}.") endif() # User did not provide a BLAS Library but specified to search for one elseif(USE_OPTIMIZED_BLAS) find_package(BLAS) -endif() -# Neither user specified or optimized BLAS libraries can be used -if(NOT BLAS_FOUND) - message(STATUS "Using supplied NETLIB BLAS implementation") - add_subdirectory(BLAS) +elseif(BUILD_BLAS) set(BLAS_LIBRARIES ${BLASLIB}) -else() - set(CMAKE_EXE_LINKER_FLAGS - "${CMAKE_EXE_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}" - CACHE STRING "Linker flags for executables" FORCE) - set(CMAKE_MODULE_LINKER_FLAGS - "${CMAKE_MODULE_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}" - CACHE STRING "Linker flags for modules" FORCE) - set(CMAKE_SHARED_LINKER_FLAGS - "${CMAKE_SHARED_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}" - CACHE STRING "Linker flags for shared libs" FORCE) -endif() + set(BLAS_FOUND TRUE) + add_subdirectory(BLAS) +endif() # -------------------------------------------------- # CBLAS -option(CBLAS "Build CBLAS" OFF) +option(BUILD_CBLAS "Build CBLAS" OFF) -if(CBLAS) +if(BUILD_CBLAS) + set(NEED_BLAS TRUE) add_subdirectory(CBLAS) endif() # -------------------------------------------------- # XBLAS - option(USE_XBLAS "Build extended precision (needs XBLAS)" OFF) + if(USE_XBLAS) find_library(XBLAS_LIBRARY NAMES xblas) endif() -option(USE_OPTIMIZED_LAPACK "Whether or not to use an optimized LAPACK library instead of included netlib LAPACK" OFF) - # -------------------------------------------------- # LAPACK -# User did not provide a LAPACK Library but specified to search for one -if(USE_OPTIMIZED_LAPACK) - find_package(LAPACK) -endif() +option(USE_OPTIMIZED_LAPACK "Whether or not to use an optimized LAPACK library instead of included netlib LAPACK" OFF) +option(BUILD_LAPACK "Build LAPACK" OFF) # Check the usage of the user provided or automatically found LAPACK libraries if(LAPACK_LIBRARIES) @@ -293,27 +273,28 @@ include(CheckFortranFunctionExists) set(CMAKE_REQUIRED_LIBRARIES ${LAPACK_LIBRARIES}) # Check if new routine of 3.4.0 is in LAPACK_LIBRARIES - CHECK_FORTRAN_FUNCTION_EXISTS("dgeqrt" LATESTLAPACK_FOUND) + CHECK_FORTRAN_FUNCTION_EXISTS("dgeqrt" LAPACK_FOUND) unset(CMAKE_REQUIRED_LIBRARIES) - if(LATESTLAPACK_FOUND) + if(LAPACK_FOUND) message(STATUS "--> LAPACK supplied by user is WORKING, will use ${LAPACK_LIBRARIES}.") else() - message(ERROR "--> LAPACK supplied by user is not WORKING or is older than LAPACK 3.4.0, CANNOT USE ${LAPACK_LIBRARIES}.") - message(ERROR "--> Will use REFERENCE LAPACK (by default)") - message(ERROR "--> Or Correct your LAPACK_LIBRARIES entry ") - message(ERROR "--> Or Consider checking USE_OPTIMIZED_LAPACK") + message(SEND_ERROR "--> LAPACK supplied by user is NOT WORKING or is older than LAPACK 3.4.0, cannot use ${LAPACK_LIBRARIES}.") endif() else() message(STATUS "--> LAPACK supplied by user is ${LAPACK_LIBRARIES}.") message(STATUS "--> CMake couldn't find a Fortran compiler, so it cannot check if the provided LAPACK library works.") - set(LATESTLAPACK_FOUND TRUE) + set(LAPACK_FOUND TRUE) endif() -endif() -# Neither user specified or optimized LAPACK libraries can be used -if(NOT LATESTLAPACK_FOUND) - message(STATUS "Using supplied NETLIB LAPACK implementation") +# User did not provide a LAPACK Library but specified to search for one +elseif(USE_OPTIMIZED_LAPACK) + find_package(LAPACK) + +elseif(BUILD_LAPACK) set(LAPACK_LIBRARIES ${LAPACKLIB}) + set(LAPACK_FOUND TRUE) + + set(NEED_BLAS TRUE) enable_language(Fortran) @@ -336,67 +317,38 @@ set(DSECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/dsecnd_${TIME_FUNC}.f) add_subdirectory(SRC) -else() - set(CMAKE_EXE_LINKER_FLAGS - "${CMAKE_EXE_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}" - CACHE STRING "Linker flags for executables" FORCE) - set(CMAKE_MODULE_LINKER_FLAGS - "${CMAKE_MODULE_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}" - CACHE STRING "Linker flags for modules" FORCE) - set(CMAKE_SHARED_LINKER_FLAGS - "${CMAKE_SHARED_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}" - CACHE STRING "Linker flags for shared libs" FORCE) -endif() -if(BUILD_TESTING) - add_subdirectory(TESTING) + if(BUILD_TESTING) + add_subdirectory(TESTING) + endif() + + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/${LAPACKLIB}.pc @ONLY) + install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/${LAPACKLIB}.pc + DESTINATION ${PKG_CONFIG_DIR} + COMPONENT Development + ) endif() # -------------------------------------------------- # LAPACKE -option(LAPACKE "Build LAPACKE" OFF) +option(BUILD_LAPACKE "Build LAPACKE" OFF) # LAPACKE has also the interface to some routines from tmglib, # if LAPACKE_WITH_TMG is selected, we need to add those routines to LAPACKE option(LAPACKE_WITH_TMG "Build LAPACKE with tmglib routines" OFF) if(LAPACKE_WITH_TMG) - set(LAPACKE ON) -endif() - -# TMGLIB -# Cache export target -set(LAPACK_INSTALL_EXPORT_NAME_CACHE ${LAPACK_INSTALL_EXPORT_NAME}) -if(BUILD_TESTING OR LAPACKE_WITH_TMG) - enable_language(Fortran) - if(LATESTLAPACK_FOUND AND LAPACKE_WITH_TMG) - set(CMAKE_REQUIRED_LIBRARIES ${LAPACK_LIBRARIES}) - # Check if dlatms (part of tmg) is found - include(CheckFortranFunctionExists) - CHECK_FORTRAN_FUNCTION_EXISTS("dlatms" LAPACK_WITH_TMGLIB_FOUND) - unset(CMAKE_REQUIRED_LIBRARIES) - if(NOT LAPACK_WITH_TMGLIB_FOUND) - # Build and install TMG as part of LAPACKE targets (as opposed to LAPACK - # targets) - set(LAPACK_INSTALL_EXPORT_NAME ${LAPACKELIB}-targets) - endif() - endif() - add_subdirectory(TESTING/MATGEN) + set(BUILD_LAPACKE ON) endif() -# Reset export target -set(LAPACK_INSTALL_EXPORT_NAME ${LAPACK_INSTALL_EXPORT_NAME_CACHE}) -unset(LAPACK_INSTALL_EXPORT_NAME_CACHE) - -#------------------------------------- -# LAPACKE # Include lapack.h and lapacke_mangling.h even if LAPACKE is not built add_subdirectory(LAPACKE/include) -if(LAPACKE) +if(BUILD_LAPACKE) + set(NEED_LAPACK TRUE) add_subdirectory(LAPACKE) endif() - #------------------------------------- # BLAS++ / LAPACK++ option(BLAS++ "Build BLAS++" OFF) @@ -446,111 +398,16 @@ ExternalProject_Add_StepDependencies(lapackpp build blaspp ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES}) endif() -# -------------------------------------------------- -# CPACK Packaging - -set(CPACK_PACKAGE_NAME "LAPACK") -set(CPACK_PACKAGE_VENDOR "University of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd") -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "LAPACK- Linear Algebra Package") -set(CPACK_PACKAGE_VERSION_MAJOR ${LAPACK_MAJOR_VERSION}) -set(CPACK_PACKAGE_VERSION_MINOR ${LAPACK_MINOR_VERSION}) -set(CPACK_PACKAGE_VERSION_PATCH ${LAPACK_PATCH_VERSION}) -set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE") -set(CPACK_MONOLITHIC_INSTALL ON) -set(CPACK_PACKAGE_INSTALL_DIRECTORY "LAPACK") -if(WIN32 AND NOT UNIX) - # There is a bug in NSI that does not handle full unix paths properly. Make - # sure there is at least one set of four (4) backslashes. - set(CPACK_NSIS_HELP_LINK "http:\\\\\\\\http://icl.cs.utk.edu/lapack-forum") - set(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\www.netlib.org/lapack") - set(CPACK_NSIS_CONTACT "lapack@eecs.utk.edu") - set(CPACK_NSIS_MODIFY_PATH ON) - set(CPACK_NSIS_DISPLAY_NAME "LAPACK-${LAPACK_VERSION}") - set(CPACK_PACKAGE_RELOCATABLE "true") -else() - set(CPACK_GENERATOR "TGZ") - set(CPACK_SOURCE_GENERATOR TGZ) - set(CPACK_SOURCE_PACKAGE_FILE_NAME "lapack-${LAPACK_VERSION}") - set(CPACK_SOURCE_IGNORE_FILES ~$ .svn ${CPACK_SOURCE_IGNORE_FILES}) -endif() -include(CPack) - - -# -------------------------------------------------- - -if(NOT BLAS_FOUND) - set(ALL_TARGETS ${ALL_TARGETS} ${BLASLIB}) -endif() - -if(NOT LATESTLAPACK_FOUND) - set(ALL_TARGETS ${ALL_TARGETS} ${LAPACKLIB}) -endif() - -# Export lapack targets, not including lapacke, from the -# install tree, if any. -set(_lapack_config_install_guard_target "") -if(ALL_TARGETS) - install(EXPORT ${LAPACKLIB}-targets - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${LAPACKLIB}-${LAPACK_VERSION} - COMPONENT Development - ) - - # Choose one of the lapack targets to use as a guard for - # lapack-config.cmake to load targets from the install tree. - list(GET ALL_TARGETS 0 _lapack_config_install_guard_target) -endif() - -# Include cblas in targets exported from the build tree. -if(CBLAS) - set(ALL_TARGETS ${ALL_TARGETS} ${CBLASLIB}) -endif() - -# Include lapacke in targets exported from the build tree. -if(LAPACKE) - set(ALL_TARGETS ${ALL_TARGETS} ${LAPACKELIB}) -endif() - -if(NOT LAPACK_WITH_TMGLIB_FOUND AND LAPACKE_WITH_TMG) - set(ALL_TARGETS ${ALL_TARGETS} ${TMGLIB}) +# Neither user specified or optimized BLAS libraries can be used +if(NEED_BLAS AND NOT BLAS_FOUND) + message(FATAL_ERROR "--> No BLAS library found. Specify BLAS_LIBRARIES or enable USE_OPTIMIZED_BLAS or BUILD_BLAS.") endif() -# Export lapack and lapacke targets from the build tree, if any. -set(_lapack_config_build_guard_target "") -if(ALL_TARGETS) - export(TARGETS ${ALL_TARGETS} FILE ${LAPACKLIB}-targets.cmake) - - # Choose one of the lapack or lapacke targets to use as a guard - # for lapack-config.cmake to load targets from the build tree. - list(GET ALL_TARGETS 0 _lapack_config_build_guard_target) +# Neither user specified or optimized LAPACK libraries can be used +if(NEED_LAPACK AND NOT LAPACK_FOUND) + message(FATAL_ERROR "--> No LAPACK library found. Specify LAPACK_LIBRARIES or enable USE_OPTIMIZED_LAPACK or BUILD_LAPACK.") endif() -configure_file(${LAPACK_SOURCE_DIR}/CMAKE/lapack-config-build.cmake.in - ${LAPACK_BINARY_DIR}/${LAPACKLIB}-config.cmake @ONLY) - - -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/${LAPACKLIB}.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/${LAPACKLIB}.pc - DESTINATION ${PKG_CONFIG_DIR} - COMPONENT Development - ) - -configure_file(${LAPACK_SOURCE_DIR}/CMAKE/lapack-config-install.cmake.in - ${LAPACK_BINARY_DIR}/CMakeFiles/${LAPACKLIB}-config.cmake @ONLY) - -include(CMakePackageConfigHelpers) -write_basic_package_version_file( - ${LAPACK_BINARY_DIR}/${LAPACKLIB}-config-version.cmake - VERSION ${LAPACK_VERSION} - COMPATIBILITY SameMajorVersion - ) - -install(FILES - ${LAPACK_BINARY_DIR}/CMakeFiles/${LAPACKLIB}-config.cmake - ${LAPACK_BINARY_DIR}/${LAPACKLIB}-config-version.cmake - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${LAPACKLIB}-${LAPACK_VERSION} - COMPONENT Development - ) if (LAPACK++) install( DIRECTORY "${LAPACK_BINARY_DIR}/lib/" diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt --- a/LAPACKE/CMakeLists.txt +++ b/LAPACKE/CMakeLists.txt @@ -1,8 +1,6 @@ message(STATUS "LAPACKE enabled") enable_language(C) -set(LAPACK_INSTALL_EXPORT_NAME ${LAPACKELIB}-targets) - include_directories(include ${LAPACK_BINARY_DIR}/include) add_subdirectory(src) add_subdirectory(utils) @@ -74,14 +72,6 @@ VERSION ${LAPACK_VERSION} SOVERSION ${LAPACK_MAJOR_VERSION} ) -target_include_directories(${LAPACKELIB} PUBLIC - $ - $ -) -if(WIN32 AND NOT UNIX) - target_compile_definitions(${LAPACKELIB} PUBLIC HAVE_LAPACK_CONFIG_H LAPACK_COMPLEX_STRUCTURE) - message(STATUS "Windows BUILD") -endif() if(LAPACKE_WITH_TMG) target_link_libraries(${LAPACKELIB} PRIVATE ${TMGLIB}) @@ -106,22 +96,3 @@ DESTINATION ${PKG_CONFIG_DIR} COMPONENT Development ) - -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/lapacke-config-version.cmake.in - ${LAPACK_BINARY_DIR}/${LAPACKELIB}-config-version.cmake @ONLY) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/lapacke-config-build.cmake.in - ${LAPACK_BINARY_DIR}/${LAPACKELIB}-config.cmake @ONLY) - -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/lapacke-config-install.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${LAPACKELIB}-config.cmake @ONLY) -install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${LAPACKELIB}-config.cmake - ${LAPACK_BINARY_DIR}/${LAPACKELIB}-config-version.cmake - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${LAPACKELIB}-${LAPACK_VERSION} - COMPONENT Development - ) - -install(EXPORT ${LAPACKELIB}-targets - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${LAPACKELIB}-${LAPACK_VERSION} - COMPONENT Development - ) diff --git a/LAPACKE/cmake/lapacke-config-build.cmake.in b/LAPACKE/cmake/lapacke-config-build.cmake.in deleted file mode 100644 --- a/LAPACKE/cmake/lapacke-config-build.cmake.in +++ /dev/null @@ -1,17 +0,0 @@ -# Load the LAPACK package with which we were built. -set(LAPACK_DIR "@LAPACK_BINARY_DIR@") -find_package(LAPACK NO_MODULE) - -# Load lapack targets from the build tree, including lapacke targets. -if(NOT TARGET @LAPACKELIB@) - include("@LAPACK_BINARY_DIR@/@LAPACKLIB@-targets.cmake") -endif() - -# Hint for project building against lapack -set(LAPACKE_Fortran_COMPILER_ID ${LAPACK_Fortran_COMPILER_ID}) - -# Report lapacke header search locations from build tree. -set(LAPACKE_INCLUDE_DIRS "@LAPACK_BINARY_DIR@/include") - -# Report lapacke libraries. -set(LAPACKE_LIBRARIES @LAPACKELIB@ ${LAPACK_LIBRARIES}) diff --git a/LAPACKE/cmake/lapacke-config-install.cmake.in b/LAPACKE/cmake/lapacke-config-install.cmake.in deleted file mode 100644 --- a/LAPACKE/cmake/lapacke-config-install.cmake.in +++ /dev/null @@ -1,22 +0,0 @@ -# Compute locations from /@{LIBRARY_DIR@/cmake/lapacke-/.cmake -get_filename_component(_LAPACKE_SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) - -# Load the LAPACK package with which we were built. -set(LAPACK_DIR "@CMAKE_INSTALL_FULL_LIBDIR@/cmake/@LAPACKLIB@-@LAPACK_VERSION@") -find_package(LAPACK NO_MODULE) - -# Load lapacke targets from the install tree. -if(NOT TARGET @LAPACKELIB@) - include(${_LAPACKE_SELF_DIR}/@LAPACKELIB@-targets.cmake) -endif() - -# Hint for project building against lapack -set(LAPACKE_Fortran_COMPILER_ID ${LAPACK_Fortran_COMPILER_ID}) - -# Report lapacke header search locations. -set(LAPACKE_INCLUDE_DIRS @CMAKE_INSTALL_FULL_INCLUDEDIR@) - -# Report lapacke libraries. -set(LAPACKE_LIBRARIES @LAPACKELIB@ ${LAPACK_LIBRARIES}) - -unset(_LAPACKE_SELF_DIR) diff --git a/LAPACKE/cmake/lapacke-config-version.cmake.in b/LAPACKE/cmake/lapacke-config-version.cmake.in deleted file mode 100644 --- a/LAPACKE/cmake/lapacke-config-version.cmake.in +++ /dev/null @@ -1,8 +0,0 @@ -set(PACKAGE_VERSION "@LAPACK_VERSION@") -if(NOT ${PACKAGE_FIND_VERSION} VERSION_GREATER ${PACKAGE_VERSION}) - set(PACKAGE_VERSION_COMPATIBLE 1) - if(${PACKAGE_FIND_VERSION} VERSION_EQUAL ${PACKAGE_VERSION}) - set(PACKAGE_VERSION_EXACT 1) - endif() -endif() - diff --git a/LAPACKE/include/CMakeLists.txt b/LAPACKE/include/CMakeLists.txt --- a/LAPACKE/include/CMakeLists.txt +++ b/LAPACKE/include/CMakeLists.txt @@ -1,5 +1,5 @@ set(LAPACKE_INCLUDE lapack.h) -IF(LAPACKE) +IF(BUILD_LAPACKE) list(APPEND LAPACKE_INCLUDE lapacke.h lapacke_config.h lapacke_utils.h) endif() @@ -23,4 +23,4 @@ message(WARNING "Reverting to pre-defined include/lapacke_mangling.h") configure_file(lapacke_mangling_with_flags.h.in ${LAPACK_BINARY_DIR}/include/lapacke_mangling.h) -endif() \ No newline at end of file +endif()