From 0d315c585e30808bece80d3ec272140904228f3b Mon Sep 17 00:00:00 2001 From: Umar Arshad Date: Mon, 17 Jul 2017 19:09:24 -0400 Subject: [PATCH 1/2] Fix pthreads linking error when linking with lapacke --- src/backend/cpu/CMakeLists.txt | 21 +++++++++++++-------- src/backend/opencl/CMakeLists.txt | 28 ++++++++++++++++------------ 2 files changed, 29 insertions(+), 20 deletions(-) diff --git a/src/backend/cpu/CMakeLists.txt b/src/backend/cpu/CMakeLists.txt index aec7aab535..f7e2e8fceb 100644 --- a/src/backend/cpu/CMakeLists.txt +++ b/src/backend/cpu/CMakeLists.txt @@ -72,10 +72,10 @@ ELSE(APPLE) # Linux and Windows FIND_PACKAGE(LAPACKE) ENDIF(APPLE) -IF(NOT LAPACK_FOUND) - MESSAGE(WARNING "LAPACK not found. Functionality will be disabled") -ELSE(NOT LAPACK_FOUND) +IF(LAPACK_FOUND) ADD_DEFINITIONS(-DWITH_CPU_LINEAR_ALGEBRA) +ELSE() + MESSAGE(WARNING "LAPACK not found. Functionality will be disabled") ENDIF() IF(NOT UNIX) @@ -212,13 +212,18 @@ ADD_LIBRARY(afcpu SHARED ENDIF(DEFINED BLAS_SYM_FILE) TARGET_LINK_LIBRARIES(afcpu - PRIVATE ${CBLAS_LIBRARIES} - PRIVATE ${FFTW_LIBRARIES} - PRIVATE ${FreeImage_LIBS} - ) + PRIVATE + ${CBLAS_LIBRARIES} + ${FFTW_LIBRARIES} + ${FreeImage_LIBS} +) IF(LAPACK_FOUND) - TARGET_LINK_LIBRARIES(afcpu PRIVATE ${LAPACK_LIBRARIES}) + TARGET_LINK_LIBRARIES(afcpu + PRIVATE + ${LAPACK_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} + ) ENDIF() LIST(LENGTH GRAPHICS_DEPENDENCIES GRAPHICS_DEPENDENCIES_LEN) diff --git a/src/backend/opencl/CMakeLists.txt b/src/backend/opencl/CMakeLists.txt index 106cbf7504..7f2dd037f0 100644 --- a/src/backend/opencl/CMakeLists.txt +++ b/src/backend/opencl/CMakeLists.txt @@ -31,9 +31,7 @@ ELSE(APPLE) # Linux and Windows FIND_PACKAGE(LAPACKE) ENDIF(APPLE) -IF(NOT LAPACK_FOUND) - MESSAGE(WARNING "LAPACK not found. Functionality will be disabled") -ELSE(NOT LAPACK_FOUND) +IF(LAPACK_FOUND) ADD_DEFINITIONS(-DWITH_OPENCL_LINEAR_ALGEBRA) IF(NOT USE_OPENCL_MKL) @@ -47,6 +45,8 @@ ELSE(NOT LAPACK_FOUND) MESSAGE(SEND_ERROR "CBLAS Library not set") ENDIF() ENDIF() +ELSE(LAPACK_FOUND) + MESSAGE(WARNING "LAPACK not found. Functionality will be disabled") ENDIF() IF(USE_OPENCL_MKL) # Manual MKL Setup @@ -337,18 +337,22 @@ ELSE(DEFINED BLAS_SYM_FILE) ENDIF() TARGET_LINK_LIBRARIES(afopencl - PRIVATE ${OpenCL_LIBRARIES} - PRIVATE ${CLBLAST_LIBRARIES} - PRIVATE ${CLBLAS_LIBRARIES} - PRIVATE ${CLFFT_LIBRARIES} - PRIVATE ${CMAKE_DL_LIBS} - PRIVATE ${FreeImage_LIBS} - ) + PRIVATE + ${OpenCL_LIBRARIES} + ${CLBLAST_LIBRARIES} + ${CLBLAS_LIBRARIES} + ${CLFFT_LIBRARIES} + ${CMAKE_DL_LIBS} + ${FreeImage_LIBS} +) IF(LAPACK_FOUND) TARGET_LINK_LIBRARIES(afopencl - PRIVATE ${LAPACK_LIBRARIES} - PRIVATE ${CBLAS_LIBRARIES}) + PRIVATE + ${LAPACK_LIBRARIES} + ${CBLAS_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} + ) ENDIF(LAPACK_FOUND) LIST(LENGTH GRAPHICS_DEPENDENCIES GRAPHICS_DEPENDENCIES_LEN) From c962cee7c6a9b8146f1e73536a42f24af9d7a2e7 Mon Sep 17 00:00:00 2001 From: Umar Arshad Date: Mon, 17 Jul 2017 19:43:35 -0400 Subject: [PATCH 2/2] Add pthreads always --- src/backend/cpu/CMakeLists.txt | 7 ++----- src/backend/cuda/CMakeLists.txt | 21 ++++++++++++--------- src/backend/opencl/CMakeLists.txt | 2 +- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/backend/cpu/CMakeLists.txt b/src/backend/cpu/CMakeLists.txt index f7e2e8fceb..ac23489b08 100644 --- a/src/backend/cpu/CMakeLists.txt +++ b/src/backend/cpu/CMakeLists.txt @@ -216,14 +216,11 @@ TARGET_LINK_LIBRARIES(afcpu ${CBLAS_LIBRARIES} ${FFTW_LIBRARIES} ${FreeImage_LIBS} + ${CMAKE_THREAD_LIBS_INIT} ) IF(LAPACK_FOUND) - TARGET_LINK_LIBRARIES(afcpu - PRIVATE - ${LAPACK_LIBRARIES} - ${CMAKE_THREAD_LIBS_INIT} - ) + TARGET_LINK_LIBRARIES(afcpu PRIVATE ${LAPACK_LIBRARIES}) ENDIF() LIST(LENGTH GRAPHICS_DEPENDENCIES GRAPHICS_DEPENDENCIES_LEN) diff --git a/src/backend/cuda/CMakeLists.txt b/src/backend/cuda/CMakeLists.txt index efd9a834b3..9da3b90df9 100644 --- a/src/backend/cuda/CMakeLists.txt +++ b/src/backend/cuda/CMakeLists.txt @@ -351,15 +351,18 @@ MY_CUDA_ADD_LIBRARY(afcuda SHARED ${scan_by_key_sources} OPTIONS ${CUDA_GENERATE_CODE} ${CUDA_ADD_LIBRARY_OPTIONS}) -TARGET_LINK_LIBRARIES(afcuda PRIVATE ${CUDA_CUBLAS_LIBRARIES} - PRIVATE ${CUDA_LIBRARIES} - PRIVATE ${FreeImage_LIBS} - PRIVATE ${CUDA_CUFFT_LIBRARIES} - PRIVATE ${CUDA_cusparse_LIBRARY} - PRIVATE ${CUDA_cusolver_LIBRARY} - PRIVATE ${CUDA_nvrtc_LIBRARY} - PRIVATE ${CUDA_CUDA_LIBRARY} - ) +TARGET_LINK_LIBRARIES(afcuda + PRIVATE + ${CUDA_CUBLAS_LIBRARIES} + ${CUDA_LIBRARIES} + ${FreeImage_LIBS} + ${CUDA_CUFFT_LIBRARIES} + ${CUDA_cusparse_LIBRARY} + ${CUDA_cusolver_LIBRARY} + ${CUDA_nvrtc_LIBRARY} + ${CUDA_CUDA_LIBRARY} + ${CMAKE_THREAD_LIBS_INIT} +) ADD_DEPENDENCIES(afcuda ${jit_kernel_targets}) LIST(LENGTH GRAPHICS_DEPENDENCIES GRAPHICS_DEPENDENCIES_LEN) diff --git a/src/backend/opencl/CMakeLists.txt b/src/backend/opencl/CMakeLists.txt index 7f2dd037f0..1c66e45089 100644 --- a/src/backend/opencl/CMakeLists.txt +++ b/src/backend/opencl/CMakeLists.txt @@ -344,6 +344,7 @@ TARGET_LINK_LIBRARIES(afopencl ${CLFFT_LIBRARIES} ${CMAKE_DL_LIBS} ${FreeImage_LIBS} + ${CMAKE_THREAD_LIBS_INIT} ) IF(LAPACK_FOUND) @@ -351,7 +352,6 @@ IF(LAPACK_FOUND) PRIVATE ${LAPACK_LIBRARIES} ${CBLAS_LIBRARIES} - ${CMAKE_THREAD_LIBS_INIT} ) ENDIF(LAPACK_FOUND)