
1: SHELL = /bin/sh 2: NULLCMD = : 3: 4: #### Start of system configuration section. #### 5: 6: srcdir = @srcdir@ 7: VPATH = $(srcdir):$(srcdir)/missing 8: 9: CC = @CC@ 10: YACC = @YACC@ 11: PURIFY = 12: AUTOCONF = autoconf 13: @SET_MAKE@ 14: MKFILES = @MAKEFILES@ 15: 16: prefix = @prefix@ 17: exec_prefix = @exec_prefix@ 18: bindir = @bindir@ 19: sbindir = @sbindir@ 20: libdir = @libdir@ 21: libexecdir = @libexecdir@ 22: datarootdir = @datarootdir@ 23: datadir = @datadir@ 24: arch = @arch@ 25: sitearch = @sitearch@ 26: sitedir = @sitedir@ 27: 28: TESTUI = console 29: TESTS = 30: RDOCTARGET = @RDOCTARGET@ 31: 32: EXTOUT = @EXTOUT@ 33: RIDATADIR = $(DESTDIR)$(datadir)/ri/$(MAJOR).$(MINOR)/system 34: 35: empty = 36: OUTFLAG = @OUTFLAG@$(empty) 37: CFLAGS = @CFLAGS@ @XCFLAGS@ @ARCH_FLAG@ 38: CPPFLAGS = -I. -I$(srcdir) @CPPFLAGS@ 39: LDFLAGS = @STATIC@ $(CFLAGS) @LDFLAGS@ 40: EXTLDFLAGS = 41: XLDFLAGS = @XLDFLAGS@ $(EXTLDFLAGS) 42: EXTLIBS = 43: LIBS = @LIBS@ $(EXTLIBS) 44: MISSING = @LIBOBJS@ @ALLOCA@ 45: LDSHARED = @LIBRUBY_LDSHARED@ 46: DLDFLAGS = @LIBRUBY_DLDFLAGS@ $(EXTLDFLAGS) @ARCH_FLAG@ 47: SOLIBS = @SOLIBS@ 48: MAINLIBS = @MAINLIBS@ 49: MINIOBJS = @MINIOBJS@ 50: 51: RUBY_INSTALL_NAME=@RUBY_INSTALL_NAME@ 52: RUBY_SO_NAME=@RUBY_SO_NAME@ 53: EXEEXT = @EXEEXT@ 54: PROGRAM=$(RUBY_INSTALL_NAME)$(EXEEXT) 55: RUBY = $(RUBY_INSTALL_NAME) 56: MINIRUBY = @MINIRUBY@ $(MINIRUBYOPT) 57: RUNRUBY = @RUNRUBY@ 58: 59: #### End of system configuration section. #### 60: 61: MAJOR= @MAJOR@ 62: MINOR= @MINOR@ 63: TEENY= @TEENY@ 64: 65: LIBRUBY_A = @LIBRUBY_A@ 66: LIBRUBY_SO = @LIBRUBY_SO@ 67: LIBRUBY_ALIASES= @LIBRUBY_ALIASES@ 68: LIBRUBY = @LIBRUBY@ 69: LIBRUBYARG = @LIBRUBYARG@ 70: LIBRUBYARG_STATIC = @LIBRUBYARG_STATIC@ 71: LIBRUBYARG_SHARED = @LIBRUBYARG_SHARED@ 72: 73: PREP = @PREP@ 74: ARCHFILE = @ARCHFILE@ 75: SETUP = 76: EXTSTATIC = @EXTSTATIC@ 77: 78: RM = rm -f 79: NM = @NM@ 80: AR = @AR@ 81: ARFLAGS = rcu 82: RANLIB = @RANLIB@ 83: AS = @AS@ 84: ASFLAGS = @ASFLAGS@ 85: 86: OBJEXT = @OBJEXT@ 87: MANTYPE = @MANTYPE@ 88: 89: INSTALLED_LIST= .installed.list 90: #### End of variables 91: 92: all: 93: 94: .DEFAULT: all 95: 96: # Prevent GNU make v3 from overflowing arg limit on SysV. 97: .NOEXPORT: 98: 99: miniruby$(EXEEXT): 100: @$(RM) $@ 101: $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINLIBS) $(MAINOBJ) $(MINIOBJS) $(LIBRUBY_A) $(LIBS) $(OUTFLAG)$@ 102: 103: $(PROGRAM): 104: @$(RM) $@ 105: $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINLIBS) $(MAINOBJ) $(EXTOBJS) $(LIBRUBYARG) $(LIBS) $(OUTFLAG)$@ 106: 107: # We must `rm' the library each time this rule is invoked because "updating" a 108: # MAB library on Apple/NeXT (see --enable-fat-binary in configure) is not 109: # supported. 110: $(LIBRUBY_A): 111: @$(RM) $@ 112: $(AR) $(ARFLAGS) $@ $(OBJS) $(DMYEXT) 113: @-$(RANLIB) $@ 2> /dev/null || true 114: 115: $(LIBRUBY_SO): 116: @-$(PRE_LIBRUBY_UPDATE) 117: $(LDSHARED) $(DLDFLAGS) $(OBJS) $(DLDOBJS) $(SOLIBS) $(OUTFLAG)$@ 118: @-$(MINIRUBY) -e 'ARGV.each{|link| File.delete link if File.exist? link; \ 119: File.symlink "$(LIBRUBY_SO)", link}' \ 120: $(LIBRUBY_ALIASES) || true 121: 122: fake.rb: Makefile 123: @echo ' \ 124: class Object; \ 125: CROSS_COMPILING = RUBY_PLATFORM; \ 126: remove_const :RUBY_PLATFORM; \ 127: remove_const :RUBY_VERSION; \ 128: RUBY_PLATFORM = "@arch@"; \ 129: RUBY_VERSION = "@MAJOR@.@MINOR@.@TEENY@"; \ 130: end; \ 131: if RUBY_PLATFORM =~ /mswin|bccwin|mingw/; \ 132: class File; \ 133: remove_const :ALT_SEPARATOR; \ 134: ALT_SEPARATOR = "\\"; \ 135: end; \ 136: end; \ 137: ' > $@ 138: 139: Makefile: $(srcdir)/Makefile.in 140: 141: $(MKFILES): config.status $(srcdir)/common.mk 142: MAKE=$(MAKE) $(SHELL) ./config.status 143: @{ \ 144: echo "all:; -@rm -f conftest.mk"; \ 145: echo "conftest.mk: .force; @echo AUTO_REMAKE"; \ 146: echo ".force:"; \ 147: } > conftest.mk || exit 1; \ 148: $(MAKE) -f conftest.mk | grep '^AUTO_REMAKE$$' >/dev/null 2>&1 || \ 149: { echo "Makefile updated, restart."; exit 1; } 150: 151: config.status: $(srcdir)/configure 152: MINIRUBY="$(MINIRUBY)" $(SHELL) ./config.status --recheck 153: 154: $(srcdir)/configure: $(srcdir)/configure.in 155: cd $(srcdir) && $(AUTOCONF) 156: 157: lex.c: keywords 158: @-$(RM) $@ 159: gperf -p -j1 -i 1 -g -o -t -N rb_reserved_word -k1,3,$$ $? > $@ || \ 160: cp "$(srcdir)/$@" . 161: 162: .y.c: 163: $(YACC) $< 164: sed '/^#/s|y\.tab\.c|$@|' y.tab.c > $@ 165: rm -f y.tab.c 166: 167: .c.@OBJEXT@: 168: $(CC) $(CFLAGS) $(CPPFLAGS) -c $< 169: 170: .s.@OBJEXT@: 171: $(AS) $(ASFLAGS) -o $@ $< 172: 173: clean-local:: 174: @$(RM) ext/extinit.c ext/extinit.$(OBJEXT) 175: 176: distclean-local:: 177: @$(RM) ext/config.cache $(RBCONFIG) 178: 179: ext/extinit.$(OBJEXT): ext/extinit.c $(SETUP) 180: $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) -o$@ -c ext/extinit.c