summaryrefslogtreecommitdiffstats
path: root/third_party/jpeg-xl/lib/jxl/jxl.version
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/jpeg-xl/lib/jxl/jxl.version')
-rw-r--r--third_party/jpeg-xl/lib/jxl/jxl.version17
1 files changed, 17 insertions, 0 deletions
diff --git a/third_party/jpeg-xl/lib/jxl/jxl.version b/third_party/jpeg-xl/lib/jxl/jxl.version
new file mode 100644
index 0000000000..26b0e9e54d
--- /dev/null
+++ b/third_party/jpeg-xl/lib/jxl/jxl.version
@@ -0,0 +1,17 @@
+JXL_0 {
+ global:
+ Jxl*;
+
+ local:
+ # Hide all the std namespace symbols. std namespace is explicitly marked
+ # as visibility(default) and header-only functions or methods (such as those
+ # from templates) should be exposed in shared libraries as weak symbols but
+ # this is only needed when we expose those types in the shared library API
+ # in any way. We don't use C++ std types in the API and we also don't
+ # support exceptions in the library.
+ # See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36022 for a discussion
+ # about this.
+ extern "C++" {
+ *std::*;
+ };
+};