CMakeLists.txt 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  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. target_sources(CMSISDSPFastMath PRIVATE arm_atan2_f16.c)
  48. endif()
  49. target_sources(CMSISDSPFastMath PRIVATE arm_divide_q15.c)
  50. target_sources(CMSISDSPFastMath PRIVATE arm_divide_q31.c)
  51. target_sources(CMSISDSPFastMath PRIVATE arm_atan2_f32.c)
  52. target_sources(CMSISDSPFastMath PRIVATE arm_atan2_q31.c)
  53. target_sources(CMSISDSPFastMath PRIVATE arm_atan2_q15.c)
  54. ### Includes
  55. target_include_directories(CMSISDSPFastMath PUBLIC "${DSP}/Include")