diff --git a/BLAS/SRC/CMakeLists.txt b/BLAS/SRC/CMakeLists.txt --- a/BLAS/SRC/CMakeLists.txt +++ b/BLAS/SRC/CMakeLists.txt @@ -137,13 +137,9 @@ add_library(blas ${ALLOBJ}) -#if(UNIX) -# target_link_libraries(blas m) -#endif() set_target_properties( blas PROPERTIES VERSION ${LAPACK_VERSION} SOVERSION ${LAPACK_MAJOR_VERSION} ) -target_link_libraries(blas) lapack_install_library(blas) diff --git a/BLAS/blas.pc.in b/BLAS/blas.pc.in --- a/BLAS/blas.pc.in +++ b/BLAS/blas.pc.in @@ -6,4 +6,3 @@ Version: @LAPACK_VERSION@ URL: http://www.netlib.org/blas/ Libs: -L${libdir} -lblas -Libs.private: -lm diff --git a/CBLAS/cblas.pc.in b/CBLAS/cblas.pc.in --- a/CBLAS/cblas.pc.in +++ b/CBLAS/cblas.pc.in @@ -6,4 +6,4 @@ Version: @LAPACK_VERSION@ URL: http://www.netlib.org/blas/#_cblas Libs: -L${libdir} -lcblas -Requires: blas +Requires.private: blas diff --git a/CBLAS/examples/CMakeLists.txt b/CBLAS/examples/CMakeLists.txt --- a/CBLAS/examples/CMakeLists.txt +++ b/CBLAS/examples/CMakeLists.txt @@ -1,8 +1,8 @@ add_executable(xexample1_CBLAS cblas_example1.c ) add_executable(xexample2_CBLAS cblas_example2.c ) -target_link_libraries(xexample1_CBLAS cblas ${BLAS_LIBRARIES}) -target_link_libraries(xexample2_CBLAS cblas ${BLAS_LIBRARIES}) +target_link_libraries(xexample1_CBLAS cblas) +target_link_libraries(xexample2_CBLAS cblas) add_test(example1_CBLAS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample1_CBLAS) add_test(example2_CBLAS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample2_CBLAS) diff --git a/CBLAS/src/CMakeLists.txt b/CBLAS/src/CMakeLists.txt --- a/CBLAS/src/CMakeLists.txt +++ b/CBLAS/src/CMakeLists.txt @@ -164,5 +164,9 @@ endif(CBLAS_COMPLEX16) add_library(cblas ${ALLOBJ}) -target_link_libraries(cblas ${BLAS_LIBRARIES} ) +target_link_libraries(cblas PRIVATE ${BLAS_LIBRARIES}) +set_target_properties( + cblas PROPERTIES + LINKER_LANGUAGE C + ) lapack_install_library(cblas) diff --git a/CBLAS/testing/CMakeLists.txt b/CBLAS/testing/CMakeLists.txt --- a/CBLAS/testing/CMakeLists.txt +++ b/CBLAS/testing/CMakeLists.txt @@ -55,9 +55,9 @@ add_executable(xscblat2 c_sblat2.f ${STESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h) add_executable(xscblat3 c_sblat3.f ${STESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h) - target_link_libraries(xscblat1 cblas ${BLAS_LIBRARIES}) - target_link_libraries(xscblat2 cblas ${BLAS_LIBRARIES}) - target_link_libraries(xscblat3 cblas ${BLAS_LIBRARIES}) + target_link_libraries(xscblat1 cblas) + target_link_libraries(xscblat2 cblas) + target_link_libraries(xscblat3 cblas) add_cblas_test(stest1.out "" xscblat1) add_cblas_test(stest2.out sin2 xscblat2) @@ -71,9 +71,9 @@ add_executable(xdcblat2 c_dblat2.f ${DTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h) add_executable(xdcblat3 c_dblat3.f ${DTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h) - target_link_libraries(xdcblat1 cblas ${BLAS_LIBRARIES}) - target_link_libraries(xdcblat2 cblas ${BLAS_LIBRARIES}) - target_link_libraries(xdcblat3 cblas ${BLAS_LIBRARIES}) + target_link_libraries(xdcblat1 cblas) + target_link_libraries(xdcblat2 cblas) + target_link_libraries(xdcblat3 cblas) add_cblas_test(dtest1.out "" xdcblat1) add_cblas_test(dtest2.out din2 xdcblat2) @@ -87,9 +87,9 @@ add_executable(xccblat2 c_cblat2.f ${CTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h) add_executable(xccblat3 c_cblat3.f ${CTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h) - target_link_libraries(xccblat1 cblas ${BLAS_LIBRARIES}) - target_link_libraries(xccblat2 cblas ${BLAS_LIBRARIES}) - target_link_libraries(xccblat3 cblas ${BLAS_LIBRARIES}) + target_link_libraries(xccblat1 cblas) + target_link_libraries(xccblat2 cblas) + target_link_libraries(xccblat3 cblas) add_cblas_test(ctest1.out "" xccblat1) add_cblas_test(ctest2.out cin2 xccblat2) @@ -103,9 +103,9 @@ add_executable(xzcblat2 c_zblat2.f ${ZTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h) add_executable(xzcblat3 c_zblat3.f ${ZTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h) - target_link_libraries(xzcblat1 cblas ${BLAS_LIBRARIES}) - target_link_libraries(xzcblat2 cblas ${BLAS_LIBRARIES}) - target_link_libraries(xzcblat3 cblas ${BLAS_LIBRARIES}) + target_link_libraries(xzcblat1 cblas) + target_link_libraries(xzcblat2 cblas) + target_link_libraries(xzcblat3 cblas) add_cblas_test(ztest1.out "" xzcblat1) add_cblas_test(ztest2.out zin2 xzcblat2) diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 2.8.10) -project(LAPACK Fortran) +project(LAPACK C Fortran) set(LAPACK_MAJOR_VERSION 3) set(LAPACK_MINOR_VERSION 6) diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt --- a/LAPACKE/CMakeLists.txt +++ b/LAPACKE/CMakeLists.txt @@ -46,17 +46,21 @@ if (USE_XBLAS) add_library(lapacke ${SRC_OBJ} ${SRCX_OBJ} ${UTILS_OBJ}) - target_link_libraries(lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES} ${XBLAS_LIBRARY}) + target_link_libraries(lapacke PRIVATE ${LAPACK_LIBRARIES}) else (USE_XBLAS) if (LAPACKE_WITH_TMG) add_library(lapacke ${SRC_OBJ} ${MATGEN_OBJ} ${UTILS_OBJ}) - target_link_libraries(lapacke tmglib ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) + target_link_libraries(lapacke PRIVATE tmglib ${LAPACK_LIBRARIES}) else (LAPACKE_WITH_TMG) add_library(lapacke ${SRC_OBJ} ${UTILS_OBJ}) - target_link_libraries(lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) + target_link_libraries(lapacke PRIVATE ${LAPACK_LIBRARIES}) endif(LAPACKE_WITH_TMG) endif(USE_XBLAS) +set_target_properties( + lapacke PROPERTIES + LINKER_LANGUAGE C + ) lapack_install_library(lapacke) INSTALL( FILES ${LAPACKE_INCLUDE} DESTINATION include ) diff --git a/LAPACKE/example/CMakeLists.txt b/LAPACKE/example/CMakeLists.txt --- a/LAPACKE/example/CMakeLists.txt +++ b/LAPACKE/example/CMakeLists.txt @@ -3,10 +3,10 @@ add_executable(xexample_DGELS_rowmajor example_DGELS_rowmajor.c lapacke_example_aux.c lapacke_example_aux.h) add_executable(xexample_DGELS_colmajor example_DGELS_colmajor.c lapacke_example_aux.c lapacke_example_aux.h) -target_link_libraries(xexample_DGESV_rowmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) -target_link_libraries(xexample_DGESV_colmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) -target_link_libraries(xexample_DGELS_rowmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) -target_link_libraries(xexample_DGELS_colmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) +target_link_libraries(xexample_DGESV_rowmajor lapacke) +target_link_libraries(xexample_DGESV_colmajor lapacke) +target_link_libraries(xexample_DGELS_rowmajor lapacke) +target_link_libraries(xexample_DGELS_colmajor lapacke) add_test(example_DGESV_rowmajor ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample_DGESV_rowmajor) add_test(example_DGESV_colmajor ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample_DGESV_colmajor) diff --git a/LAPACKE/lapacke.pc.in b/LAPACKE/lapacke.pc.in --- a/LAPACKE/lapacke.pc.in +++ b/LAPACKE/lapacke.pc.in @@ -6,4 +6,4 @@ Version: @LAPACK_VERSION@ URL: http://www.netlib.org/lapack/#_standard_c_language_apis_for_lapack Libs: -L${libdir} -llapacke -Requires: lapack blas +Requires.private: lapack diff --git a/SRC/CMakeLists.txt b/SRC/CMakeLists.txt --- a/SRC/CMakeLists.txt +++ b/SRC/CMakeLists.txt @@ -455,12 +455,10 @@ list(REMOVE_DUPLICATES ALLOBJ) add_library(lapack ${ALLOBJ} ${ALLXOBJ}) -target_link_libraries(lapack ${BLAS_LIBRARIES} ${XBLAS_LIBRARY}) - +target_link_libraries(lapack PRIVATE ${BLAS_LIBRARIES} ${XBLAS_LIBRARY}) set_target_properties( lapack PROPERTIES VERSION ${LAPACK_VERSION} SOVERSION ${LAPACK_MAJOR_VERSION} ) - lapack_install_library(lapack) diff --git a/TESTING/EIG/CMakeLists.txt b/TESTING/EIG/CMakeLists.txt --- a/TESTING/EIG/CMakeLists.txt +++ b/TESTING/EIG/CMakeLists.txt @@ -119,7 +119,7 @@ macro(add_eig_executable name ) add_executable(${name} ${ARGN}) - target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES}) + target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) endmacro(add_eig_executable) if (BUILD_SINGLE) diff --git a/TESTING/LIN/CMakeLists.txt b/TESTING/LIN/CMakeLists.txt --- a/TESTING/LIN/CMakeLists.txt +++ b/TESTING/LIN/CMakeLists.txt @@ -193,7 +193,7 @@ macro(add_lin_executable name ) add_executable(${name} ${ARGN}) - target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES}) + target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) endmacro(add_lin_executable) IF(BUILD_SINGLE) diff --git a/lapack.pc.in b/lapack.pc.in --- a/lapack.pc.in +++ b/lapack.pc.in @@ -6,4 +6,4 @@ Version: @LAPACK_VERSION@ URL: http://www.netlib.org/lapack/ Libs: -L${libdir} -llapack -Requires: blas +Requires.private: blas