mirror of
https://github.com/libretro/RetroArch.git
synced 2026-11-10 17:27:30 -10:00
The sample and test builds used full debug info. -g1 keeps what sanitizer reports and backtraces need - function names, files and line numbers - and drops the variable and type information nobody reads in CI. Objects get about 30% smaller (rh265.o under ASan+UBSan: 5.1MB to 3.7MB), so the ccache caches hold more of each job's build and are quicker to restore and save.
27 lines
681 B
Makefile
27 lines
681 B
Makefile
TARGET := pointer_frame_test
|
|
REPO_ROOT := ../../..
|
|
CFLAGS += -Wall -std=gnu99 -O1 -g1 -DRARCH_INTERNAL \
|
|
-I$(REPO_ROOT) -I$(REPO_ROOT)/libretro-common/include -I$(REPO_ROOT)/deps
|
|
|
|
ifeq ($(SANITIZER),address)
|
|
CFLAGS += -fsanitize=address -fno-omit-frame-pointer
|
|
LDFLAGS += -fsanitize=address
|
|
endif
|
|
ifeq ($(SANITIZER),undefined)
|
|
CFLAGS += -fsanitize=undefined -fno-sanitize-recover=undefined
|
|
LDFLAGS += -fsanitize=undefined
|
|
endif
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): pointer_frame_test.c $(REPO_ROOT)/input/input_pointer_frame.h
|
|
$(CC) $(CFLAGS) -o $@ pointer_frame_test.c $(LDFLAGS)
|
|
|
|
check: all
|
|
./$(TARGET)
|
|
|
|
clean:
|
|
rm -f $(TARGET)
|
|
|
|
.PHONY: all check clean
|