diff options
author | bsiegert <bsiegert@pkgsrc.org> | 2022-05-08 14:53:37 +0000 |
---|---|---|
committer | bsiegert <bsiegert@pkgsrc.org> | 2022-05-08 14:53:37 +0000 |
commit | 607e5156f808d2cced0ae39d01257d7af0af7d98 (patch) | |
tree | 71644e1597ed60c11aad0a813f85d15317f0d869 | |
parent | ead4b6cd9e9ce435815039935ad7ea6b503ca355 (diff) | |
download | pkgsrc-607e5156f808d2cced0ae39d01257d7af0af7d98.tar.gz |
Pullup tickets #6626 and #6627 - requested by taca
ruby30-base: build fix
ruby31-base: build fix
Revisions pulled up:
- lang/ruby/platform.mk 1.10-1.12
- lang/ruby/rubyversion.mk 1.251
- lang/ruby30-base/Makefile 1.7
- lang/ruby30-base/distinfo 1.9-1.10
- lang/ruby30-base/patches/patch-configure 1.2
- lang/ruby30-base/patches/patch-include_ruby_internal_static__assert.h 1.1
- lang/ruby31-base/Makefile 1.4-1.5
- lang/ruby31-base/distinfo 1.4-1.7
- lang/ruby31-base/patches/patch-configure 1.2
- lang/ruby31-base/patches/patch-include_ruby_internal_static__assert.h 1.1
- lang/ruby31-base/patches/patch-template_Makefile.in 1.1
- lang/ruby31-base/patches/patch-tool_runruby.rb 1.1
---
Module Name: pkgsrc
Committed By: jperkin
Date: Wed May 4 15:49:51 UTC 2022
Modified Files:
pkgsrc/lang/ruby31-base: Makefile distinfo
pkgsrc/lang/ruby31-base/patches: patch-configure
Log Message:
ruby31-base: Retain _XOPEN_SOURCE on SunOS.
Fixes build of eventmachine (which assumes the XPG4.2 "void *" type for
iov_base), and mirrors settings of ruby 2.x. Bump PKGREVISION.
---
Module Name: pkgsrc
Committed By: taca
Date: Wed May 4 16:16:49 UTC 2022
Modified Files:
pkgsrc/lang/ruby: platform.mk
Log Message:
lang/ruby: fix build problem of Ruby 3.1 on NetBSD 8
Fix build problem of Ruby 3.1 on NetBSD 8 by disabling dtrace.
Ruby 3.1 dtrace(1) to modify compiled object files during build process.
But something wrong on NetBSD 8, includeing 8.2_STABLE.
For example, vm.o contains these symbols on NetBSD 9:
0000000000000000 A __dtrace_ruby___array__create
0000000000000000 A __dtrace_ruby___cmethod__entry
0000000000000000 A __dtrace_ruby___cmethod__return
0000000000000000 A __dtrace_ruby___hash__create
0000000000000000 A __dtrace_ruby___method__entry
0000000000000000 A __dtrace_ruby___method__return
0000000000000000 A __dtraceenabled_ruby___array__create
0000000000000000 A __dtraceenabled_ruby___cmethod__entry
0000000000000000 A __dtraceenabled_ruby___cmethod__return
0000000000000000 A __dtraceenabled_ruby___hash__create
0000000000000000 A __dtraceenabled_ruby___method__entry
0000000000000000 A __dtraceenabled_ruby___method__return
But on NetBSD 8:
0000000000000000 A __dtrace_ruby___array-create
0000000000000000 A __dtrace_ruby___cmethod-entry
0000000000000000 A __dtrace_ruby___cmethod-return
0000000000000000 A __dtrace_ruby___hash-create
0000000000000000 A __dtrace_ruby___method-entry
0000000000000000 A __dtrace_ruby___method-return
0000000000000000 A __dtraceenabled_ruby___array-create
0000000000000000 A __dtraceenabled_ruby___cmethod-entry
0000000000000000 A __dtraceenabled_ruby___cmethod-return
0000000000000000 A __dtraceenabled_ruby___hash-create
0000000000000000 A __dtraceenabled_ruby___method-entry
0000000000000000 A __dtraceenabled_ruby___method-return
---
Module Name: pkgsrc
Committed By: jperkin
Date: Wed May 4 15:49:16 UTC 2022
Modified Files:
pkgsrc/lang/ruby30-base: Makefile distinfo
pkgsrc/lang/ruby30-base/patches: patch-configure
Log Message:
ruby30-base: Retain _XOPEN_SOURCE on SunOS.
Fixes build of eventmachine (which assumes the XPG4.2 "void *" type for
iov_base), and mirrors settings of ruby 2.x. Bump PKGREVISION.
---
Module Name: pkgsrc
Committed By: taca
Date: Wed May 4 16:44:53 UTC 2022
Modified Files:
pkgsrc/lang/ruby: platform.mk
pkgsrc/lang/ruby30-base: distinfo
pkgsrc/lang/ruby31-base: distinfo
Added Files:
pkgsrc/lang/ruby30-base/patches:
patch-include_ruby_internal_static__assert.h
pkgsrc/lang/ruby31-base/patches:
patch-include_ruby_internal_static__assert.h
Log Message:
lang/ruby: fix Ruby 3.0 build problem on NetBSD 8.0
Something wrong with expantion of static_assert macro in <assert.h>
on NetBSD 8.0. So, avoid use of static_assert on NetBSD 8.0.
NetBSD 8.1 and later dose not have this problem.
---
Module Name: pkgsrc
Committed By: jperkin
Date: Thu May 5 10:15:17 UTC 2022
Modified Files:
pkgsrc/lang/ruby: rubyversion.mk
Log Message:
ruby: Handle ruby31 changing the config triple for arm64 macOS.
---
Module Name: pkgsrc
Committed By: jperkin
Date: Thu May 5 10:25:06 UTC 2022
Modified Files:
pkgsrc/lang/ruby31-base: distinfo
Added Files:
pkgsrc/lang/ruby31-base/patches: patch-tool_runruby.rb
Log Message:
ruby31-base: Fix install on macOS arm64.
---
Module Name: pkgsrc
Committed By: taca
Date: Sat May 7 09:36:16 UTC 2022
Modified Files:
pkgsrc/lang/ruby: platform.mk
pkgsrc/lang/ruby31-base: Makefile distinfo
Added Files:
pkgsrc/lang/ruby31-base/patches: patch-template_Makefile.in
Log Message:
lang/ruby31-base: better fix than privious one
Instead of disabling DTrace, process object file yjit.o with "dtrace -G".
Bump PKGREVISION.
-rw-r--r-- | lang/ruby/platform.mk | 12 | ||||
-rw-r--r-- | lang/ruby/rubyversion.mk | 8 | ||||
-rw-r--r-- | lang/ruby30-base/Makefile | 3 | ||||
-rw-r--r-- | lang/ruby30-base/distinfo | 5 | ||||
-rw-r--r-- | lang/ruby30-base/patches/patch-configure | 45 | ||||
-rw-r--r-- | lang/ruby30-base/patches/patch-include_ruby_internal_static__assert.h | 15 | ||||
-rw-r--r-- | lang/ruby31-base/Makefile | 3 | ||||
-rw-r--r-- | lang/ruby31-base/distinfo | 7 | ||||
-rw-r--r-- | lang/ruby31-base/patches/patch-configure | 43 | ||||
-rw-r--r-- | lang/ruby31-base/patches/patch-include_ruby_internal_static__assert.h | 15 | ||||
-rw-r--r-- | lang/ruby31-base/patches/patch-template_Makefile.in | 16 | ||||
-rw-r--r-- | lang/ruby31-base/patches/patch-tool_runruby.rb | 15 |
12 files changed, 154 insertions, 33 deletions
diff --git a/lang/ruby/platform.mk b/lang/ruby/platform.mk index ce854a9da24..8e05dec7ce1 100644 --- a/lang/ruby/platform.mk +++ b/lang/ruby/platform.mk @@ -1,4 +1,4 @@ -# $NetBSD: platform.mk,v 1.9 2022/01/14 15:42:08 taca Exp $ +# $NetBSD: platform.mk,v 1.9.2.1 2022/05/08 14:53:37 bsiegert Exp $ # # @@ -115,6 +115,16 @@ CONFIGURE_ARGS+= --disable-dtrace .endif # +# NetBSD +# +# NetBSD 8.0 has problem with using static_assert macro. +# This is very ad hoc fix to prevent it. +# +.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} == 080000 +CFLAGS+= -DRB_AVOID_STATIC_ASSERT +.endif + +# # Solaris # # fix build with sunpro. diff --git a/lang/ruby/rubyversion.mk b/lang/ruby/rubyversion.mk index 1253dca1eea..98ca219e17e 100644 --- a/lang/ruby/rubyversion.mk +++ b/lang/ruby/rubyversion.mk @@ -1,4 +1,4 @@ -# $NetBSD: rubyversion.mk,v 1.244.2.5 2022/04/16 09:41:21 spz Exp $ +# $NetBSD: rubyversion.mk,v 1.244.2.6 2022/05/08 14:53:37 bsiegert Exp $ # # This file determines which Ruby version is used as a dependency for @@ -618,6 +618,12 @@ RUBY?= ${PREFIX}/bin/${RUBY_NAME} RAKE?= ${PREFIX}/bin/${RAKE_NAME} RDOC?= ${PREFIX}/bin/rdoc${RUBY_SUFFIX} +# ruby31 helpfully changed the config triple... +.if !empty(MACHINE_PLATFORM:MDarwin-*-aarch64) && ${RUBY_VER} >= 31 +RUBY_ARCH?= arm64-${LOWER_OPSYS}${APPEND_ELF}${LOWER_OPSYS_VERSUFFIX}${APPEND_ABI} +RUBY_EXTARCH?= arm64-${LOWER_OPSYS}${APPEND_ELF}-${LOWER_OPSYS_VERSUFFIX} +.endif + RUBY_ARCH?= ${MACHINE_GNU_ARCH}-${LOWER_OPSYS}${APPEND_ELF}${LOWER_OPSYS_VERSUFFIX}${APPEND_ABI} # NetBSD does not append an OS version, so we have to do this OPSYS-specific. diff --git a/lang/ruby30-base/Makefile b/lang/ruby30-base/Makefile index 76f62970bb7..7b9b585c27b 100644 --- a/lang/ruby30-base/Makefile +++ b/lang/ruby30-base/Makefile @@ -1,7 +1,8 @@ -# $NetBSD: Makefile,v 1.5.2.1 2022/04/16 09:23:40 spz Exp $ +# $NetBSD: Makefile,v 1.5.2.2 2022/05/08 14:53:37 bsiegert Exp $ DISTNAME= ${RUBY_DISTNAME} PKGNAME= ${RUBY_PKGPREFIX}-base-${RUBY_VERSION} +PKGREVISION= 1 CATEGORIES= lang ruby MASTER_SITES= ${MASTER_SITE_RUBY} diff --git a/lang/ruby30-base/distinfo b/lang/ruby30-base/distinfo index 33b3d970416..17340bc8ab3 100644 --- a/lang/ruby30-base/distinfo +++ b/lang/ruby30-base/distinfo @@ -1,13 +1,14 @@ -$NetBSD: distinfo,v 1.7.4.1 2022/04/16 09:23:40 spz Exp $ +$NetBSD: distinfo,v 1.7.4.2 2022/05/08 14:53:37 bsiegert Exp $ BLAKE2s (ruby-3.0.4.tar.xz) = 2487d6f4bd37ef20715935a50d2cc50f9d50589c9223836bfaa6c3ac7de57b4d SHA512 (ruby-3.0.4.tar.xz) = 53bf7dd403b0c68af9691882ad8ed7422c8d1f496627428fb4c3caf0b0313715524b744c5f453aced2d49e16e55f3f45b46b9a77aa3097dbfcae7caa0208194b Size (ruby-3.0.4.tar.xz) = 15830368 bytes SHA1 (patch-common.mk) = c23eed58427b2fd4ba8fdb3692f609701a666c6d -SHA1 (patch-configure) = a56184876caac5c24b2c2925f364d88c3ebc5662 +SHA1 (patch-configure) = 8499cad3c1fb1a1b15392ba375f8d4e737fef2e4 SHA1 (patch-ext_dbm_extconf.rb) = c998f8735db54b1ae2bc8b6caa359ce88bc7a45b SHA1 (patch-ext_openssl_openssl__missing.h) = 3f8d79736fd14806dfaf76e333eec63ff3ff5890 SHA1 (patch-ext_openssl_ossl__pkey__rsa.c) = 32054bad7bf31040e6d8828f8786de26dc860518 +SHA1 (patch-include_ruby_internal_static__assert.h) = 2e509d18d294b03b468e4e7bcb99fb6a71089601 SHA1 (patch-lib_mkmf.rb) = 4a3cd18548dbdf43a13695d4e76f817c0347e335 SHA1 (patch-lib_rdoc_encoding.rb) = 0e82d2942d9bfcb67dc7c994889d7bc5ec2ae85a SHA1 (patch-lib_rdoc_ri_driver.rb) = f4d3e59e35b608acd4edc17916142c7f033e6198 diff --git a/lang/ruby30-base/patches/patch-configure b/lang/ruby30-base/patches/patch-configure index 6bcfa83ddfb..0e633b48082 100644 --- a/lang/ruby30-base/patches/patch-configure +++ b/lang/ruby30-base/patches/patch-configure @@ -1,15 +1,15 @@ -$NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ +$NetBSD: patch-configure,v 1.1.10.1 2022/05/08 14:53:38 bsiegert Exp $ * Adding Interix support. * Ignore doxygen. * Ignore VCS. * Handle SSP in pkgsrc. -* Put -std= in CFLAGS not CPPFLAGS. +* Retain _XOPEN_SOURCE, fixes eventmachine. * Fix argument for pthread_self() on NetBSD. ---- configure.orig 2020-12-08 09:02:33.000000000 +0000 +--- configure.orig 2022-04-12 11:48:57.000000000 +0000 +++ configure -@@ -7991,7 +7991,7 @@ else +@@ -8381,7 +8381,7 @@ else if test x"$target_alias" = x; then : case "$target_os" in #( @@ -18,7 +18,7 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for real target cpu" >&5 $as_echo_n "checking for real target cpu... " >&6; } -@@ -10048,6 +10048,7 @@ fi +@@ -10094,6 +10094,7 @@ fi stack_protector=no ;; #( *) : @@ -26,7 +26,26 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ ;; esac if test -z "${stack_protector+set}"; then : -@@ -11912,6 +11913,10 @@ esac +@@ -11794,18 +11795,6 @@ fi + CPPFLAGS="$CPPFLAGS ${rb_opt}" ;; + esac + done +- # _XOPEN_SOURCE should not be defined for C++ on Solaris. +- # RUBY_APPEND_OPTIONS(CXXFLAGS) +- for rb_opt in -U_XOPEN_SOURCE; do +- case " ${CXXFLAGS-} " in #( +- *" ${rb_opt} "*) : +- ;; #( +- ' ') : +- CXXFLAGS="${rb_opt}" ;; #( +- *) : +- CXXFLAGS="$CXXFLAGS ${rb_opt}" ;; +-esac +- done + + fi + +@@ -11970,6 +11959,10 @@ esac ac_cv_func___builtin_setjmp=no ;; #( @@ -37,7 +56,7 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ *) : ;; esac -@@ -23493,6 +23498,8 @@ else +@@ -23324,6 +23317,8 @@ else # ifdef _MSC_VER # include <malloc.h> # define alloca _alloca @@ -46,7 +65,7 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ # else # ifdef HAVE_ALLOCA_H # include <alloca.h> -@@ -28791,7 +28798,9 @@ fi +@@ -28622,7 +28617,9 @@ fi interix*) : : ${LDSHARED='$(CC) -shared'} XLDFLAGS="$XLDFLAGS -Wl,-E" @@ -56,7 +75,7 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ rb_cv_dlopen=yes ;; #( freebsd*|dragonfly*) : -@@ -29988,7 +29997,7 @@ fi +@@ -29890,7 +29887,7 @@ fi ;; #( freebsd*|dragonfly*) : @@ -65,7 +84,7 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ LIBRUBY_SONAME='$(LIBRUBY_SO)' if test "$rb_cv_binary_elf" != "yes" ; then : -@@ -30067,9 +30076,10 @@ esac +@@ -29969,9 +29966,10 @@ esac ;; #( darwin*) : @@ -78,7 +97,7 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ if test "$load_relative" = yes; then : libprefix="@executable_path/../${libdir_basename}" -@@ -30090,7 +30100,12 @@ fi +@@ -29992,7 +29990,12 @@ fi ;; #( interix*) : @@ -92,7 +111,7 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ ;; #( mingw*|cygwin*|mswin*) : -@@ -30272,7 +30287,7 @@ if test "$enable_rpath" = yes; then : +@@ -30174,7 +30177,7 @@ if test "$enable_rpath" = yes; then : esac rpathflag=`IFS="$PATH_SEPARATOR" echo x "$rpathflag" | @@ -101,7 +120,7 @@ $NetBSD: patch-configure,v 1.1 2021/02/14 14:32:41 taca Exp $ ` LIBRUBY_RPATHFLAGS="$LIBRUBY_RPATHFLAGS${rpathflag}" LIBRUBYARG_SHARED="$LIBRUBY_RPATHFLAGS $LIBRUBYARG_SHARED" -@@ -32996,19 +33011,7 @@ which seems to be undefined. Please mak +@@ -32906,19 +32909,7 @@ which seems to be undefined. Please mak "Makefile":F) tmpmk=confmk$$.tmp { diff --git a/lang/ruby30-base/patches/patch-include_ruby_internal_static__assert.h b/lang/ruby30-base/patches/patch-include_ruby_internal_static__assert.h new file mode 100644 index 00000000000..07eb77cbb85 --- /dev/null +++ b/lang/ruby30-base/patches/patch-include_ruby_internal_static__assert.h @@ -0,0 +1,15 @@ +$NetBSD: patch-include_ruby_internal_static__assert.h,v 1.1.2.2 2022/05/08 14:53:38 bsiegert Exp $ + +Add the way to stop using static_assert. + +--- include/ruby/internal/static_assert.h.orig 2022-04-12 11:48:55.000000000 +0000 ++++ include/ruby/internal/static_assert.h +@@ -50,7 +50,7 @@ + #elif defined(__STDC_VERSION__) && RBIMPL_COMPILER_SINCE(GCC, 4, 6, 0) + # define RBIMPL_STATIC_ASSERT0 __extension__ _Static_assert + +-#elif defined(static_assert) ++#elif defined(static_assert) && !defined(RB_AVOID_STATIC_ASSERT) + # /* Take <assert.h> definition */ + # define RBIMPL_STATIC_ASSERT0 static_assert + #endif diff --git a/lang/ruby31-base/Makefile b/lang/ruby31-base/Makefile index 4241dccf933..b3ffb1a5994 100644 --- a/lang/ruby31-base/Makefile +++ b/lang/ruby31-base/Makefile @@ -1,7 +1,8 @@ -# $NetBSD: Makefile,v 1.3 2022/02/20 15:59:09 taca Exp $ +# $NetBSD: Makefile,v 1.3.2.1 2022/05/08 14:53:38 bsiegert Exp $ DISTNAME= ${RUBY_DISTNAME} PKGNAME= ${RUBY_PKGPREFIX}-base-${RUBY_VERSION} +PKGREVISION= 2 CATEGORIES= lang ruby MASTER_SITES= ${MASTER_SITE_RUBY} diff --git a/lang/ruby31-base/distinfo b/lang/ruby31-base/distinfo index 0d051f69255..ab93a7181d7 100644 --- a/lang/ruby31-base/distinfo +++ b/lang/ruby31-base/distinfo @@ -1,11 +1,12 @@ -$NetBSD: distinfo,v 1.2.2.1 2022/04/16 09:41:21 spz Exp $ +$NetBSD: distinfo,v 1.2.2.2 2022/05/08 14:53:38 bsiegert Exp $ BLAKE2s (ruby-3.1.2.tar.xz) = 5384cfebbd466de36f68f554be2c045363e6c074d90a94a4c035ecaadf3c878b SHA512 (ruby-3.1.2.tar.xz) = 4a74e9efc6ea4b3eff4fec7534eb1fff4794d021531defc2e9937e53c6668db8ecdc0fff2bc23d5e6602d0df344a2caa85b31c5414309541e3d5313ec82b6e21 Size (ruby-3.1.2.tar.xz) = 15101588 bytes SHA1 (patch-common.mk) = c23eed58427b2fd4ba8fdb3692f609701a666c6d -SHA1 (patch-configure) = c8a09d995d9d09c1142f22cf59f04fa61b528a2a +SHA1 (patch-configure) = 3da2fffeaf717e241e9e3b12ad627d09375790da SHA1 (patch-ext_openssl_openssl__missing.h) = 3f8d79736fd14806dfaf76e333eec63ff3ff5890 +SHA1 (patch-include_ruby_internal_static__assert.h) = 7d5c3ae7ff674b9b34639924fcf08237164de9f8 SHA1 (patch-lib_mkmf.rb) = 4a3cd18548dbdf43a13695d4e76f817c0347e335 SHA1 (patch-lib_rdoc_encoding.rb) = 0e82d2942d9bfcb67dc7c994889d7bc5ec2ae85a SHA1 (patch-lib_rdoc_ri_driver.rb) = f4d3e59e35b608acd4edc17916142c7f033e6198 @@ -15,6 +16,8 @@ SHA1 (patch-lib_rubygems_dependency__installer.rb) = 1776508907f17547ffe93f637d6 SHA1 (patch-lib_rubygems_install__update__options.rb) = 1e953b5a517a805fd7184e359fbc06e67a5ff9b3 SHA1 (patch-lib_rubygems_installer.rb) = 03fcd57d4e7ea03cf2ffc3d219fd489e30361014 SHA1 (patch-lib_rubygems_platform.rb) = 7ef0d86c2d84b942db726d293a319d7ea54e56c8 +SHA1 (patch-template_Makefile.in) = a4b94293de165e87021b79a0a7f683ba76e168d9 SHA1 (patch-test_rubygems_test__gem.rb) = e624da5b9c49f9409160a7b0fdd2efad17986cab SHA1 (patch-thread__pthread.c) = 7c1231933a2d6ce9d56891ab512371841697fbca SHA1 (patch-tool_ifchange) = 1814cd41f0b0a93b181799cb117bd1f57068cf33 +SHA1 (patch-tool_runruby.rb) = 5dd8a3bea5e9776f7521f85955dddd2127e4c4d0 diff --git a/lang/ruby31-base/patches/patch-configure b/lang/ruby31-base/patches/patch-configure index 6baf575ccbf..1e247b2cb45 100644 --- a/lang/ruby31-base/patches/patch-configure +++ b/lang/ruby31-base/patches/patch-configure @@ -1,15 +1,15 @@ -$NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ +$NetBSD: patch-configure,v 1.1.2.1 2022/05/08 14:53:38 bsiegert Exp $ * Avoid bash specific variable substitution. * Adding Interix support. * Ignore doxygen. * Ignore VCS. * Handle SSP in pkgsrc. -* Put -std= in CFLAGS not CPPFLAGS. +* Retain _XOPEN_SOURCE, fixes eventmachine. * Fix argument for pthread_self() on NetBSD. * Explictly stop display with color. ---- configure.orig 2021-12-25 12:23:16.000000000 +0000 +--- configure.orig 2022-04-12 11:11:17.000000000 +0000 +++ configure @@ -3316,12 +3316,12 @@ case "$target_cpu-$target_os" in #( target_cpu=arm64 @@ -44,7 +44,26 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ ;; esac if test -z "${stack_protector+set}"; then : -@@ -12226,6 +12227,10 @@ esac +@@ -11981,18 +11982,6 @@ fi + CPPFLAGS="$CPPFLAGS ${rb_opt}" ;; + esac + done +- # _XOPEN_SOURCE should not be defined for C++ on Solaris. +- # RUBY_APPEND_OPTIONS(CXXFLAGS) +- for rb_opt in -U_XOPEN_SOURCE; do +- case " ${CXXFLAGS-} " in #( +- *" ${rb_opt} "*) : +- ;; #( +- ' ') : +- CXXFLAGS="${rb_opt}" ;; #( +- *) : +- CXXFLAGS="$CXXFLAGS ${rb_opt}" ;; +-esac +- done + + fi + +@@ -12226,6 +12215,10 @@ esac ac_cv_func___builtin_setjmp=no ;; #( @@ -55,7 +74,7 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ *) : ;; esac -@@ -24059,6 +24064,8 @@ else +@@ -24059,6 +24052,8 @@ else # ifdef _MSC_VER # include <malloc.h> # define alloca _alloca @@ -64,7 +83,7 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ # else # ifdef HAVE_ALLOCA_H # include <alloca.h> -@@ -29499,7 +29506,9 @@ fi +@@ -29499,7 +29494,9 @@ fi interix*) : : ${LDSHARED='$(CC) -shared'} XLDFLAGS="$XLDFLAGS -Wl,-E" @@ -74,7 +93,7 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ rb_cv_dlopen=yes ;; #( freebsd*|dragonfly*) : -@@ -30700,7 +30709,7 @@ fi +@@ -30700,7 +30697,7 @@ fi ;; #( freebsd*|dragonfly*) : @@ -83,7 +102,7 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ LIBRUBY_SONAME='$(LIBRUBY_SO)' if test "$rb_cv_binary_elf" != "yes" ; then : -@@ -30795,9 +30804,10 @@ esac +@@ -30795,9 +30792,10 @@ esac ;; #( darwin*) : @@ -96,7 +115,7 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ if test "$load_relative" = yes; then : libprefix="@executable_path/../${libdir_basename}" -@@ -30818,7 +30828,12 @@ fi +@@ -30818,7 +30816,12 @@ fi ;; #( interix*) : @@ -110,7 +129,7 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ ;; #( cygwin*|msys*|mingw*|mswin*) : -@@ -31000,7 +31015,7 @@ if test "$enable_rpath" = yes; then : +@@ -31000,7 +31003,7 @@ if test "$enable_rpath" = yes; then : esac rpathflag=`IFS="$PATH_SEPARATOR" echo x "$rpathflag" | @@ -119,7 +138,7 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ ` LIBRUBY_RPATHFLAGS="$LIBRUBY_RPATHFLAGS${rpathflag}" LIBRUBYARG_SHARED="$LIBRUBY_RPATHFLAGS $LIBRUBYARG_SHARED" -@@ -32550,7 +32565,7 @@ guard=INCLUDE_RUBY_CONFIG_H +@@ -32550,7 +32553,7 @@ guard=INCLUDE_RUBY_CONFIG_H if test "x$CONFIGURE_TTY" = xyes; then : color=--color else @@ -128,7 +147,7 @@ $NetBSD: patch-configure,v 1.1 2022/01/16 13:57:10 taca Exp $ fi exec ${SHELL} ${tooldir}/ifchange $color "${config_h}" - ) >&6 || as_fn_error $? "failed to create ${config_h}" "$LINENO" 5 -@@ -33773,19 +33788,7 @@ which seems to be undefined. Please mak +@@ -33773,19 +33776,7 @@ which seems to be undefined. Please mak "Makefile":F) tmpmk=confmk$$.tmp { diff --git a/lang/ruby31-base/patches/patch-include_ruby_internal_static__assert.h b/lang/ruby31-base/patches/patch-include_ruby_internal_static__assert.h new file mode 100644 index 00000000000..a22cd189ac7 --- /dev/null +++ b/lang/ruby31-base/patches/patch-include_ruby_internal_static__assert.h @@ -0,0 +1,15 @@ +$NetBSD: patch-include_ruby_internal_static__assert.h,v 1.1.2.2 2022/05/08 14:53:38 bsiegert Exp $ + +Add the way to stop using static_assert. + +--- include/ruby/internal/static_assert.h.orig 2022-04-12 11:11:15.000000000 +0000 ++++ include/ruby/internal/static_assert.h +@@ -50,7 +50,7 @@ + #elif defined(__STDC_VERSION__) && RBIMPL_COMPILER_SINCE(GCC, 4, 6, 0) + # define RBIMPL_STATIC_ASSERT0 __extension__ _Static_assert + +-#elif defined(static_assert) ++#elif defined(static_assert) && !defined(RB_AVOID_STATIC_ASSERT) + # /* Take <assert.h> definition */ + # define RBIMPL_STATIC_ASSERT0 static_assert + #endif diff --git a/lang/ruby31-base/patches/patch-template_Makefile.in b/lang/ruby31-base/patches/patch-template_Makefile.in new file mode 100644 index 00000000000..03a966f801e --- /dev/null +++ b/lang/ruby31-base/patches/patch-template_Makefile.in @@ -0,0 +1,16 @@ +$NetBSD: patch-template_Makefile.in,v 1.1.2.2 2022/05/08 14:53:38 bsiegert Exp $ + +Add yjit.o to DTRACE_DEPENDENT_OBJS. + +--- template/Makefile.in.orig 2022-04-12 11:11:15.000000000 +0000 ++++ template/Makefile.in +@@ -193,7 +193,8 @@ DTRACE_DEPENDENT_OBJS = array.$(OBJEXT) + parse.$(OBJEXT) \ + string.$(OBJEXT) \ + symbol.$(OBJEXT) \ +- vm.$(OBJEXT) ++ vm.$(OBJEXT) \ ++ yjit.$(OBJEXT) + + THREAD_MODEL = @THREAD_MODEL@ + diff --git a/lang/ruby31-base/patches/patch-tool_runruby.rb b/lang/ruby31-base/patches/patch-tool_runruby.rb new file mode 100644 index 00000000000..d76cfc3d740 --- /dev/null +++ b/lang/ruby31-base/patches/patch-tool_runruby.rb @@ -0,0 +1,15 @@ +$NetBSD: patch-tool_runruby.rb,v 1.1.2.2 2022/05/08 14:53:38 bsiegert Exp $ + +Do not LD_PRELOAD on macOS, breaks chroots. + +--- tool/runruby.rb.orig 2022-04-12 11:11:15.000000000 +0000 ++++ tool/runruby.rb +@@ -132,7 +132,7 @@ if File.file?(libruby_so) + e = nil if e.empty? + e ||= "LD_PRELOAD" if /linux/ =~ RUBY_PLATFORM + end +- if e ++ unless /darwin/ =~ RUBY_PLATFORM + env[e] = [libruby_so, ENV[e]].compact.join(File::PATH_SEPARATOR) + end + end |