aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2022-10-09 15:19:08 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2022-10-09 15:37:43 +0000
commitccec2df8f05632d74f827d6d263e937237ddd291 (patch)
tree03be522bca9be00f9cf83ab91f844d598a4b5c7c
parentc6ced3c16a2a438fe4307b72b1eed5afb826fc6c (diff)
downloadports-ccec2df8f05632d74f827d6d263e937237ddd291.tar.gz
ports-ccec2df8f05632d74f827d6d263e937237ddd291.zip
databases/rubygem-red-arrow: Add rubygem-red-arrow 8.0.0
Red Arrow is the Ruby bindings of Apache Arrow. Red Arrow is based on GObject Introspection. Apache Arrow is an in-memory columnar data store. It's used by many products for data analytics. GObject Introspection is a middleware for language bindings of C library. GObject Introspection can generate language bindings automatically at runtime. Red Arrow uses Apache Arrow GLib and gobject-introspection gem to generate Ruby bindings of Apache Arrow. See also: https://github.com/apache/arrow/tree/master/ruby/red-arrow
-rw-r--r--databases/Makefile1
-rw-r--r--databases/rubygem-red-arrow/Makefile25
-rw-r--r--databases/rubygem-red-arrow/distinfo3
-rw-r--r--databases/rubygem-red-arrow/files/patch-ext-arrow-extconf.rb11
-rw-r--r--databases/rubygem-red-arrow/pkg-descr13
5 files changed, 53 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile
index 5312e3be50ac..a6bb2932bfc7 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -982,6 +982,7 @@
SUBDIR += rubygem-postgres_ext
SUBDIR += rubygem-puppetdb_cli
SUBDIR += rubygem-rbase
+ SUBDIR += rubygem-red-arrow
SUBDIR += rubygem-redis
SUBDIR += rubygem-redis-actionpack
SUBDIR += rubygem-redis-actionpack-rails5
diff --git a/databases/rubygem-red-arrow/Makefile b/databases/rubygem-red-arrow/Makefile
new file mode 100644
index 000000000000..6c1e34b7731d
--- /dev/null
+++ b/databases/rubygem-red-arrow/Makefile
@@ -0,0 +1,25 @@
+PORTNAME= red-arrow
+PORTVERSION= 8.0.0
+CATEGORIES= databases rubygems
+MASTER_SITES= RG
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Ruby bindings of Apache Arrow
+WWW= https://arrow.apache.org/
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+LIB_DEPENDS= libarrow-glib.so:databases/arrow-glib
+RUN_DEPENDS= rubygem-bigdecimal>=2.0.3:math/rubygem-bigdecimal \
+ rubygem-extpp>=0.0.7:devel/rubygem-extpp \
+ rubygem-gio2>=3.5.0:devel/rubygem-gio2 \
+ rubygem-native-package-installer>=0:devel/rubygem-native-package-installer \
+ rubygem-pkg-config>=0:devel/rubygem-pkg-config \
+
+USES= gem localbase
+USE_RUBY= yes
+
+CFLAGS+= -I${LOCALBASE}/include
+
+.include <bsd.port.mk>
diff --git a/databases/rubygem-red-arrow/distinfo b/databases/rubygem-red-arrow/distinfo
new file mode 100644
index 000000000000..896a205483a6
--- /dev/null
+++ b/databases/rubygem-red-arrow/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1665073074
+SHA256 (rubygem/red-arrow-8.0.0.gem) = 57b460b3a1672cf2b255a86195e817aa196dc7e701d104ab30ca95bb13323d89
+SIZE (rubygem/red-arrow-8.0.0.gem) = 97792
diff --git a/databases/rubygem-red-arrow/files/patch-ext-arrow-extconf.rb b/databases/rubygem-red-arrow/files/patch-ext-arrow-extconf.rb
new file mode 100644
index 000000000000..e1efe63ad39e
--- /dev/null
+++ b/databases/rubygem-red-arrow/files/patch-ext-arrow-extconf.rb
@@ -0,0 +1,11 @@
+--- ext/arrow/extconf.rb.orig 2022-09-13 15:47:51 UTC
++++ ext/arrow/extconf.rb
+@@ -65,7 +65,7 @@ unless required_pkg_config_package([
+ end
+
+ [
+- ["glib2", "ext/glib2"],
++ ["glib2", "lib"],
+ ].each do |name, relative_source_dir|
+ spec = find_gem_spec(name)
+ source_dir = File.join(spec.full_gem_path, relative_source_dir)
diff --git a/databases/rubygem-red-arrow/pkg-descr b/databases/rubygem-red-arrow/pkg-descr
new file mode 100644
index 000000000000..6013643d5b20
--- /dev/null
+++ b/databases/rubygem-red-arrow/pkg-descr
@@ -0,0 +1,13 @@
+Red Arrow is the Ruby bindings of Apache Arrow. Red Arrow is based on GObject
+Introspection.
+
+Apache Arrow is an in-memory columnar data store. It's used by many products for
+data analytics.
+
+GObject Introspection is a middleware for language bindings of C library.
+GObject Introspection can generate language bindings automatically at runtime.
+
+Red Arrow uses Apache Arrow GLib and gobject-introspection gem to generate Ruby
+bindings of Apache Arrow.
+
+See also: https://github.com/apache/arrow/tree/master/ruby/red-arrow