diff options
22 files changed, 185 insertions, 11 deletions
diff --git a/devel/Makefile b/devel/Makefile index 14ef37aede44..c38c39ae2685 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -7430,6 +7430,7 @@ SUBDIR += rubygem-google-protobuf SUBDIR += rubygem-google-protobuf3 SUBDIR += rubygem-googleapis-common-protos + SUBDIR += rubygem-googleapis-common-protos-gitlab SUBDIR += rubygem-googleapis-common-protos-types SUBDIR += rubygem-graf SUBDIR += rubygem-grape @@ -7447,6 +7448,7 @@ SUBDIR += rubygem-graphql-client SUBDIR += rubygem-graphql-docs SUBDIR += rubygem-grpc-google-iam-v1 + SUBDIR += rubygem-grpc-google-iam-v1-gitlab SUBDIR += rubygem-guess_html_encoding SUBDIR += rubygem-gyoku SUBDIR += rubygem-hamster diff --git a/devel/rubygem-gapic-common-gitlab/Makefile b/devel/rubygem-gapic-common-gitlab/Makefile index 2815e46e740b..1b004afceb06 100644 --- a/devel/rubygem-gapic-common-gitlab/Makefile +++ b/devel/rubygem-gapic-common-gitlab/Makefile @@ -1,5 +1,6 @@ PORTNAME= gapic-common PORTVERSION= 0.23.0 +PORTREVISION= 1 CATEGORIES= devel rubygems MASTER_SITES= RG PKGNAMESUFFIX= -gitlab @@ -14,10 +15,10 @@ LICENSE= APACHE20 RUN_DEPENDS= rubygem-faraday-gitlab>=1.9<3:www/rubygem-faraday-gitlab \ rubygem-faraday-retry-gitlab>=1.0<3:www/rubygem-faraday-retry-gitlab \ rubygem-google-protobuf>=3.25<5.0:devel/rubygem-google-protobuf \ - rubygem-googleapis-common-protos>=1.6<2:devel/rubygem-googleapis-common-protos \ + rubygem-googleapis-common-protos-gitlab>=1.6<2:devel/rubygem-googleapis-common-protos-gitlab \ rubygem-googleapis-common-protos-types>=1.15<2:devel/rubygem-googleapis-common-protos-types \ rubygem-googleauth-gitlab>=1.11<2:security/rubygem-googleauth-gitlab \ - rubygem-grpc>=1.65<2:net/rubygem-grpc + rubygem-grpc-gitlab>=1.65<2:net/rubygem-grpc-gitlab USES= gem diff --git a/devel/rubygem-gitlab-labkit/Makefile b/devel/rubygem-gitlab-labkit/Makefile index a8c3b6c18f6e..e535d7377ecf 100644 --- a/devel/rubygem-gitlab-labkit/Makefile +++ b/devel/rubygem-gitlab-labkit/Makefile @@ -1,6 +1,6 @@ PORTNAME= gitlab-labkit PORTVERSION= 0.37.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= devel rubygems MASTER_SITES= RG @@ -13,7 +13,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= rubygem-actionpack-gitlab>=5<8.1:www/rubygem-actionpack-gitlab \ rubygem-activesupport-gitlab>=5<8.1:devel/rubygem-activesupport-gitlab \ - rubygem-grpc>=1.62:net/rubygem-grpc \ + rubygem-grpc-gitlab>=1.62:net/rubygem-grpc-gitlab \ rubygem-jaeger-client>=1.1.0<1.2:devel/rubygem-jaeger-client \ rubygem-opentracing>=0.4<1:devel/rubygem-opentracing \ rubygem-pg_query>=5.1.0<7:databases/rubygem-pg_query \ diff --git a/devel/rubygem-googleapis-common-protos-gitlab/Makefile b/devel/rubygem-googleapis-common-protos-gitlab/Makefile new file mode 100644 index 000000000000..2e7ad647d78a --- /dev/null +++ b/devel/rubygem-googleapis-common-protos-gitlab/Makefile @@ -0,0 +1,22 @@ +PORTNAME= googleapis-common-protos +PORTVERSION= 1.8.0 +CATEGORIES= devel rubygems +MASTER_SITES= RG +PKGNAMESUFFIX= -gitlab + +MAINTAINER= mfechner@FreeBSD.org +COMMENT= Common gRPC and protocol buffer classes used in Google APIs +WWW= https://github.com/googleapis/common-protos-ruby/tree/main/googleapis-common-protos \ + https://github.com/googleapis/common-protos-ruby + +LICENSE= APACHE20 + +RUN_DEPENDS= rubygem-google-protobuf>=3.18<5.0:devel/rubygem-google-protobuf \ + rubygem-googleapis-common-protos-types>=1.20<2:devel/rubygem-googleapis-common-protos-types \ + rubygem-grpc-gitlab>=1.41<2:net/rubygem-grpc-gitlab + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/devel/rubygem-googleapis-common-protos-gitlab/distinfo b/devel/rubygem-googleapis-common-protos-gitlab/distinfo new file mode 100644 index 000000000000..c37e7cbfc090 --- /dev/null +++ b/devel/rubygem-googleapis-common-protos-gitlab/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1747547446 +SHA256 (rubygem/googleapis-common-protos-1.8.0.gem) = bfe89cb75d1a8f13e4591d262a20333e145481d803adb74dd13ac0517decdffe +SIZE (rubygem/googleapis-common-protos-1.8.0.gem) = 6656 diff --git a/devel/rubygem-googleapis-common-protos-gitlab/pkg-descr b/devel/rubygem-googleapis-common-protos-gitlab/pkg-descr new file mode 100644 index 000000000000..27e7c575b0c5 --- /dev/null +++ b/devel/rubygem-googleapis-common-protos-gitlab/pkg-descr @@ -0,0 +1,2 @@ +googleapis-common-protos provides common gRPC and protocol buffer classes used +in Google APIs. diff --git a/devel/rubygem-grpc-google-iam-v1-gitlab/Makefile b/devel/rubygem-grpc-google-iam-v1-gitlab/Makefile new file mode 100644 index 000000000000..724e2a1b33e7 --- /dev/null +++ b/devel/rubygem-grpc-google-iam-v1-gitlab/Makefile @@ -0,0 +1,22 @@ +PORTNAME= grpc-google-iam-v1 +PORTVERSION= 1.11.0 +CATEGORIES= devel rubygems +MASTER_SITES= RG +PKGNAMESUFFIX= -gitlab + +MAINTAINER= mfechner@FreeBSD.org +COMMENT= Common protos and gRPC services for Google IAM +WWW= https://github.com/googleapis/common-protos-ruby/tree/main/grpc-google-iam-v1 \ + https://github.com/googleapis/common-protos-ruby + +LICENSE= APACHE20 + +RUN_DEPENDS= rubygem-google-protobuf>=3.18<5.0:devel/rubygem-google-protobuf \ + rubygem-googleapis-common-protos-gitlab>=1.7.0<2:devel/rubygem-googleapis-common-protos-gitlab \ + rubygem-grpc-gitlab>=1.41<2:net/rubygem-grpc-gitlab + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/devel/rubygem-grpc-google-iam-v1-gitlab/distinfo b/devel/rubygem-grpc-google-iam-v1-gitlab/distinfo new file mode 100644 index 000000000000..9ea3f5b27af5 --- /dev/null +++ b/devel/rubygem-grpc-google-iam-v1-gitlab/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1747547450 +SHA256 (rubygem/grpc-google-iam-v1-1.11.0.gem) = 8f0aa8a8503b3e001cb1561f31e43aa0445752fb675334afa1afac7f023f368c +SIZE (rubygem/grpc-google-iam-v1-1.11.0.gem) = 14336 diff --git a/devel/rubygem-grpc-google-iam-v1-gitlab/files/patch-gemspec b/devel/rubygem-grpc-google-iam-v1-gitlab/files/patch-gemspec new file mode 100644 index 000000000000..c26370f1c703 --- /dev/null +++ b/devel/rubygem-grpc-google-iam-v1-gitlab/files/patch-gemspec @@ -0,0 +1,11 @@ +--- grpc-google-iam-v1.gemspec.orig 2025-05-18 07:33:39 UTC ++++ grpc-google-iam-v1.gemspec +@@ -20,7 +20,7 @@ Gem::Specification.new do |s| + + s.specification_version = 4 + +- s.add_runtime_dependency(%q<googleapis-common-protos>.freeze, ["~> 1.7.0".freeze]) ++ s.add_runtime_dependency(%q<googleapis-common-protos>.freeze, ["~> 1.7".freeze]) + s.add_runtime_dependency(%q<google-protobuf>.freeze, [">= 3.18".freeze, "< 5.a".freeze]) + s.add_runtime_dependency(%q<grpc>.freeze, ["~> 1.41".freeze]) + end diff --git a/devel/rubygem-grpc-google-iam-v1-gitlab/pkg-descr b/devel/rubygem-grpc-google-iam-v1-gitlab/pkg-descr new file mode 100644 index 000000000000..d90c9d174fec --- /dev/null +++ b/devel/rubygem-grpc-google-iam-v1-gitlab/pkg-descr @@ -0,0 +1 @@ +Google IAM gRPC client library diff --git a/net/Makefile b/net/Makefile index 50b85f176171..f53f3e7e00ce 100644 --- a/net/Makefile +++ b/net/Makefile @@ -1365,6 +1365,7 @@ SUBDIR += rubygem-google-cloud-trace-v1 SUBDIR += rubygem-google-cloud-trace-v2 SUBDIR += rubygem-grpc + SUBDIR += rubygem-grpc-gitlab SUBDIR += rubygem-grpc-tools SUBDIR += rubygem-grpc_reflection SUBDIR += rubygem-hangouts-chat diff --git a/net/rubygem-gitaly/Makefile b/net/rubygem-gitaly/Makefile index caa232e9ebf4..69a1289ab366 100644 --- a/net/rubygem-gitaly/Makefile +++ b/net/rubygem-gitaly/Makefile @@ -9,7 +9,7 @@ WWW= https://gitlab.com/gitlab-org/gitaly LICENSE= MIT -RUN_DEPENDS= rubygem-grpc>=1.0<2.0:net/rubygem-grpc +RUN_DEPENDS= rubygem-grpc-gitlab>=1.0<2.0:net/rubygem-grpc-gitlab USES= cpe gem diff --git a/net/rubygem-gitlab-kas-grpc/Makefile b/net/rubygem-gitlab-kas-grpc/Makefile index 0181129b0d47..e0ab3e64de0d 100644 --- a/net/rubygem-gitlab-kas-grpc/Makefile +++ b/net/rubygem-gitlab-kas-grpc/Makefile @@ -10,7 +10,7 @@ WWW= https://gitlab.com/gitlab-org/cluster-integration/gitlab-agent LICENSE= MIT -RUN_DEPENDS= rubygem-grpc>=1.0<2.0:net/rubygem-grpc +RUN_DEPENDS= rubygem-grpc-gitlab>=1.0<2.0:net/rubygem-grpc-gitlab USES= gem diff --git a/net/rubygem-grpc-gitlab/Makefile b/net/rubygem-grpc-gitlab/Makefile new file mode 100644 index 000000000000..898f7fb49370 --- /dev/null +++ b/net/rubygem-grpc-gitlab/Makefile @@ -0,0 +1,29 @@ +PORTNAME= grpc +PORTVERSION= 1.72.0 +CATEGORIES= net rubygems +MASTER_SITES= RG +PKGNAMESUFFIX= -gitlab + +MAINTAINER= mfechner@FreeBSD.org +COMMENT= Ruby implementation of gRPC +WWW= https://github.com/grpc/grpc/tree/master/src/ruby + +LICENSE= BSD3CLAUSE + +LIB_DEPENDS= libgrpc.so:devel/grpc +RUN_DEPENDS= ca_root_nss>=0:security/ca_root_nss \ + rubygem-google-protobuf>=3.25<5.0:devel/rubygem-google-protobuf \ + rubygem-googleapis-common-protos-types>=1.0<2:devel/rubygem-googleapis-common-protos-types + +USES= cpe gem gmake pkgconfig + +MAKE_JOBS_UNSAFE= yes + +post-patch: + @${RM} ${WRKSRC}/Makefile ${WRKSRC}/.yardopts + @${RM} -r ${WRKSRC}/etc ${WRKSRC}/include ${WRKSRC}/third_party ${WRKSRC}/src/boringssl ${WRKSRC}/src/core + @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/src/ruby/lib/grpc.rb + @${REINPLACE_CMD} -Ee '/s\.files = /s;, "(Makefile|etc|include|third_party|src/boringssl|src/core)[^"]*"\.freeze;;g' ${WRKSRC}/${GEMSPEC} + @${REINPLACE_CMD} -e '/s\.files = /s|"\.yardopts"\.freeze, ||' ${WRKSRC}/${GEMSPEC} + +.include <bsd.port.mk> diff --git a/net/rubygem-grpc-gitlab/distinfo b/net/rubygem-grpc-gitlab/distinfo new file mode 100644 index 000000000000..889f84971194 --- /dev/null +++ b/net/rubygem-grpc-gitlab/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1750238898 +SHA256 (rubygem/grpc-1.72.0.gem) = 56fa0da2f4f96471f59430a9ef08a612cc77649e8fa118c83ae7d0bb619bea09 +SIZE (rubygem/grpc-1.72.0.gem) = 6834176 diff --git a/net/rubygem-grpc-gitlab/files/patch-src_ruby_ext_grpc_extconf.rb b/net/rubygem-grpc-gitlab/files/patch-src_ruby_ext_grpc_extconf.rb new file mode 100644 index 000000000000..b15b15fabb59 --- /dev/null +++ b/net/rubygem-grpc-gitlab/files/patch-src_ruby_ext_grpc_extconf.rb @@ -0,0 +1,60 @@ +--- src/ruby/ext/grpc/extconf.rb.orig 2024-05-18 09:15:48 UTC ++++ src/ruby/ext/grpc/extconf.rb +@@ -96,9 +96,9 @@ end + end + + # Don't embed on TruffleRuby (constant-time crypto is unsafe with Sulong, slow build times) +-ENV['EMBED_OPENSSL'] = (RUBY_ENGINE != 'truffleruby').to_s ++ENV['EMBED_OPENSSL'] = 'false' + # Don't embed on TruffleRuby (the system zlib is already linked for the zlib C extension, slow build times) +-ENV['EMBED_ZLIB'] = (RUBY_ENGINE != 'truffleruby').to_s ++ENV['EMBED_ZLIB'] = 'false' + + ENV['ARCH_FLAGS'] = RbConfig::CONFIG['ARCH_FLAG'] + if apple_toolchain && !cross_compiling +@@ -122,30 +122,10 @@ strip_tool += ' -x' if apple_toolchain + strip_tool = RbConfig::CONFIG['STRIP'] + strip_tool += ' -x' if apple_toolchain + +-unless windows +- puts 'Building internal gRPC into ' + grpc_lib_dir +- nproc = 4 +- nproc = Etc.nprocessors if Etc.respond_to? :nprocessors +- nproc_override = ENV['GRPC_RUBY_BUILD_PROCS'] +- unless nproc_override.nil? or nproc_override.size == 0 +- nproc = nproc_override +- puts "Overriding make parallelism to #{nproc}" +- end +- make = bsd ? 'gmake' : 'make' +- cmd = "#{make} -j#{nproc} -C #{grpc_root} #{grpc_lib_dir}/libgrpc.a CONFIG=#{grpc_config} Q=" +- puts "Building grpc native library: #{cmd}" +- system(cmd) +- exit 1 unless $? == 0 +-end +- + # C-core built, generate Makefile for ruby extension + $LDFLAGS = maybe_remove_strip_all_linker_flag($LDFLAGS) + $DLDFLAGS = maybe_remove_strip_all_linker_flag($DLDFLAGS) + +-$CFLAGS << ' -DGRPC_RUBY_WINDOWS_UCRT' if windows_ucrt +-$CFLAGS << ' -I' + File.join(grpc_root, 'include') +-$CFLAGS << ' -g' +- + def have_ruby_abi_version() + return true if RUBY_ENGINE == 'truffleruby' + # ruby_abi_version is only available in development versions: https://github.com/ruby/ruby/pull/6231 +@@ -174,13 +154,12 @@ ext_export_file = File.join(grpc_root, 'src', 'ruby', + end + + ext_export_file = File.join(grpc_root, 'src', 'ruby', 'ext', 'grpc', ext_export_filename()) +-$LDFLAGS << ' -Wl,--version-script="' + ext_export_file + '.gcc"' if linux + if apple_toolchain + $LDFLAGS << ' -weak_framework CoreFoundation' + $LDFLAGS << ' -Wl,-exported_symbols_list,"' + ext_export_file + '.clang"' + end + +-$LDFLAGS << ' ' + File.join(grpc_lib_dir, 'libgrpc.a') unless windows ++$LDFLAGS << ' -lgrpc' unless windows + if grpc_config == 'gcov' + $CFLAGS << ' -O0 -fprofile-arcs -ftest-coverage' + $LDFLAGS << ' -fprofile-arcs -ftest-coverage -rdynamic' diff --git a/net/rubygem-grpc-gitlab/files/patch-src_ruby_lib_grpc.rb b/net/rubygem-grpc-gitlab/files/patch-src_ruby_lib_grpc.rb new file mode 100644 index 000000000000..2671a57a57f4 --- /dev/null +++ b/net/rubygem-grpc-gitlab/files/patch-src_ruby_lib_grpc.rb @@ -0,0 +1,11 @@ +--- src/ruby/lib/grpc.rb.orig 2020-09-23 17:48:57 UTC ++++ src/ruby/lib/grpc.rb +@@ -12,7 +12,7 @@ + # See the License for the specific language governing permissions and + # limitations under the License. + +-ssl_roots_path = File.expand_path('../../../../etc/roots.pem', __FILE__) ++ssl_roots_path = '%%LOCALBASE%%/etc/ssl/cert.pem' + + require_relative 'grpc/errors' + require_relative 'grpc/structs' diff --git a/net/rubygem-grpc-gitlab/pkg-descr b/net/rubygem-grpc-gitlab/pkg-descr new file mode 100644 index 000000000000..f60aa1ca888f --- /dev/null +++ b/net/rubygem-grpc-gitlab/pkg-descr @@ -0,0 +1 @@ +A Ruby implementation of gRPC. diff --git a/net/rubygem-spamcheck/Makefile b/net/rubygem-spamcheck/Makefile index 39a8fe40721d..a76e5f3c4f06 100644 --- a/net/rubygem-spamcheck/Makefile +++ b/net/rubygem-spamcheck/Makefile @@ -1,5 +1,6 @@ PORTNAME= spamcheck PORTVERSION= 1.3.3 +PORTREVISION= 1 CATEGORIES= net rubygems MASTER_SITES= RG @@ -9,7 +10,7 @@ WWW= https://rubygems.org/gems/spamcheck LICENSE= MIT -RUN_DEPENDS= rubygem-grpc>=1.63<2.0:net/rubygem-grpc +RUN_DEPENDS= rubygem-grpc-gitlab>=1.63<2.0:net/rubygem-grpc-gitlab USES= gem diff --git a/security/rubygem-gitlab-secret_detection/Makefile b/security/rubygem-gitlab-secret_detection/Makefile index f81e286cc1ab..74fed2b4ae8e 100644 --- a/security/rubygem-gitlab-secret_detection/Makefile +++ b/security/rubygem-gitlab-secret_detection/Makefile @@ -1,5 +1,6 @@ PORTNAME= gitlab-secret_detection PORTVERSION= 0.31.0 +PORTREVISION= 1 CATEGORIES= security rubygems MASTER_SITES= RG @@ -10,7 +11,7 @@ WWW= https://gitlab.com/gitlab-org/security-products/secret-detection/secret-de LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= rubygem-grpc>=1.63.0<2:net/rubygem-grpc \ +RUN_DEPENDS= rubygem-grpc-gitlab>=1.63.0<2:net/rubygem-grpc-gitlab \ rubygem-grpc_reflection>=0.1<1:net/rubygem-grpc_reflection \ rubygem-parallel>=1<2:sysutils/rubygem-parallel \ rubygem-re2>=2.7<3:devel/rubygem-re2 \ diff --git a/textproc/rubygem-google-cloud-artifact_registry-v1/Makefile b/textproc/rubygem-google-cloud-artifact_registry-v1/Makefile index 98b1b2e2121a..7c517f61194c 100644 --- a/textproc/rubygem-google-cloud-artifact_registry-v1/Makefile +++ b/textproc/rubygem-google-cloud-artifact_registry-v1/Makefile @@ -1,6 +1,6 @@ PORTNAME= google-cloud-artifact_registry-v1 PORTVERSION= 0.11.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= textproc rubygems MASTER_SITES= RG @@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.md RUN_DEPENDS= rubygem-gapic-common-gitlab>=0.20.0<2:devel/rubygem-gapic-common-gitlab \ rubygem-google-cloud-errors>=1.0<2:net/rubygem-google-cloud-errors \ rubygem-google-cloud-location-gitlab>=0.4<2:net/rubygem-google-cloud-location-gitlab \ - rubygem-grpc-google-iam-v1>=1.1<2:devel/rubygem-grpc-google-iam-v1 + rubygem-grpc-google-iam-v1-gitlab>=1.1<2:devel/rubygem-grpc-google-iam-v1-gitlab USES= gem diff --git a/www/gitlab/Makefile b/www/gitlab/Makefile index 377c7e5226b4..c51d85bb5b99 100644 --- a/www/gitlab/Makefile +++ b/www/gitlab/Makefile @@ -273,7 +273,7 @@ MY_DEPENDS= gitaly>=${GITLAB_VERSION}:devel/gitaly \ rubygem-spamcheck>=1.3.3<1.4:net/rubygem-spamcheck \ rubygem-gitaly>=17.8.4:net/rubygem-gitaly \ rubygem-gitlab-kas-grpc>=${GITLAB_KAS_GRPC_VERSION}:net/rubygem-gitlab-kas-grpc \ - rubygem-grpc>=1.63.0<2:net/rubygem-grpc \ + rubygem-grpc-gitlab>=1.63.0<2:net/rubygem-grpc-gitlab \ rubygem-google-protobuf3>=3.25.6<4:devel/rubygem-google-protobuf3 \ rubygem-toml-rb>=2.2.0<3:www/rubygem-toml-rb \ rubygem-flipper-gitlab>=0.28.0<0.29:devel/rubygem-flipper-gitlab \ |