From: Bruno Haible Date: Sun, 1 Mar 2020 02:03:59 +0000 (+0100) Subject: tests: enable 4 more tests to be executed on FreeBSD X-Git-Tag: v8.32~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e840c7868554e01afeac5a8c5ad249524d1f08b2;p=thirdparty%2Fcoreutils.git tests: enable 4 more tests to be executed on FreeBSD * init.cfg (gcc_shared_libs_): New variable. (gcc_shared_): Use it, instead of hardcoding -ldl. (require_gcc_shared_): Determine the suitable value for gcc_shared_libs_. --- diff --git a/init.cfg b/init.cfg index f7a3fab3a4..2009e294e7 100644 --- a/init.cfg +++ b/init.cfg @@ -576,6 +576,9 @@ require_sparse_support_() fi } +# Libraries needed when we compile a shared library. +gcc_shared_libs_= + # Compile a shared lib using the GCC options for doing so. # Pass input and output file as parameters respectively. # Any other optional parmeters are passed to $CC. @@ -585,7 +588,7 @@ gcc_shared_() local out=$2 shift 2 || return 1 - $CC -Wall -shared --std=gnu99 -fPIC -O2 $* "$in" -o "$out" -ldl + $CC -Wall -shared --std=gnu99 -fPIC -O2 $* "$in" -o "$out" $gcc_shared_libs_ } # There are a myriad of ways to build shared libs, @@ -593,8 +596,18 @@ gcc_shared_() # on platforms that support building them as follows. require_gcc_shared_() { - gcc_shared_ '-' 'd.so' -xc < /dev/null 2>&1 \ - || skip_ '$CC -shared ... failed to build a shared lib' + # Try two different values for gcc_shared_libs_. + gcc_shared_libs_='-ldl' + if gcc_shared_ '-' 'd.so' -xc < /dev/null 2>&1; then + : + else + gcc_shared_libs_= + if gcc_shared_ '-' 'd.so' -xc < /dev/null 2>&1; then + : + else + skip_ '$CC -shared ... failed to build a shared lib' + fi + fi rm -f d.so }