diff options
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.rb | 60 |
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' |