If $CC has --sysroot=/, it is a valid configuration however libtool will then set lt_sysroot to "/".
This means references like $lt_sysroot$libdir become //usr/lib instead of the more normally expected /usr/lib. This may or may not break something but certainly is confusing to the user and gives confusing output. Making "/" simply unset lt_sysroot is much cleaner. Whilst here, trim any trailing '/' from sysroot paths to drop the duplication and result in cleaner/consistent output. * m4/libtool.m4: Cleanup sysroot trailing '/' handling --- m4/libtool.m4 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/m4/libtool.m4 b/m4/libtool.m4 index ed572bb3..f2532f0e 100644 --- a/m4/libtool.m4 +++ b/m4/libtool.m4 @@ -1255,7 +1255,9 @@ lt_sysroot= case $with_sysroot in #( yes) if test yes = "$GCC"; then - lt_sysroot=`$CC --print-sysroot 2>/dev/null` + # Trim trailing / since we'll always append absolute paths and we want + # to avoid //, if only for less confusing output for the user. + lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'` fi ;; #( /*) -- 2.39.2