1*d56f51eaSDavid van Moolenbroek#! /bin/sh 2*d56f51eaSDavid van Moolenbroek 3*d56f51eaSDavid van Moolenbroek# 4*d56f51eaSDavid van Moolenbroek# Script to give the appropriate compiler flags and linker flags 5*d56f51eaSDavid van Moolenbroek# to use when building code that uses libpcap. 6*d56f51eaSDavid van Moolenbroek# 7*d56f51eaSDavid van Moolenbroekprefix="@prefix@" 8*d56f51eaSDavid van Moolenbroekexec_prefix="@exec_prefix@" 9*d56f51eaSDavid van Moolenbroekincludedir="@includedir@" 10*d56f51eaSDavid van Moolenbroeklibdir="@libdir@" 11*d56f51eaSDavid van MoolenbroekV_RPATH_OPT="@V_RPATH_OPT@" 12*d56f51eaSDavid van MoolenbroekLIBS="@LIBS@" 13*d56f51eaSDavid van Moolenbroek 14*d56f51eaSDavid van Moolenbroekstatic=0 15*d56f51eaSDavid van Moolenbroekshow_cflags=0 16*d56f51eaSDavid van Moolenbroekshow_libs=0 17*d56f51eaSDavid van Moolenbroekwhile [ "$#" != 0 ] 18*d56f51eaSDavid van Moolenbroekdo 19*d56f51eaSDavid van Moolenbroek case "$1" in 20*d56f51eaSDavid van Moolenbroek 21*d56f51eaSDavid van Moolenbroek --static) 22*d56f51eaSDavid van Moolenbroek static=1 23*d56f51eaSDavid van Moolenbroek ;; 24*d56f51eaSDavid van Moolenbroek 25*d56f51eaSDavid van Moolenbroek --cflags) 26*d56f51eaSDavid van Moolenbroek show_cflags=1 27*d56f51eaSDavid van Moolenbroek ;; 28*d56f51eaSDavid van Moolenbroek 29*d56f51eaSDavid van Moolenbroek --libs) 30*d56f51eaSDavid van Moolenbroek show_libs=1 31*d56f51eaSDavid van Moolenbroek ;; 32*d56f51eaSDavid van Moolenbroek 33*d56f51eaSDavid van Moolenbroek --additional-libs) 34*d56f51eaSDavid van Moolenbroek show_additional_libs=1 35*d56f51eaSDavid van Moolenbroek ;; 36*d56f51eaSDavid van Moolenbroek esac 37*d56f51eaSDavid van Moolenbroek shift 38*d56f51eaSDavid van Moolenbroekdone 39*d56f51eaSDavid van Moolenbroekif [ "$V_RPATH_OPT" != "" ] 40*d56f51eaSDavid van Moolenbroekthen 41*d56f51eaSDavid van Moolenbroek # 42*d56f51eaSDavid van Moolenbroek # If libdir isn't /usr/lib, add it to the run-time linker path. 43*d56f51eaSDavid van Moolenbroek # 44*d56f51eaSDavid van Moolenbroek if [ "$libdir" != "/usr/lib" ] 45*d56f51eaSDavid van Moolenbroek then 46*d56f51eaSDavid van Moolenbroek RPATH=$V_RPATH_OPT$libdir 47*d56f51eaSDavid van Moolenbroek fi 48*d56f51eaSDavid van Moolenbroekfi 49*d56f51eaSDavid van Moolenbroekif [ "@includedir@" != "/usr/include" ] 50*d56f51eaSDavid van Moolenbroekthen 51*d56f51eaSDavid van Moolenbroek i="-I@includedir@" 52*d56f51eaSDavid van Moolenbroekfi 53*d56f51eaSDavid van Moolenbroekif [ "@libdir@" != "/usr/lib" ] 54*d56f51eaSDavid van Moolenbroekthen 55*d56f51eaSDavid van Moolenbroek l="-L@libdir@" 56*d56f51eaSDavid van Moolenbroekfi 57*d56f51eaSDavid van Moolenbroekif [ -n "@LIBS@" ] 58*d56f51eaSDavid van Moolenbroekthen 59*d56f51eaSDavid van Moolenbroek L="@LIBS@" 60*d56f51eaSDavid van Moolenbroekfi 61*d56f51eaSDavid van Moolenbroek 62*d56f51eaSDavid van Moolenbroekif [ "$static" = 1 ] 63*d56f51eaSDavid van Moolenbroekthen 64*d56f51eaSDavid van Moolenbroek # 65*d56f51eaSDavid van Moolenbroek # Include LIBS so that the flags include libraries containing 66*d56f51eaSDavid van Moolenbroek # routines that libpcap uses. 67*d56f51eaSDavid van Moolenbroek # 68*d56f51eaSDavid van Moolenbroek if [ "$show_cflags" = 1 -a "$show_libs" = 1 ] 69*d56f51eaSDavid van Moolenbroek then 70*d56f51eaSDavid van Moolenbroek echo "-I$includedir -L$libdir -lpcap $LIBS" 71*d56f51eaSDavid van Moolenbroek elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ] 72*d56f51eaSDavid van Moolenbroek then 73*d56f51eaSDavid van Moolenbroek echo "-I$includedir -L$libdir $LIBS" 74*d56f51eaSDavid van Moolenbroek elif [ "$show_cflags" = 1 ] 75*d56f51eaSDavid van Moolenbroek then 76*d56f51eaSDavid van Moolenbroek echo "-I$includedir" 77*d56f51eaSDavid van Moolenbroek elif [ "$show_libs" = 1 ] 78*d56f51eaSDavid van Moolenbroek then 79*d56f51eaSDavid van Moolenbroek echo "-L$libdir -lpcap $LIBS" 80*d56f51eaSDavid van Moolenbroek elif [ "$show_additional_libs" = 1 ] 81*d56f51eaSDavid van Moolenbroek then 82*d56f51eaSDavid van Moolenbroek echo "$LIBS" 83*d56f51eaSDavid van Moolenbroek fi 84*d56f51eaSDavid van Moolenbroekelse 85*d56f51eaSDavid van Moolenbroek # 86*d56f51eaSDavid van Moolenbroek # Omit LIBS - libpcap is assumed to be linked with those 87*d56f51eaSDavid van Moolenbroek # libraries, so there's no need to do so explicitly. 88*d56f51eaSDavid van Moolenbroek # 89*d56f51eaSDavid van Moolenbroek if [ "$show_cflags" = 1 -a "$show_libs" = 1 ] 90*d56f51eaSDavid van Moolenbroek then 91*d56f51eaSDavid van Moolenbroek echo "-I$includedir -L$libdir $RPATH -lpcap" 92*d56f51eaSDavid van Moolenbroek elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ] 93*d56f51eaSDavid van Moolenbroek then 94*d56f51eaSDavid van Moolenbroek echo "-I$includedir" 95*d56f51eaSDavid van Moolenbroek elif [ "$show_cflags" = 1 ] 96*d56f51eaSDavid van Moolenbroek then 97*d56f51eaSDavid van Moolenbroek echo "-I$includedir" 98*d56f51eaSDavid van Moolenbroek elif [ "$show_libs" = 1 ] 99*d56f51eaSDavid van Moolenbroek then 100*d56f51eaSDavid van Moolenbroek echo "-L$libdir $RPATH -lpcap" 101*d56f51eaSDavid van Moolenbroek fi 102*d56f51eaSDavid van Moolenbroekfi 103