From 78cec6209c513809eb2f9a2db16d2061e4e1a3f8 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 12 Oct 2017 16:58:37 +0200 Subject: [PATCH 1/3] Add ReLAPACK option --- CMakeLists.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 771764e2e..4fdfb3ffa 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -24,6 +24,7 @@ option(BUILD_WITHOUT_LAPACK "Without LAPACK and LAPACKE (Only BLAS or CBLAS)" ON endif() option(BUILD_WITHOUT_CBLAS "Without CBLAS" OFF) option(DYNAMIC_ARCH "Build with DYNAMIC_ARCH" OFF) +option(BUILD_RELAPACK "Build with ReLAPACK (recursive LAPACK" OFF) ####### if(BUILD_WITHOUT_LAPACK) set(NO_LAPACK 1) @@ -55,6 +56,9 @@ endif () set(SUBDIRS ${BLASDIRS}) if (NOT NO_LAPACK) list(APPEND SUBDIRS lapack) + if(BUILD_RELAPACK) + list(APPEND SUBDIRS relapack/src) + endif() endif () # set which float types we want to build for @@ -141,7 +145,7 @@ endif() # add objects to the openblas lib -add_library(${OpenBLAS_LIBNAME} ${LA_SOURCES} ${LAPACKE_SOURCES} ${TARGET_OBJS} ${OpenBLAS_DEF_FILE}) +add_library(${OpenBLAS_LIBNAME} ${LA_SOURCES} ${LAPACKE_SOURCES} ${RELA_SOURCES} ${TARGET_OBJS} ${OpenBLAS_DEF_FILE}) # Handle MSVC exports if(MSVC AND BUILD_SHARED_LIBS) From fbf83f4833cf85c1c21404a3442f62ba5db7f1fe Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 12 Oct 2017 17:00:00 +0200 Subject: [PATCH 2/3] Add cmake build list file for ReLAPACK --- relapack/src/CMakeLists.txt | 85 +++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 relapack/src/CMakeLists.txt diff --git a/relapack/src/CMakeLists.txt b/relapack/src/CMakeLists.txt new file mode 100644 index 000000000..2d861f54b --- /dev/null +++ b/relapack/src/CMakeLists.txt @@ -0,0 +1,85 @@ +include_directories(${PROJECT_SOURCE_DIR}) +include_directories(${PROJECT_BINARY_DIR}) + +set(RELAFILES +clauum.c +ctrsyl_rec2.c +dsytrf.c +spbtrf.c +strsyl_rec2.c +zhetrf_rook_rec2.c +ztrsyl.c +cgbtrf.c +cpbtrf.c +ctrtri.c +dsytrf_rec2.c +spotrf.c +strtri.c +zlauum.c +ztrsyl_rec2.c +cgemmt.c +cpotrf.c +dgbtrf.c +dsytrf_rook.c +lapack_wrappers.c +ssygst.c +zgbtrf.c +zpbtrf.c +ztrtri.c +cgetrf.c +csytrf.c +dgemmt.c +dsytrf_rook_rec2.c +ssytrf.c +zgemmt.c +zpotrf.c +chegst.c +csytrf_rec2.c +dgetrf.c +dtgsyl.c +ssytrf_rec2.c +zgetrf.c +zsytrf.c +chetrf.c +csytrf_rook.c +dlauum.c +dtrsyl.c +sgbtrf.c +ssytrf_rook.c +zhegst.c +zsytrf_rec2.c +chetrf_rec2.c +csytrf_rook_rec2.c +dpbtrf.c +dtrsyl_rec2.c +sgemmt.c +ssytrf_rook_rec2.c +zhetrf.c +zsytrf_rook.c +chetrf_rook.c +ctgsyl.c +dpotrf.c +dtrtri.c +sgetrf.c +stgsyl.c +zhetrf_rec2.c +zsytrf_rook_rec2.c +chetrf_rook_rec2.c +ctrsyl.c +dsygst.c +f2c.c +slauum.c +strsyl.c +zhetrf_rook.c +ztgsyl.c +) + + + +# add relapack folder to the sources +set(RELA_SOURCES "") +foreach (RELA_FILE ${RELAFILES}) + list(APPEND RELA_SOURCES "${PROJECT_SOURCE_DIR}/relapack/src/${RELA_FILE}") +endforeach () +add_library(relapack_src OBJECT ${RELA_SOURCES}) +set_source_files_properties(${RELA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_CFLAGS}") From 962b20a9bb9ee12cc6ad8381e04bd00bcf1e8e19 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 12 Oct 2017 17:02:01 +0200 Subject: [PATCH 3/3] Optionally add ReLAPACK to LIB_COMPONENTS --- cmake/system.cmake | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cmake/system.cmake b/cmake/system.cmake index daa2683d2..236a7e888 100644 --- a/cmake/system.cmake +++ b/cmake/system.cmake @@ -387,6 +387,9 @@ if (NOT NO_LAPACK) if (NOT NO_LAPACKE) set(LIB_COMPONENTS "${LIB_COMPONENTS} LAPACKE") endif () + if (BUILD_RELAPACK) + set(LIB_COMPONENTS "${LIB_COMPONENTS} ReLAPACK") + endif () endif () if (ONLY_CBLAS)