Local changes: - In contrib/libpcap/pcap/bpf.h, do not include pcap/dlt.h. Our system net/dlt.h is pulled in from net/bpf.h. - sys/net/dlt.h: Incorporate changes from libpcap 1.10.3. - lib/libpcap/Makefile: Update for libpcap 1.10.3. Changelog: https://git.tcpdump.org/libpcap/blob/95691ebe7564afa3faa5c6ba0dbd17e351be455a:/CHANGES Reviewed by: emaste Obtained from: https://www.tcpdump.org/release/libpcap-1.10.3.tar.gz Sponsored by: The FreeBSD Foundation
159 lines
3.8 KiB
Bash
159 lines
3.8 KiB
Bash
#! /bin/sh
|
|
|
|
#
|
|
# Script to give the appropriate compiler flags and linker flags
|
|
# to use when building code that uses libpcap.
|
|
#
|
|
# These variables come from the configure script, so includedir and
|
|
# libdir may be defined in terms of prefix and exec_prefix, so the
|
|
# latter must be defined as well.
|
|
#
|
|
prefix="@prefix@"
|
|
exec_prefix="@exec_prefix@"
|
|
includedir="@includedir@"
|
|
libdir="@libdir@"
|
|
LIBS="@LIBS@"
|
|
LIBS_STATIC="@LIBS_STATIC@"
|
|
VERSION="@PACKAGE_VERSION@"
|
|
|
|
static=0
|
|
static_pcap_only=0
|
|
show_cflags=0
|
|
show_libs=0
|
|
show_additional_libs=0
|
|
while [ "$#" != 0 ]
|
|
do
|
|
case "$1" in
|
|
|
|
--static)
|
|
static=1
|
|
;;
|
|
|
|
--static-pcap-only)
|
|
static_pcap_only=1
|
|
;;
|
|
|
|
--cflags)
|
|
show_cflags=1
|
|
;;
|
|
|
|
--libs)
|
|
show_libs=1
|
|
;;
|
|
|
|
--additional-libs)
|
|
show_additional_libs=1
|
|
;;
|
|
|
|
-h|--help)
|
|
echo "Usage: pcap-config [ --help ] [--version] [ --static | --static-pcap-only ] [ --libs | --additional-libs ]"
|
|
exit 0
|
|
;;
|
|
|
|
--version)
|
|
echo "$VERSION"
|
|
exit 0
|
|
;;
|
|
|
|
*)
|
|
echo "pcap-config: Invalid command-line option $1 specified" 1>&2
|
|
echo "Usage: pcap-config [ --help ] [ --static | --static-pcap-only ] [ --libs | --additional-libs ]" 1>&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
#
|
|
# If we aren't installing in /usr, then provide a -L flag to let build
|
|
# processes find our library.
|
|
#
|
|
# (We must check $prefix, as $libdir isn't necessarily /usr/lib in this
|
|
# case - for example, Linux distributions for 64-bit platforms that
|
|
# also provide support for binaries for a 32-bit version of the
|
|
# platform may put the 64-bit libraries, the 32-bit libraries, or both
|
|
# in directories other than /usr/lib.)
|
|
#
|
|
if [ "$prefix" != "/usr" ]
|
|
then
|
|
LPATH=-L$libdir
|
|
fi
|
|
if [ "$static" = 1 ]
|
|
then
|
|
#
|
|
# Include LIBS_STATIC so that the flags include libraries
|
|
# containing routines that libpcap uses, and libraries
|
|
# containing routines those libraries use, etc., so that a
|
|
# completely statically linked program - i.e., linked only with
|
|
# static libraries - will be linked with all necessary
|
|
# libraries.
|
|
#
|
|
if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
|
|
then
|
|
echo "-I$includedir $LPATH -l@PACKAGE_NAME@ $LIBS_STATIC"
|
|
elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
|
|
then
|
|
echo "-I$includedir $LPATH $LIBS_STATIC"
|
|
elif [ "$show_cflags" = 1 ]
|
|
then
|
|
echo "-I$includedir"
|
|
elif [ "$show_libs" = 1 ]
|
|
then
|
|
echo "$LPATH -l@PACKAGE_NAME@ $LIBS_STATIC"
|
|
elif [ "$show_additional_libs" = 1 ]
|
|
then
|
|
echo "$LIBS_STATIC"
|
|
fi
|
|
elif [ "$static_pcap_only" = 1 ]
|
|
then
|
|
#
|
|
# Include LIBS so that the flags include libraries
|
|
# containing routines that libpcap uses, but not the libraries
|
|
# on which libpcap depends, so that an otherwise
|
|
# dynamically-linked program, linked statically only with
|
|
# libpcap - i.e., linked with a static libpcap and dynamic
|
|
# versions of other libraries - will be linked with all
|
|
# necessary libraries.
|
|
#
|
|
if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
|
|
then
|
|
echo "-I$includedir $LPATH -l@PACKAGE_NAME@ $LIBS"
|
|
elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
|
|
then
|
|
echo "-I$includedir $LPATH $LIBS"
|
|
elif [ "$show_cflags" = 1 ]
|
|
then
|
|
echo "-I$includedir"
|
|
elif [ "$show_libs" = 1 ]
|
|
then
|
|
echo "$LPATH -l@PACKAGE_NAME@ $LIBS"
|
|
elif [ "$show_additional_libs" = 1 ]
|
|
then
|
|
echo "$LIBS"
|
|
fi
|
|
else
|
|
#
|
|
# Don't included LIBS or LIBS_STATIC, for building a program
|
|
# with a dynamic libpcap; libpcap, being a dynamic library, will
|
|
# cause all of its dynamic-library dependencies to be pulled in
|
|
# at run time.
|
|
#
|
|
# Do, however, include RPATH, to make sure that, on platforms
|
|
# that require this, programs built with this version of
|
|
# libpcap can find it at run time.
|
|
#
|
|
if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
|
|
then
|
|
echo "-I$includedir $LPATH @RPATH@ -l@PACKAGE_NAME@"
|
|
elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
|
|
then
|
|
echo "-I$includedir"
|
|
elif [ "$show_cflags" = 1 ]
|
|
then
|
|
echo "-I$includedir"
|
|
elif [ "$show_libs" = 1 ]
|
|
then
|
|
echo "$LPATH @RPATH@ -l@PACKAGE_NAME@"
|
|
fi
|
|
fi
|