1cmake_minimum_required (VERSION 3.14) 2 3project(CMSISDSPMatrix) 4 5include(configLib) 6include(configDsp) 7 8file(GLOB SRCF64 "./*_f64.c") 9file(GLOB SRCF32 "./*_f32.c") 10file(GLOB SRCF16 "./*_f16.c") 11file(GLOB SRCQ31 "./*_q31.c") 12file(GLOB SRCQ15 "./*_q15.c") 13file(GLOB SRCQ7 "./*_q7.c") 14 15file(GLOB SRCU32 "./*_u32.c") 16file(GLOB SRCU16 "./*_u16.c") 17file(GLOB SRCU8 "./*_u8.c") 18 19add_library(CMSISDSPMatrix STATIC ${SRCF64}) 20target_sources(CMSISDSPMatrix PRIVATE ${SRCF32}) 21 22if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16)) 23target_sources(CMSISDSPMatrix PRIVATE ${SRCF16}) 24endif() 25 26target_sources(CMSISDSPMatrix PRIVATE ${SRCQ31}) 27target_sources(CMSISDSPMatrix PRIVATE ${SRCQ15}) 28target_sources(CMSISDSPMatrix PRIVATE ${SRCQ7}) 29 30target_sources(CMSISDSPMatrix PRIVATE ${SRCU32}) 31target_sources(CMSISDSPMatrix PRIVATE ${SRCU16}) 32target_sources(CMSISDSPMatrix PRIVATE ${SRCU8}) 33 34configLib(CMSISDSPMatrix ${ROOT}) 35configDsp(CMSISDSPMatrix ${ROOT}) 36 37### Includes 38target_include_directories(CMSISDSPMatrix PUBLIC "${DSP}/Include") 39 40 41if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16)) 42target_sources(CMSISDSPMatrix PRIVATE arm_mat_add_f16.c) 43target_sources(CMSISDSPMatrix PRIVATE arm_mat_sub_f16.c) 44target_sources(CMSISDSPMatrix PRIVATE arm_mat_trans_f16.c) 45target_sources(CMSISDSPMatrix PRIVATE arm_mat_scale_f16.c) 46target_sources(CMSISDSPMatrix PRIVATE arm_mat_mult_f16.c) 47target_sources(CMSISDSPMatrix PRIVATE arm_mat_vec_mult_f16.c) 48target_sources(CMSISDSPMatrix PRIVATE arm_mat_cmplx_trans_f16.c) 49target_sources(CMSISDSPMatrix PRIVATE arm_mat_cmplx_mult_f16.c) 50target_sources(CMSISDSPMatrix PRIVATE arm_mat_inverse_f16.c) 51target_sources(CMSISDSPMatrix PRIVATE arm_mat_init_f16.c) 52target_sources(CMSISDSPMatrix PRIVATE arm_mat_cholesky_f16.c) 53 54endif() 55