config: Make sure profile.sh succeeds with set -e and set -o pipefail

profile.sh might fail with set -o pipefail because:

cat /dev/null "${prefix}/etc/debuginfod"/*.urls 2>/dev/null | tr '\n' ' '

might fail when there isn't an *.urls file the first command in the
pipe fails (the 2>/dev/null is there to hide that failure).

This can be fixed by adding || : at the end.

This works because : always succeeds and  produces no outpur which is
what the script expects when the command would fail.

Also add a new testcase that runs profile.sh with bout  set -e
and set -o pipefail.

	* config/profile.sh.in: Add || : at end of pipe.
	* tests/run-debuginfod-client-profile.sh: New test.
	* tests/Makefile.am (TESTS): Add run-debuginfod-client-profile.sh.
	(EXTRA_DIST): Likewise.

https://sourceware.org/bugzilla/show_bug.cgi?id=31562

Signed-off-by: Mark Wielaard <mark@klomp.org>
3 files changed