Date: Thursday, September 14, 2017 @ 09:08:37 Author: jsteel Revision: 257512
archrelease: copy trunk to community-i686, community-x86_64 Added: vagrant-substrate/repos/community-i686/PKGBUILD (from rev 257511, vagrant-substrate/trunk/PKGBUILD) vagrant-substrate/repos/community-i686/puppet_module_ruby.patch (from rev 257511, vagrant-substrate/trunk/puppet_module_ruby.patch) vagrant-substrate/repos/community-i686/ruby23_gcc7.patch (from rev 257511, vagrant-substrate/trunk/ruby23_gcc7.patch) vagrant-substrate/repos/community-x86_64/PKGBUILD (from rev 257511, vagrant-substrate/trunk/PKGBUILD) vagrant-substrate/repos/community-x86_64/puppet_module_ruby.patch (from rev 257511, vagrant-substrate/trunk/puppet_module_ruby.patch) vagrant-substrate/repos/community-x86_64/ruby23_gcc7.patch (from rev 257511, vagrant-substrate/trunk/ruby23_gcc7.patch) Deleted: vagrant-substrate/repos/community-i686/PKGBUILD vagrant-substrate/repos/community-i686/puppet_module_ruby.patch vagrant-substrate/repos/community-i686/ruby23_gcc7.patch vagrant-substrate/repos/community-x86_64/PKGBUILD vagrant-substrate/repos/community-x86_64/puppet_module_ruby.patch vagrant-substrate/repos/community-x86_64/ruby23_gcc7.patch -------------------------------------------+ /PKGBUILD | 164 ++++++++++++++++++++++++++++ /puppet_module_ruby.patch | 48 ++++++++ /ruby23_gcc7.patch | 98 ++++++++++++++++ community-i686/PKGBUILD | 82 -------------- community-i686/puppet_module_ruby.patch | 24 ---- community-i686/ruby23_gcc7.patch | 49 -------- community-x86_64/PKGBUILD | 82 -------------- community-x86_64/puppet_module_ruby.patch | 24 ---- community-x86_64/ruby23_gcc7.patch | 49 -------- 9 files changed, 310 insertions(+), 310 deletions(-) Deleted: community-i686/PKGBUILD =================================================================== --- community-i686/PKGBUILD 2017-09-14 09:06:47 UTC (rev 257511) +++ community-i686/PKGBUILD 2017-09-14 09:08:37 UTC (rev 257512) @@ -1,82 +0,0 @@ -# Maintainer: Jonathan Steel <jsteel at archlinux.org> - -pkgname=vagrant-substrate -_pkgname=vagrant-installers -pkgver=718.205e64c -pkgrel=2 -pkgdesc="Substrate layer for Vagrant" -arch=('i686' 'x86_64') -url="http://vagrantup.com" -license=('MIT') -options=('!emptydirs' '!makeflags') -makedepends=('git' 'puppet' 'chrpath' 'wget' 'go') -depends=('lzo') -source=(git://github.com/mitchellh/$_pkgname.git#commit=205e64c - ruby23_gcc7.patch - puppet_module_ruby.patch) -md5sums=('SKIP' - '6e3db41f8918479dd408b8557c3a1ea1' - '599a72704b0d0deb6a728ff84a047e6f') - -pkgver() { - cd $_pkgname - - echo $(git rev-list --count HEAD).$(git describe --always) -} - -prepare() { - cd $_pkgname/substrate - - # Use $srcdir for the working directory - sed -i "s:/vagrant-substrate:$srcdir/$_pkgname/vagrant-substrate:" \ - hiera/common.yaml - sed -i "s:\"/opt/vagrant\":\"$srcdir/$_pkgname/opt/vagrant\":" \ - hiera/common.yaml - - # Use latest openssl - sed -i 's/openssl-1.0.2e.tar.gz/openssl-1.0.2k.tar.gz/' \ - modules/openssl/manifests/init.pp - # Disable SSLv3 - sed -i '16 s/shared/shared no-ssl3-method/' \ - modules/openssl/manifests/install/linux.pp - - # Don't create a zip of the substrate - sed -i '48,50d' modules/vagrant_substrate/manifests/init.pp - - # Do not set file ownership - find . -name *.pp -exec sed -i "/owner.*.=.*.root/d" {} + - find . -name *.pp -exec sed -i "/group.*.=.*.root/d" {} + - - # Fix compile issues - # https://github.com/mitchellh/vagrant-installers/issues/60 - 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() { - cd $_pkgname/substrate - - FACTER_param_output_dir="$srcdir" puppet apply \ - --detailed-exitcodes \ - --hiera_config=config/hiera.yaml --confdir=config \ - --modulepath=modules manifests/init.pp || test $? -eq 2 -} - -package() { - cd $_pkgname - - install -d "$pkgdir"/opt - - cp -r vagrant-substrate/staging "$pkgdir"/opt/vagrant - - install -Dm644 LICENSE.md \ - "$pkgdir"/usr/share/licenses/$pkgname/LICENSE - - # FS#54246 Fix pkg-config paths - sed -i 's@/build/vagrant-substrate/src/vagrant-installers/@/@g' \ - "$pkgdir"/opt/vagrant/embedded/lib/pkgconfig/*.pc -} Copied: vagrant-substrate/repos/community-i686/PKGBUILD (from rev 257511, vagrant-substrate/trunk/PKGBUILD) =================================================================== --- community-i686/PKGBUILD (rev 0) +++ community-i686/PKGBUILD 2017-09-14 09:08:37 UTC (rev 257512) @@ -0,0 +1,82 @@ +# Maintainer: Jonathan Steel <jsteel at archlinux.org> + +pkgname=vagrant-substrate +_pkgname=vagrant-installers +pkgver=726.d082972 +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' 'go') +depends=('lzo') +source=(git://github.com/mitchellh/$_pkgname.git#commit=d082972 + ruby23_gcc7.patch + puppet_module_ruby.patch) +md5sums=('SKIP' + '6e3db41f8918479dd408b8557c3a1ea1' + '63b8c25d33344dfd2be299143e85c4a2') + +pkgver() { + cd $_pkgname + + echo $(git rev-list --count HEAD).$(git describe --always) +} + +prepare() { + cd $_pkgname/substrate + + # Use $srcdir for the working directory + sed -i "s:/vagrant-substrate:$srcdir/$_pkgname/vagrant-substrate:" \ + hiera/common.yaml + sed -i "s:\"/opt/vagrant\":\"$srcdir/$_pkgname/opt/vagrant\":" \ + hiera/common.yaml + + # Use latest openssl + sed -i 's/openssl-1.0.2e.tar.gz/openssl-1.0.2k.tar.gz/' \ + modules/openssl/manifests/init.pp + # Disable SSLv3 + sed -i '16 s/shared/shared no-ssl3-method/' \ + modules/openssl/manifests/install/linux.pp + + # Don't create a zip of the substrate + sed -i '48,50d' modules/vagrant_substrate/manifests/init.pp + + # Do not set file ownership + find . -name *.pp -exec sed -i "/owner.*.=.*.root/d" {} + + find . -name *.pp -exec sed -i "/group.*.=.*.root/d" {} + + + # Fix compile issues + # https://github.com/mitchellh/vagrant-installers/issues/60 + 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() { + cd $_pkgname/substrate + + FACTER_param_output_dir="$srcdir" puppet apply \ + --detailed-exitcodes \ + --hiera_config=config/hiera.yaml --confdir=config \ + --modulepath=modules manifests/init.pp || test $? -eq 2 +} + +package() { + cd $_pkgname + + install -d "$pkgdir"/opt + + cp -r vagrant-substrate/staging "$pkgdir"/opt/vagrant + + install -Dm644 LICENSE.md \ + "$pkgdir"/usr/share/licenses/$pkgname/LICENSE + + # FS#54246 Fix pkg-config paths + sed -i 's@/build/vagrant-substrate/src/vagrant-installers/@/@g' \ + "$pkgdir"/opt/vagrant/embedded/lib/pkgconfig/*.pc +} Deleted: community-i686/puppet_module_ruby.patch =================================================================== --- community-i686/puppet_module_ruby.patch 2017-09-14 09:06:47 UTC (rev 257511) +++ community-i686/puppet_module_ruby.patch 2017-09-14 09:08:37 UTC (rev 257512) @@ -1,24 +0,0 @@ ---- 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' { Copied: vagrant-substrate/repos/community-i686/puppet_module_ruby.patch (from rev 257511, vagrant-substrate/trunk/puppet_module_ruby.patch) =================================================================== --- community-i686/puppet_module_ruby.patch (rev 0) +++ community-i686/puppet_module_ruby.patch 2017-09-14 09:08:37 UTC (rev 257512) @@ -0,0 +1,24 @@ +--- a/modules/ruby/manifests/source.pp ++++ b/modules/ruby/manifests/source.pp +@@ -88,6 +88,12 @@ + require => File["rubygems-patch"], + } + ++ 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, +@@ -95,7 +101,7 @@ + install_sentinel => "${prefix}/bin/ruby", + make_notify => $make_notify, + make_sentinel => "${source_dir_path}/ruby", +- require => Exec["patch-rubygems"], ++ require => Exec["patch-rubygems", "patch-ruby"], + } + + if $operatingsystem == 'Darwin' { Deleted: community-i686/ruby23_gcc7.patch =================================================================== --- community-i686/ruby23_gcc7.patch 2017-09-14 09:06:47 UTC (rev 257511) +++ community-i686/ruby23_gcc7.patch 2017-09-14 09:08:37 UTC (rev 257512) @@ -1,49 +0,0 @@ -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 Copied: vagrant-substrate/repos/community-i686/ruby23_gcc7.patch (from rev 257511, vagrant-substrate/trunk/ruby23_gcc7.patch) =================================================================== --- community-i686/ruby23_gcc7.patch (rev 0) +++ community-i686/ruby23_gcc7.patch 2017-09-14 09:08:37 UTC (rev 257512) @@ -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 Deleted: community-x86_64/PKGBUILD =================================================================== --- community-x86_64/PKGBUILD 2017-09-14 09:06:47 UTC (rev 257511) +++ community-x86_64/PKGBUILD 2017-09-14 09:08:37 UTC (rev 257512) @@ -1,82 +0,0 @@ -# Maintainer: Jonathan Steel <jsteel at archlinux.org> - -pkgname=vagrant-substrate -_pkgname=vagrant-installers -pkgver=718.205e64c -pkgrel=2 -pkgdesc="Substrate layer for Vagrant" -arch=('i686' 'x86_64') -url="http://vagrantup.com" -license=('MIT') -options=('!emptydirs' '!makeflags') -makedepends=('git' 'puppet' 'chrpath' 'wget' 'go') -depends=('lzo') -source=(git://github.com/mitchellh/$_pkgname.git#commit=205e64c - ruby23_gcc7.patch - puppet_module_ruby.patch) -md5sums=('SKIP' - '6e3db41f8918479dd408b8557c3a1ea1' - '599a72704b0d0deb6a728ff84a047e6f') - -pkgver() { - cd $_pkgname - - echo $(git rev-list --count HEAD).$(git describe --always) -} - -prepare() { - cd $_pkgname/substrate - - # Use $srcdir for the working directory - sed -i "s:/vagrant-substrate:$srcdir/$_pkgname/vagrant-substrate:" \ - hiera/common.yaml - sed -i "s:\"/opt/vagrant\":\"$srcdir/$_pkgname/opt/vagrant\":" \ - hiera/common.yaml - - # Use latest openssl - sed -i 's/openssl-1.0.2e.tar.gz/openssl-1.0.2k.tar.gz/' \ - modules/openssl/manifests/init.pp - # Disable SSLv3 - sed -i '16 s/shared/shared no-ssl3-method/' \ - modules/openssl/manifests/install/linux.pp - - # Don't create a zip of the substrate - sed -i '48,50d' modules/vagrant_substrate/manifests/init.pp - - # Do not set file ownership - find . -name *.pp -exec sed -i "/owner.*.=.*.root/d" {} + - find . -name *.pp -exec sed -i "/group.*.=.*.root/d" {} + - - # Fix compile issues - # https://github.com/mitchellh/vagrant-installers/issues/60 - 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() { - cd $_pkgname/substrate - - FACTER_param_output_dir="$srcdir" puppet apply \ - --detailed-exitcodes \ - --hiera_config=config/hiera.yaml --confdir=config \ - --modulepath=modules manifests/init.pp || test $? -eq 2 -} - -package() { - cd $_pkgname - - install -d "$pkgdir"/opt - - cp -r vagrant-substrate/staging "$pkgdir"/opt/vagrant - - install -Dm644 LICENSE.md \ - "$pkgdir"/usr/share/licenses/$pkgname/LICENSE - - # FS#54246 Fix pkg-config paths - sed -i 's@/build/vagrant-substrate/src/vagrant-installers/@/@g' \ - "$pkgdir"/opt/vagrant/embedded/lib/pkgconfig/*.pc -} Copied: vagrant-substrate/repos/community-x86_64/PKGBUILD (from rev 257511, vagrant-substrate/trunk/PKGBUILD) =================================================================== --- community-x86_64/PKGBUILD (rev 0) +++ community-x86_64/PKGBUILD 2017-09-14 09:08:37 UTC (rev 257512) @@ -0,0 +1,82 @@ +# Maintainer: Jonathan Steel <jsteel at archlinux.org> + +pkgname=vagrant-substrate +_pkgname=vagrant-installers +pkgver=726.d082972 +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' 'go') +depends=('lzo') +source=(git://github.com/mitchellh/$_pkgname.git#commit=d082972 + ruby23_gcc7.patch + puppet_module_ruby.patch) +md5sums=('SKIP' + '6e3db41f8918479dd408b8557c3a1ea1' + '63b8c25d33344dfd2be299143e85c4a2') + +pkgver() { + cd $_pkgname + + echo $(git rev-list --count HEAD).$(git describe --always) +} + +prepare() { + cd $_pkgname/substrate + + # Use $srcdir for the working directory + sed -i "s:/vagrant-substrate:$srcdir/$_pkgname/vagrant-substrate:" \ + hiera/common.yaml + sed -i "s:\"/opt/vagrant\":\"$srcdir/$_pkgname/opt/vagrant\":" \ + hiera/common.yaml + + # Use latest openssl + sed -i 's/openssl-1.0.2e.tar.gz/openssl-1.0.2k.tar.gz/' \ + modules/openssl/manifests/init.pp + # Disable SSLv3 + sed -i '16 s/shared/shared no-ssl3-method/' \ + modules/openssl/manifests/install/linux.pp + + # Don't create a zip of the substrate + sed -i '48,50d' modules/vagrant_substrate/manifests/init.pp + + # Do not set file ownership + find . -name *.pp -exec sed -i "/owner.*.=.*.root/d" {} + + find . -name *.pp -exec sed -i "/group.*.=.*.root/d" {} + + + # Fix compile issues + # https://github.com/mitchellh/vagrant-installers/issues/60 + 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() { + cd $_pkgname/substrate + + FACTER_param_output_dir="$srcdir" puppet apply \ + --detailed-exitcodes \ + --hiera_config=config/hiera.yaml --confdir=config \ + --modulepath=modules manifests/init.pp || test $? -eq 2 +} + +package() { + cd $_pkgname + + install -d "$pkgdir"/opt + + cp -r vagrant-substrate/staging "$pkgdir"/opt/vagrant + + install -Dm644 LICENSE.md \ + "$pkgdir"/usr/share/licenses/$pkgname/LICENSE + + # FS#54246 Fix pkg-config paths + sed -i 's@/build/vagrant-substrate/src/vagrant-installers/@/@g' \ + "$pkgdir"/opt/vagrant/embedded/lib/pkgconfig/*.pc +} Deleted: community-x86_64/puppet_module_ruby.patch =================================================================== --- community-x86_64/puppet_module_ruby.patch 2017-09-14 09:06:47 UTC (rev 257511) +++ community-x86_64/puppet_module_ruby.patch 2017-09-14 09:08:37 UTC (rev 257512) @@ -1,24 +0,0 @@ ---- 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' { Copied: vagrant-substrate/repos/community-x86_64/puppet_module_ruby.patch (from rev 257511, vagrant-substrate/trunk/puppet_module_ruby.patch) =================================================================== --- community-x86_64/puppet_module_ruby.patch (rev 0) +++ community-x86_64/puppet_module_ruby.patch 2017-09-14 09:08:37 UTC (rev 257512) @@ -0,0 +1,24 @@ +--- a/modules/ruby/manifests/source.pp ++++ b/modules/ruby/manifests/source.pp +@@ -88,6 +88,12 @@ + require => File["rubygems-patch"], + } + ++ 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, +@@ -95,7 +101,7 @@ + install_sentinel => "${prefix}/bin/ruby", + make_notify => $make_notify, + make_sentinel => "${source_dir_path}/ruby", +- require => Exec["patch-rubygems"], ++ require => Exec["patch-rubygems", "patch-ruby"], + } + + if $operatingsystem == 'Darwin' { Deleted: community-x86_64/ruby23_gcc7.patch =================================================================== --- community-x86_64/ruby23_gcc7.patch 2017-09-14 09:06:47 UTC (rev 257511) +++ community-x86_64/ruby23_gcc7.patch 2017-09-14 09:08:37 UTC (rev 257512) @@ -1,49 +0,0 @@ -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 Copied: vagrant-substrate/repos/community-x86_64/ruby23_gcc7.patch (from rev 257511, vagrant-substrate/trunk/ruby23_gcc7.patch) =================================================================== --- community-x86_64/ruby23_gcc7.patch (rev 0) +++ community-x86_64/ruby23_gcc7.patch 2017-09-14 09:08:37 UTC (rev 257512) @@ -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