diff options
author | Alexander Kanavin <alex.kanavin@gmail.com> | 2022-01-11 23:14:40 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-01-12 21:09:02 +0000 |
commit | 0089f71043518c31ea190705b0df9138a04a5da1 (patch) | |
tree | 61f6d8d33188652612975139c2a0e1dfc7f450e8 /meta/recipes-devtools/ruby | |
parent | fa7dd5d0460f69b8708353a3f287033fd9455418 (diff) | |
download | poky-0089f71043518c31ea190705b0df9138a04a5da1.tar.gz |
ruby: update 3.0.3 -> 3.1.0
Turn on "link external modules statically" option
as otherwise ruby installer tries to do additional
building inside installed module directories in do_install
which fails horribly.
License-Update: additional MIT/BSD items
(From OE-Core rev: 4d4485442830bb52b152f0419f4ff9f1d581d46a)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/ruby')
-rw-r--r-- | meta/recipes-devtools/ruby/ruby.inc | 9 | ||||
-rw-r--r-- | meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch | 41 | ||||
-rw-r--r-- | meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch | 8 | ||||
-rw-r--r-- | meta/recipes-devtools/ruby/ruby_3.1.0.bb (renamed from meta/recipes-devtools/ruby/ruby_3.0.3.bb) | 16 |
4 files changed, 44 insertions, 30 deletions
diff --git a/meta/recipes-devtools/ruby/ruby.inc b/meta/recipes-devtools/ruby/ruby.inc index 2b5caf35f5..20ae15bd7a 100644 --- a/meta/recipes-devtools/ruby/ruby.inc +++ b/meta/recipes-devtools/ruby/ruby.inc | |||
@@ -10,7 +10,7 @@ LICENSE = "Ruby | BSD-2-Clause | BSD-3-Clause | GPLv2 | ISC | MIT" | |||
10 | LIC_FILES_CHKSUM = "file://COPYING;md5=5b8c87559868796979806100db3f3805 \ | 10 | LIC_FILES_CHKSUM = "file://COPYING;md5=5b8c87559868796979806100db3f3805 \ |
11 | file://BSDL;md5=8b50bc6de8f586dc66790ba11d064d75 \ | 11 | file://BSDL;md5=8b50bc6de8f586dc66790ba11d064d75 \ |
12 | file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | 12 | file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ |
13 | file://LEGAL;md5=cfe5b0bc9f051b58c7e78db882ca5f9b \ | 13 | file://LEGAL;md5=f260190bc1e92e363f0ee3c0463d4c7c \ |
14 | " | 14 | " |
15 | 15 | ||
16 | DEPENDS = "ruby-native zlib openssl libyaml gdbm readline libffi" | 16 | DEPENDS = "ruby-native zlib openssl libyaml gdbm readline libffi" |
@@ -23,7 +23,7 @@ SRC_URI = "http://cache.ruby-lang.org/pub/ruby/${SHRT_VER}/ruby-${PV}.tar.gz \ | |||
23 | " | 23 | " |
24 | UPSTREAM_CHECK_URI = "https://www.ruby-lang.org/en/downloads/" | 24 | UPSTREAM_CHECK_URI = "https://www.ruby-lang.org/en/downloads/" |
25 | 25 | ||
26 | inherit autotools ptest | 26 | inherit autotools ptest pkgconfig |
27 | 27 | ||
28 | 28 | ||
29 | # This snippet lets compiled extensions which rely on external libraries, | 29 | # This snippet lets compiled extensions which rely on external libraries, |
@@ -37,8 +37,3 @@ do_configure:prepend() { | |||
37 | sed -i "s#%%TARGET_CFLAGS%%#$CFLAGS#; s#%%TARGET_LDFLAGS%%#$LDFLAGS#" ${S}/common.mk | 37 | sed -i "s#%%TARGET_CFLAGS%%#$CFLAGS#; s#%%TARGET_LDFLAGS%%#$LDFLAGS#" ${S}/common.mk |
38 | rm -rf ${S}/ruby/ | 38 | rm -rf ${S}/ruby/ |
39 | } | 39 | } |
40 | |||
41 | # Disable openssl extension until it becomes compatible with openssl 3 | ||
42 | do_configure:prepend() { | ||
43 | rm -rf ${S}/ext/openssl/extconf.rb | ||
44 | } | ||
diff --git a/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch b/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch index 504893b4b4..de8d4f04cc 100644 --- a/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch +++ b/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch | |||
@@ -1,6 +1,7 @@ | |||
1 | From 6e1dc610724a7aa8368cbcddf4bbe21cccc0f731 Mon Sep 17 00:00:00 2001 | ||
1 | From: Lucas Kanashiro <kanashiro@debian.org> | 2 | From: Lucas Kanashiro <kanashiro@debian.org> |
2 | Date: Fri, 1 Nov 2019 15:25:17 -0300 | 3 | Date: Fri, 1 Nov 2019 15:25:17 -0300 |
3 | Subject: Make gemspecs reproducible | 4 | Subject: [PATCH] Make gemspecs reproducible |
4 | 5 | ||
5 | Without an explicit date, they will get the current date and make the | 6 | Without an explicit date, they will get the current date and make the |
6 | build unreproducible | 7 | build unreproducible |
@@ -10,34 +11,40 @@ Upstream-Status: Backport [debian] | |||
10 | --- | 11 | --- |
11 | ext/bigdecimal/bigdecimal.gemspec | 1 + | 12 | ext/bigdecimal/bigdecimal.gemspec | 1 + |
12 | ext/fiddle/fiddle.gemspec | 1 + | 13 | ext/fiddle/fiddle.gemspec | 1 + |
13 | ext/io/console/io-console.gemspec | 2 +- | 14 | ext/io/console/io-console.gemspec | 1 + |
14 | lib/ipaddr.gemspec | 1 + | 15 | lib/ipaddr.gemspec | 1 + |
15 | lib/rdoc/rdoc.gemspec | 1 + | 16 | lib/rdoc/rdoc.gemspec | 1 + |
16 | 5 files changed, 5 insertions(+), 1 deletion(-) | 17 | 5 files changed, 5 insertions(+) |
17 | 18 | ||
19 | diff --git a/ext/bigdecimal/bigdecimal.gemspec b/ext/bigdecimal/bigdecimal.gemspec | ||
20 | index fd49c1b..5b8bb00 100644 | ||
18 | --- a/ext/bigdecimal/bigdecimal.gemspec | 21 | --- a/ext/bigdecimal/bigdecimal.gemspec |
19 | +++ b/ext/bigdecimal/bigdecimal.gemspec | 22 | +++ b/ext/bigdecimal/bigdecimal.gemspec |
20 | @@ -6,6 +6,7 @@ | 23 | @@ -4,6 +4,7 @@ Gem::Specification.new do |s| |
21 | s.name = "bigdecimal" | 24 | s.name = "bigdecimal" |
22 | s.version = bigdecimal_version | 25 | s.version = "3.1.1" |
23 | s.authors = ["Kenta Murata", "Zachary Scott", "Shigeo Kobayashi"] | 26 | s.authors = ["Kenta Murata", "Zachary Scott", "Shigeo Kobayashi"] |
24 | + s.date = RUBY_RELEASE_DATE | 27 | + s.date = RUBY_RELEASE_DATE |
25 | s.email = ["mrkn@mrkn.jp"] | 28 | s.email = ["mrkn@mrkn.jp"] |
26 | 29 | ||
27 | s.summary = "Arbitrary-precision decimal floating-point number library." | 30 | s.summary = "Arbitrary-precision decimal floating-point number library." |
31 | diff --git a/ext/fiddle/fiddle.gemspec b/ext/fiddle/fiddle.gemspec | ||
32 | index a9c0ec4..89da078 100644 | ||
28 | --- a/ext/fiddle/fiddle.gemspec | 33 | --- a/ext/fiddle/fiddle.gemspec |
29 | +++ b/ext/fiddle/fiddle.gemspec | 34 | +++ b/ext/fiddle/fiddle.gemspec |
30 | @@ -8,6 +8,7 @@ | 35 | @@ -8,6 +8,7 @@ end |
31 | Gem::Specification.new do |spec| | 36 | Gem::Specification.new do |spec| |
32 | spec.name = "fiddle" | 37 | spec.name = "fiddle" |
33 | spec.version = version_module::Fiddle::VERSION | 38 | spec.version = version_module::Fiddle::VERSION |
34 | + spec.date = RUBY_RELEASE_DATE | 39 | + spec.date = RUBY_RELEASE_DATE |
35 | spec.authors = ["Aaron Patterson", "SHIBATA Hiroshi"] | 40 | spec.authors = ["Aaron Patterson", "SHIBATA Hiroshi"] |
36 | spec.email = ["aaron@tenderlovemaking.com", "hsbt@ruby-lang.org"] | 41 | spec.email = ["aaron@tenderlovemaking.com", "hsbt@ruby-lang.org"] |
37 | 42 | ||
43 | diff --git a/ext/io/console/io-console.gemspec b/ext/io/console/io-console.gemspec | ||
44 | index 36beda7..e932d83 100644 | ||
38 | --- a/ext/io/console/io-console.gemspec | 45 | --- a/ext/io/console/io-console.gemspec |
39 | +++ b/ext/io/console/io-console.gemspec | 46 | +++ b/ext/io/console/io-console.gemspec |
40 | @@ -4,6 +4,7 @@ | 47 | @@ -4,6 +4,7 @@ _VERSION = "0.5.10" |
41 | Gem::Specification.new do |s| | 48 | Gem::Specification.new do |s| |
42 | s.name = "io-console" | 49 | s.name = "io-console" |
43 | s.version = _VERSION | 50 | s.version = _VERSION |
@@ -45,23 +52,27 @@ Upstream-Status: Backport [debian] | |||
45 | s.summary = "Console interface" | 52 | s.summary = "Console interface" |
46 | s.email = "nobu@ruby-lang.org" | 53 | s.email = "nobu@ruby-lang.org" |
47 | s.description = "add console capabilities to IO instances." | 54 | s.description = "add console capabilities to IO instances." |
55 | diff --git a/lib/ipaddr.gemspec b/lib/ipaddr.gemspec | ||
56 | index 36e2300..06dc888 100644 | ||
48 | --- a/lib/ipaddr.gemspec | 57 | --- a/lib/ipaddr.gemspec |
49 | +++ b/lib/ipaddr.gemspec | 58 | +++ b/lib/ipaddr.gemspec |
50 | @@ -6,6 +6,7 @@ | 59 | @@ -6,6 +6,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) |
51 | Gem::Specification.new do |spec| | 60 | Gem::Specification.new do |spec| |
52 | spec.name = "ipaddr" | 61 | spec.name = "ipaddr" |
53 | spec.version = "1.2.2" | 62 | spec.version = "1.2.3" |
54 | + spec.date = RUBY_RELEASE_DATE | 63 | + spec.date = RUBY_RELEASE_DATE |
55 | spec.authors = ["Akinori MUSHA", "Hajimu UMEMOTO"] | 64 | spec.authors = ["Akinori MUSHA", "Hajimu UMEMOTO"] |
56 | spec.email = ["knu@idaemons.org", "ume@mahoroba.org"] | 65 | spec.email = ["knu@idaemons.org", "ume@mahoroba.org"] |
57 | 66 | ||
67 | diff --git a/lib/rdoc/rdoc.gemspec b/lib/rdoc/rdoc.gemspec | ||
68 | index 525a15f..f6d0e22 100644 | ||
58 | --- a/lib/rdoc/rdoc.gemspec | 69 | --- a/lib/rdoc/rdoc.gemspec |
59 | +++ b/lib/rdoc/rdoc.gemspec | 70 | +++ b/lib/rdoc/rdoc.gemspec |
60 | @@ -7,6 +7,7 @@ | 71 | @@ -7,6 +7,7 @@ end |
61 | 72 | ||
62 | Gem::Specification.new do |s| | 73 | Gem::Specification.new do |s| |
63 | s.name = "rdoc" | 74 | s.name = "rdoc" |
64 | + s.date = RUBY_RELEASE_DATE | 75 | + s.date = RUBY_RELEASE_DATE |
65 | s.version = RDoc::VERSION | 76 | s.version = RDoc::VERSION |
66 | 77 | ||
67 | s.authors = [ | 78 | s.authors = [ |
diff --git a/meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch b/meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch index 6e90a8ee77..b78e3db892 100644 --- a/meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch +++ b/meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 303fe0d20184203f1ac86d2a77b1447d47c8c29d Mon Sep 17 00:00:00 2001 | 1 | From e74b57febec9bd806e29025e6eeb8091e7021d75 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sun, 26 Jan 2020 11:27:40 -0800 | 3 | Date: Sun, 26 Jan 2020 11:27:40 -0800 |
4 | Subject: [PATCH] Filter out __has_include* compiler defines | 4 | Subject: [PATCH] Filter out __has_include* compiler defines |
@@ -21,12 +21,12 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> | |||
21 | 1 file changed, 2 insertions(+) | 21 | 1 file changed, 2 insertions(+) |
22 | 22 | ||
23 | diff --git a/common.mk b/common.mk | 23 | diff --git a/common.mk b/common.mk |
24 | index 7633050..422aa9c 100644 | 24 | index 664f750..3b8fbe6 100644 |
25 | --- a/common.mk | 25 | --- a/common.mk |
26 | +++ b/common.mk | 26 | +++ b/common.mk |
27 | @@ -233,6 +233,8 @@ $(TIMESTAMPDIR)/$(MJIT_HEADER:.h=)$(MJIT_HEADER_SUFFIX).time: probes.h vm.$(OBJE | 27 | @@ -238,6 +238,8 @@ $(TIMESTAMPDIR)/$(MJIT_HEADER:.h=)$(MJIT_HEADER_SUFFIX).time: probes.h vm.$(OBJE |
28 | $(ECHO) building $(@F:.time=.h) | 28 | $(ECHO) building $(@F:.time=.h) |
29 | $(MINIRUBY) $(tooldir)/mjit_tabs.rb "$(MJIT_TABS)" \ | 29 | $(Q)$(MINIRUBY) $(tooldir)/mjit_tabs.rb "$(MJIT_TABS)" \ |
30 | $(CPP) -DMJIT_HEADER $(MJIT_HEADER_FLAGS) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(srcdir)/vm.c $(CPPOUTFLAG)$(@F:.time=.h).new | 30 | $(CPP) -DMJIT_HEADER $(MJIT_HEADER_FLAGS) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(srcdir)/vm.c $(CPPOUTFLAG)$(@F:.time=.h).new |
31 | + $(Q)sed -i -e "/#define __has_include __has_include/d" $(@F:.time=.h).new | 31 | + $(Q)sed -i -e "/#define __has_include __has_include/d" $(@F:.time=.h).new |
32 | + $(Q)sed -i -e "/#define __has_include_next __has_include_next/d" $(@F:.time=.h).new | 32 | + $(Q)sed -i -e "/#define __has_include_next __has_include_next/d" $(@F:.time=.h).new |
diff --git a/meta/recipes-devtools/ruby/ruby_3.0.3.bb b/meta/recipes-devtools/ruby/ruby_3.1.0.bb index 5cf0625101..7183c93d45 100644 --- a/meta/recipes-devtools/ruby/ruby_3.0.3.bb +++ b/meta/recipes-devtools/ruby/ruby_3.1.0.bb | |||
@@ -13,7 +13,7 @@ SRC_URI += " \ | |||
13 | file://0006-Make-gemspecs-reproducible.patch \ | 13 | file://0006-Make-gemspecs-reproducible.patch \ |
14 | " | 14 | " |
15 | 15 | ||
16 | SRC_URI[sha256sum] = "3586861cb2df56970287f0fd83f274bd92058872d830d15570b36def7f1a92ac" | 16 | SRC_URI[sha256sum] = "50a0504c6edcb4d61ce6b8cfdbddaa95707195fab0ecd7b5e92654b2a9412854" |
17 | 17 | ||
18 | PACKAGECONFIG ??= "" | 18 | PACKAGECONFIG ??= "" |
19 | PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" | 19 | PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" |
@@ -32,6 +32,7 @@ EXTRA_OECONF = "\ | |||
32 | --enable-shared \ | 32 | --enable-shared \ |
33 | --enable-load-relative \ | 33 | --enable-load-relative \ |
34 | --with-pkg-config=pkg-config \ | 34 | --with-pkg-config=pkg-config \ |
35 | --with-static-linked-ext \ | ||
35 | " | 36 | " |
36 | 37 | ||
37 | EXTRA_OECONF:append:libc-musl = "\ | 38 | EXTRA_OECONF:append:libc-musl = "\ |
@@ -67,6 +68,8 @@ do_install:append:class-target () { | |||
67 | sed -i -e 's|${DEBUG_PREFIX_MAP}||g' \ | 68 | sed -i -e 's|${DEBUG_PREFIX_MAP}||g' \ |
68 | ${D}${libdir}/pkgconfig/*.pc | 69 | ${D}${libdir}/pkgconfig/*.pc |
69 | 70 | ||
71 | # logs that may contain host-specific paths | ||
72 | find ${D} -name gem_make.out -delete | ||
70 | } | 73 | } |
71 | 74 | ||
72 | do_install_ptest () { | 75 | do_install_ptest () { |
@@ -78,9 +81,14 @@ do_install_ptest () { | |||
78 | cp -r ${S}/lib/did_you_mean ${S}/lib/rdoc ${D}${PTEST_PATH}/lib | 81 | cp -r ${S}/lib/did_you_mean ${S}/lib/rdoc ${D}${PTEST_PATH}/lib |
79 | 82 | ||
80 | # install test-binaries | 83 | # install test-binaries |
81 | find $(find ./.ext -path '*/-test-') -name '*.so' -print0 \ | 84 | # These .so files have sporadic reproducibility fails as seen here: |
82 | | tar --no-recursion --null -T - --no-same-owner --preserve-permissions -cf - \ | 85 | # https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20220107-rm1diuww/packages/diff-html/ |
83 | | tar -C ${D}${libdir}/ruby/${SHRT_VER}.0/ --no-same-owner --preserve-permissions --strip-components=2 -xf - | 86 | # As they are needed only in ruby-ptest, and that is currently altogether disabled, let's take them out. |
87 | # If someone wants to look at where the non-determinism comes from, one possible reason is use of | ||
88 | # -rdynamic -Wl,-export-dynamic | ||
89 | #find $(find ./.ext -path '*/-test-') -name '*.so' -print0 \ | ||
90 | # | tar --no-recursion --null -T - --no-same-owner --preserve-permissions -cf - \ | ||
91 | # | tar -C ${D}${libdir}/ruby/${SHRT_VER}.0/ --no-same-owner --preserve-permissions --strip-components=2 -xf - | ||
84 | # adjust path to not assume build directory layout | 92 | # adjust path to not assume build directory layout |
85 | sed -e 's|File.expand_path(.*\.\./bin/erb[^)]*|File.expand_path("${bindir}/erb"|g' \ | 93 | sed -e 's|File.expand_path(.*\.\./bin/erb[^)]*|File.expand_path("${bindir}/erb"|g' \ |
86 | -i ${D}${PTEST_PATH}/test/erb/test_erb_command.rb | 94 | -i ${D}${PTEST_PATH}/test/erb/test_erb_command.rb |