cur_dir := $(dir $(lastword $(MAKEFILE_LIST))) ifeq ($(NOSTD),1) obj-y := $(patsubst $(cur_dir)%,%,$(wildcard $(cur_dir)*.c $(cur_dir)*.S)) obj-y := $(obj-y:.c=.o) obj-y := $(obj-y:.S=.o) # Use relative path to specify the include path (so that no change is needed after rename) ccflags-y := -I$(obj)/inc ifeq ($(LIBC_ROM),1) CFLAGS_libc_rom.o += -Iutils/rom_utils EXCLUDE_OBJS := strsep.o strtok.o strncat.o strnicmp.o strstr.o memset.o memcpy.o memmove.o \ atoi.o strtol.o strtoul.o qsort.o bsearch.o \ vsprintf.o vsscanf.o else EXCLUDE_OBJS := libc_rom.o endif obj-y := $(filter-out $(EXCLUDE_OBJS),$(obj-y)) else # !NOSTD obj-y := libc_rom.o CFLAGS_libc_rom.o += -Iutils/rom_utils # Avoid conflicting with libc in toolchain CFLAGS_libc_rom.o += -DNO_STRTOL CFLAGS_libc_rom.o += -DNO_STRTOUL CFLAGS_libc_rom.o += -DNO_VSSCANF CFLAGS_libc_rom.o += -DNO_ASSERT endif # !NOSTD