From 6a1084af628eeb3bdde767ea0347625d118ae3ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20K=C3=A4chele?= Date: Tue, 18 Nov 2025 23:33:38 +0100 Subject: [PATCH] Compile with -fvisibility=hidden flag --- ext/herb/extconf.rb | 3 ++- ext/herb/extension.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ext/herb/extconf.rb b/ext/herb/extconf.rb index cb215e568..ac15be929 100644 --- a/ext/herb/extconf.rb +++ b/ext/herb/extconf.rb @@ -24,7 +24,8 @@ $INCFLAGS << " -I#{prism_src_path}" $INCFLAGS << " -I#{prism_src_path}/util" -$CFLAGS << " -DPRISM_EXPORT_SYMBOLS=static " +$CFLAGS << " -DPRISM_EXPORT_SYMBOLS=static" +$CFLAGS << " -fvisibility=hidden" herb_src_files = Dir.glob("#{$srcdir}/../../src/**/*.c").map { |file| file.delete_prefix("../../../../ext/herb/") }.sort diff --git a/ext/herb/extension.c b/ext/herb/extension.c index ea0ca7e63..dee8fec23 100644 --- a/ext/herb/extension.c +++ b/ext/herb/extension.c @@ -124,7 +124,7 @@ static VALUE Herb_version(VALUE self) { return rb_funcall(rb_mKernel, rb_intern("sprintf"), 4, format_string, gem_version, libprism_version, libherb_version); } -void Init_herb(void) { +__attribute__((visibility("default"))) void Init_herb(void) { mHerb = rb_define_module("Herb"); cPosition = rb_define_class_under(mHerb, "Position", rb_cObject); cLocation = rb_define_class_under(mHerb, "Location", rb_cObject);