[arch-commits] Commit in vagrant-substrate/trunk (3 files)
Jonathan Steel
jsteel at archlinux.org
Mon Jul 10 20:27:04 UTC 2017
Date: Monday, July 10, 2017 @ 20:27:02
Author: jsteel
Revision: 243785
upgpkg: vagrant-substrate 718.205e64c-1
Added:
vagrant-substrate/trunk/puppet_module_ruby.patch
vagrant-substrate/trunk/ruby23_gcc7.patch
Modified:
vagrant-substrate/trunk/PKGBUILD
--------------------------+
PKGBUILD | 18 +++++++++++-----
puppet_module_ruby.patch | 24 ++++++++++++++++++++++
ruby23_gcc7.patch | 49 +++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 85 insertions(+), 6 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2017-07-10 19:50:12 UTC (rev 243784)
+++ PKGBUILD 2017-07-10 20:27:02 UTC (rev 243785)
@@ -2,17 +2,21 @@
pkgname=vagrant-substrate
_pkgname=vagrant-installers
-pkgver=605.0566498
-pkgrel=3
+pkgver=718.205e64c
+pkgrel=1
pkgdesc="Substrate layer for Vagrant"
arch=('i686' 'x86_64')
url="http://vagrantup.com"
license=('MIT')
options=('!emptydirs' '!makeflags')
-makedepends=('git' 'puppet' 'chrpath' 'wget')
+makedepends=('git' 'puppet' 'chrpath' 'wget' 'go')
depends=('lzo')
-source=(git://github.com/mitchellh/$_pkgname.git#commit=0566498)
-md5sums=('SKIP')
+source=(git://github.com/mitchellh/$_pkgname.git#commit=205e64c
+ ruby23_gcc7.patch
+ puppet_module_ruby.patch)
+md5sums=('SKIP'
+ '6e3db41f8918479dd408b8557c3a1ea1'
+ '599a72704b0d0deb6a728ff84a047e6f')
pkgver() {
cd $_pkgname
@@ -45,10 +49,12 @@
# Fix compile issues
# https://github.com/mitchellh/vagrant-installers/issues/60
- sed -i '19 s/-I/-O2 -I/' modules/vagrant_substrate/manifests/staging/posix.pp
+ sed -i '20 s/-I/-O2 -I/' modules/vagrant_substrate/manifests/staging/posix.pp
# chmod u+w the file before chrpath
sed -i 's/chrpath --replace/chmod u+w $name; chrpath --replace/' \
modules/vagrant_substrate/manifests/staging/linux_chrpath.pp
+ # ruby23 gcc7 patch
+ patch -Np1 -i "$srcdir"/puppet_module_ruby.patch
}
build() {
Added: puppet_module_ruby.patch
===================================================================
--- puppet_module_ruby.patch (rev 0)
+++ puppet_module_ruby.patch 2017-07-10 20:27:02 UTC (rev 243785)
@@ -0,0 +1,24 @@
+--- a/modules/ruby/manifests/source.pp
++++ b/modules/ruby/manifests/source.pp
+@@ -73,6 +73,12 @@
+ require => Exec["download-ruby"],
+ }
+
++ exec { "patch-ruby":
++ command => "patch -Np0 -i ../../../ruby23_gcc7.patch",
++ cwd => $file_cache_dir,
++ require => Exec["untar-ruby"],
++ }
++
+ autotools { "ruby":
+ configure_flags => "--prefix=${prefix} --disable-debug --disable-dependency-tracking --disable-install-doc --enable-shared --with-opt-dir=${prefix} --enable-load-relative${extra_configure_flags}",
+ cwd => $source_dir_path,
+@@ -80,7 +86,7 @@
+ install_sentinel => "${prefix}/bin/ruby",
+ make_notify => $make_notify,
+ make_sentinel => "${source_dir_path}/ruby",
+- require => Exec["untar-ruby"],
++ require => Exec["untar-ruby", "patch-ruby"],
+ }
+
+ if $operatingsystem == 'Darwin' {
Added: ruby23_gcc7.patch
===================================================================
--- ruby23_gcc7.patch (rev 0)
+++ ruby23_gcc7.patch 2017-07-10 20:27:02 UTC (rev 243785)
@@ -0,0 +1,49 @@
+diff -ur ruby-2.3.4.orig/include/ruby/ruby.h ruby-2.3.4/include/ruby/ruby.h
+--- ruby-2.3.4.orig/include/ruby/ruby.h 2016-03-29 07:03:30.000000000 +0100
++++ ruby-2.3.4/include/ruby/ruby.h 2017-07-10 20:00:18.699618133 +0100
+@@ -555,7 +555,10 @@
+ * itself. don't use it directly */
+ #ifdef __GNUC__
+ #define RB_GC_GUARD_PTR(ptr) \
+- __extension__ ({volatile VALUE *rb_gc_guarded_ptr = (ptr); rb_gc_guarded_ptr;})
++ __extension__ ({volatile VALUE *rb_gc_guarded_ptr = (ptr); \
++ __asm__("" : : "m"(rb_gc_guarded_ptr)); \
++ rb_gc_guarded_ptr; \
++ })
+ #else
+ #ifdef _MSC_VER
+ #pragma optimize("", off)
+diff -ur ruby-2.3.4.orig/marshal.c ruby-2.3.4/marshal.c
+--- ruby-2.3.4.orig/marshal.c 2017-01-16 19:08:08.000000000 +0000
++++ ruby-2.3.4/marshal.c 2017-07-10 20:01:36.016807763 +0100
+@@ -1024,7 +1024,7 @@
+ struct dump_arg *arg;
+ VALUE wrapper; /* used to avoid memory leak in case of exception */
+
+- wrapper = TypedData_Make_Struct(rb_cData, struct dump_arg, &dump_arg_data, arg);
++ wrapper = TypedData_Make_Struct(0, struct dump_arg, &dump_arg_data, arg);
+ arg->dest = 0;
+ arg->symbols = st_init_numtable();
+ arg->data = rb_init_identtable();
+@@ -2059,7 +2059,7 @@
+ else {
+ io_needed();
+ }
+- wrapper = TypedData_Make_Struct(rb_cData, struct load_arg, &load_arg_data, arg);
++ wrapper = TypedData_Make_Struct(0, struct load_arg, &load_arg_data, arg);
+ arg->infection = infection;
+ arg->src = port;
+ arg->offset = 0;
+diff -ur ruby-2.3.4.orig/test/ruby/test_marshal.rb ruby-2.3.4/test/ruby/test_marshal.rb
+--- ruby-2.3.4.orig/test/ruby/test_marshal.rb 2017-01-16 19:08:08.000000000 +0000
++++ ruby-2.3.4/test/ruby/test_marshal.rb 2017-07-10 20:02:08.710362086 +0100
+@@ -645,6 +645,9 @@
+ c = Bug9523.new
+ assert_raise_with_message(RuntimeError, /Marshal\.dump reentered at marshal_dump/) do
+ Marshal.dump(c)
++ GC.start
++ 1000.times {"x"*1000}
++ GC.start
+ c.cc.call
+ end
+ end
More information about the arch-commits
mailing list