SHELL = /bin/sh #### Start of system configuration section. #### srcdir = @srcdir@ VPATH = $(srcdir):$(srcdir)/missing CC = @CC@ YACC = @YACC@ PURIFY = AUTOCONF = autoconf @SET_MAKE@ MKFILES = @MAKEFILES@ prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ sbindir = @sbindir@ libdir = @libdir@ libexecdir = @libexecdir@ datadir = @datadir@ arch = @arch@ sitearch = @sitearch@ sitedir = @sitedir@ TESTUI = console TESTS = RDOCTARGET = @RDOCTARGET@ EXTOUT = .ext RIDATADIR = $(DESTDIR)$(datadir)/ri/$(MAJOR).$(MINOR)/system OUTFLAG = -o CFLAGS = @CFLAGS@ @XCFLAGS@ @ARCH_FLAG@ CPPFLAGS = -I. -I$(srcdir) @CPPFLAGS@ LDFLAGS = @STATIC@ $(CFLAGS) @LDFLAGS@ EXTLDFLAGS = XLDFLAGS = @XLDFLAGS@ $(EXTLDFLAGS) EXTLIBS = LIBS = @LIBS@ $(EXTLIBS) MISSING = @LIBOBJS@ @ALLOCA@ LDSHARED = @LIBRUBY_LDSHARED@ DLDFLAGS = @LIBRUBY_DLDFLAGS@ $(EXTLDFLAGS) @ARCH_FLAG@ SOLIBS = @SOLIBS@ MAINLIBS = @MAINLIBS@ RUBY_INSTALL_NAME=@RUBY_INSTALL_NAME@ RUBY_SO_NAME=@RUBY_SO_NAME@ EXEEXT = @EXEEXT@ PROGRAM=$(RUBY_INSTALL_NAME)$(EXEEXT) RUBY = $(RUBY_INSTALL_NAME) MINIRUBY = @MINIRUBY@ RUNRUBY = @RUNRUBY@ #### End of system configuration section. #### MAJOR= @MAJOR@ MINOR= @MINOR@ TEENY= @TEENY@ LIBRUBY_A = @LIBRUBY_A@ LIBRUBY_SO = @LIBRUBY_SO@ LIBRUBY_ALIASES= @LIBRUBY_ALIASES@ LIBRUBY = @LIBRUBY@ LIBRUBYARG = @LIBRUBYARG@ LIBRUBYARG_STATIC = @LIBRUBYARG_STATIC@ LIBRUBYARG_SHARED = @LIBRUBYARG_SHARED@ PREP = @PREP@ ARCHFILE = @ARCHFILE@ SETUP = EXTSTATIC = @EXTSTATIC@ RM = rm -f NM = @NM@ AR = @AR@ ARFLAGS = rcu RANLIB = @RANLIB@ OBJEXT = @OBJEXT@ EXTOBJS = DLDOBJS = $(DMYEXT) MAINOBJ = main.$(OBJEXT) MANTYPE = @MANTYPE@ #### End of variables all: .DEFAULT: all # Prevent GNU make v3 from overflowing arg limit on SysV. .NOEXPORT: miniruby$(EXEEXT): @$(RM) $@ $(PURIFY) $(CC) $(MAINOBJ) $(LIBRUBY_A) $(LIBS) $(OUTFLAG)$@ $(LDFLAGS) $(MAINLIBS) $(PROGRAM): @$(RM) $@ $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINLIBS) $(MAINOBJ) $(EXTOBJS) $(LIBRUBYARG) $(LIBS) $(OUTFLAG)$@ # We must `rm' the library each time this rule is invoked because "updating" a # MAB library on Apple/NeXT (see --enable-fat-binary in configure) is not # supported. $(LIBRUBY_A): @$(RM) $@ $(AR) $(ARFLAGS) $@ $(OBJS) $(DMYEXT) @-$(RANLIB) $@ 2> /dev/null || true $(LIBRUBY_SO): $(LDSHARED) $(DLDFLAGS) $(OBJS) $(DLDOBJS) $(SOLIBS) $(OUTFLAG)$@ @-$(MINIRUBY) -e 'ARGV.each{|link| File.delete link if File.exist? link; \ File.symlink "$(LIBRUBY_SO)", link}' \ $(LIBRUBY_ALIASES) || true fake.rb: Makefile @echo ' \ class Object; \ CROSS_COMPILING = RUBY_PLATFORM; \ remove_const :RUBY_PLATFORM; \ remove_const :RUBY_VERSION; \ RUBY_PLATFORM = "@arch@"; \ RUBY_VERSION = "@MAJOR@.@MINOR@.@TEENY@"; \ end; \ if RUBY_PLATFORM =~ /mswin|bccwin|mingw/; \ class File; \ remove_const :ALT_SEPARATOR; \ ALT_SEPARATOR = "\\"; \ end; \ end; \ ' > $@ Makefile: $(srcdir)/Makefile.in $(MKFILES): config.status $(srcdir)/common.mk MAKE=$(MAKE) $(SHELL) ./config.status @{ \ echo "all:; -@rm -f conftest.mk"; \ echo "conftest.mk: .force; @echo AUTO_REMAKE"; \ echo ".force:"; \ } > conftest.mk || exit 1; \ $(MAKE) -f conftest.mk | grep '^AUTO_REMAKE$$' >/dev/null 2>&1 || \ { echo "Makefile updated, restart."; exit 1; } config.status: $(srcdir)/configure MINIRUBY="$(MINIRUBY)" $(SHELL) ./config.status --recheck $(srcdir)/configure: $(srcdir)/configure.in cd $(srcdir) && $(AUTOCONF) lex.c: keywords @-$(RM) $@ gperf -p -j1 -i 1 -g -o -t -N rb_reserved_word -k1,3,$$ $? > $@ || \ cp "$(srcdir)/$@" . .y.c: $(YACC) $(YFLAGS) $< sed '/^#/s|y\.tab\.c|$@|' y.tab.c > $@ $(RM) y.tab.c .c.@OBJEXT@: $(CC) $(CFLAGS) $(CPPFLAGS) -c $< clean-local:: @$(RM) ext/extinit.c ext/extinit.$(OBJEXT) distclean-local:: @$(RM) ext/config.cache $(RBCONFIG) ext/extinit.$(OBJEXT): ext/extinit.c $(SETUP) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) -o$@ -c ext/extinit.c