| SHELL = /bin/sh | |
| NULLCMD = @NULLCMD@ | |
| n=$(NULLCMD) | |
| ECHO1 = $(V:1=$n) | |
| RUNCMD = $(SHELL) | |
| CDPATH = . | |
| CHDIR = @CHDIR@ | |
| exec = exec | |
| NULL = /dev/null | |
| PATH_SEPARATOR = @PATH_SEPARATOR@ | |
| #### Start of system configuration section. #### | |
| srcdir = @srcdir@ | |
| top_srcdir = $(srcdir) | |
| hdrdir = $(srcdir)/include | |
| PLATFORM_DIR = @PLATFORM_DIR@ | |
| CC = @CC@ | |
| CPP = @CPP@ | |
| LD = @LD@ | |
| YACC = bison | |
| PURIFY = | |
| AUTOCONF = autoconf | |
| ACLOCAL = aclocal | |
| CONFIGURE = @CONFIGURE@ | |
| @SET_MAKE@ | |
| MKFILES = @MAKEFILES@ | |
| BASERUBY = @BASERUBY@ | |
| HAVE_BASERUBY = @HAVE_BASERUBY@ | |
| TEST_RUNNABLE = @TEST_RUNNABLE@ | |
| CROSS_COMPILING = @CROSS_COMPILING@ | |
| DOXYGEN = @DOXYGEN@ | |
| prefix = @prefix@ | |
| exec_prefix = @exec_prefix@ | |
| bindir = @bindir@ | |
| sbindir = @sbindir@ | |
| libdir = @libdir@ | |
| libexecdir = @libexecdir@ | |
| datarootdir = @datarootdir@ | |
| datadir = @datadir@ | |
| arch = @arch@ | |
| sitearch = @sitearch@ | |
| sitedir = @sitedir@ | |
| archlibdir = @archlibdir@ | |
| ruby_version = @ruby_version@ | |
| TESTUI = console | |
| TESTS = | |
| INSTALLDOC = @INSTALLDOC@ | |
| DOCTARGETS = @RDOCTARGET@ @CAPITARGET@ | |
| EXTOUT = @EXTOUT@ | |
| arch_hdrdir = $(EXTOUT)/include/$(arch) | |
| VPATH = $(arch_hdrdir)/ruby:$(hdrdir)/ruby:$(srcdir):$(srcdir)/missing | |
| empty = | |
| CC_VERSION = @CC_VERSION@ | |
| OUTFLAG = @OUTFLAG@$(empty) | |
| COUTFLAG = @COUTFLAG@$(empty) | |
| ARCH_FLAG = @ARCH_FLAG@ | |
| CFLAGS_NO_ARCH = @CFLAGS@ | |
| CFLAGS = $(CFLAGS_NO_ARCH) $(ARCH_FLAG) | |
| cflags = @cflags@ | |
| optflags = @optflags@ | |
| debugflags = @debugflags@ | |
| warnflags = @warnflags@ @strict_warnflags@ | |
| cppflags = @cppflags@ | |
| XCFLAGS = @XCFLAGS@ | |
| CPPFLAGS = @CPPFLAGS@ $(INCFLAGS) | |
| LDFLAGS = @STATIC@ $(CFLAGS) @LDFLAGS@ | |
| EXTLDFLAGS = @EXTLDFLAGS@ | |
| XLDFLAGS = @XLDFLAGS@ $(EXTLDFLAGS) | |
| EXTLIBS = | |
| LIBS = @LIBS@ $(EXTLIBS) | |
| MISSING = @LIBOBJS@ @ALLOCA@ | |
| LDSHARED = @LIBRUBY_LDSHARED@ | |
| DLDFLAGS = @LIBRUBY_DLDFLAGS@ $(XLDFLAGS) $(ARCH_FLAG) | |
| SOLIBS = @SOLIBS@ | |
| MAINLIBS = @MAINLIBS@ | |
| ARCHMINIOBJS = @MINIOBJS@ | |
| DLNOBJ = @DLNOBJ@ | |
| ENCOBJS = @ENCOBJS@ | |
| EXTOBJS = @EXTOBJS@ | |
| BUILTIN_ENCOBJS = @BUILTIN_ENCOBJS@ | |
| BUILTIN_TRANSSRCS = @BUILTIN_TRANSSRCS@ | |
| BUILTIN_TRANSOBJS = @BUILTIN_TRANSOBJS@ | |
| POSTLINK = @POSTLINK@ | |
| RUBY_BASE_NAME=@RUBY_BASE_NAME@ | |
| RUBY_PROGRAM_VERSION=@RUBY_PROGRAM_VERSION@ | |
| RUBY_INSTALL_NAME=@RUBY_INSTALL_NAME@ | |
| RUBY_SO_NAME=@RUBY_SO_NAME@ | |
| EXEEXT = @EXEEXT@ | |
| LIBEXT = @LIBEXT@ | |
| PROGRAM=$(RUBY_INSTALL_NAME)$(EXEEXT) | |
| RUBY = $(RUBY_INSTALL_NAME) | |
| MINIRUBY = @MINIRUBY@\ | |
| $(MINIRUBYOPT) | |
| # RUNRUBY_COMMAND:: runruby.rb or baseruby. do not append options directly | |
| RUNRUBY_COMMAND = @RUNRUBY_COMMAND@ | |
| # RUNRUBY:: run ruby with RUN_OPTS which is passed to ruby | |
| RUNRUBY = @RUNRUBY@ $(RUN_OPTS) | |
| # RUNRUBY_DEBUGGER:: debugging option for runruby.rb | |
| RUNRUBY_DEBUGGER = --debugger='gdb -x run.gdb --quiet --args' | |
| XRUBY = @XRUBY@ | |
| BTESTRUBY = @BTESTRUBY@\ | |
| $(MINIRUBYOPT) | |
| INSTALL = @INSTALL@ | |
| INSTALL_DATA = @INSTALL_DATA@ | |
| INSTALL_SCRIPT = @INSTALL_SCRIPT@ | |
| INSTALL_PROGRAM = @INSTALL_PROGRAM@ | |
| XRUBY_LIBDIR = @XRUBY_LIBDIR@ | |
| XRUBY_RUBYLIBDIR = @XRUBY_RUBYLIBDIR@ | |
| XRUBY_RUBYHDRDIR = @XRUBY_RUBYHDRDIR@ | |
| BOOTSTRAPRUBY = @BOOTSTRAPRUBY@ | |
| #### End of system configuration section. #### | |
| MAJOR= @MAJOR@ | |
| MINOR= @MINOR@ | |
| TEENY= @TEENY@ | |
| RUBY_PROGRAM_VERSION = @RUBY_PROGRAM_VERSION@ | |
| LIBRUBY_A = @LIBRUBY_A@ | |
| LIBRUBY_SO = @LIBRUBY_SO@ | |
| LIBRUBY_ALIASES= @LIBRUBY_ALIASES@ | |
| LIBRUBY = @LIBRUBY@ | |
| LIBRUBYARG = @LIBRUBYARG@ | |
| LIBRUBYARG_STATIC = @LIBRUBYARG_STATIC@ | |
| LIBRUBYARG_SHARED = @LIBRUBYARG_SHARED@ | |
| LIBRUBY_RELATIVE = @LIBRUBY_RELATIVE@ | |
| LIBRUBY_A_OBJS = @LIBRUBY_A_OBJS@ | |
| DTRACE_REBUILD_OBJS = $(DTRACE_REBUILD:yes=$(DTRACE_DEPENDENT_OBJS)) | |
| DTRACE_DEPENDENT_OBJS = array.$(OBJEXT) \ | |
| eval.$(OBJEXT) \ | |
| gc.$(OBJEXT) \ | |
| hash.$(OBJEXT) \ | |
| load.$(OBJEXT) \ | |
| object.$(OBJEXT) \ | |
| parse.$(OBJEXT) \ | |
| string.$(OBJEXT) \ | |
| symbol.$(OBJEXT) \ | |
| vm.$(OBJEXT) | |
| THREAD_MODEL = @THREAD_MODEL@ | |
| PREP = @PREP@ | |
| ARCHFILE = @ARCHFILE@ | |
| SETUP = | |
| EXTSTATIC = @EXTSTATIC@ | |
| ENCSTATIC = @ENCSTATIC@ | |
| SET_LC_MESSAGES = env LC_MESSAGES=C | |
| MAKEDIRS = @MKDIR_P@ | |
| CP = cp | |
| MV = mv | |
| RM = rm -f | |
| RMDIR = @RMDIR@ | |
| RMDIRS = @RMDIRS@ | |
| RMALL = @RMALL@ | |
| NM = @NM@ | |
| AR = @AR@ | |
| ARFLAGS = @ARFLAGS@ | |
| RANLIB = @RANLIB@ | |
| AS = @AS@ | |
| ASFLAGS = @ASFLAGS@ $(INCFLAGS) | |
| IFCHANGE = $(srcdir)/tool/ifchange | |
| SET_LC_MESSAGES = env LC_MESSAGES=C | |
| OBJDUMP = @OBJDUMP@ | |
| OBJCOPY = @OBJCOPY@ | |
| VCS = @VCS@ | |
| VCSUP = @VCSUP@ | |
| DTRACE = @DTRACE@ @DTRACE_OPT@ | |
| DTRACE_EXT = @DTRACE_EXT@ | |
| DTRACE_OBJ = @DTRACE_OBJ@ | |
| DTRACE_REBUILD= @DTRACE_REBUILD@ | |
| DTRACE_GLOMMED_OBJ = $(DTRACE_REBUILD:yes=ruby-glommed.$(OBJEXT)) | |
| OBJEXT = @OBJEXT@ | |
| ASMEXT = S | |
| DLEXT = @DLEXT@ | |
| MANTYPE = @MANTYPE@ | |
| SYMBOL_PREFIX = @SYMBOL_PREFIX@ | |
| INSTALLED_LIST= .installed.list | |
| NEWLINE_C = enc/trans/newline.c | |
| MINIPRELUDE_C = miniprelude.c | |
| PRELUDE_C = prelude.c | |
| RBCONFIG = .rbconfig.time | |
| SRC_FILE = $< | |
| OS_SRC_FILE = $< | |
| DEST_FILE = $@ | |
| OS_DEST_FILE = $@ | |
| MESSAGE_BEGIN = @for line in | |
| MESSAGE_END = ; do echo "$$line"; done | |
| ECHO_BEGIN = @sep=''; for word in | |
| ECHO_END = ; do echo @ECHO_N@ "$$sep'$$word'@ECHO_C@"; sep=' '; done; echo | |
| DESTDIR = @DESTDIR@ | |
| configure_args = @configure_args@ | |
| #### End of variables | |
| .SUFFIXES: .inc .h .c .y .i .$(DTRACE_EXT) | |
| all: | |
| # Prevent GNU make v3 from overflowing arg limit on SysV. | |
| .NOEXPORT: | |
| miniruby$(EXEEXT): | |
| @-if test -f $@; then $(MV) -f $@ $@.old; $(RM) $@.old; fi | |
| $(ECHO) linking $@ | |
| $(Q) $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(NORMALMAINOBJ) $(MINIOBJS) $(COMMONOBJS) $(MAINLIBS) $(LIBS) $(OUTFLAG)$@ | |
| $(PROGRAM): | |
| @$(RM) $@ | |
| $(ECHO) linking $@ | |
| $(Q) $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINOBJ) $(EXTOBJS) $(LIBRUBYARG) $(MAINLIBS) $(LIBS) $(EXTLIBS) $(OUTFLAG)$@ | |
| $(Q) $(POSTLINK) | |
| # 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) $@ | |
| $(ECHO) linking static-library $@ | |
| $(Q) $(AR) $(ARFLAGS) $@ $(LIBRUBY_A_OBJS) $(INITOBJS) | |
| @-$(RANLIB) $@ 2> /dev/null || true | |
| verify-static-library: $(LIBRUBY_A) | |
| $(ECHO) verifying static-library $@ | |
| @$(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINOBJ) $(LIBRUBY_A) $(MAINLIBS) $(EXTLIBS) $(LIBS) $(OUTFLAG)conftest$(EXEEXT) | |
| @$(RMALL) conftest$(EXEEXT) conftest.c conftest.dSYM | |
| $(LIBRUBY_SO): | |
| @-$(PRE_LIBRUBY_UPDATE) | |
| $(ECHO) linking shared-library $@ | |
| $(Q) $(LDSHARED) $(DLDFLAGS) $(OBJS) $(DLDOBJS) $(SOLIBS) $(EXTSOLIBS) $(OUTFLAG)$@ | |
| -$(Q) $(OBJCOPY) -w -L '$(SYMBOL_PREFIX)Init_*' -L '$(SYMBOL_PREFIX)ruby_static_id_*' \ | |
| -L '$(SYMBOL_PREFIX)*_threadptr_*' $@ | |
| $(Q) $(POSTLINK) | |
| @-$(MINIRUBY) -e 'ARGV.each{|link| File.delete link rescue nil; \ | |
| File.symlink "$(LIBRUBY_SO)", link}' \ | |
| $(LIBRUBY_ALIASES) || true | |
| ruby_pc = @ruby_pc@ | |
| $(ruby_pc): | |
| @./config.status --file=$@:$(srcdir)/template/ruby.pc.in | |
| ruby-runner.h: template/ruby-runner.h.in | |
| @./config.status --file=$@:$(srcdir)/template/$(@F).in | |
| ruby-runner$(EXEEXT): ruby-runner.c ruby-runner.h | |
| $(Q) $(PURIFY) $(CC) $(CFLAGS) $(CPPFLAGS) -DRUBY_INSTALL_NAME=$(RUBY_INSTALL_NAME) $(LDFLAGS) $(LIBS) $(OUTFLAG)$@ $< | |
| $(RBCONFIG): $(PREP) | |
| rbconfig.rb: $(RBCONFIG) | |
| install-cross: $(arch)-fake.rb $(RBCONFIG) rbconfig.rb $(arch_hdrdir)/ruby/config.h \ | |
| $(LIBRUBY_A) $(LIBRUBY_SO) $(ARCHFILE) | |
| $(ECHO) installing cross-compiling stuff | |
| $(Q) $(MAKEDIRS) $(XRUBY_RUBYLIBDIR)/$(arch) $(XRUBY_RUBYHDRDIR)/$(arch)/ruby | |
| $(Q) sed '/^\$$:\.unshift/q' $(arch)-fake.rb > fake.rb | |
| $(Q) $(BASERUBY) -p \ | |
| -e '~/^\s*CONFIG\["LDFLAGS"\]/ and' \ | |
| -e '$$_[/(?=\s*"$$)/] = %q[ #{(CONFIG["LIBPATHFLAG"]%File.dirname(__FILE__)).strip}]' \ | |
| rbconfig.rb > fake-rbconfig.rb | |
| $(INSTALL_SCRIPT) fake.rb $(XRUBY_RUBYLIBDIR)/$(arch)/fake.rb | |
| $(INSTALL_SCRIPT) fake-rbconfig.rb $(XRUBY_RUBYLIBDIR)/$(arch)/rbconfig.rb | |
| @$(RM) fake.rb fake-rbconfig.rb | |
| $(INSTALL_DATA) $(arch_hdrdir)/ruby/config.h $(XRUBY_RUBYHDRDIR)/$(arch)/ruby | |
| $(INSTALL_DATA) $(top_srcdir)/include/ruby/win32.h $(XRUBY_RUBYHDRDIR)/ruby | |
| $(INSTALL_DATA) $(LIBRUBY) $(LIBRUBY_A) $(XRUBY_RUBYLIBDIR)/$(arch) | |
| $(INSTALL_PROGRAM) $(LIBRUBY_SO) $(XRUBY_RUBYLIBDIR)/$(arch) | |
| Makefile: $(srcdir)/Makefile.in $(srcdir)/enc/Makefile.in | |
| $(MKFILES): config.status $(srcdir)/version.h | |
| @[ -f $@ ] && mv $@ $@.old | |
| MAKE=$(MAKE) $(SHELL) ./config.status $@ | |
| @cmp $@ $@.old > /dev/null 2>&1 && echo $@ unchanged && exit 0; \ | |
| { \ | |
| 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 "$@ updated, restart."; exit 1; } | |
| uncommon.mk: $(srcdir)/common.mk | |
| sed 's/{\$$([^(){}]*)[^{}]*}//g' $< > $@ | |
| .PHONY: reconfig | |
| reconfig-args = $(srcdir)/$(CONFIGURE) $(configure_args) | |
| config.status-args = ./config.status --recheck | |
| reconfig-exec-0 = test -t 1 && { CONFIGURE_TTY=yes; export CONFIGURE_TTY; }; exec 3>&1; exit `exec 4>&1; { "$$@" 3>&- 4>&-; echo $$? 1>&4; } | fgrep -v '(cached)' 1>&3 3>&- 4>&-` | |
| reconfig-exec-1 = set -x; "$$@" | |
| reconfig config.status: $(srcdir)/$(CONFIGURE) $(srcdir)/enc/Makefile.in \ | |
| $(srcdir)/include/ruby/version.h | |
| @PWD= MINIRUBY="$(MINIRUBY)"; export MINIRUBY; \ | |
| set $(SHELL) $($@-args); $(reconfig-exec-$(V)) | |
| $(srcdir)/$(CONFIGURE): $(srcdir)/configure.in $(srcdir)/aclocal.m4 | |
| $(CHDIR) $(srcdir) && exec $(AUTOCONF) -o $(@F) | |
| $(srcdir)/aclocal.m4: | |
| $(CHDIR) $(srcdir) && \ | |
| type $(ACLOCAL) >/dev/null 2>&1 && exec $(ACLOCAL); \ | |
| touch $(@F) | |
| incs: id.h | |
| all-incs: probes.h | |
| # Things which should be considered: | |
| # * with gperf v.s. without gperf | |
| # * committers may have various versions of gperf | |
| # * ./configure v.s. ../ruby/configure | |
| # * GNU make v.s. HP-UX make # HP-UX make invokes the action if lex.c and keywords has same mtime. | |
| # * svn checkout generate a file with mtime as current time | |
| # * ext4 and XFS has a mtime with fractional part | |
| lex.c: defs/keywords | |
| @\ | |
| if cmp -s $(srcdir)/defs/lex.c.src $?; then \ | |
| [ $(Q) ] && echo copying $@ || set -x; \ | |
| $(CP) $(srcdir)/lex.c.blt $@; \ | |
| else \ | |
| [ $(Q) ] && echo generating $@ || set -x; \ | |
| gperf -C -P -p -j1 -i 1 -g -o -t -N rb_reserved_word -k1,3,$$ $? \ | |
| | sed 's/(long)&((\(struct stringpool_t\) *\*)0)->\(stringpool_[a-z0-9]*\)/offsetof(\1, \2)/g' \ | |
| > $@.tmp && \ | |
| $(MV) $@.tmp $@ && \ | |
| $(CP) $? $(srcdir)/defs/lex.c.src && \ | |
| $(CP) $@ $(srcdir)/lex.c.blt; \ | |
| fi | |
| JIS_PROPS_OPTIONS = -k1,3 -7 -c -j1 -i1 -t -C -P -t --ignore-case -H onig_jis_property_hash -Q onig_jis_property_pool -N onig_jis_property | |
| enc/jis/props.h: enc/jis/props.kwd | |
| $(MAKEDIRS) $(@D) | |
| @set +e; \ | |
| if cmp -s $(?:.kwd=.src) $?; then \ | |
| set -x; \ | |
| $(CP) $(?:.kwd=.h.blt) $@; \ | |
| else \ | |
| set -x; \ | |
| gperf $(JIS_PROPS_OPTIONS) $? | \ | |
| sed 's/(int)(long)&((\([a-zA-Z_0-9 ]*[a-zA-Z_0-9]\) *\*)0)->\([a-zA-Z0-9_]*\),/(char)offsetof(\1, \2),/g' > $@ && \ | |
| $(CP) $? $(?:.kwd=.src) && \ | |
| $(CP) $@ $(?:.kwd=.h.blt); \ | |
| fi | |
| .c.@OBJEXT@: | |
| @$(ECHO) compiling $< | |
| $(Q) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c $< | |
| .s.@OBJEXT@: | |
| @$(ECHO) assembling $< | |
| $(Q) $(AS) $(ASFLAGS) -o $@ $< | |
| .c.S: | |
| @$(ECHO) translating $< | |
| $(Q) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -S $< | |
| .c.i: | |
| @$(ECHO) preprocessing $< | |
| $(Q) $(CPP) $(warnflags) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -E $< > $@ | |
| .d.h: | |
| @$(ECHO) translating probes $< | |
| $(Q) $(DTRACE) -o $@.tmp -h -C $(INCFLAGS) -s $< | |
| $(Q) sed -e 's/RUBY_/RUBY_DTRACE_/g' -e 's/PROBES_H_TMP/RUBY_PROBES_H/' -e 's/(char \*/(const char */g' -e 's/, char \*/, const char */g' $@.tmp > $@ | |
| $(Q) $(RM) $@.tmp | |
| .dmyh.h: | |
| @$(ECHO) making dummy $(DEST_FILE) | |
| $(Q)echo '#include "$(*F).dmyh"' > $@ | |
| probes.stamp: $(DTRACE_REBUILD_OBJS) | |
| $(Q) if test -f $@ -o -f probes.$(OBJEXT); then \ | |
| $(RM) $(DTRACE_REBUILD_OBJS) $@; \ | |
| $(ECHO0) "rebuilding objects which were modified by \"dtrace -G\""; \ | |
| $(MAKE) $(DTRACE_REBUILD_OBJS); \ | |
| fi | |
| $(Q) touch $@ | |
| probes.@OBJEXT@: $(srcdir)/probes.d $(DTRACE_REBUILD:yes=probes.stamp) | |
| @$(ECHO) processing probes in object files | |
| $(Q) $(RM) $@ | |
| $(Q) $(DTRACE) -G -C $(INCFLAGS) -s $(srcdir)/probes.d -o $@ $(DTRACE_REBUILD_OBJS) | |
| # DTrace static library hacks described here: | |
| # http://mail.opensolaris.org/pipermail/dtrace-discuss/2005-August/000207.html | |
| ruby-glommed.$(OBJEXT): | |
| @$(ECHO) generating a glommed object with DTrace probes for static library | |
| $(Q) $(LD) -r -o $@ $(OBJS) | |
| clean-local:: | |
| $(Q)$(RM) ext/extinit.c ext/extinit.$(OBJEXT) ext/ripper/y.output \ | |
| enc/encinit.c enc/encinit.$(OBJEXT) | |
| -$(Q)$(RM) $(pkgconfig_DATA) | |
| -$(Q)$(RMALL) ruby-runner$(EXEEXT) ruby-runner.h *.dSYM | |
| distclean-local:: | |
| $(Q)$(RM) ext/config.cache $(RBCONFIG) Doxyfile | |
| -$(Q)$(RM) run.gdb | |
| -$(Q)$(RM) $(INSTALLED_LIST) $(arch_hdrdir)/ruby/config.h verconf.h | |
| -$(Q)$(RMDIRS) $(arch_hdrdir)/ruby 2> /dev/null || true | |
| ext/clean.sub gems/clean.sub:: ext/clean.mk | |
| ext/distclean.sub gems/distclean.sub:: ext/distclean.mk | |
| ext/realclean.sub gems/realclean.sub:: ext/realclean.mk | |
| ext/clean.mk ext/distclean.mk ext/realclean.mk:: | |
| $(Q) [ -f $(EXTS_MK) ] && exec $(MAKE) -f $(EXTS_MK) $(@F:.mk=) | |
| ext/clean:: ext/clean.sub | |
| ext/distclean:: ext/distclean.sub | |
| ext/realclean:: ext/realclean.sub | |
| gems/clean:: gems/clean.sub | |
| gems/distclean:: gems/distclean.sub | |
| gems/realclean:: gems/realclean.sub | |
| ext/clean.sub ext/distclean.sub ext/realclean.sub \ | |
| gems/clean.sub gems/distclean.sub gems/realclean.sub:: | |
| $(Q) set dummy `echo "${EXTS}" | tr , ' '`; shift; \ | |
| test "$$#" = 0 && set .; \ | |
| set dummy `\ | |
| cd $(@D) 2>/dev/null && \ | |
| find "$$@" \( -name Makefile -o -name exts.mk \) -print | \ | |
| sed -n 's:^\./::;s:^:$(@D)/:;s:/[^/][^/]*$$::p' | sort -u; \ | |
| `; shift; \ | |
| for dir do \ | |
| $(RM) "$$dir/exts.mk"; \ | |
| if [ -f "$$dir/Makefile" ]; then \ | |
| echo $(@F:.sub=)ing "$$dir"; \ | |
| (cd "$$dir" && exec $(MAKE) $(mflags) $(@F:.sub=)); \ | |
| fi; \ | |
| done || true | |
| ext/distclean ext/realclean gems/distclean gems/realclean:: | |
| $(Q) set dummy `echo "${EXTS}" | tr , ' '`; shift; \ | |
| test "$$#" = 0 && set .; \ | |
| cd $(@D) 2>/dev/null && \ | |
| find "$$@" -type d -empty -exec $(RMDIRS) {} + 2> /dev/null || true | |
| $(Q) $(RMDIRS) $(@D) | |
| clean-enc distclean-enc realclean-enc: | |
| @test -f "$(ENC_MK)" || exit 0; \ | |
| echo $(@:-enc=ing) encodings; \ | |
| exec $(MAKE) $(MAKE_ENC) $(@:-enc=) | |
| ext/extinit.$(OBJEXT): ext/extinit.c $(SETUP) | |
| $(ECHO) compiling $@ | |
| $(Q) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c ext/extinit.c | |
| enc/encinit.$(OBJEXT): enc/encinit.c $(SETUP) | |
| update-src:: | |
| @$(CHDIR) "$(srcdir)" && LC_TIME=C exec $(VCSUP) | |
| update-download:: update-config_files | |
| after-update:: common-srcs | |
| update-mspec: | |
| @$(CHDIR) $(srcdir); \ | |
| if [ -d spec/mspec ]; then \ | |
| echo updating mspec ...; \ | |
| $(Q1:0=:) set -x; \ | |
| cd spec/mspec && \ | |
| exec git pull; \ | |
| else \ | |
| echo retrieving mspec ...; \ | |
| $(Q1:0=:) set -x; \ | |
| exec git clone $(MSPEC_GIT_URL) spec/mspec; \ | |
| fi | |
| $(Q)$(CHDIR) $(srcdir)/spec/mspec && exec git --no-pager log -1 --oneline | |
| update-rubyspec: update-mspec | |
| @$(CHDIR) $(srcdir); \ | |
| if [ -d spec/rubyspec ]; then \ | |
| echo updating rubyspec ...; \ | |
| $(Q1:0=:) set -x; \ | |
| cd spec/rubyspec && \ | |
| exec git pull; \ | |
| else \ | |
| echo retrieving rubyspec ...; \ | |
| $(Q1:0=:) set -x; \ | |
| exec git clone $(RUBYSPEC_GIT_URL) spec/rubyspec; \ | |
| fi | |
| $(Q)$(CHDIR) $(srcdir)/spec/rubyspec && exec git --no-pager log -1 --oneline | |
| test-rubyspec-precheck: | |
| @if [ ! -d $(srcdir)/spec/rubyspec ]; then echo No rubyspec here. make update-rubyspec first.; exit 1; fi | |
| update-doclie: | |
| @$(CHDIR) $(srcdir); \ | |
| if [ -d coverage/doclie ]; then \ | |
| echo updating doclie ...; \ | |
| $(Q1:0=:) set -x; \ | |
| cd coverage/doclie && \ | |
| git fetch && \ | |
| exec git checkout $(DOCLIE_GIT_REF); \ | |
| else \ | |
| echo retrieving doclie ...; \ | |
| $(Q1:0=:) set -x; \ | |
| exec git clone --branch $(DOCLIE_GIT_REF) $(DOCLIE_GIT_URL) coverage/doclie; \ | |
| fi | |
| update-simplecov-html: | |
| @$(CHDIR) $(srcdir); \ | |
| if [ -d coverage/simplecov-html ]; then \ | |
| echo updating simplecov-html ...; \ | |
| $(Q1:0=:) set -x; \ | |
| cd coverage/simplecov-html && \ | |
| git fetch && \ | |
| exec git checkout $(SIMPLECOV_HTML_GIT_REF); \ | |
| else \ | |
| echo retrieving simplecov-html ...; \ | |
| exec git clone --branch $(SIMPLECOV_HTML_GIT_REF) $(SIMPLECOV_HTML_GIT_URL) coverage/simplecov-html; \ | |
| fi | |
| update-simplecov: | |
| @$(CHDIR) $(srcdir); \ | |
| if [ -d coverage/simplecov ]; then \ | |
| echo updating simplecov ...; \ | |
| $(Q1:0=:) set -x; \ | |
| cd coverage/simplecov && \ | |
| git fetch && \ | |
| exec git checkout $(SIMPLECOV_GIT_REF); \ | |
| else \ | |
| echo retrieving simplecov ...; \ | |
| $(Q1:0=:) set -x; \ | |
| exec git clone --branch $(SIMPLECOV_GIT_REF) $(SIMPLECOV_GIT_URL) coverage/simplecov; \ | |
| fi | |
| update-coverage: update-simplecov update-simplecov-html update-doclie | |
| INSNS = opt_sc.inc optinsn.inc optunifs.inc insns.inc insns_info.inc \ | |
| vmtc.inc vm.inc | |
| $(INSNS): $(srcdir)/insns.def vm_opts.h \ | |
| $(srcdir)/defs/opt_operand.def $(srcdir)/defs/opt_insn_unif.def \ | |
| $(srcdir)/tool/instruction.rb $(srcdir)/tool/insns2vm.rb | |
| $(ECHO) generating $@ | |
| $(Q) $(BASERUBY) -Ku $(srcdir)/tool/insns2vm.rb $(INSNS2VMOPT) $@ | |
| verconf.h: $(RBCONFIG) | |
| loadpath: verconf.h | |
| @$(CPP) $(XCFLAGS) $(CPPFLAGS) $(srcdir)/loadpath.c | \ | |
| sed -e '1,/^const char ruby_initial_load_paths/d;/;/,$$d' \ | |
| -e '/^ /!d;s/ *"\\0"$$//;s/" *"//g' | |
| un-runnable: | |
| $(ECHO) cannot make runnable, configure with --enable-load-relative. | |
| $(Q) exit 1 |