CMakeLists.txt 1.6 KB

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