Replace CMAKE_SOURCE_DIR/CMAKE_BINARY_DIR with PROJECT_SOURCE_DIR/PROJECT_BINARY_DIR
[platform/upstream/openblas.git] / driver / others / CMakeLists.txt
1 include_directories(${PROJECT_SOURCE_DIR})
2
3 if (${CORE} STREQUAL "PPC440")
4   set(MEMORY memory_qalloc.c)
5 else ()
6   set(MEMORY memory.c)
7 endif ()
8
9 if (SMP)
10
11   if (USE_OPENMP)
12     set(BLAS_SERVER blas_server_omp.c)
13   elseif (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
14     set(BLAS_SERVER blas_server_win32.c)
15   endif ()
16
17   if (NOT DEFINED BLAS_SERVER)
18     set(BLAS_SERVER blas_server.c)
19   endif ()
20
21   set(SMP_SOURCES
22     ${BLAS_SERVER}
23     divtable.c # TODO: Makefile has -UDOUBLE
24     blas_l1_thread.c
25   )
26
27   if (NOT NO_AFFINITY)
28     list(APPEND SMP_SOURCES init.c)
29   endif ()
30 endif ()
31
32 set(COMMON_SOURCES
33   xerbla.c
34   openblas_set_num_threads.c
35   openblas_error_handle.c
36   openblas_env.c
37   openblas_get_num_procs.c
38   openblas_get_num_threads.c
39 )
40
41 # these need to have NAME/CNAME set, so use GenerateNamedObjects, but don't use standard name mangling
42 GenerateNamedObjects("abs.c" "" "c_abs" 0 "" "" 1 )
43 GenerateNamedObjects("abs.c" "DOUBLE" "z_abs" 0 "" "" 1)
44 GenerateNamedObjects("openblas_get_config.c;openblas_get_parallel.c" "" "" 0 "" "" 1)
45
46 if (DYNAMIC_ARCH)
47   list(APPEND COMMON_SOURCES dynamic.c)
48 else ()
49   list(APPEND COMMON_SOURCES parameter.c)
50 endif ()
51
52 #ifdef EXPRECISION
53 #COMMONOBJS     += x_abs.$(SUFFIX) qlamch.$(SUFFIX) qlamc3.$(SUFFIX)
54 #endif
55 #
56 #ifdef QUAD_PRECISION
57 #COMMONOBJS     += addx.$(SUFFIX) mulx.$(SUFFIX)
58 #endif
59 #
60 #ifdef USE_CUDA
61 #COMMONOBJS     += cuda_init.$(SUFFIX)
62 #endif
63 #
64 #ifdef FUNCTION_PROFILE
65 #COMMONOBJS     += profile.$(SUFFIX)
66 #endif
67
68 #LIBOTHERS = libothers.$(LIBSUFFIX)
69
70 #ifeq ($(DYNAMIC_ARCH), 1)
71 #HPLOBJS = memory.$(SUFFIX) xerbla.$(SUFFIX) dynamic.$(SUFFIX)
72 #else
73 #HPLOBJS = memory.$(SUFFIX) xerbla.$(SUFFIX) parameter.$(SUFFIX)
74 #endif
75
76 add_library(driver_others OBJECT ${OPENBLAS_SRC} ${MEMORY} ${SMP_SOURCES} ${COMMON_SOURCES})