7d233e2
#!/bin/bash
7d233e2
7d233e2
# If using normal root, avoid changing anything.
7d233e2
if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
7d233e2
        exit 0
7d233e2
fi
7d233e2
7d233e2
tempdir=`mktemp -d /tmp/implant-ident-XXXXXX`
7d233e2
if test -z "$tempdir" ; then
7d233e2
	exit 1
7d233e2
fi
7d233e2
7d233e2
cleanup() {
7d233e2
	rm -f $tempdir/*
7d233e2
	rmdir $tempdir
7d233e2
}
7d233e2
trap cleanup 0 1 2 3 4 5 6 7 8 9 11 13 14 15
7d233e2
7d233e2
for library in `find $RPM_BUILD_ROOT -type f -exec file \{\} \; | grep 'current ar archive' | sed 's,:.*,,g' ` ; do
7d233e2
	pushd $tempdir > /dev/null
7d233e2
	if test -n "$RPM_BUILD_ROOT" ; then
7d233e2
		cleanedlibrary=`echo "$library" | sed s,"$RPM_BUILD_ROOT",,g`
7d233e2
	else
7d233e2
		cleanedlibrary="$library"
7d233e2
	fi
7d233e2
	ar x "$library"
7d233e2
	for object in *.o ; do
7d233e2
		echo '$RPM: '${RPM_PACKAGE_NAME:-UNKNOWN_NAME}-${RPM_PACKAGE_VERSION:-UNKNOWN_VERSION}-${RPM_PACKAGE_RELEASE:-UNKNOWN_RELEASE}:"$cleanedlibrary":"$object"' $' > __x_rpm_ident_string.txt
7d233e2
		objcopy --add-section .rodata=__x_rpm_ident_string.txt "$object"
7d233e2
		ar r "$library" "$object"
7d233e2
	done
7d233e2
	rm -f *.o
7d233e2
	popd > /dev/null
7d233e2
done