diff --git a/ext/extmk.rb.in b/ext/extmk.rb.in index deb29ecae8..a4913e06b0 100644 --- a/ext/extmk.rb.in +++ b/ext/extmk.rb.in @@ -507,7 +507,7 @@ def extmake(target) $libs = "" when /mswin32/ $LIBEXT = "lib" - $libs = "" + $libs = "RubyCRT.lib" $local_flags = "$(topdir)/rubymw.lib -link /EXPORT:Init_$(TARGET)" else $libs = "-lc" diff --git a/io.c b/io.c index e6c730c7f5..b14e617749 100644 --- a/io.c +++ b/io.c @@ -2272,6 +2272,7 @@ next_argv() else { next_p = -1; current_file = rb_stdin; + filename = rb_str_new2("-"); } init_p = 1; first_p = 0; diff --git a/lib/mkmf.rb b/lib/mkmf.rb index 377d9f8318..3565a0e391 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -469,7 +469,7 @@ case RUBY_PLATFORM when /cygwin|beos|openstep|nextstep|rhapsody/ $libs = "" when /mswin32/ - $libs = "" + $libs = "RubyCRT.lib" $local_flags = "rubymw.lib -link /LIBPATH:$(topdir) /EXPORT:Init_$(TARGET)" end $LOCAL_LIBS = "" diff --git a/win32/Makefile b/win32/Makefile index 620e2d731a..45171aab8a 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -12,13 +12,13 @@ AUTOCONF = autoconf prefix = -CFLAGS = -nologo -DNT=1 -Ox -I. -I./missing +CFLAGS = -nologo -DNT=1 -MD -Ox -I. -I./missing LDFLAGS = $(CFLAGS) -Fm #CFLAGS = -nologo -DNT=1 -Zi -I. -I./missing #LDFLAGS = $(CFLAGS) -Fm XLDFLAGS = #EXTLIBS = -LIBS = user32.lib advapi32.lib wsock32.lib $(EXTLIBS) +LIBS = RubyCRT.lib user32.lib advapi32.lib wsock32.lib $(EXTLIBS) MISSING = crypt.obj alloca.obj win32.obj isinf.obj isnan.obj LDSHARED = DLDFLAGS = @@ -94,7 +94,7 @@ miniruby$(EXEEXT): $(OBJS) $(MAINOBJ) $(EXTOBJS) $(PURIFY) $(CC) $(LDFLAGS) $(MAINOBJ) $(EXTOBJS) $(OBJS) $(LIBS) -o $@ $(PROGRAM): $(LIBRUBY) $(MAINOBJ) $(LIBRUBY_SO) - $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINOBJ) -o $@ $(LIBRUBYARG) -link /STACK:$(STACK) + $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINOBJ) -o $@ $(LIBRUBYARG) $(LIBS) -link /STACK:$(STACK) $(LIBRUBY_A): $(OBJS) dmyext.obj lib -nologo /OUT:$@ $(OBJS) dmyext.obj diff --git a/win32/config.status b/win32/config.status index 5e98e32c95..0aec6aeb7f 100644 --- a/win32/config.status +++ b/win32/config.status @@ -1,13 +1,13 @@ ac_given_srcdir=. s%@SHELL@%%g -s%@CFLAGS@%-nologo -DNT=1 -Ox%g +s%@CFLAGS@%-nologo -DNT=1 -MD -Ox%g s%@CPPFLAGS@%%g s%@CXXFLAGS@%%g s%@FFLAGS@%%g s%@DEFS@% -DUSE_THREAD -DSIZEOF_INT=4 -DSIZEOF_SHORT=2 -DSIZEOF_LONG=4 -DSIZEOF_VOIDP=4 -DSIZEOF_FLOAT=4 -DSIZEOF_DOUBLE=8 -DHAVE_PROTOTYPES=1 -DHAVE_STDARG_PROTOTYPES=1 -DHAVE_STDLIB_H=1 -DHAVE_LIMITS_H=1 -DHAVE_FCNTL_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_ST_RDEV=1 -DGETGROUPS_T=int -DRETSIGTYPE=void -DHAVE_ALLOCA=1 -DHAVE_FMOD=1 -DHAVE_WAITPID=1 -DHAVE_GETCWD=1 -DHAVE_CHSIZE=1 -DHAVE_GETGROUPS=1 -DHAVE_GETLOGIN=1 -DRSHIFT=\(x,y\)\ \(\(x\)\>\>y\) -DFILE_COUNT=_cnt -DDLEXT=\".dll\" -DRUBY_PLATFORM=\"i386-mswin32\" %g -s%@LDFLAGS@%-nologo -Ox%g -s%@LIBS@%user32.lib advapi32.lib wsock32.lib%g +s%@LDFLAGS@%-nologo -MD -Ox%g +s%@LIBS@%RubyCRT.lib user32.lib advapi32.lib wsock32.lib%g s%@exec_prefix@%${prefix}%g s%@prefix@%/usr/local%g s%@program_transform_name@%s,x,x,%g