You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

CMakeLists.txt 1.4 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. include_directories(${CMAKE_SOURCE_DIR})
  2. # TODO: Need to generate object files for S, D, C, Q and X - start with D for now.
  3. # The sources are the same, but there are additional preprocessor definitions depending on the precision (see Makefile.tail).
  4. add_library(DBLAS1OBJS OBJECT
  5. axpy.c swap.c
  6. copy.c scal.c
  7. dot.c
  8. asum.c nrm2.c
  9. max.c # amax/min/amin compiled later from same source
  10. rot.c rotg.c rotm.c rotmg.c
  11. axpby.c
  12. )
  13. # N.B. The original Makefile passed in -UUSE_MIN and -UUSE_ABS (where appropriate), no way to do that at a source-level in cmake. REMOVE_DEFINITIONS removes a definition for the rest of the compilation.
  14. add_library(AMAX_OBJ OBJECT max.c)
  15. set_target_properties(AMAX_OBJ PROPERTIES COMPILE_DEFINITIONS "USE_ABS")
  16. add_library(AMIN_OBJ OBJECT max.c)
  17. set_target_properties(AMIN_OBJ PROPERTIES COMPILE_DEFINITIONS "USE_ABS;USE_MIN")
  18. add_library(MIN_OBJ OBJECT max.c)
  19. set_target_properties(MIN_OBJ PROPERTIES COMPILE_DEFINITIONS "USE_MIN")
  20. # TODO: USE_NETLIB_GEMV shoudl switch gemv.c to netlib/*gemv.f
  21. add_library(DBLAS2OBJS OBJECT
  22. gemv.c ger.c
  23. trsv.c trmv.c symv.c
  24. syr.c syr2.c gbmv.c
  25. sbmv.c spmv.c
  26. spr.c spr2.c
  27. tbsv.c tbmv.c
  28. tpsv.c tpmv.c
  29. )
  30. add_library(DBLAS3OBJS OBJECT
  31. gemm.c symm.c
  32. trsm.c syrk.c syr2k.c
  33. omatcopy.c imatcopy.c
  34. )
  35. # trmm is trsm with a compiler flag set
  36. add_library(TRMM_OBJ OBJECT trsm.c)
  37. set_target_properties(TRMM_OBJ PROPERTIES COMPILE_DEFINITIONS TRMM)