Rewrite the lunabuild toolchain with enhanced feature (#60)
[lunaix-os.git] / lunaix-os / usr / libc / makefile
index 5c4d3b029a1238f37b82888c25090697dd225d13..223ce4089ad89b58bc06408da3caccc263e2cb8b 100644 (file)
@@ -1,23 +1,24 @@
+include lunabuild.mkinc
+
+include $(lbuild_mkinc)
+
 libc_include := $(CURDIR)/includes
 
-ARCH ?= i386
 BUILD_DIR ?= bin
 BUILD_NAME ?= liblunac
 
 src_dirs := src
 src_dirs += arch/$(ARCH)
 
-src_files := $(foreach f, $(src_dirs), $(shell find $(f) -name "*.[cS]"))
-obj_files := $(addsuffix .o, $(src_files))
+obj_files := $(addsuffix .o, $(BUILD_SRCS))
 
 build_lib := $(BUILD_DIR)/lib
-build_include := $(BUILD_DIR)/includes
 
 libc_include_opt = $(addprefix -I, $(libc_include))
-global_include_opt = $(addprefix -I, $(INCLUDES))
+global_include_opt = $(addprefix -I, $(INCLUDES) $(BUILD_INC))
 
 check_folders := $(src_dirs)
-check_folders += $(build_lib) $(build_include)
+check_folders += $(build_lib) $(LIBC_INCLUDE)
 
 $(BUILD_DIR):
        @mkdir -p bin
@@ -40,11 +41,12 @@ $(build_lib)/$(BUILD_NAME): $(obj_files)
        @$(AR) rcs $@ $^
 
 clean:
+       @rm -rf $(lbuild_dir)
        @rm -f $(obj_files)
 
 headers: $(libc_include)
        @$(call status_,INSTALL,$(<F))
-       @cp -r $(libc_include)/* $(build_include)/
+       @cp -r $(libc_include)/* $(LIBC_INCLUDE)/
 
 all: $(addsuffix .check, $(check_folders)) $(build_lib)/$(BUILD_NAME) headers
        @cp arch/$(ARCH)/crt0.S.o $(build_lib)/crt0.o
\ No newline at end of file