[gnutls-devel] GnuTLS | gnutls 3.7.5 libgnutls-symbols.expsym not in: lib/.libs/libgnutls.30.dylib (#1370)

Read-only notification of GnuTLS library development activities gnutls-devel at lists.gnutls.org
Wed Jun 1 15:45:18 CEST 2022

Clemens Lang commented:

Found it. The problem is that in [lib/accelerated/x86/x86-common.c](/gnutls/gnutls/-/blob/master/lib/accelerated/x86/x86-common.c#L51-56), `_gnutls_x86_cpuid_s` is declared with `__attribute__((visibility("hidden")))` if `__GNUC__` is defined (which clang does afaik).

Combine that with [lib/Makefile.am](https://gitlab.com/gnutls/gnutls/-/blob/master/lib/Makefile.am#L219-223), which exports all symbols matching `^(gnutls|_gnutls).*` if `HAVE_LD_VERSION_SCRIPT` is false (which it is on macOS), this attempts to export a hidden symbol, which fails.

I see two options:
- Don't make `_gnutls_x86_cpuid_s` hidden unless `HAVE_LD_VERSION_SCRIPT` is defined, or
- Rename `_gnutls_x86_cpuid_s` to not match the export regex.

Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/gnutls/-/issues/1370#note_967832583
You're receiving this email because of your account on gitlab.com.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gnupg.org/pipermail/gnutls-devel/attachments/20220601/4a031920/attachment-0001.html>

More information about the Gnutls-devel mailing list