aboutsummaryrefslogtreecommitdiff
path: root/libraries/lapack/patches/link-dependencies.diff
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/lapack/patches/link-dependencies.diff')
-rw-r--r--libraries/lapack/patches/link-dependencies.diff232
1 files changed, 232 insertions, 0 deletions
diff --git a/libraries/lapack/patches/link-dependencies.diff b/libraries/lapack/patches/link-dependencies.diff
new file mode 100644
index 000000000000..31a2bcc6424f
--- /dev/null
+++ b/libraries/lapack/patches/link-dependencies.diff
@@ -0,0 +1,232 @@
+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