aboutsummaryrefslogtreecommitdiff
path: root/net/rubygem-grpc-gitlab/files/patch-src_ruby_ext_grpc_extconf.rb
diff options
context:
space:
mode:
Diffstat (limited to 'net/rubygem-grpc-gitlab/files/patch-src_ruby_ext_grpc_extconf.rb')
-rw-r--r--net/rubygem-grpc-gitlab/files/patch-src_ruby_ext_grpc_extconf.rb60
1 files changed, 60 insertions, 0 deletions
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'