summaryrefslogtreecommitdiffstats
path: root/toolchain/dependencies/check-host-sed.sh
blob: 188b7210b71029cc1294c4e44488ee2a50b468fa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/bin/sh

SEDLIST="/usr/bin/sed /bin/sed sed gnused gsed"

for SED in $SEDLIST
do
	if ! test -x $SED ; then
		SED=$(which $SED 2> /dev/null)
		if ! test -x "$SED" > /dev/null ; then
			SED=""
			continue
		fi
	fi

	echo "HELLO" > .sedtest
	$SED -i -e "s/HELLO/GOODBYE/" .sedtest >/dev/null 2>&1
	RESULT=$(cat .sedtest)

	if test $? != 0 ; then
		SED=""
	elif test -e ".sedtest-e" ; then
		rm -f ".sedtest-e"
		SED=""
	elif [ "x$RESULT" = "x" ] || [ "$RESULT" != "GOODBYE" ] > /dev/null ;
	then
		SED=""
	fi

	rm -f .sedtest
	if [ ! -z "$SED" ] ; then
		break
	fi
done
echo $SED