From 9a508abdc7f810df8c09e94845ef17338724fab0 Mon Sep 17 00:00:00 2001 From: Hank Anderson Date: Wed, 28 Jan 2015 14:52:15 -0600 Subject: [PATCH] Added first pass at driver/level2 makefile conversion. --- driver/level2/CMakeLists.txt | 86 ++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 driver/level2/CMakeLists.txt diff --git a/driver/level2/CMakeLists.txt b/driver/level2/CMakeLists.txt new file mode 100644 index 000000000..8dc37a880 --- /dev/null +++ b/driver/level2/CMakeLists.txt @@ -0,0 +1,86 @@ + +# sources that need to be compiled twice, once with no flags and once with LOWER +set(UL_SOURCES + sbmv_k.c + spmv_k.c + spr_k.c + spr2_k.c + syr_k.c + syr2_k.c +) + +# sources that need to be compiled several times, for UNIT, TRANS +set(NU_SOURCES + tbmv_U.c + tbsv_U.c + tpmv_U.c + tpsv_U.c + trmv_U.c + trsv_U.c + tbmv_L.c + tbsv_L.c + tpmv_L.c + tpsv_L.c + trmv_L.c + trsv_L.c +) + +# first compile all the objects that don't need specific preprocessor defines +add_library(DBLAS_NONE OBJECT + gbmv_k.c # gbmv_N + ${UL_SOURCES} + ${NU_SOURCES} +) + +# then do objects with transpose/triangular/etc definitions + +# objects that need TRANS set +add_library(DBLAS_T OBJECT gbmv_k.c ${NU_SOURCES}) +set_target_properties(DBLAS_T PROPERTIES COMPILE_DEFINITIONS TRANS) + +# objects that need LOWER set +add_library(DBLAS_L OBJECT ${UL_SOURCES}) +set_target_properties(DBLAS_L PROPERTIES COMPILE_DEFINITIONS LOWER) + +# objects that need UNIT set +add_library(DBLAS_U OBJECT ${NU_SOURCES}) +set_target_properties(DBLAS_U PROPERTIES COMPILE_DEFINITIONS UNIT) + +# objects that need TRANS and UNIT set +add_library(DBLAS_TU OBJECT ${NU_SOURCES}) +set_target_properties(DBLAS_TU PROPERTIES COMPILE_DEFINITIONS UNIT) +set_target_properties(DBLAS_TU PROPERTIES COMPILE_DEFINITIONS TRANS) + +#if (DEFINED SMP) +# add_library(DBLASOBJS_SMP +# dgemv_thread_n.c dgemv_thread_t.c +# dger_thread.c +# dsymv_thread_U.c dsymv_thread_L.c +# dsyr_thread_U.c dsyr_thread_L.c +# dsyr2_thread_U.c dsyr2_thread_L.c +# dspr_thread_U.c dspr_thread_L.c +# dspr2_thread_U.c dspr2_thread_L.c +# dtrmv_thread_NUU.c dtrmv_thread_NUN.c +# dtrmv_thread_NLU.c dtrmv_thread_NLN.c +# dtrmv_thread_TUU.c dtrmv_thread_TUN.c +# dtrmv_thread_TLU.c dtrmv_thread_TLN.c +# dspmv_thread_U.c dspmv_thread_L.c +# dtpmv_thread_NUU.c dtpmv_thread_NUN.c +# dtpmv_thread_NLU.c dtpmv_thread_NLN.c +# dtpmv_thread_TUU.c dtpmv_thread_TUN.c +# dtpmv_thread_TLU.c dtpmv_thread_TLN.c +# dgbmv_thread_n.c dgbmv_thread_t.c +# dsbmv_thread_U.c dsbmv_thread_L.c +# dtbmv_thread_NUU.c dtbmv_thread_NUN.c +# dtbmv_thread_NLU.c dtbmv_thread_NLN.c +# dtbmv_thread_TUU.c dtbmv_thread_TUN.c +# dtbmv_thread_TLU.c dtbmv_thread_TLN.c +# ) +#endif () + +set(DBLAS_TARGETS DBLAS_NONE DBLAS_T DBLAS_L DBLAS_U DBLAS_TU) + +foreach (${TARGET} ${DBLAS_TARGETS}) + set_target_properties(${TARGET} PROPERTIES COMPILE_DEFINITIONS DOUBLE) +endforeach () +