subversion/subversion-1.14.2-modsyms.patch
2023-11-20 09:43:44 +00:00

25 lines
833 B
Diff

Don't expose private symbols for the Apache modules DSO.
--- subversion-1.14.2/build/generator/gen_base.py.modsyms
+++ subversion-1.14.2/build/generator/gen_base.py
@@ -727,13 +727,17 @@
def __init__(self, name, options, gen_obj):
TargetLib.__init__(self, name, options, gen_obj)
+ if name[:4] != "mod_":
+ raise Exception("Apache module targets must be named mod_*")
+
tfile = name + self.gen_obj._extension_map['lib', 'target']
self.filename = build_path_join(self.path, tfile)
+ modsyms = name[4:] + '_[^_].*'
# we have a custom linking rule
### hmm. this is Makefile-specific
self.compile_cmd = '$(COMPILE_APACHE_MOD)'
- self.link_cmd = '$(LINK_APACHE_MOD)'
+ self.link_cmd = '$(LINK_APACHE_MOD) -export-symbols-regex ' + modsyms
class TargetSharedOnlyLib(TargetLib):