GCC = nspire-gcc LD = nspire-ld GCCFLAGS = -Os -nostdlib -Wall -W -marm -Werror -mcpu=arm926ej-s -fPIE -ffreestanding LDFLAGS = -nostdlib -ffreestanding --no-startup --no-ldscript -T ldscript OBJCOPY := "$(shell which arm-elf-objcopy 2>/dev/null)" ifeq (${OBJCOPY},"") OBJCOPY := arm-none-eabi-objcopy endif EXE = linuxloader2.tns OBJS = $(patsubst %.c,%.o,$(wildcard *.c)) DISTDIR = . vpath %.tns $(DISTDIR) all: $(EXE) %.o: %.c $(GCC) $(GCCFLAGS) -c $< $(EXE): $(OBJS) $(LD) $^ -o $(@:.tns=.elf) $(LDFLAGS) mkdir -p $(DISTDIR) $(OBJCOPY) -O binary $(@:.tns=.elf) $(DISTDIR)/$@ clean: rm -f *.o *.elf rm -f $(DISTDIR)/$(EXE)