Package: libc6
Version: 2.30-2
Severity: wishlist

Hi,

would it be possible to make the libc6 preinst maintainer script
compatible with busybox? Currently the preinst script calls "readlink
-m" which is not supported by busybox. Hence the following error will be
thrown:

    BusyBox v1.30.1 (Debian 1:1.30.1-4) multi-call binary.
    
    Usage: readlink [-fnv] FILE
    
    Display the value of a symlink
    
        -f      Canonicalize by following all symlinks
        -n      Don't add newline
        -v      Verbose

I tried to prepare a patch for the preinst script but ran into a FTBFS:

x86_64-linux-gnu-gcc-9   -shared -static-libgcc -Wl,-O1  -Wl,-z,defs 
-Wl,-dynamic-linker=/lib64/ld-linux-x86-64.so.2  
-B/<<PKGBUILDDIR>>/build-tree/amd64-libc/csu/  
-Wl,--version-script=/<<PKGBUILDDIR>>/build-tree/amd64-libc/libnss_files.map 
-Wl,-soname=libnss_files.so.2 -Wl,-z,combreloc -Wl,-z,relro 
-Wl,--hash-style=both   -L/<<PKGBUILDDIR>>/build-tree/amd64-libc 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/math 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/elf 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/dlfcn 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/nss 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/nis 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/rt 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/resolv 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/mathvec 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/support 
-L/<<PKGBUILDDIR>>/build-tree/amd64-libc/nptl 
-Wl,-rpath-link=/<<PKGBUILDDIR>>/build-tree/amd64-libc:/<<PKGBUILDDIR>>/build-tree/amd64-libc/math:/<<PKGBUILDDIR>>/build-tree/amd64-libc/elf:/<<PKGBUILDDIR>>/build-tree/amd64-libc/dlfcn:/<<PKGBUILDDIR>>/build-tree/amd64-libc/nss:/<<PKGBUILDDIR>>/build-tree/amd64-libc/nis:/<<PKGBUILDDIR>>/build-tree/amd64-libc/rt:/<<PKGBUILDDIR>>/build-tree/amd64-libc/resolv:/<<PKGBUILDDIR>>/build-tree/amd64-libc/mathvec:/<<PKGBUILDDIR>>/build-tree/amd64-libc/support:/<<PKGBUILDDIR>>/build-tree/amd64-libc/nptl
 -o /<<PKGBUILDDIR>>/build-tree/amd64-libc/nss/libnss_files.so  
/<<PKGBUILDDIR>>/build-tree/amd64-libc/csu/abi-note.o -Wl,--whole-archive 
/<<PKGBUILDDIR>>/build-tree/amd64-libc/nss/libnss_files_pic.a 
-Wl,--no-whole-archive   -Wl,--start-group 
/<<PKGBUILDDIR>>/build-tree/amd64-libc/linkobj/libc.so 
/<<PKGBUILDDIR>>/build-tree/amd64-libc/libc_nonshared.a -Wl,--as-needed 
/<<PKGBUILDDIR>>/build-tree/amd64-libc/elf/ld.so -Wl,--no-as-needed 
-Wl,--end-group
/usr/bin/ld: 
/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libselinux.so: 
undefined reference to `gettid@GLIBC_2.30'
collect2: error: ld returned 1 exit status

Thus, I'm now reporting this wishlist bug here before further working on
a fix.

Would you be willing to accept a change that makes the preinst script of
libc6 compatible with readlink from busybox?

Thanks!

cheers, josch


-- System Information:
Debian Release: bullseye/sid
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'unstable-debug'), (500, 
'stable-updates'), (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, armhf

Kernel: Linux 4.19.0-8-amd64 (SMP w/4 CPU cores)
Kernel taint flags: TAINT_WARN
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), LANGUAGE=en_US:en 
(charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Reply via email to