summaryrefslogtreecommitdiff
path: root/enc/depend
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-17 16:15:46 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-17 16:15:46 +0000
commit6ed9bdd463cd5365fdf91b94a8b9d83e7765ef8b (patch)
tree2e88e1faa65ff04fdfd631be90d4d4011791b274 /enc/depend
parentebfcc5d9337ec64e2ddb9c4125b7768df1b1995a (diff)
* common.mk (encs): added dependencies.
* enc/Makefile.in, enc/depend, enc/make_encmake.rb: moved serb code. * lib/mkmf.rb (depend_rules): now takes content string, not file name. * win32/enc-setup.mak: overrides default target. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'enc/depend')
-rw-r--r--enc/depend21
1 files changed, 21 insertions, 0 deletions
diff --git a/enc/depend b/enc/depend
index 9a7cf1a1ff..8fc836daff 100644
--- a/enc/depend
+++ b/enc/depend
@@ -1,3 +1,24 @@
+! encs = (Dir.open($srcdir) {|d| d.grep(/.+\.c\z/)} - CONFIG["BUILTIN_ENCS"].split).each {|e| e.chomp!(".c")}
+
+VPATH = <% %w[$(arch_hdrdir)/ruby $(hdrdir)/ruby $(top_srcdir) $(srcdir)].join(CONFIG["PATH_SEPARATOR"]) %>
+
+ENCOBJS = <%encs.map {|e|"#{e}.$(OBJEXT)"}.join(" \\\n\t ")+"\n"%>
+
+ENCSOS = <%encs.map {|e|"$(ENCSODIR)/#{e}.$(DLEXT)"}.join(" \\\n\t ")+"\n"%>
+
all: $(ENCSOS)
+.c.$(OBJEXT):
+ <%COMPILE_C%>
+
$(ENCOBJS): regenc.h oniguruma.h config.h defines.h
+
+! encs.each do |e|
+
+$(ENCSODIR)/<%e%>.$(DLEXT): <%e%>.$(OBJEXT)
+ <%LINK_SO.gsub(/\n/, "\n\t")%>
+! end
+
+! encs.each do |e|
+<%e%>.$(OBJEXT): <%e%>.c
+! end