This updates libv8 from 3.12.19 to 3.16.14.11, and updates therubyracer from 0.11.0 to 0.12.3, renabling it.
Tests for therubyracer pass, and postgresql-plv8 (the only other
libv8 dependency) still builds fine.
Updating therubyracer requiring importing a new ruby-libv8
dependency. This dependency is set to use the system v8, so it
isn't compiling a second one. If system v8 wants to upgrade
past a version supported by therubyracer, we can just stop using
the system v8 in ruby-libv8 and switch to building a copy that
therubyracer supports.
Tested on amd64. OKs?
Thanks,
Jeremy
Index: lang/libv8/Makefile
===================================================================
RCS file: /cvs/ports/lang/libv8/Makefile,v
retrieving revision 1.15
diff -u -p -u -p -r1.15 Makefile
--- lang/libv8/Makefile 26 Jul 2017 22:45:25 -0000 1.15
+++ lang/libv8/Makefile 3 Nov 2017 10:10:43 -0000
@@ -4,8 +4,7 @@ ONLY_FOR_ARCHS= amd64 i386
COMMENT= V8 JavaScript for clients and servers
-V8_VERSION= 3.12.19
-REVISION= 6
+V8_VERSION= 3.16.14.11
EPOCH= 0
V8_ARCH= ${MACHINE_ARCH:S/amd64/x64/:S/i386/ia32/}
V8_RELEASE= release
@@ -13,6 +12,8 @@ V8_RELEASE= release
DISTNAME= v8-${V8_VERSION}
PKGNAME= lib${DISTNAME}
+DISTFILES= v8-${V8_VERSION}.tar.gz{${V8_VERSION}.tar.gz}
+
CATEGORIES= lang
SHARED_LIBS= v8 0.0
@@ -24,7 +25,7 @@ MAINTAINER= David Carlier <devnexen@gmai
# BSD
PERMIT_PACKAGE_CDROM= Yes
-MASTER_SITES= http://deftly.net/
+MASTER_SITES= https://github.com/v8/v8/archive/
BUILD_DEPENDS= devel/gyp
Index: lang/libv8/distinfo
===================================================================
RCS file: /cvs/ports/lang/libv8/distinfo,v
retrieving revision 1.2
diff -u -p -u -p -r1.2 distinfo
--- lang/libv8/distinfo 5 Dec 2012 00:34:03 -0000 1.2
+++ lang/libv8/distinfo 3 Nov 2017 10:11:16 -0000
@@ -1,2 +1,2 @@
-SHA256 (v8-3.12.19.tar.gz) = uNgaqSiFhmpwtdwbWMRSPUoYbeH/qS2HU4zOrgLVklM=
-SIZE (v8-3.12.19.tar.gz) = 11617055
+SHA256 (v8-3.16.14.11.tar.gz) = oMEGp2LXGcVjTvFHtSBwHQ27LQ6eDt5m0HlRjkbCixQ=
+SIZE (v8-3.16.14.11.tar.gz) = 11849064
Index: lang/libv8/patches/patch-Makefile
===================================================================
RCS file: /cvs/ports/lang/libv8/patches/patch-Makefile,v
retrieving revision 1.1.1.1
diff -u -p -u -p -r1.1.1.1 patch-Makefile
--- lang/libv8/patches/patch-Makefile 13 Oct 2012 15:09:58 -0000 1.1.1.1
+++ lang/libv8/patches/patch-Makefile 3 Nov 2017 10:13:44 -0000
@@ -1,7 +1,8 @@
$OpenBSD: patch-Makefile,v 1.1.1.1 2012/10/13 15:09:58 abieber Exp $
---- Makefile.orig Tue Oct 9 07:14:31 2012
-+++ Makefile Tue Oct 9 17:41:07 2012
-@@ -250,14 +250,14 @@ clean: $(addsuffix .clean, $(ARCHES) $(ANDROID_ARCHES)
+Index: Makefile
+--- Makefile.orig
++++ Makefile
+@@ -266,14 +266,14 @@ clean: $(addsuffix .clean, $(ARCHES) $(ANDROID_ARCHES)
OUT_MAKEFILES = $(addprefix $(OUTDIR)/Makefile.,$(ARCHES))
$(OUT_MAKEFILES): $(GYPFILES) $(ENVFILE)
GYP_GENERATORS=make \
Index: lang/libv8/patches/patch-build_common_gypi
===================================================================
RCS file: /cvs/ports/lang/libv8/patches/patch-build_common_gypi,v
retrieving revision 1.1.1.1
diff -u -p -u -p -r1.1.1.1 patch-build_common_gypi
--- lang/libv8/patches/patch-build_common_gypi 13 Oct 2012 15:09:58 -0000
1.1.1.1
+++ lang/libv8/patches/patch-build_common_gypi 3 Nov 2017 10:13:44 -0000
@@ -1,16 +1,17 @@
$OpenBSD: patch-build_common_gypi,v 1.1.1.1 2012/10/13 15:09:58 abieber Exp $
---- build/common.gypi.orig Tue Oct 9 07:14:31 2012
-+++ build/common.gypi Tue Oct 9 15:51:53 2012
-@@ -90,7 +90,7 @@
+Index: build/common.gypi
+--- build/common.gypi.orig
++++ build/common.gypi
+@@ -100,7 +100,7 @@
+
'v8_use_snapshot%': 'true',
'host_os%': '<(OS)',
- 'v8_use_liveobjectlist%': 'false',
- 'werror%': '-Werror',
+ 'werror%': '',
# With post mortem support enabled, metadata is embedded into libv8 that
# describes various parameters of the VM for use by debuggers. See
-@@ -313,6 +313,9 @@
+@@ -338,6 +338,9 @@
}],
['OS=="freebsd" or OS=="openbsd"', {
'cflags': [ '-I/usr/local/include' ],
Index: lang/libv8/patches/patch-src_atomicops_h
===================================================================
RCS file: lang/libv8/patches/patch-src_atomicops_h
diff -N lang/libv8/patches/patch-src_atomicops_h
--- lang/libv8/patches/patch-src_atomicops_h 5 Dec 2012 01:07:45 -0000
1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$OpenBSD: patch-src_atomicops_h,v 1.1 2012/12/05 01:07:45 abieber Exp $
---- src/atomicops.h.orig Tue Dec 4 18:00:55 2012
-+++ src/atomicops.h Tue Dec 4 18:01:52 2012
-@@ -69,7 +69,11 @@ typedef intptr_t Atomic64;
-
- // Use AtomicWord for a machine-sized pointer. It will use the Atomic32 or
- // Atomic64 routines below, depending on your architecture.
-+#if defined(__OpenBSD__) && defined(__i386__)
-+typedef Atomic32 AtomicWord;
-+#else
- typedef intptr_t AtomicWord;
-+#endif
-
- // Atomically execute:
- // result = *ptr;
Index: lang/libv8/patches/patch-src_heap_cc
===================================================================
RCS file: /cvs/ports/lang/libv8/patches/patch-src_heap_cc,v
retrieving revision 1.1.1.1
diff -u -p -u -p -r1.1.1.1 patch-src_heap_cc
--- lang/libv8/patches/patch-src_heap_cc 13 Oct 2012 15:09:58 -0000
1.1.1.1
+++ lang/libv8/patches/patch-src_heap_cc 3 Nov 2017 10:13:44 -0000
@@ -1,7 +1,8 @@
$OpenBSD: patch-src_heap_cc,v 1.1.1.1 2012/10/13 15:09:58 abieber Exp $
---- src/heap.cc.orig Tue Oct 9 08:34:36 2012
-+++ src/heap.cc Tue Oct 9 08:34:45 2012
-@@ -5873,6 +5873,29 @@ bool Heap::ConfigureHeap(int max_semispace_size,
+Index: src/heap.cc
+--- src/heap.cc.orig
++++ src/heap.cc
+@@ -6124,6 +6124,29 @@ bool Heap::ConfigureHeap(int max_semispace_size,
initial_semispace_size_ = Min(initial_semispace_size_, max_semispace_size_);
external_allocation_limit_ = 16 * max_semispace_size_;
Index: lang/libv8/patches/patch-src_platform_h
===================================================================
RCS file: lang/libv8/patches/patch-src_platform_h
diff -N lang/libv8/patches/patch-src_platform_h
--- lang/libv8/patches/patch-src_platform_h 5 Dec 2012 01:07:45 -0000
1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$OpenBSD: patch-src_platform_h,v 1.1 2012/12/05 01:07:45 abieber Exp $
---- src/platform.h.orig Tue Dec 4 18:02:18 2012
-+++ src/platform.h Tue Dec 4 18:03:08 2012
-@@ -89,7 +89,11 @@ namespace internal {
-
- // Use AtomicWord for a machine-sized pointer. It is assumed that
- // reads and writes of naturally aligned values of this type are atomic.
-+#if defined(__OpenBSD__) && defined(__i386__)
-+typedef Atomic32 AtomicWord;
-+#else
- typedef intptr_t AtomicWord;
-+#endif
-
- class Semaphore;
- class Mutex;
Index: lang/libv8/patches/patch-tools_gyp_v8_gyp
===================================================================
RCS file: /cvs/ports/lang/libv8/patches/patch-tools_gyp_v8_gyp,v
retrieving revision 1.1.1.1
diff -u -p -u -p -r1.1.1.1 patch-tools_gyp_v8_gyp
--- lang/libv8/patches/patch-tools_gyp_v8_gyp 13 Oct 2012 15:09:58 -0000
1.1.1.1
+++ lang/libv8/patches/patch-tools_gyp_v8_gyp 3 Nov 2017 10:13:44 -0000
@@ -1,7 +1,8 @@
$OpenBSD: patch-tools_gyp_v8_gyp,v 1.1.1.1 2012/10/13 15:09:58 abieber Exp $
---- tools/gyp/v8.gyp.orig Wed Oct 10 13:52:30 2012
-+++ tools/gyp/v8.gyp Wed Oct 10 13:53:11 2012
-@@ -74,8 +74,8 @@
+Index: tools/gyp/v8.gyp
+--- tools/gyp/v8.gyp.orig
++++ tools/gyp/v8.gyp
+@@ -82,8 +82,8 @@
'OTHER_LDFLAGS': ['-dynamiclib', '-all_load']
},
}],
Index: devel/ruby-therubyracer/Makefile
===================================================================
RCS file: /cvs/ports/devel/ruby-therubyracer/Makefile,v
retrieving revision 1.11
diff -u -p -u -p -r1.11 Makefile
--- devel/ruby-therubyracer/Makefile 26 Jul 2017 22:45:18 -0000 1.11
+++ devel/ruby-therubyracer/Makefile 3 Nov 2017 10:36:26 -0000
@@ -1,11 +1,8 @@
# $OpenBSD: Makefile,v 1.11 2017/07/26 22:45:18 sthen Exp $
-BROKEN = port is holding back updates to lang/libv8
-
COMMENT = embeds the V8 javascript interpreter into ruby
-DISTNAME = therubyracer-0.11.0
-REVISION = 4
+DISTNAME = therubyracer-0.12.3
CATEGORIES = devel
HOMEPAGE= https://github.com/cowboyd/therubyracer
@@ -18,12 +15,12 @@ MODULES = lang/ruby
CONFIGURE_STYLE = ruby gem ext
BUILD_DEPENDS = ${RUN_DEPENDS}
-RUN_DEPENDS = lang/libv8 \
+RUN_DEPENDS = devel/ruby-libv8,${MODRUBY_FLAVOR}>=3.16.14.15,<3.16.15 \
devel/ruby-ref,${MODRUBY_FLAVOR}
-#TEST_DEPENDS = ${FULLPKGNAME}:${BUILD_PKGPATH}
-#MODRUBY_TEST_ENV = RUBYOPT='-rubygems -rv8'
-#MODRUBY_TEST = rspec2
-#MODRUBY_TEST_TARGET = spec/{v8,c}/*_spec.rb
+TEST_DEPENDS = ${FULLPKGNAME}:${BUILD_PKGPATH}
+MODRUBY_TEST_ENV = RUBYOPT='-rubygems -rv8'
+MODRUBY_TEST = rspec3
+MODRUBY_TEST_TARGET = spec/{v8,c}/*_spec.rb
.include <bsd.port.mk>
Index: devel/ruby-therubyracer/distinfo
===================================================================
RCS file: /cvs/ports/devel/ruby-therubyracer/distinfo,v
retrieving revision 1.1.1.1
diff -u -p -u -p -r1.1.1.1 distinfo
--- devel/ruby-therubyracer/distinfo 12 Dec 2012 21:50:40 -0000 1.1.1.1
+++ devel/ruby-therubyracer/distinfo 3 Nov 2017 09:50:41 -0000
@@ -1,2 +1,2 @@
-SHA256 (therubyracer-0.11.0.gem) = NHljGOO4PEy/Jt2o8YaYD31R3WnsmOtRE0whqMvAHE8=
-SIZE (therubyracer-0.11.0.gem) = 57344
+SHA256 (therubyracer-0.12.3.gem) = WETLy1S5udB7a/XwSb9dAOWHude7G+mlp092JfRfJb0=
+SIZE (therubyracer-0.12.3.gem) = 58880
Index: devel/ruby-therubyracer/pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/ruby-therubyracer/pkg/PLIST,v
retrieving revision 1.2
diff -u -p -u -p -r1.2 PLIST
--- devel/ruby-therubyracer/pkg/PLIST 11 Jan 2014 22:51:02 -0000 1.2
+++ devel/ruby-therubyracer/pkg/PLIST 3 Nov 2017 10:29:31 -0000
@@ -9,6 +9,7 @@ ${GEM_LIB}/gems/${DISTNAME}/README.md
${GEM_LIB}/gems/${DISTNAME}/Rakefile
${GEM_LIB}/gems/${DISTNAME}/benchmarks.rb
${GEM_LIB}/gems/${DISTNAME}/lib/
+${GEM_LIB}/gems/${DISTNAME}/lib/therubyracer.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/
${GEM_LIB}/gems/${DISTNAME}/lib/v8.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/access/
@@ -23,10 +24,10 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/v8/conve
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/array.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/class.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/code.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/fixnum.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/fundamental.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/hash.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/indentity.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/integer.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/method.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/object.rb
${GEM_LIB}/gems/${DISTNAME}/lib/v8/conversion/primitive.rb
ruby-libv8.tar.gz
Description: application/tar-gz
