summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-08-16 06:03:51 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-08-16 06:03:51 +0000
commitfc5238a491b41053c39e1586708ec6e5f2736da6 (patch)
treeb9ed988f5042fc1b877734f2788a54689d44b515
parentcaec808f74a7545cc2b6930dbfa629071315f065 (diff)
merge revision(s) 55434: [Backport #12401]
* common.mk (build-ext), ext/extmk.rb: use variable EXTENCS different than ENCOBJS, to get rid of circular dependency. build libencs when linking encodings statically. [ruby-core:75618] [Bug #12401] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--common.mk2
-rwxr-xr-xext/extmk.rb9
-rw-r--r--version.h2
4 files changed, 14 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 41b75cfa05..a9589bbb56 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Tue Aug 16 14:58:50 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * common.mk (build-ext), ext/extmk.rb: use variable EXTENCS
+ different than ENCOBJS, to get rid of circular dependency.
+ build libencs when linking encodings statically.
+ [ruby-core:75618] [Bug #12401]
+
Tue Aug 16 14:54:14 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* variable.c (rb_local_constants_i): exclude private constants
diff --git a/common.mk b/common.mk
index fde7e8c688..a5ce202910 100644
--- a/common.mk
+++ b/common.mk
@@ -187,7 +187,7 @@ configure-ext: $(EXTS_MK)
build-ext: $(EXTS_MK)
$(Q)$(MAKE) -f $(EXTS_MK) $(MFLAGS) libdir="$(libdir)" LIBRUBY_EXTS=$(LIBRUBY_EXTS) \
- ENCOBJS="$(ENCOBJS)" UPDATE_LIBRARIES=no $(EXTSTATIC)
+ EXTENCS="$(ENCOBJS)" UPDATE_LIBRARIES=no $(EXTSTATIC)
prog: program wprogram
diff --git a/ext/extmk.rb b/ext/extmk.rb
index 850461a359..32cc9f10cf 100755
--- a/ext/extmk.rb
+++ b/ext/extmk.rb
@@ -696,12 +696,12 @@ if $configure_only and $command_output
mf.macro "EXTLDFLAGS", $extflags.split
submakeopts = []
if enable_config("shared", $enable_shared)
- submakeopts << 'DLDOBJS="$(EXTOBJS) $(ENCOBJS)"'
+ submakeopts << 'DLDOBJS="$(EXTOBJS) $(EXTENCS)"'
submakeopts << 'EXTOBJS='
submakeopts << 'EXTSOLIBS="$(EXTLIBS)"'
submakeopts << 'LIBRUBY_SO_UPDATE=$(LIBRUBY_EXTS)'
else
- submakeopts << 'EXTOBJS="$(EXTOBJS) $(ENCOBJS)"'
+ submakeopts << 'EXTOBJS="$(EXTOBJS) $(EXTENCS)"'
submakeopts << 'EXTLIBS="$(EXTLIBS)"'
end
submakeopts << 'EXTLDFLAGS="$(EXTLDFLAGS)"'
@@ -718,14 +718,15 @@ if $configure_only and $command_output
mf.puts
mf.puts "#{rubies.join(' ')}: $(extensions:/.=/#{$force_static ? 'static' : 'all'})"
submake = "$(Q)$(MAKE) $(MFLAGS) $(SUBMAKEOPTS)"
- mf.puts "all static: $(EXTOBJS)\n\t#{submake} #{rubies.join(' ')}\n"
+ mf.puts "all static: #{rubies.join(' ')}\n"
$extobjs.each do |tgt|
mf.puts "#{tgt}: #{File.dirname(tgt)}/static"
end
- mf.puts "#{rubies.join(' ')}: $(EXTOBJS)"
+ mf.puts "#{rubies.join(' ')}: $(EXTOBJS)#{' libencs' if CONFIG['ENCSTATIC'] == 'static'}"
rubies.each do |tgt|
mf.puts "#{tgt}:\n\t#{submake} $@"
end
+ mf.puts "libencs:\n\t$(Q)$(MAKE) -f enc.mk V=$(V) $@"
mf.puts "ext/extinit.#{$OBJEXT}:\n\t$(Q)$(MAKE) $(MFLAGS) V=$(V) $@" if $static
mf.puts
if $gnumake == "yes"
diff --git a/version.h b/version.h
index 0c36855c0f..dddc80f259 100644
--- a/version.h
+++ b/version.h
@@ -1,6 +1,6 @@
#define RUBY_VERSION "2.2.6"
#define RUBY_RELEASE_DATE "2016-08-16"
-#define RUBY_PATCHLEVEL 359
+#define RUBY_PATCHLEVEL 360
#define RUBY_RELEASE_YEAR 2016
#define RUBY_RELEASE_MONTH 8