Hide ruby native extension symbols on FreeBSD (#10832)

They probably should be hidden on every ELF platform, but for now only do it on Darwin, Linux, and FreeBSD.

This prevents some load-time errors that have been seen in GitLab's gitaly server, and in a few other places.

Closes #10832

COPYBARA_INTEGRATE_REVIEW=https://github.com/protocolbuffers/protobuf/pull/10832 from dankm:hide-symbols 4cb59f2691
PiperOrigin-RevId: 490522474
pull/11052/head
dankm 2 years ago committed by Copybara-Service
parent d083ec5efc
commit 2a73e3bdfb
  1. 2
      ruby/ext/google/protobuf_c/extconf.rb

@ -6,7 +6,7 @@ ext_name = "google/protobuf_c"
dir_config(ext_name)
if RUBY_PLATFORM =~ /darwin/ || RUBY_PLATFORM =~ /linux/
if RUBY_PLATFORM =~ /darwin/ || RUBY_PLATFORM =~ /linux/ || RUBY_PLATFORM =~ /freebsd/
$CFLAGS += " -std=gnu99 -O3 -DNDEBUG -fvisibility=hidden -Wall -Wsign-compare -Wno-declaration-after-statement"
else
$CFLAGS += " -std=gnu99 -O3 -DNDEBUG"

Loading…
Cancel
Save