From 162b04061133c92f3b703c245eecfd0e0b6c5636 Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 30 Mar 2005 14:45:05 +0000 Subject: * Makefile.in, */Makefile.sub, */configure.bat, cygwin/GNUmakefile.in, common.mk, configure.in, ext/extmk.rb, lib/mkmf.rb, instruby.rb, runruby.rb: backport extout. [ruby-dev:25963] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- win32/Makefile.sub | 411 ++++++++++++----------------------------------------- 1 file changed, 91 insertions(+), 320 deletions(-) (limited to 'win32/Makefile.sub') diff --git a/win32/Makefile.sub b/win32/Makefile.sub index af1cc55b38..b65d3e4f11 100644 --- a/win32/Makefile.sub +++ b/win32/Makefile.sub @@ -1,6 +1,8 @@ # -*- makefile -*- SHELL = $(COMSPEC) +MKFILES = Makefile +NULL = nul #### Start of system configuration section. #### @@ -26,7 +28,7 @@ iconinc=-I$(icondirs: = -I) !endif ############### -VPATH = $(srcdir):$(srcdir)/missing +VPATH = $(srcdir);$(srcdir)/missing;$(srcdir)/win32 .SUFFIXES: .y .def .lib !if !defined(CC) @@ -41,6 +43,7 @@ YACC = byacc AR = lib -nologo PURIFY = AUTOCONF = autoconf +RM = $(srcdir:/=\)\win32\rm.bat !if !defined(PROCESSOR_ARCHITECTURE) PROCESSOR_ARCHITECTURE = x86 @@ -81,19 +84,29 @@ prefix = /usr !if !defined(exec_prefix) exec_prefix = $(prefix) !endif -!if !defined(DESTDIR) -DESTDIR = $(prefix) -!endif !if !defined(libdir) libdir = $(exec_prefix)/lib !endif +!if !defined(datadir) +datadir = $(prefix)/share +!endif +!ifndef EXTOUT +EXTOUT = .ext +!endif !ifndef RIDATADIR -RIDATADIR = $(DESTDIR)/share/ri/$(MAJOR).$(MINOR)/system +RIDATADIR = $(DESTDIR)$(datadir)/ri/$(MAJOR).$(MINOR)/system +!endif +!ifndef TESTUI +TESTUI = console +!endif +!ifndef TESTS +TESTS = !endif !ifndef RDOCTARGET RDOCTARGET = install-nodoc !endif +OUTFLAG = -Fe !if !defined(CFLAGS) CFLAGS = -MD $(DEBUGFLAGS) $(OPTFLAGS) $(PROCESSOR_FLAG) !endif @@ -131,6 +144,7 @@ PROGRAM=$(RUBY_INSTALL_NAME)$(EXEEXT) WPROGRAM=$(RUBYW_INSTALL_NAME)$(EXEEXT) RUBYDEF = $(RUBY_SO_NAME).def MINIRUBY = .\miniruby$(EXEEXT) +RUNRUBY = .\ruby$(EXEEXT) "$(srcdir)/runruby.rb" --extout="$(EXTOUT)" -- !if !defined(STACK) STACK = 0x2000000 @@ -144,71 +158,35 @@ LIBRUBY_SO = $(RUBY_SO_NAME).dll LIBRUBY = $(RUBY_SO_NAME).lib LIBRUBYARG = $(LIBRUBY) +PREP = miniruby$(EXEEXT) + +!if !defined(EXTSTATIC) +EXTSTATIC = +!endif + +OBJEXT = obj + EXTOBJS = DLDOBJS = -MAINOBJ = main.obj -WINMAINOBJ = winmain.obj - -OBJS = array.obj \ - bignum.obj \ - class.obj \ - compar.obj \ - dir.obj \ - dln.obj \ - enum.obj \ - error.obj \ - eval.obj \ - file.obj \ - gc.obj \ - hash.obj \ - inits.obj \ - io.obj \ - marshal.obj \ - math.obj \ - numeric.obj \ - object.obj \ - pack.obj \ - parse.obj \ - prec.obj \ - process.obj \ - random.obj \ - range.obj \ - re.obj \ - regex.obj \ - ruby.obj \ - signal.obj \ - sprintf.obj \ - st.obj \ - string.obj \ - struct.obj \ - time.obj \ - util.obj \ - variable.obj \ - version.obj \ - $(MISSING) - -SCRIPT_ARGS = "--dest-dir=$(DESTDIR)" \ - "--make=$(MAKE)" \ - "--mflags=$(MFLAGS)" \ - "--make-flags=$(MAKEFLAGS)" - -all: ext miniruby$(EXEEXT) rbconfig.rb \ - $(LIBRUBY) $(MISCLIBS) - @$(MINIRUBY) $(srcdir)/ext/extmk.rb --extstatic=$(EXTSTATIC) $(SCRIPT_ARGS) - -ext: - @mkdir $@ +WINMAINOBJ = winmain.$(OBJEXT) + +all: $(srcdir)/win32/Makefile.sub $(srcdir)/common.mk ruby: $(PROGRAM) rubyw: $(WPROGRAM) -lib: $(LIBRUBY) -dll: $(LIBRUBY_SO) -config: config.h config.status +!include $(srcdir)/common.mk + +CONFIG_H = ./.config.h.time + +config: config.status -config.h: - @echo Creating <<$@ +config.status: $(CONFIG_H) + +$(CONFIG_H): $(MKFILES) $(srcdir)/win32/Makefile.sub + @echo Creating config.h + @$(srcdir:/=\)\win32\ifchange.bat config.h << #define STDC_HEADERS 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_SYS_STAT_H 1 @@ -296,12 +274,15 @@ config.h: #define RUBY_PLATFORM "$(ARCH)-$(OS)" #define RUBY_ARCHLIB "/lib/ruby/$(MAJOR).$(MINOR)/$(ARCH)-$(OS)" #define RUBY_SITE_ARCHLIB "/lib/ruby/site_ruby/$(MAJOR).$(MINOR)/$(ARCH)-$(RT)" -< $(@:/=\) -config.status: Makefile $(srcdir)/win32/Makefile.sub - @echo Creating <<$@ +config.status: $(MKFILES) $(srcdir)/win32/Makefile.sub $(srcdir)/common.mk + @echo Creating $@ + @exit <<$@ # Generated automatically by Makefile.sub. s,@SHELL@,$$(COMSPEC),;t t +s,@PATH_SEPARATOR@,;,;t t s,@CFLAGS@,$(CFLAGS),;t t s,@CPPFLAGS@,$(CPPFLAGS),;t t s,@CXXFLAGS@,$(CXXFLAGS),;t t @@ -309,7 +290,7 @@ s,@FFLAGS@,$(FFLAGS),;t t s,@LDFLAGS@,,;t t s,@LIBS@,$(LIBS),;t t s,@exec_prefix@,$${prefix},;t t -s,@prefix@,,;t t +s,@prefix@,$(prefix),;t t s,@program_transform_name@,s,,,,;t t s,@bindir@,$${exec_prefix}/bin,;t t s,@sbindir@,$${exec_prefix}/sbin,;t t @@ -350,10 +331,10 @@ s,@LIBOBJS@, acosh.obj crypt.obj erf.obj win32.obj,;t t s,@ALLOCA@,$(ALLOCA),;t t s,@DEFAULT_KCODE@,$(DEFAULT_KCODE),;t t s,@EXEEXT@,.exe,;t t -s,@OBJEXT@,obj,;t t +s,@OBJEXT@,$(OBJEXT),;t t s,@XCFLAGS@,$(XCFLAGS),;t t s,@XLDFLAGS@,$(XLDFLAGS),;t t -s,@DLDFLAGS@,$(DLDFLAGS) $$(LIBPATH) -def:$$(DEFFILE),;t t +s,@DLDFLAGS@,$(DLDFLAGS) $$(LIBPATH) -def:$$(DEFFILE) -implib:$$(*F:.so=)-$$(arch).lib -pdb:$$(*F:.so=)-$$(arch).pdb,;t t s,@ARCH_FLAG@,$(ARCH_FLAG),;t t s,@STATIC@,$(STATIC),;t t s,@CCDLFLAGS@,,;t t @@ -365,6 +346,11 @@ s,@STRIP@,$(STRIP),;t t s,@EXTSTATIC@,$(EXTSTATIC),;t t s,@setup@,Setup,;t t s,@MINIRUBY@,$(MINIRUBY),;t t +s,@PREP@,miniruby$(EXEEXT),;t t +s,@RUNRUBY@,$(RUNRUBY),;t t +s,@EXTOUT@,$(EXTOUT),;t t +s,@ARCHFILE@,,;t t +s,@RDOCTARGET@,$(RDOCTARGET),;t t s,@LIBRUBY_LDSHARED@,$(LIBRUBY_LDSHARED),;t t s,@LIBRUBY_DLDFLAGS@,$(LIBRUBY_DLDFLAGS),;t t s,@RUBY_INSTALL_NAME@,$(RUBY_INSTALL_NAME),;t t @@ -381,7 +367,7 @@ s,@LIBRUBYARG_SHARED@,$$(LIBRUBY),;t t s,@SOLIBS@,$(SOLIBS),;t t s,@DLDLIBS@,$(DLDLIBS),;t t s,@ENABLE_SHARED@,yes,;t t -s,@OUTFLAG@,-Fe,;t t +s,@OUTFLAG@,$(OUTFLAG),;t t s,@CPPOUTFILE@,-P,;t t s,@LIBPATHFLAG@, -libpath:"%s",;t t s,@RPATHFLAG@,,;t t @@ -389,11 +375,13 @@ s,@LIBARG@,%s.lib,;t t s,@LINK_SO@,$$(LDSHARED) -Fe$$(@) $$(OBJS) $$(LIBS) $$(LOCAL_LIBS) $$(DLDFLAGS),;t t s,@COMPILE_C@,$$(CC) $$(CFLAGS) $$(CPPFLAGS) -c -Tc$$(<:\=/),;t t s,@COMPILE_CXX@,$$(CXX) $$(CXXFLAGS) $$(CPPFLAGS) -c -Tp$$(<:\=/),;t t -s,@COMPILE_RULES@,{$$(srcdir)}.%s{}.%s: .%s.%s:,;t t +s,@COMPILE_RULES@,{$$(srcdir)}.%s{}.%s: {$$(topdir)}.%s{}.%s: {$$(hdrdir)}.%s{}.%s: .%s.%s:,;t t +s,@RULE_SUBST@,{.;$$(srcdir);$$(topdir);$$(hdrdir)}%s,;t t s,@TRY_LINK@,$$(CC) -Feconftest $$(INCFLAGS) -I$$(hdrdir) $$(CPPFLAGS) $$(CFLAGS) $$(src) $$(LOCAL_LIBS) $$(LIBS) -link $$(LDFLAGS) $$(LIBPATH) $$(XLDFLAGS),;t t s,@COMMON_LIBS@,m,;t t s,@COMMON_MACROS@,WIN32_LEAN_AND_MEAN;t t s,@COMMON_HEADERS@,windows.h winsock.h,;t t +s,@DISTCLEANFILES@,vc*.pdb,;t t s,@EXPORT_PREFIX@, ,;t t s,@arch@,$(ARCH)-$(OS),;t t s,@sitearch@,$(ARCH)-$(RT),;t t @@ -404,111 +392,47 @@ s,@srcdir@,$(srcdir),;t t s,@top_srcdir@,$(srcdir),;t t < $@ @del y.tab.c -{$(srcdir)}parse.c: parse.y +$(OBJS): {$(srcdir)}win32/win32.h + +dir.$(OBJEXT): {$(srcdir)}win32/dir.h ext/extinit.obj: ext/extinit.c $(SETUP) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) -Fo$@ -c ext/extinit.c - -acosh.obj: {$(srcdir)}missing/acosh.c -alloca.obj: {$(srcdir)}missing/alloca.c -crypt.obj: {$(srcdir)}missing/crypt.c -dup2.obj: {$(srcdir)}missing/dup2.c -erf.obj: {$(srcdir)}missing/erf.c -finite.obj: {$(srcdir)}missing/finite.c -flock.obj: {$(srcdir)}missing/flock.c -memcmp.obj: {$(srcdir)}missing/memcmp.c -memmove.obj: {$(srcdir)}missing/memmove.c -mkdir.obj: {$(srcdir)}missing/mkdir.c -vsnprintf.obj: {$(srcdir)}missing/vsnprintf.c -strcasecmp.obj: {$(srcdir)}missing/strcasecmp.c -strncasecmp.obj: {$(srcdir)}missing/strncasecmp.c -strchr.obj: {$(srcdir)}missing/strchr.c -strdup.obj: {$(srcdir)}missing/strdup.c -strerror.obj: {$(srcdir)}missing/strerror.c -strftime.obj: {$(srcdir)}missing/strftime.c -strstr.obj: {$(srcdir)}missing/strstr.c -strtod.obj: {$(srcdir)}missing/strtod.c -strtol.obj: {$(srcdir)}missing/strtol.c -strtoul.obj: {$(srcdir)}missing/strtoul.c -nt.obj: {$(srcdir)}missing/nt.c -x68.obj: {$(srcdir)}missing/x68.c -os2.obj: {$(srcdir)}missing/os2.c -dl_os2.obj: {$(srcdir)}missing/dl_os2.c - -# when I use -I., there is confliction at "OpenFile" -# so, set . into environment varible "include" -win32.obj: {$(srcdir)}win32/win32.c - -# Prevent GNU make v3 from overflowing arg limit on SysV. -.NOEXPORT: -### -array.obj: {$(srcdir)}array.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}util.h {$(srcdir)}st.h {$(srcdir)}/win32/win32.h -bignum.obj: {$(srcdir)}bignum.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -class.obj: {$(srcdir)}class.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}rubysig.h {$(srcdir)}node.h {$(srcdir)}st.h \ - {$(srcdir)}/win32/win32.h -compar.obj: {$(srcdir)}compar.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -dir.obj: {$(srcdir)}dir.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}util.h {$(srcdir)}/win32/win32.h -dln.obj: {$(srcdir)}dln.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}dln.h {$(srcdir)}/win32/win32.h -dmyext.obj: {$(srcdir)}dmyext.c -enum.obj: {$(srcdir)}enum.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}node.h {$(srcdir)}util.h {$(srcdir)}/win32/win32.h -error.obj: {$(srcdir)}error.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}env.h {$(srcdir)}st.h {$(srcdir)}/win32/win32.h -eval.obj: {$(srcdir)}eval.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}node.h {$(srcdir)}env.h {$(srcdir)}util.h \ - {$(srcdir)}rubysig.h {$(srcdir)}st.h {$(srcdir)}dln.h \ - {$(srcdir)}/win32/win32.h -file.obj: {$(srcdir)}file.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}rubyio.h {$(srcdir)}rubysig.h {$(srcdir)}util.h \ - {$(srcdir)}dln.h {$(srcdir)}/win32/win32.h -gc.obj: {$(srcdir)}gc.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}rubysig.h {$(srcdir)}st.h {$(srcdir)}node.h \ - {$(srcdir)}env.h {$(srcdir)}re.h {$(srcdir)}regex.h \ - {$(srcdir)}/win32/win32.h -hash.obj: {$(srcdir)}hash.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}st.h {$(srcdir)}util.h {$(srcdir)}rubysig.h \ - {$(srcdir)}/win32/win32.h -inits.obj: {$(srcdir)}inits.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -io.obj: {$(srcdir)}io.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}rubyio.h {$(srcdir)}rubysig.h {$(srcdir)}env.h \ - {$(srcdir)}util.h {$(srcdir)}/win32/win32.h -main.obj: {$(srcdir)}main.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -marshal.obj: {$(srcdir)}marshal.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}rubyio.h {$(srcdir)}st.h {$(srcdir)}util.h \ - {$(srcdir)}/win32/win32.h -math.obj: {$(srcdir)}math.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -numeric.obj: {$(srcdir)}numeric.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -object.obj: {$(srcdir)}object.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}st.h {$(srcdir)}util.h {$(srcdir)}/win32/win32.h -pack.obj: {$(srcdir)}pack.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -parse.obj: {$(srcdir)}parse.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}env.h {$(srcdir)}node.h {$(srcdir)}st.h {$(srcdir)}regex.h \ - {$(srcdir)}util.h {$(srcdir)}lex.c {$(srcdir)}/win32/win32.h -prec.obj: {$(srcdir)}prec.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -process.obj: {$(srcdir)}process.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}rubysig.h {$(srcdir)}st.h {$(srcdir)}/win32/win32.h -random.obj: {$(srcdir)}random.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -range.obj: {$(srcdir)}range.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -re.obj: {$(srcdir)}re.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}re.h {$(srcdir)}regex.h {$(srcdir)}/win32/win32.h -regex.obj: {$(srcdir)}regex.c config.h {$(srcdir)}regex.h \ - {$(srcdir)}/win32/win32.h -ruby.obj: {$(srcdir)}ruby.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}dln.h {$(srcdir)}node.h {$(srcdir)}util.h \ - {$(srcdir)}/win32/win32.h -signal.obj: {$(srcdir)}signal.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}rubysig.h {$(srcdir)}/win32/win32.h -sprintf.obj: {$(srcdir)}sprintf.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -st.obj: {$(srcdir)}st.c config.h {$(srcdir)}st.h -string.obj: {$(srcdir)}string.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}re.h {$(srcdir)}regex.h {$(srcdir)}/win32/win32.h -struct.obj: {$(srcdir)}struct.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -time.obj: {$(srcdir)}time.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}/win32/win32.h -util.obj: {$(srcdir)}util.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}util.h {$(srcdir)}/win32/win32.h -variable.obj: {$(srcdir)}variable.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}env.h {$(srcdir)}node.h {$(srcdir)}st.h {$(srcdir)}util.h \ - {$(srcdir)}/win32/win32.h -version.obj: {$(srcdir)}version.c {$(srcdir)}ruby.h config.h \ - {$(srcdir)}defines.h {$(srcdir)}intern.h {$(srcdir)}missing.h \ - {$(srcdir)}version.h {$(srcdir)}/win32/win32.h -- cgit v1.2.3