@@ -68,54 +68,32 @@ cppcheck() {
6868PANDA_OPTS=" --enable=all --addon=misra"
6969
7070printf " \n${GREEN} ** PANDA H7 CODE **${NC} \n"
71- cppcheck $PANDA_OPTS -DSTM32H7 -DSTM32H725xx -I $PANDA_DIR /board/stm32h7/inc/ -DPANDA \
72- $PANDA_DIR /board/libc.c \
73- $PANDA_DIR /board/early_init.c \
74- $PANDA_DIR /board/critical.c \
75- $PANDA_DIR /board/drivers/led.c \
76- $PANDA_DIR /board/drivers/pwm.c \
77- $PANDA_DIR /board/drivers/gpio.c \
78- $PANDA_DIR /board/drivers/fake_siren.c \
79- $PANDA_DIR /board/stm32h7/lli2c.c \
80- $PANDA_DIR /board/stm32h7/clock.c \
81- $PANDA_DIR /board/drivers/clock_source.c \
82- $PANDA_DIR /board/stm32h7/sound.c \
83- $PANDA_DIR /board/stm32h7/llflash.c \
84- $PANDA_DIR /board/stm32h7/stm32h7_config.c \
85- $PANDA_DIR /board/drivers/registers.c \
86- $PANDA_DIR /board/drivers/interrupts.c \
87- $PANDA_DIR /board/provision.c \
88- $PANDA_DIR /board/stm32h7/peripherals.c \
89- $PANDA_DIR /board/stm32h7/llusb.c \
90- $PANDA_DIR /board/drivers/usb.c \
91- $PANDA_DIR /board/drivers/spi.c \
92- $PANDA_DIR /board/drivers/timers.c \
93- $PANDA_DIR /board/stm32h7/lladc.c \
94- $PANDA_DIR /board/stm32h7/llspi.c \
95- $PANDA_DIR /board/faults.c \
96- $PANDA_DIR /board/boards/unused_funcs.c \
97- $PANDA_DIR /board/utils.c \
98- $PANDA_DIR /board/globals.c \
99- $PANDA_DIR /board/obj/gitversion.c \
100- $PANDA_DIR /board/can_comms.c \
101- $PANDA_DIR /board/drivers/fan.c \
102- $PANDA_DIR /board/power_saving.c \
103- $PANDA_DIR /board/drivers/uart.c \
104- $PANDA_DIR /board/stm32h7/llfdcan.c \
105- $PANDA_DIR /board/drivers/harness.c \
106- $PANDA_DIR /board/drivers/bootkick.c \
107- $PANDA_DIR /board/stm32h7/llfan.c \
108- $PANDA_DIR /board/stm32h7/lluart.c \
109- $PANDA_DIR /board/drivers/fdcan.c \
110- $PANDA_DIR /board/drivers/can_common.c \
111- $PANDA_DIR /board/main_comms.c \
112- $PANDA_DIR /board/main.c \
113- $PANDA_DIR /board/drivers/simple_watchdog.c \
114- $PANDA_DIR /board/stm32h7/board.c \
115- $PANDA_DIR /board/boards/tres.c \
116- $PANDA_DIR /board/boards/red.c \
117- $PANDA_DIR /board/boards/cuatro.c \
118- $PANDA_DIR /board/main_definitions.c
71+
72+ IGNORED_PATHS=(
73+ " $PANDA_DIR /board/obj"
74+ " $PANDA_DIR /board/jungle"
75+ " $PANDA_DIR /board/body"
76+ " $PANDA_DIR /board/stm32h7/inc"
77+ " $PANDA_DIR /board/fake_stm.h"
78+ " $PANDA_DIR /board/fake_stm.c"
79+ " $PANDA_DIR /board/flasher.h"
80+ " $PANDA_DIR /board/flasher.c"
81+ " $PANDA_DIR /board/bootstub.c"
82+ " $PANDA_DIR /board/bootstub_declarations.h"
83+ " $PANDA_DIR /board/stm32h7/llflash.h"
84+ " $PANDA_DIR /board/stm32h7/llflash.c"
85+ )
86+
87+ # build the find prune expression
88+ PRUNE_EXPR=" "
89+ for p in " ${IGNORED_PATHS[@]} " ; do
90+ PRUNE_EXPR=" $PRUNE_EXPR -path $p -prune -o"
91+ done
92+
93+ # find all .c files excluding ignored paths
94+ C_FILES=$( eval " find $PANDA_DIR /board $PRUNE_EXPR -name '*.c' -print" )
95+
96+ cppcheck $PANDA_OPTS -DSTM32H7 -DSTM32H725xx -I $PANDA_DIR /board/stm32h7/inc/ -DPANDA $C_FILES
11997
12098printf " \n${GREEN} Success!${NC} took $SECONDS seconds\n"
12199
0 commit comments