+−CC=gcc -g -ggdb +−CFLAGS=-Wall -O2 -Iinclude +−LDFLAGS= +−NASM=nasm -f elf -Iinclude/ +−TARGET=stackinfo +−OBJECTS=main.o get_sp.o +− +−.SUFFIXES: .c .asm +− +−.c.o: +− @echo Compiling $< ... +− @$(CC) -c $(CFLAGS) -o $@ $< +− +−.asm.o: +− @echo Assembling $< ... +− @$(NASM) $< -o $@ +− +−all: $(TARGET) decimal +− +−$(TARGET): $(OBJECTS) +− @echo Linking $(OBJECTS) ... +− @$(CC) $(LDFLAGS) $(OBJECTS) -o $@ +− +−decimal: decimal.o +− $(CC) $(CFLAGS) -o $@ $< +− +−.PHONY: clean uninstall +− +−clean: +− rm -f $(TARGET) decimal *.o *~ +− +−install: $(TARGET) decimal +− install -d ~/bin +− install $(TARGET) decimal ~/bin +− +−uninstall: +− rm -f ~/bin/decimal +− rm -f ~/bin/$(TARGET) +−