CMakeLists.txt 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. cmake_minimum_required (VERSION 3.14)
  2. project(CMSISDSPFastMath)
  3. include(configLib)
  4. include(configDsp)
  5. add_library(CMSISDSPFastMath STATIC)
  6. configLib(CMSISDSPFastMath ${ROOT})
  7. configDsp(CMSISDSPFastMath ${ROOT})
  8. include(interpol)
  9. interpol(CMSISDSPFastMath)
  10. if (CONFIGTABLE AND ALLFAST)
  11. target_compile_definitions(CMSISDSPFastMath PUBLIC ARM_ALL_FAST_TABLES)
  12. endif()
  13. if (NOT CONFIGTABLE OR ALLFAST OR ARM_COS_F32)
  14. target_sources(CMSISDSPFastMath PRIVATE arm_cos_f32.c)
  15. endif()
  16. if (NOT CONFIGTABLE OR ALLFAST OR ARM_COS_Q15)
  17. target_sources(CMSISDSPFastMath PRIVATE arm_cos_q15.c)
  18. endif()
  19. if (NOT CONFIGTABLE OR ALLFAST OR ARM_COS_Q31)
  20. target_sources(CMSISDSPFastMath PRIVATE arm_cos_q31.c)
  21. endif()
  22. if (NOT CONFIGTABLE OR ALLFAST OR ARM_SIN_F32)
  23. target_sources(CMSISDSPFastMath PRIVATE arm_sin_f32.c)
  24. endif()
  25. if (NOT CONFIGTABLE OR ALLFAST OR ARM_SIN_Q15)
  26. target_sources(CMSISDSPFastMath PRIVATE arm_sin_q15.c)
  27. endif()
  28. if (NOT CONFIGTABLE OR ALLFAST OR ARM_SIN_Q31)
  29. target_sources(CMSISDSPFastMath PRIVATE arm_sin_q31.c)
  30. endif()
  31. if (NOT CONFIGTABLE OR ALLFAST OR ARM_SQRT_Q31)
  32. target_sources(CMSISDSPFastMath PRIVATE arm_sqrt_q31.c)
  33. endif()
  34. if (NOT CONFIGTABLE OR ALLFAST OR ARM_SQRT_Q15)
  35. target_sources(CMSISDSPFastMath PRIVATE arm_sqrt_q15.c)
  36. endif()
  37. target_sources(CMSISDSPFastMath PRIVATE arm_vlog_f32.c)
  38. target_sources(CMSISDSPFastMath PRIVATE arm_vlog_f64.c)
  39. target_sources(CMSISDSPFastMath PRIVATE arm_vexp_f32.c)
  40. target_sources(CMSISDSPFastMath PRIVATE arm_vexp_f64.c)
  41. target_sources(CMSISDSPFastMath PRIVATE arm_vlog_q31.c)
  42. target_sources(CMSISDSPFastMath PRIVATE arm_vlog_q15.c)
  43. if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
  44. target_sources(CMSISDSPFastMath PRIVATE arm_vlog_f16.c)
  45. target_sources(CMSISDSPFastMath PRIVATE arm_vexp_f16.c)
  46. target_sources(CMSISDSPFastMath PRIVATE arm_vinverse_f16.c)
  47. endif()
  48. target_sources(CMSISDSPFastMath PRIVATE arm_divide_q15.c)
  49. target_sources(CMSISDSPFastMath PRIVATE arm_divide_q31.c)
  50. ### Includes
  51. target_include_directories(CMSISDSPFastMath PUBLIC "${DSP}/Include")