133 lines
5.1 KiB
Makefile
133 lines
5.1 KiB
Makefile
CC ?= gcc
|
|
CFLAGS ?= -O2 -std=c11 -Wall -Wextra -Werror
|
|
|
|
ROOT := ..
|
|
TARGETS := test_imu_calibration test_gps_nav_epoch \
|
|
test_gps_nav_epoch_coalescing test_gps_time_anchor \
|
|
test_plic_warm_reset test_gps_acq_manager \
|
|
test_gps_ephemeris_cache test_gps_receiver_hardware_sim
|
|
TARGETS += test_gps_tracking_measurement
|
|
TARGETS += test_gps_satellite_velocity
|
|
|
|
.PHONY: all run sanitize clean
|
|
|
|
all: $(TARGETS)
|
|
|
|
test_imu_calibration: test_imu_calibration.c $(ROOT)/src/imu/imu_calibration.c
|
|
$(CC) $(CFLAGS) -I$(ROOT)/header $^ -lm -o $@
|
|
|
|
test_gps_nav_epoch: test_gps_nav_epoch.c $(ROOT)/src/gps/gps_nav_epoch.c
|
|
$(CC) $(CFLAGS) -I$(ROOT)/header $^ -lm -o $@
|
|
|
|
test_gps_nav_epoch_coalescing: test_gps_nav_epoch_coalescing.c $(ROOT)/src/gps/gps_nav_epoch.c
|
|
$(CC) $(CFLAGS) -I$(ROOT)/header $^ -lm -o $@
|
|
|
|
test_gps_time_anchor: test_gps_time_anchor.c $(ROOT)/src/gps/gps_time_anchor.c
|
|
$(CC) $(CFLAGS) -I$(ROOT)/header $^ -lm -o $@
|
|
|
|
test_plic_warm_reset: test_plic_warm_reset.c $(ROOT)/../bsp/drivers/plic.c
|
|
$(CC) $(CFLAGS) -Ifake_bsp -I$(ROOT)/../bsp/include $^ -o $@
|
|
|
|
test_gps_acq_manager: test_gps_acq_manager.c $(ROOT)/src/gps/gps_acq_manager.c
|
|
$(CC) $(CFLAGS) -I$(ROOT)/header $^ -o $@
|
|
|
|
test_gps_ephemeris_cache: test_gps_ephemeris_cache.c $(ROOT)/src/gps/gps_ephemeris_cache.c
|
|
$(CC) $(CFLAGS) -Wno-comment -Ifake_bsp -I$(ROOT)/header $^ -o $@
|
|
|
|
test_gps_receiver_hardware_sim: test_gps_receiver_hardware_sim.c \
|
|
$(ROOT)/src/gps/gps_acq_manager.c \
|
|
$(ROOT)/src/gps/gps_ephemeris_cache.c
|
|
$(CC) $(CFLAGS) -Wno-comment -Ifake_bsp -I$(ROOT)/header $^ -o $@
|
|
|
|
test_gps_tracking_measurement: test_gps_tracking_measurement.c \
|
|
$(ROOT)/src/gps/gps_tracking_measurement.c
|
|
$(CC) $(CFLAGS) -Wno-comment -Ifake_bsp -I$(ROOT)/header $^ -lm -o $@
|
|
|
|
test_gps_satellite_velocity: test_gps_satellite_velocity.c \
|
|
$(ROOT)/src/gps/NavEquations.c \
|
|
$(ROOT)/src/gps/matrixLib.c
|
|
$(CC) $(CFLAGS) -Wno-comment -Wno-unused-parameter \
|
|
-Wno-unused-variable -Wno-sign-compare \
|
|
-Ifake_bsp -I$(ROOT)/header $^ -lm -o $@
|
|
|
|
run: $(TARGETS)
|
|
./test_imu_calibration
|
|
./test_gps_nav_epoch
|
|
./test_gps_nav_epoch_coalescing
|
|
./test_gps_time_anchor
|
|
./test_plic_warm_reset
|
|
./test_gps_acq_manager
|
|
./test_gps_ephemeris_cache
|
|
./test_gps_receiver_hardware_sim
|
|
./test_gps_tracking_measurement
|
|
./test_gps_satellite_velocity
|
|
|
|
sanitize:
|
|
$(CC) -O1 -g -std=c11 -Wall -Wextra -Werror \
|
|
-fsanitize=address,undefined -fno-omit-frame-pointer \
|
|
-I$(ROOT)/header test_gps_nav_epoch.c \
|
|
$(ROOT)/src/gps/gps_nav_epoch.c -lm \
|
|
-o test_gps_nav_epoch_san
|
|
ASAN_OPTIONS=detect_leaks=1:halt_on_error=1 \
|
|
UBSAN_OPTIONS=halt_on_error=1 ./test_gps_nav_epoch_san
|
|
$(CC) -O1 -g -std=c11 -Wall -Wextra -Werror \
|
|
-fsanitize=address,undefined -fno-omit-frame-pointer \
|
|
-I$(ROOT)/header test_gps_nav_epoch_coalescing.c \
|
|
$(ROOT)/src/gps/gps_nav_epoch.c -lm \
|
|
-o test_gps_nav_epoch_coalescing_san
|
|
ASAN_OPTIONS=detect_leaks=1:halt_on_error=1 \
|
|
UBSAN_OPTIONS=halt_on_error=1 ./test_gps_nav_epoch_coalescing_san
|
|
$(CC) -O1 -g -std=c11 -Wall -Wextra -Werror \
|
|
-fsanitize=address,undefined -fno-omit-frame-pointer \
|
|
-I$(ROOT)/header test_gps_acq_manager.c \
|
|
$(ROOT)/src/gps/gps_acq_manager.c \
|
|
-o test_gps_acq_manager_san
|
|
ASAN_OPTIONS=detect_leaks=1:halt_on_error=1 \
|
|
UBSAN_OPTIONS=halt_on_error=1 ./test_gps_acq_manager_san
|
|
$(CC) -O1 -g -std=c11 -Wall -Wextra -Werror \
|
|
-fsanitize=address,undefined -fno-omit-frame-pointer \
|
|
-Wno-comment -Ifake_bsp -I$(ROOT)/header \
|
|
test_gps_ephemeris_cache.c \
|
|
$(ROOT)/src/gps/gps_ephemeris_cache.c \
|
|
-o test_gps_ephemeris_cache_san
|
|
ASAN_OPTIONS=detect_leaks=1:halt_on_error=1 \
|
|
UBSAN_OPTIONS=halt_on_error=1 ./test_gps_ephemeris_cache_san
|
|
$(CC) -O1 -g -std=c11 -Wall -Wextra -Werror \
|
|
-fsanitize=address,undefined -fno-omit-frame-pointer \
|
|
-Wno-comment -Ifake_bsp -I$(ROOT)/header \
|
|
test_gps_receiver_hardware_sim.c \
|
|
$(ROOT)/src/gps/gps_acq_manager.c \
|
|
$(ROOT)/src/gps/gps_ephemeris_cache.c \
|
|
-o test_gps_receiver_hardware_sim_san
|
|
ASAN_OPTIONS=detect_leaks=1:halt_on_error=1 \
|
|
UBSAN_OPTIONS=halt_on_error=1 \
|
|
./test_gps_receiver_hardware_sim_san
|
|
$(CC) -O1 -g -std=c11 -Wall -Wextra -Werror \
|
|
-fsanitize=address,undefined -fno-omit-frame-pointer \
|
|
-Wno-comment -Ifake_bsp -I$(ROOT)/header \
|
|
test_gps_tracking_measurement.c \
|
|
$(ROOT)/src/gps/gps_tracking_measurement.c -lm \
|
|
-o test_gps_tracking_measurement_san
|
|
ASAN_OPTIONS=detect_leaks=1:halt_on_error=1 \
|
|
UBSAN_OPTIONS=halt_on_error=1 \
|
|
./test_gps_tracking_measurement_san
|
|
$(CC) -O1 -g -std=c11 -Wall -Wextra -Werror \
|
|
-fsanitize=address,undefined -fno-omit-frame-pointer \
|
|
-Wno-comment -Wno-unused-parameter -Wno-unused-variable \
|
|
-Wno-sign-compare -Ifake_bsp -I$(ROOT)/header \
|
|
test_gps_satellite_velocity.c \
|
|
$(ROOT)/src/gps/NavEquations.c \
|
|
$(ROOT)/src/gps/matrixLib.c -lm \
|
|
-o test_gps_satellite_velocity_san
|
|
ASAN_OPTIONS=detect_leaks=1:halt_on_error=1 \
|
|
UBSAN_OPTIONS=halt_on_error=1 \
|
|
./test_gps_satellite_velocity_san
|
|
|
|
clean:
|
|
rm -f $(TARGETS) test_gps_nav_epoch_coalescing_repro \
|
|
test_gps_nav_epoch_san test_gps_nav_epoch_coalescing_san \
|
|
test_gps_acq_manager_san test_gps_ephemeris_cache_san \
|
|
test_gps_receiver_hardware_sim_san \
|
|
test_gps_tracking_measurement_san \
|
|
test_gps_satellite_velocity_san
|