1dnl Check for optional server location protocol support (used by MacOS X)
2
3dnl $Id: srvloc.m4,v 1.10 2009-12-13 11:58:30 franklahm Exp $
4
5AC_DEFUN([NETATALK_SRVLOC], [
6
7	SLP_LIBS=""
8	SLP_CFLAGS=""
9	found_slp=no
10	srvlocdir=""
11
12	AC_ARG_ENABLE(srvloc,
13		[  --enable-srvloc[[=DIR]]   enable Server Location Protocol (SLP) support],
14		[srvloc=$enableval],
15		[srvloc=no]
16	)
17
18    dnl make sure atalk_libname is defined beforehand
19    [[ -n "$atalk_libname" ]] || AC_MSG_ERROR([internal error, atalk_libname undefined])
20
21	if test "x$srvloc" != "xno"; then
22
23		savedcppflags="$CPPFLAGS"
24		savedldflags="$LDFLAGS"
25		if test "x$srvloc" = "xyes" ; then
26			srvlocdir="/usr"
27		else
28			srvlocdir="$srvloc"
29		fi
30		CPPFLAGS="$CPPFLAGS -I$srvlocdir/include"
31		LDFLAGS="$LDFLAGS -L$srvlocdir/$atalk_libname"
32
33		AC_MSG_CHECKING([for slp.h])
34		AC_TRY_CPP([#include <slp.h>],
35			[
36				AC_MSG_RESULT([yes])
37				found_slp=yes
38			],
39			[
40				AC_MSG_RESULT([no])
41			]
42		)
43		
44		if test "x$found_slp" = "xyes"; then
45			AC_CHECK_LIB(slp, SLPOpen, [
46		    	   SLP_LIBS="-L$srvlocdir/$atalk_libname -lslp"
47		    	   SLP_CFLAGS="-I$srvlocdir/include"
48			],[ 
49		    	   AC_MSG_RESULT([no])
50			   found_slp=no
51			])
52		fi
53
54		CPPFLAGS="$savedcppflags"
55		LDFLAGS="$savedldflags"
56	fi
57	
58	netatalk_cv_srvloc=no
59	AC_MSG_CHECKING([whether to enable srvloc (SLP) support])
60	if test "x$found_slp" = "xyes"; then
61		AC_MSG_RESULT([yes])
62		AC_DEFINE(USE_SRVLOC, 1, [Define to enable SLP support])
63		netatalk_cv_srvloc=yes
64	else
65		AC_MSG_RESULT([no])
66		if test "x$srvloc" != "xno" -a "x$srvloc" != "xyes"; then
67			AC_MSG_ERROR([SLP installation not found])
68		fi
69	fi
70		
71
72
73	LIB_REMOVE_USR_LIB(SLP_LIBS)
74	CFLAGS_REMOVE_USR_INCLUDE(SLP_CFLAGS)
75	AC_SUBST(SLP_LIBS)
76	AC_SUBST(SLP_CFLAGS)
77])
78