Improve Including File to build single archive Files

This commit is contained in:
Daniel Bovensiepen
2012-11-21 15:56:30 +08:00
parent f97e3facd2
commit f30eedd7e8
+46 -1
View File
@@ -11,6 +11,7 @@ RM := rm -f
AR := ar
SRC_DIR := src
MRB_DIR := mrblib
INCLUDES := -I$(SRC_DIR) -I$(MRUBY_ROOT)include -I$(MRUBY_ROOT)src -I.
CFLAGS := $(INCLUDES) -O3 -g -Wall -Werror-implicit-function-declaration
@@ -27,11 +28,55 @@ endif
.PHONY : all
all : gem-info gem-all
@echo "Gem '$(GEM)' is done"
gem-info:
@echo "Building Gem '$(GEM)'"
# Building target for C and Ruby files
gem-c-and-rb-files : gem_mixlib.o
$(AR) rs gem.a $(GEM_OBJECTS) $^
gem_mixlib.c : gem_mrblib_header.ctmp gem_mrblib_irep.ctmp gem_mixlib_init.ctmp
cat $^ > $@
gem_mixlib_init.ctmp :
../../generator gem_mixlib $(GEM) > $@
# Building target for C files
gem-c-files : gem_srclib.o
$(AR) rs gem.a $(GEM_OBJECTS) $<
gem_srclib.c :
../../generator gem_srclib $(GEM) > $@
# Building target for Ruby Files
gem-rb-files : gem_mrblib.o
$(AR) rs gem.a $<
gem_mrblib.c : gem_mrblib_header.ctmp gem_mrblib_irep.ctmp gem_mrblib_init.ctmp
cat $^ > $@
gem_mrblib_header.ctmp :
../../generator gem_mrblib > $@
gem_mrblib_init.ctmp :
../../generator gem_mrblib $(GEM) > $@
gem_mrblib_irep.ctmp : gem_mrblib.rbtmp
../../../bin/mrbc -Bgem_mrblib_irep_$(GEM) -o$@ $<
gem_mrblib.rbtmp :
cat $(GEM_RB_FILES) > $@
gem-clean-c-and-rb-files :
-$(RM) gem.a gem_mixlib.o gem_mixlib.c gem_mrblib_header.ctmp gem_mrblib_irep.ctmp gem_mixlib_init.ctmp gem_mrblib.rbtmp
gem-clean-c-files :
-$(RM) gem.a gem_srclib.c gem_srclib.o $(GEM_OBJECTS)
gem-clean-rb-files :
-$(RM) gem.a gem_mrblib.o gem_mrblib.c gem_mrblib_header.ctmp gem_mrblib_init.ctmp gem_mrblib_irep.ctmp gem_mrblib.rbtmp
.PHONY : clean
clean : gem-clean
@echo "Gem '$(GEM)' is clean"