#! /bin/sh
# $Id: ins_hdr,v 12.3 2020/12/08 01:01:32 tom Exp $
#
# This script is used to adjust includes for header files that reside in a
# subdirectory of /usr/include, etc.

failed() {
	echo "? $*" >&2
	exit 1
}

test $# = 0 && failed 'No INSTALL program given'
PRG="$1"
shift

test $# = 0 && failed 'No DESTINATION given'
DST=$1
shift

test $# = 0 && failed 'No SOURCEDIR given'
SOURCEDIR=$1
shift

test $# = 0 && failed 'No SOURCES given'

SED=${TMPDIR-/tmp}/sed$$
rm -f "$SED"
trap 'rm -f "$SED"' EXIT INT QUIT TERM HUP

END=`basename "$DST"`
for SRC in "$@"
do
	echo "s/<$SRC>/<$END\/$SRC>/" >> "$SED"
done

for SRC in "$@"
do
	echo "installing $SRC in $DST"
	case $DST in
	/*/include/*)
		src=`basename "$SRC"`
		TMP=${TMPDIR-/tmp}/$src
		src="include/$src"
		test -f "$src" || src="$SOURCEDIR/$src"
		sed -f "$SED" "$src" > "$TMP"
		eval "$PRG" "$TMP" "$DST"
		rm -f "$TMP"
		;;
	*)
		eval "$PRG" "$SRC" "$DST"
		;;
	esac
done
