summaryrefslogtreecommitdiff
path: root/win32/setup.mak
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-10-21 14:03:46 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-10-21 14:03:46 +0000
commite7ce523bb172c36b61cd5fc8d141a4488323bd84 (patch)
tree9def4bcac6871845573108cd38c51ead73dfc2c0 /win32/setup.mak
parent76e8a9e82870393e5cef137526e811a878404096 (diff)
* configure.in (XCFLAGS): CFLAGS to comile ruby itself.
* configure.in (LIBEXT): suffix for static libraries. * configure.in (LIBPATHFLAG): switch template to specify library path. * configure.in (LINK_SO): command to link shared objects. * configure.in (DEFFILE, ARCHFILE): miscellaneous system dependent files. * configure.in (EXPORT_PREFIX): prefix to exported symbols on Windows. * configure.in (COMMON_LIBS, COMMON_MACROS, COMMON_HEADERS): libraries, macros and headers used in common. * configure.in (RUBYW_INSTALL_NAME, rubyw_install_name): GUI mode excutable name. * Makefile.in (CFLAGS): append XCFLAGS. * Makefile.in (PREP): miscellaneous system dependent files. * Makefile.in (ruby.imp, ext/extinit.o): moved from ext/extmk.rb. * Makefile.in (fake.rb): CROSS_COMPILING keeps building platform. * Makefile.in (MAKEFILES): depend on *.in and config.status. * Makefile.in (parse.c): replace "y.tab.c" with actual name for byacc. * ext/extmk.rb, lib/mkmf.rb: integrated. * ext/extmk.rb: propagate MFLAGS. * ext/extmk.rb (extmake): make dummy Makefile to clean even if no Makefile is made. * lib/mkmf.rb (older): accept multiple file names and Time objects. * lib/mkmf.rb (xsystem): split and qoute. * lib/mkmf.rb (cpp_include): make include directives. * lib/mkmf.rb (try_func): try wheather specified function is available. * lib/mkmf.rb (install_files): default to site-install. * lib/mkmf.rb (checking_for): added. * lib/mkmf.rb (find_executable0): just find executable file with no message. * lib/mkmf.rb (create_header): output header file is variable. * lib/mkmf.rb (create_makefile): separate sections. * lib/mkmf.rb (init_mkmf): initialize global variables. * win32/Makefile.sub, bcc32/Makefile.sub (CPP, AR): added. * bcc32/Makefile.sub (ARCH): fixed to i386. * win32/Makefile.sub, bcc32/Makefile.sub (miniruby): should not link EXTOBJS. * ext/dl/extconf.rb: use try_cpp to cross compile. * ext/dl/extconf.rb: not modify files in source directory. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'win32/setup.mak')
-rw-r--r--win32/setup.mak108
1 files changed, 66 insertions, 42 deletions
diff --git a/win32/setup.mak b/win32/setup.mak
index 88c5822a37..328afa0d78 100644
--- a/win32/setup.mak
+++ b/win32/setup.mak
@@ -1,58 +1,82 @@
# -*- makefile -*-
-!IF "$(WIN32DIR)" == "win32"
+!if "$(srcdir)" != ""
+WIN32DIR = $(srcdir)/win32
+!elseif "$(WIN32DIR)" == "win32"
srcdir = .
-!ELSEIF "$(WIN32DIR)" == "$(WIN32DIR:/win32=)/win32"
+!elseif "$(WIN32DIR)" == "$(WIN32DIR:/win32=)/win32"
srcdir = $(WIN32DIR:/win32=)
-!ELSE
+!else
srcdir = $(WIN32DIR)/..
-!ENDIF
+!endif
OS = mswin32
RT = msvcrt
INCLUDE = !include
-MAKEFILE = $(WIN32DIR)/setup.mak
-
-!if "$(target)" == ""
-all: Makefile
- @echo type `$(MAKE)' to make ruby for $(OS).
+APPEND = echo>>$(MAKEFILE)
+!ifdef MAKEFILE
+MAKE = $(MAKE) -f $(MAKEFILE)
!else
-all: $(target)
+MAKEFILE = Makefile
!endif
+ARCH = PROCESSOR_ARCHITECTURE
+CPU = PROCESSOR_LEVEL
-i386-$(OS):
- @$(MAKE) -$(MAKEFLAGS) -f $(MAKEFILE) target= \
- PROCESSOR_ARCHITECTURE=x86 PROCESSOR_LEVEL=3
-i486-$(OS):
- @$(MAKE) -$(MAKEFLAGS) -f $(MAKEFILE) target= \
- PROCESSOR_ARCHITECTURE=x86 PROCESSOR_LEVEL=4
-i586-$(OS):
- @$(MAKE) -$(MAKEFLAGS) -f $(MAKEFILE) target= \
- PROCESSOR_ARCHITECTURE=x86 PROCESSOR_LEVEL=5
-i686-$(OS):
- @$(MAKE) -$(MAKEFLAGS) -f $(MAKEFILE) target= \
- PROCESSOR_ARCHITECTURE=x86 PROCESSOR_LEVEL=6
-alpha-$(OS):
- @$(MAKE) -$(MAKEFLAGS) -f $(MAKEFILE) target= \
- PROCESSOR_ARCHITECTURE=alpha PROCESSOR_LEVEL=
-
-Makefile:
- @echo Creating <<$@
+all: -prologue- -generic- -epilogue-
+i386-$(OS): -prologue- -i386- -epilogue-
+i486-$(OS): -prologue- -i486- -epilogue-
+i586-$(OS): -prologue- -i586- -epilogue-
+i686-$(OS): -prologue- -i686- -epilogue-
+alpha-$(OS): -prologue- -alpha- -epilogue-
+
+-prologue-: nul
+ @echo Creating <<$(MAKEFILE)
### Makefile for ruby $(OS) ###
srcdir = $(srcdir:\=/)
-!if defined(PROCESSOR_ARCHITECTURE)
-PROCESSOR_ARCHITECTURE = $(PROCESSOR_ARCHITECTURE)
+
+<<KEEP
+
+-generic-: nul
+!if defined($(ARCH)) || defined($(CPU))
+ @type << >>$(MAKEFILE)
+!if defined($(ARCH))
+$(ARCH) = $(PROCESSOR_ARCHITECTURE)
!endif
-!if defined(PROCESSOR_LEVEL)
-PROCESSOR_LEVEL = $(PROCESSOR_LEVEL)
+!if defined($(CPU))
+$(CPU) = $(PROCESSOR_LEVEL)
!endif
-RUBY_INSTALL_NAME = ruby
-RUBY_SO_NAME = $(RT)-$$(RUBY_INSTALL_NAME)17
-prefix = /usr
-CFLAGS = -nologo -MD -DNT=1 $$(DEBUGFLAGS) $$(OPTFLAGS) $$(PROCESSOR_FLAG)
-CPPFLAGS = -I. -I$$(srcdir) -I$$(srcdir)/missing -DLIBRUBY_SO=\"$$(LIBRUBY_SO)\"
-LDFLAGS = $$(CFLAGS) -Fm
-XLDFLAGS =
-RFLAGS = -r
-EXTLIBS =
+
+<<
+!endif
+
+-alpha-: nul
+ @$(APPEND) $(ARCH) = alpha
+-ix86-: nul
+ @$(APPEND) $(ARCH) = x86
+
+-i386-: -ix86-
+ @$(APPEND) $(CPU) = 3
+-i486-: -ix86-
+ @$(APPEND) $(CPU) = 4
+-i586-: -ix86-
+ @$(APPEND) $(CPU) = 5
+-i686-: -ix86-
+ @$(APPEND) $(CPU) = 6
+
+-epilogue-: nul
+ @type << >>$(MAKEFILE)
+# OS = $(OS)
+# RT = $(RT)
+# RUBY_INSTALL_NAME = ruby
+# RUBY_SO_NAME = $$(RT)-$$(RUBY_INSTALL_NAME)17
+# prefix = /usr
+# CFLAGS = -nologo -MD $$(DEBUGFLAGS) $$(OPTFLAGS) $$(PROCESSOR_FLAG)
+# CPPFLAGS = -I. -I$$(srcdir) -I$$(srcdir)/missing -DLIBRUBY_SO=\"$$(LIBRUBY_SO)\"
+# STACK = 0x2000000
+# LDFLAGS = $$(CFLAGS) -Fm
+# XLDFLAGS =
+# RFLAGS = -r
+# EXTLIBS =
+
$(INCLUDE) $$(srcdir)/win32/Makefile.sub
-<<KEEP
+<<
+ @echo type `$(MAKE)' to make ruby for $(OS).