-include ../Makefile.cfg\r
\r
CPPFLAGS += \r
-CFLAGS += \r
+CFLAGS += -nostdlib -Wall -Werror -Wextra\r
ASFLAGS +=\r
-LDFLAGS += -soname libc.so.1 -Map map.txt -lgcc\r
+LDFLAGS += -nostdlib\r
+PRELINK := $(CRTI) $(CRTBEGINS) $(CRTS)\r
+LIBS += $(LIBGCC_PATH) $(CRTENDS) $(CRTN)\r
\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 install\r
-\r
-all: $(BIN)\r
-\r
-clean:\r
- $(RM) $(BIN) ../libc.so $(OBJ) $(DEPFILES) libc.so.1.dsm libc.so.1.dmp map.txt\r
-\r
-install: $(BIN)\r
- $(xCP) ../libc.so.1 $(DISTROOT)/Libs/\r
+INCFILES := stdio.h stdlib.h\r
\r
-# Core C Library\r
-$(BIN): $(OBJ)\r
- @echo --- ld -shared -o $@\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
-\r
-# C Runtime 0\r
-../crt0.o: crt0.asm\r
- @echo --- $(AS) -o $@\r
- @$(AS) $(ASFLAGS) -o $@ $<\r
-\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)): %.ao: %.asm\r
- @echo --- $(AS) -o $@\r
- @$(AS) $(ASFLAGS) -o $@ $<\r
+OBJ = stub.o heap.o stdlib.o env.o string.o rand.o\r
+OBJ += scanf.o signals.o strtoi.o strtof.o \r
+OBJ += printf.o time.o timeconv.o errno.o ctype.o\r
+OBJ += stdio.o stdio_files.o\r
+OBJ += arch/$(ARCHDIR).ao\r
+# signals.o\r
+DEPFILES := $(OBJ:%.o=%.d)\r
+BIN = libc.so\r
+ifeq ($(ARCHDIR),native)\r
+ OBJ := $(filter-out heap.o,$(OBJ)) heap_native.o\r
+ #LDFLAGS += -l c\r
+ BIN = libc_acess.so\r
+endif\r
+\r
+include ../Makefile.tpl\r
+\r
+EXP_%.txt: TEST_%.native\r
+ ./$< > $@\r
+ rm $<\r
+EXP_strtoi.txt:\r
+ echo -n "" > $@\r
+\r
+%.native: %.c\r
+ $(NCC) $< -o $@ -Wall -std=gnu99\r