diff options
Diffstat (limited to 'lib/libc/Makefile')
-rw-r--r-- | lib/libc/Makefile | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/lib/libc/Makefile b/lib/libc/Makefile index c750d34..b5bd01e 100644 --- a/lib/libc/Makefile +++ b/lib/libc/Makefile @@ -1,14 +1,17 @@ -CFLAGS = -c -fno-stack-protector -nostdlib -static -Iinclude/ +CFLAGS = -c -fno-stack-protector -nostdlib -static -Iinclude/ -D_OLIBC LIBC_CFILES = $(shell find src/ -name "*.c") -LIBC_ASMFILES = $(shell find src/ -name "*.S") +LIBC_ASMFILES = $(shell find src/arch/$(ARCH) -name "*.S") LIBC_OBJ = $(LIBC_CFILES:.c=.o) LIBC_ASMOBJ = $(LIBC_ASMFILES:.S=.S.o) -all: headers $(LIBC_ASMOBJ) $(LIBC_OBJ) build/libc.a +all: sys/include/machine headers $(LIBC_ASMOBJ) $(LIBC_OBJ) build/libc.a build/libc.a: build/ ar rcs build/libc.a $(LIBC_OBJ) $(LIBC_ASMOBJ) + mv $(LIBC_ASMOBJ) build/ # For initial bootstrapping + mv build/crti.S.o build/crti.o + mv build/*.o build/*.a $(ROOT)/base/usr/lib/ %.o: %.c $(CC) $(CFLAGS) -Iinclude/ $< -o $@ @@ -16,8 +19,12 @@ build/libc.a: build/ %.S.o: %.S $(CC) $(CFLAGS) -Iinclude/ $< -o $@ +sys/include/machine: + mkdir -p include/machine/ + cp include/arch/$(ARCH)/*.h include/machine/ + .PHONY: headers -headers: +headers: sys/include/machine mkdir -p include/sys/ cp -f $(USRDIR)/include/sys/*.h include/sys cp -f include/*.h $(USRDIR)/include/ @@ -31,4 +38,5 @@ build/: .PHONY: clean clean: rm -f $(LIBC_OBJ) $(LIBC_ASMOBJ) + rm -rf include/machine/ rm -rf build/ |