ASFLAGS +=\r
LDFLAGS += -soname libc.so.1 -Map map.txt -lgcc\r
\r
-OBJ_LIBC = heap.o stdlib.o stub.o env.o fileIO.o string.o\r
+OBJ = stub.o heap.o stdlib.o env.o fileIO.o string.o\r
+DEPFILES := $(OBJ:%.o=%.d)\r
# signals.o\r
BIN = ../libc.so.1\r
\r
.PHONY: all clean\r
\r
-all: $(BIN) $(OBJ_LIBC)\r
+all: $(BIN)\r
\r
clean:\r
- $(RM) $(BIN) $(OBJ_LIBC)\r
+ $(RM) $(BIN) ../libc.so $(OBJ) $(DEPFILES) libc.so.1.dsm libc.so.1.dmp map.txt\r
\r
# Core C Library\r
-$(BIN): $(OBJ_LIBC)\r
+$(BIN): $(OBJ)\r
@echo --- ld -shared -o $@\r
- @$(LD) $(LDFLAGS) $(OBJ_LIBC) -o $@\r
- $(OBJDUMP) -d $@ > libc.so.1.dsm\r
- $(OBJDUMP) -x -r -R $@ > libc.so.1.dmp\r
+ @$(LD) $(LDFLAGS) $(OBJ) -o $@\r
+ @$(OBJDUMP) -d $@ > libc.so.1.dsm\r
+ @$(OBJDUMP) -x -r -R $@ > libc.so.1.dmp\r
cp ../libc.so.1 ../libc.so\r
cp ../libc.so.1 $(DISTROOT)/Libs/\r
\r
@echo --- $(AS) -o $@\r
@$(AS) $(ASFLAGS) -o $@ $<\r
\r
-$(filter %.o, $(OBJ_LIBC)): %.o: %.c config.h\r
+$(filter %.o, $(OBJ)): %.o: %.c\r
@echo --- $(CC) -o $@\r
@$(CC) $(CFLAGS) -DBUILD_SO -o $@ -c $<\r
+ @$(MAKEDEP) $(CPPFLAGS) -MT $@ -o $*.d $<\r
\r
-$(filter %.ao, $(OBJ_LIBC)): %.ao: %.asm\r
+$(filter %.ao, $(OBJ)): %.ao: %.asm\r
@echo --- $(AS) -o $@\r
@$(AS) $(ASFLAGS) -o $@ $<\r