From 08284d28d8494ec76ba1b4d3ca83b66069e25a82 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Tue, 23 May 2017 19:36:37 +0200 Subject: [PATCH 01/19] Fix installation of header files with cmake Install only the required header files, with openblas_config.h preprocessed like in Makefile.install Fixes #1184 --- CMakeLists.txt | 40 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2ccf9082fe..b4b3c236f5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -224,8 +224,44 @@ install(TARGETS ${OpenBLAS_LIBNAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ) # Install include files -FILE(GLOB_RECURSE INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*.h") -install (FILES ${INCLUDE_FILES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") + ADD_CUSTOM_TARGET(genconfig + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"}; ARGIND==1&&NF {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} ; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + ) + add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) + install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + + message(STATUS "Generating f77blas.h in ${CMAKE_INSTALL_INCLUDEDIR}") + ADD_CUSTOM_TARGET(genf77blas + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"}; NF {print}; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h + + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/config.h + ) + install (FILES ${CMAKE_BINARY_DIR}/f77blas.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + +if(NOT NO_CBLAS) + message (STATUS "Generating cblas.h in ${CMAKE_INSTALL_INCLUDEDIR}") + ADD_CUSTOM_TARGET(gencblas + COMMAND sed 's/common/openblas_config/g' ${CMAKE_CURRENT_SOURCE_DIR}/cblas.h > "${CMAKE_BINARY_DIR}/cblas.h" + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/cblas.h + ) + add_dependencies( ${OpenBLAS_LIBNAME} gencblas) + install (FILES ${CMAKE_BINARY_DIR}/cblas.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) +endif() + +if(NOT NO_LAPACKE) + message (STATUS "Copying LAPACKE header files to ${CMAKE_INSTALL_INCLUDEDIR}") + add_dependencies( ${OpenBLAS_LIBNAME} genlapacke) + FILE(GLOB_RECURSE INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/lapack-netlib/LAPACKE/*.h") + install (FILES ${INCLUDE_FILES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + + + ADD_CUSTOM_TARGET(genlapacke + COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/lapack-netlib/LAPACKE/include/lapacke_mangling_with_flags.h.in "${CMAKE_BINARY_DIR}/lapacke_mangling.h" + ) + install (FILES ${CMAKE_BINARY_DIR}/lapacke_mangling.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) +endif() + if(NOT MSVC) install (TARGETS ${OpenBLAS_LIBNAME}_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) From 26e9b8ac6bbc5277f0454115362b4808212ba04a Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Wed, 24 May 2017 10:26:57 +0200 Subject: [PATCH 02/19] Update CMakeLists.txt Escape remaining semicolons in awk argument list (to get it working on Windows as well) --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b4b3c236f5..457f4e4481 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,14 +226,14 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"}; ARGIND==1&&NF {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} ; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; ARGIND==1&&NF {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) message(STATUS "Generating f77blas.h in ${CMAKE_INSTALL_INCLUDEDIR}") ADD_CUSTOM_TARGET(genf77blas - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"}; NF {print}; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"} \; NF {print}\; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/config.h ) From ff8947ff7292eeef88a6549a861474c73064e507 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Wed, 24 May 2017 10:58:58 +0200 Subject: [PATCH 03/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 457f4e4481..a7e6929f0b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; ARGIND==1&&NF {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; ARGIND==1\&\&NF {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From f30225e1d929c1049d729673e77b5e050d255c15 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Wed, 24 May 2017 11:09:45 +0200 Subject: [PATCH 04/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a7e6929f0b..a7aa646ebd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; ARGIND==1\&\&NF {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1 && NF) {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 8acdf470c841a2b2e94004e340cc0381ee3e6556 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Wed, 24 May 2017 11:55:17 +0200 Subject: [PATCH 05/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a7aa646ebd..55bd6b6de7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1 && NF) {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1&&NF) {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 06e4873f999d3086d92e222caa4afe123dcc4acd Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Wed, 24 May 2017 13:05:35 +0200 Subject: [PATCH 06/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 55bd6b6de7..16d99acd12 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1&&NF) {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1) && NF {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From ccbe8b561183f1d88a49898a692f76ed9c400ca4 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Wed, 24 May 2017 13:30:05 +0200 Subject: [PATCH 07/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 16d99acd12..c61f61bddf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1) && NF {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 89dcba820905136b8d93f1ebe88716f08e6b05f4 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 25 May 2017 14:30:15 +0200 Subject: [PATCH 08/19] Add files via upload --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c61f61bddf..f9c1a033d3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next}\; ARGIND==2 {print} \; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next} ARGIND==2 {print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 7d187e2e1636451cf40160ced6338b325d3d6880 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 25 May 2017 15:02:20 +0200 Subject: [PATCH 09/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f9c1a033d3..601dd1b898 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next} ARGIND==2 {print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2 {print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 601423b2d822aa06609c2bd902169bffa3844ba4 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 25 May 2017 15:15:39 +0200 Subject: [PATCH 10/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 601dd1b898..e6c8950fb5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2 {print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next} ; ARGIND==2 {print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 1f1af9e8bbebac6902e5d7c47d40303a0ece4e4a Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 25 May 2017 20:52:58 +0200 Subject: [PATCH 11/19] Update CMakeLists.txt see if it is the single quotes that cause the problem on windows --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e6c8950fb5..06125939f6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next} ; ARGIND==2 {print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2 {print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 209640d0dd4c7618e930e0fe7dc4669fadab8f7b Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 25 May 2017 21:12:51 +0200 Subject: [PATCH 12/19] Update CMakeLists.txt --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 06125939f6..7a158b0518 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,14 +226,14 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1) && (NF>0) {print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2 {print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1)&&(NF>0){print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) message(STATUS "Generating f77blas.h in ${CMAKE_INSTALL_INCLUDEDIR}") ADD_CUSTOM_TARGET(genf77blas - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"} \; NF {print}\; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"} \; NF { print}\; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/config.h ) From 472ed5bdaadb2767aa69e239ef6b5217ff0524e7 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 25 May 2017 21:14:57 +0200 Subject: [PATCH 13/19] Update CMakeLists.txt --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7a158b0518..21eb8f50ee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,14 +226,14 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1)&&(NF>0){print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print} END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1)&&(NF>0){ print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print}\; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) message(STATUS "Generating f77blas.h in ${CMAKE_INSTALL_INCLUDEDIR}") ADD_CUSTOM_TARGET(genf77blas - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"} \; NF { print}\; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"} \; NF {print}\; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/config.h ) From bf42843add44c6a682406bbe106f8774dc79341c Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 25 May 2017 23:29:14 +0200 Subject: [PATCH 14/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 21eb8f50ee..2bf42d302e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} (ARGIND==1)&&(NF>0){ print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print}\; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1)&&(NF>0){print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print}\; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 7c2b7b6b85063b43fbd41623df1644881dac6115 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 25 May 2017 23:47:42 +0200 Subject: [PATCH 15/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2bf42d302e..9c85818385 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"} \; (ARGIND==1)&&(NF>0){print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print}\; END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"}(ARGIND==1)&&(NF>0){print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print}END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From 51954572c6185567587295ef5d42575d16a17daa Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Fri, 26 May 2017 00:09:55 +0200 Subject: [PATCH 16/19] Update CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9c85818385..165a935348 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,7 +226,7 @@ install(TARGETS ${OpenBLAS_LIBNAME} # Install include files message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} "BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"}(ARGIND==1)&&(NF>0){print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print}END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}" ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"}(ARGIND==1&&NF>0){print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print}END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" ) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) From e65a3d3ee40c85db0f8f9c9d6f4cd85431930bf1 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Wed, 31 May 2017 17:08:16 +0200 Subject: [PATCH 17/19] Use C utility instead of awk for header generation in cmake builds --- CMakeLists.txt | 13 +++++++++---- gen_config_h.c | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 4 deletions(-) create mode 100644 gen_config_h.c diff --git a/CMakeLists.txt b/CMakeLists.txt index 165a935348..2505108084 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -224,16 +224,21 @@ install(TARGETS ${OpenBLAS_LIBNAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ) # Install include files + add_executable(gen_config_h gen_config_h.c) + target_compile_definitions(gen_config_h PRIVATE VERSION=\"${OpenBLAS_VERSION}\") message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") - ADD_CUSTOM_TARGET(genconfig - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_CONFIG_H\" \; print \"\#define OPENBLAS_CONFIG_H\"}(ARGIND==1&&NF>0){print $$1,"OPENBLAS_"$$2, $$3 \; next} \; ARGIND==2{ print}END{print \"\#define OPENBLAS_VERSION \\"${OpenBLAS_VERSION}\\"\" \; print \"\#endif /* OPENBLAS_CONFIG_H */\"}' ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > "${CMAKE_BINARY_DIR}/openblas_config.h" + ADD_CUSTOM_COMMAND( + OUTPUT ${CMAKE_BINARY_DIR}/openblas_config.h + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/config.h + COMMAND ${CMAKE_BINARY_DIR}/gen_config_h ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > ${CMAKE_BINARY_DIR}/openblas_config.h ) - add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) + ADD_CUSTOM_TARGET(genconfig DEPENDS openblas_config.h) + add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) install (FILES ${CMAKE_BINARY_DIR}/openblas_config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) message(STATUS "Generating f77blas.h in ${CMAKE_INSTALL_INCLUDEDIR}") ADD_CUSTOM_TARGET(genf77blas - COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"} \; NF {print}\; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h + COMMAND ${AWK} 'BEGIN{print \"\#ifndef OPENBLAS_F77BLAS_H\" \; print \"\#define OPENBLAS_F77BLAS_H\" \; print \"\#include \\"openblas_config.h\\" \"}; NF {print}; END{print \"\#endif\"}' ${CMAKE_CURRENT_SOURCE_DIR}/common_interface.h > ${CMAKE_BINARY_DIR}/f77blas.h DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/config.h ) diff --git a/gen_config_h.c b/gen_config_h.c new file mode 100644 index 0000000000..e285724c05 --- /dev/null +++ b/gen_config_h.c @@ -0,0 +1,36 @@ +#include +#include +#include +int main(int argc, char**argv) { +FILE *fp; +char line[100]; +char line2[80]; +char *s; +int i; + +fprintf(stdout,"#ifndef OPENBLAS_CONFIG_H\n"); +fprintf(stdout,"#define OPENBLAS_CONFIG_H\n"); +fp=fopen(argv[1],"r"); +do{ +s=fgets(line,80,fp); +if (s== NULL) break; +memset(line2,0,80); +i=sscanf(line,"#define %70c",line2); +if (i>0) { + fprintf(stdout,"#define OPENBLAS_%s",line2); +} else { + fprintf(stdout,"\n"); +} +} while (1); +fclose(fp); +fprintf(stdout,"#define OPENBLAS_VERSION \"OpenBLAS %s\"\n", VERSION); +fp=fopen(argv[2],"r"); +do{ +s=fgets(line,100,fp); +if (s== NULL) break; +fprintf(stdout,"%s",line); +} while(1); +fclose(fp); +fprintf(stdout,"#endif /* OPENBLAS_CONFIG_H */\n"); +exit(0); +} From 1e25610b53c756f3437e4af96ac3c55cd67ef797 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Wed, 31 May 2017 18:28:24 +0200 Subject: [PATCH 18/19] Update CMakeLists.txt --- CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2505108084..6b34fd649e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -227,10 +227,11 @@ install(TARGETS ${OpenBLAS_LIBNAME} add_executable(gen_config_h gen_config_h.c) target_compile_definitions(gen_config_h PRIVATE VERSION=\"${OpenBLAS_VERSION}\") message (STATUS "Generating openblas_config.h in ${CMAKE_BINARY_DIR}") + GET_TARGET_PROPERTY(GENCONFIG_BIN gen_config_h LOCATION) ADD_CUSTOM_COMMAND( OUTPUT ${CMAKE_BINARY_DIR}/openblas_config.h DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/config.h - COMMAND ${CMAKE_BINARY_DIR}/gen_config_h ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > ${CMAKE_BINARY_DIR}/openblas_config.h + COMMAND ${GENCONFIG_BIN} ${CMAKE_CURRENT_SOURCE_DIR}/config.h ${CMAKE_CURRENT_SOURCE_DIR}/openblas_config_template.h > ${CMAKE_BINARY_DIR}/openblas_config.h ) ADD_CUSTOM_TARGET(genconfig DEPENDS openblas_config.h) add_dependencies( ${OpenBLAS_LIBNAME} genconfig genf77blas) From 8986687c92f6e80e510a9434bdff424a0363cd4f Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 1 Jun 2017 14:54:34 +0200 Subject: [PATCH 19/19] Fix generation and installation of header files Generate openblas_config.h and f77blas.h with same contents as in plain Makefile builds and install only the public header files --- CMakeLists.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6b34fd649e..b7602a31a7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -267,7 +267,6 @@ if(NOT NO_LAPACKE) ) install (FILES ${CMAKE_BINARY_DIR}/lapacke_mangling.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() - if(NOT MSVC) install (TARGETS ${OpenBLAS_LIBNAME}_static DESTINATION ${CMAKE_INSTALL_LIBDIR})