Hi,

On 2020-03-20 22:57, Johannes 'josch' Schauer wrote:
> 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

Strange. How did you try to build it?

> 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?

On the principle yes, but it means we need to have an equivalent to
readlink -m. Do you have a way for doing that in busybox?

Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurel...@aurel32.net                 http://www.aurel32.net

Reply via email to