diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | enc/depend | 1 | ||||
-rw-r--r-- | lib/mkmf.rb | 4 | ||||
-rw-r--r-- | win32/Makefile.sub | 1 |
4 files changed, 11 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Sun Mar 3 00:04:20 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * enc/depend (CPPFLAGS), lib/mkmf.rb (MakeMakefile#create_makefile): + define RUBY_EXPORT for static-linked-ext mswin. [Bug #7960] + Sat Mar 2 22:49:47 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> * win32/Makefile.sub (EXTOBJS, EXTOBJS, config.h): definitions for diff --git a/enc/depend b/enc/depend index 014fc4f584..56bf487a25 100644 --- a/enc/depend +++ b/enc/depend @@ -12,6 +12,7 @@ % transvpath_prefix = (rule_subst.dup.sub!(/\{[^{}]+\}/, '{$(TRANSVPATH)}') || "%s") % "" % CONFIG['ARFLAGS'] = 'rcu ' if (CONFIG['ARFLAGS'] || "").empty? % CONFIG['RANLIB'] = ':' if (CONFIG['RANLIB'] || "").empty? +% CONFIG['CPPFLAGS'] += " -DRUBY_EXPORT=1" if CONFIG["EXTSTATIC"] == "static" % if File::ALT_SEPARATOR % pathrep = proc {|path| path.gsub('/', File::ALT_SEPARATOR).gsub(/\$\(([@<?*]\w?|\w+)\)/, "$(\\1:/=\\#{File::ALT_SEPARATOR})")} % else diff --git a/lib/mkmf.rb b/lib/mkmf.rb index b745b79823..dcf1de4242 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -2106,6 +2106,10 @@ RULES $distcleandirs.concat($INSTALLFILES.collect {|files, dir| dir}) end + if $extmk and $static + $defs << "-DRUBY_EXPORT=1" + end + if $extmk and not $extconf_h create_header end diff --git a/win32/Makefile.sub b/win32/Makefile.sub index d3d6a83e0a..e3b4bf11a9 100644 --- a/win32/Makefile.sub +++ b/win32/Makefile.sub @@ -944,6 +944,7 @@ $(LIBRUBY_SO): $(LIBRUBY_A) $(DLDOBJS) $(RUBYDEF) $(RUBY_SO_NAME).res $(Q) $(LDSHARED_0) $(Q) $(LDSHARED_1) $(Q) $(LDSHARED_2) +# | findstr -v -c:LNK4049 -c:LNK4217 $(RUBYDEF): $(LIBRUBY_A) $(PREP) $(ECHO) generating $(@:\=/) |