+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
@$(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