Bug 1522

Summary: Update glibc (backward) compatibility of used versioned symbols
Product: [JogAmp] General Reporter: Sven Gothel <sgothel>
Component: buildsAssignee: Sven Gothel <sgothel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P4    
Version: 2.6.0   
Hardware: All   
OS: all   
Type: FEATURE SCM Refs:
gluegen 2e49db6801b69fa45b2510fd424fca83dd998dec gluegen 69d575cb838a40366495fd1aef413d48028aacc1
Workaround: ---

Description Sven Gothel 2025-07-21 14:10:10 CEST
As define in Bug 1512 comment 7, to reach GNU/Linux (backward) compatibility
we have to enforce certain versioned glibc symbol usage.

See https://jogamp.org/gluegen/doc/JogAmpPlatforms.html

No symbol version for:
- dladdr, dlclose, dlerror, dlopen and dlsym

Older symbol version for:
- memcpy
Comment 1 Sven Gothel 2025-07-21 14:12:07 CEST
commit 2e49db6801b69fa45b2510fd424fca83dd998dec

glibc-compat-symbols: Add GLIBC_COMPAT_SYMBOL for libdl (dladdr, dlclose, dlerror, dlopen and dlsym)
    
Build on Debian 12 hardlinked against GLIBC_2.34, e.g. `U dlsym@GLIBC_2.34`

+++

commit 69d575cb838a40366495fd1aef413d48028aacc1

glibc-compat-symbols: Add macro `GLIBC_NOVERSION_SYMBOL` for libdl (dladdr, dlclose, dlerror, dlopen and dlsym)
    
Enhance commit 2e49db6801b69fa45b2510fd424fca83dd998dec
- Add macro `GLIBC_NOVERSION_SYMBOL` for libdl (dladdr, dlclose, dlerror, dlopen and dlsym)
- `GLIBC_COMPAT_SYMBOL` shall set a no-version entry where no version was expected,
      hence act like `GLIBC_NOVERSION_SYMBOL`