2006-11-28 03:23:25 +03:00
|
|
|
INCLUDE = include
|
|
|
|
LIBNAME = melibc.a
|
|
|
|
CC = gcc
|
|
|
|
CFLAGS = -I$(INCLUDE) -nostdinc -DGNUC
|
|
|
|
DIRS := file mesys string mem
|
|
|
|
|
|
|
|
##############################################################
|
|
|
|
#files := $(foreach dir,$(DIRS),$(dir)/$(wildcard $(dir)/*))
|
|
|
|
asmfiles := $(foreach dir,$(DIRS),$(patsubst %.asm, %.o, $(wildcard $(dir)/*.asm)))
|
|
|
|
cfiles := $(foreach dir,$(DIRS),$(patsubst %.c, %.o, $(wildcard $(dir)/*.c)))
|
|
|
|
|
|
|
|
.PHONY: clean all
|
|
|
|
|
2006-12-01 13:55:54 +03:00
|
|
|
ifdef windir
|
|
|
|
doClean = del /F /Q $(subst /,\,$(cfiles)) $(subst /,\,$(asmfiles))
|
|
|
|
else
|
|
|
|
doClean = rm $(cfiles) $(asmfiles)
|
|
|
|
endif
|
|
|
|
|
2006-11-28 03:23:25 +03:00
|
|
|
all: $(cfiles) $(asmfiles)
|
|
|
|
ar -ru $(LIBNAME) $^
|
|
|
|
|
|
|
|
$(cfiles): $(INCLUDE)/*.h
|
|
|
|
|
|
|
|
$(asmfiles):
|
|
|
|
fasm $*.asm $*.o
|
|
|
|
|
|
|
|
clean:
|
2006-12-01 13:55:54 +03:00
|
|
|
$(doClean)
|