asterisk/build_tools/mkpkgconfig

52 lines
1.3 KiB
Bash
Executable File

#!/bin/sh
PPATH="$1"
GREP=${GREP:-grep}
## Make sure we were called from Makefile
if [ "x$ASTERISKVERSIONNUM" = "x" ]; then
echo " ** Do not call this script directly"
exit
fi
## Create a pkgconfig spec file for 3rd party modules (pkg-config asterisk --cflags)
if [ ! -d "$PPATH" ]; then
exit
fi
#Solaris (and some others) don't have sed -r. perl -p is equivalent
if [ `echo "xxx" | sed -r 's/x/y/g' 2>/dev/null | ${GREP} -c "yyy"` != 0 ]; then
EXTREGEX="sed -r -e"
else
EXTREGEX="perl -pe"
fi
## Clean out CFLAGS for the spec file.
LOCAL_CFLAGS=`echo $CFLAGS | ${EXTREGEX} 's/-pipe\s*//g' | ${EXTREGEX} 's/-[Wmp]\S*\s*//g' | \
${EXTREGEX} 's/\s+-I(include|\.\.\/include)\s+/ /g' | \
${EXTREGEX} 's/-DINSTALL_PREFIX=\S* //g' | \
${EXTREGEX} 's/-DASTERISK_VERSION=\S* //g' | \
${EXTREGEX} 's/-DAST(ETCDIR|LIBDIR|VARLIBDIR|VARRUNDIR|SPOOLDIR|LOGDIR|CONFPATH|MODDIR|AGIDIR)=\S* //g' | \
${EXTREGEX} 's/^\s|\s$//g'`
cat <<EOF > "$PPATH/asterisk.pc"
install_prefix=$INSTALL_PREFIX
version_number=$ASTERISKVERSIONNUM
cachedir=$ASTCACHEDIR
etcdir=$ASTETCDIR
libdir=$ASTLIBDIR
varlibdir=$ASTVARLIBDIR
varrundir=$ASTVARRUNDIR
spooldir=$ASTSPOOLDIR
logdir=$ASTLOGDIR
confpath=$ASTCONFPATH
moddir=$ASTMODDIR
agidir=$AGI_DIR
Name: asterisk
Description: Open Source PBX and telephony toolkit
Version: $ASTERISKVERSION
Libs: $LIBS
Cflags: $LOCAL_CFLAGS
EOF