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