pkgsrc-ng/mk/scripts/shlib-type
2013-09-26 17:14:40 +02:00

47 lines
886 B
Plaintext
Executable File

# /bin/sh
#
# $NetBSD: shlib-type,v 1.3 2007/08/02 16:00:33 jlam Exp $
#
# This code is derived from software contributed to The NetBSD Foundation
# by Alistair Crooks.
#
# This script returns the the library format for the platform. If
# the library format is "ELF/a.out", then we inspect the specified
# path to determine the correct object format (either ELF or a.out).
#
if [ -z "${FILE_CMD}" ]; then
FILE_CMD=file
fi
if [ $# -lt 2 ]; then
echo 1>&2 "usage: shlib-type libformat binpath"
exit 1
fi
libformat="$1"
binpath="$2"
sotype=none
case "$1" in
ELF/a.out)
if [ -f "$binpath" ]; then
output=`${FILE_CMD} $binpath 2>/dev/null`
else
output=
fi
case "$output" in
*ELF*dynamically*) sotype="ELF" ;;
*shared*library*) sotype="a.out" ;;
*dynamically*) sotype="a.out" ;;
*) sotype="ELF" ;; # guess "ELF"
esac
;;
*)
sotype="$1"
;;
esac
echo $sotype
exit 0