summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/Makefile4gem
diff options
context:
space:
mode:
Diffstat (limited to 'mrbgems/Makefile4gem')
-rw-r--r--mrbgems/Makefile4gem14
1 files changed, 10 insertions, 4 deletions
diff --git a/mrbgems/Makefile4gem b/mrbgems/Makefile4gem
index 4e6af4fcc..cd3151b2e 100644
--- a/mrbgems/Makefile4gem
+++ b/mrbgems/Makefile4gem
@@ -28,6 +28,9 @@ ifeq ($(strip $(ACTIVE_GEMS)),)
ACTIVE_GEMS = GEMS.active
endif
+MAKEFILE_GEM_LIST := $(MRUBY_ROOT)/mrbgems/g/MakefileGemList
+include $(MAKEFILE_GEM_LIST)
+
# Default rules which are calling the
# gem specific gem-all and gem-clean
# implementations of a gem
@@ -46,14 +49,14 @@ gem_mixlib.c : gem_mrblib_header.ctmp gem_mrblib_irep.ctmp gem_mixlib_init.ctmp
cat $^ > $@
gem_mixlib_init.ctmp :
- $(MRUBY_ROOT)/mrbgems/generator gem_mixlib $(GEM) > $@
+ ruby $(MRUBY_ROOT)/mrbgems/generate_gem_mixlib.rb '$(GEM)' > $@
# Building target for C files
gem-c-files : gem_srclib.o
$(AR) rs $(GEM_PACKAGE) $(GEM_OBJECTS) $<
gem_srclib.c :
- $(MRUBY_ROOT)/mrbgems/generator gem_srclib $(GEM) > $@
+ ruby $(MRUBY_ROOT)/mrbgems/generate_gem_srclib.rb '$(GEM)' > $@
# Building target for Ruby Files
gem-rb-files : gem_mrblib.o
@@ -63,10 +66,10 @@ gem_mrblib.c : gem_mrblib_header.ctmp gem_mrblib_irep.ctmp gem_mrblib_init.ctmp
cat $^ > $@
gem_mrblib_header.ctmp :
- $(MRUBY_ROOT)/mrbgems/generator gem_mrblib > $@
+ ruby $(MRUBY_ROOT)/mrbgems/generate_gem_mrblib_header.rb '$(GEM)' > $@
gem_mrblib_init.ctmp :
- $(MRUBY_ROOT)/mrbgems/generator gem_mrblib $(GEM) > $@
+ ruby $(MRUBY_ROOT)/mrbgems/generate_gem_mrblib.rb '$(GEM)' > $@
gem_mrblib_irep.ctmp : gem_mrblib.rbtmp
$(MRUBY_ROOT)/bin/mrbc -Bgem_mrblib_irep_$(subst -,_,$(GEM)) -o$@ $<
@@ -84,6 +87,9 @@ gem-clean-c-files :
gem-clean-rb-files :
-$(RM) $(GEM_PACKAGE) gem_mrblib.o gem_mrblib.c gem_mrblib_header.ctmp gem_mrblib_init.ctmp gem_mrblib_irep.ctmp gem_mrblib.rbtmp
+%.o : %.c
+ $(CC) -c $(CFLAGS) $(CPPFLAGS) $(GEM_INCLUDE_LIST) $< -o $@
+
.PHONY : clean
clean : gem-clean
@echo "Gem '$(GEM)' is clean"