fix up gfarris's mistaken commit to gnome-common (revert to yesterday's versions)
[platform/upstream/gnome-common.git] / macros / gnome-vfs.m4
1 dnl GNOME_VFS_CHECKS
2 dnl   Check for various functions needed by libvfs.
3 dnl   This has various effects:
4 dnl     Sets GNOME_VFS_LIBS to libraries required
5 dnl     Sets termnet  to true or false depending on whether it is required.
6 dnl        If yes, defines USE_TERMNET.
7 dnl     Sets vfs_flags to "pretty" list of vfs implementations we include.
8 dnl     Sets shell variable use_vfs to yes (default, --with-vfs) or
9 dnl        "no" (--without-vfs).
10 dnl     Calls AC_SUBST(mcserv), which is either empty or "mcserv".
11
12 dnl Private define
13 AC_DEFUN([GNOME_WITH_VFS],[
14   dnl FIXME: network checks should probably be in their own macro.
15   AC_CHECK_LIB(nsl, t_accept)
16   AC_CHECK_LIB(socket, socket)
17
18   have_socket=no
19   AC_CHECK_FUNCS(socket, have_socket=yes)
20   if test $have_socket = no; then
21     # socket is not in the default libraries.  See if it's in some other.
22     for lib in bsd socket inet; do
23       AC_CHECK_LIB($lib, socket, [
24           LIBS="$LIBS -l$lib"
25           have_socket=yes
26           AC_DEFINE(HAVE_SOCKET)
27           break])
28     done
29   fi
30
31   have_gethostbyname=no
32   AC_CHECK_FUNC(gethostbyname, have_gethostbyname=yes)
33   if test $have_gethostbyname = no; then
34     # gethostbyname is not in the default libraries.  See if it's in some other.
35     for lib in bsd socket inet; do
36       AC_CHECK_LIB($lib, gethostbyname, [LIBS="$LIBS -l$lib"; have_gethostbyname=yes; break])
37     done
38   fi
39
40   vfs_flags="tarfs"
41   use_net_code=false
42   if test $have_socket = yes; then
43       AC_STRUCT_LINGER
44       AC_CHECK_FUNCS(pmap_set, , [
45          AC_CHECK_LIB(rpc, pmap_set, [
46            LIBS="-lrpc $LIBS"
47           AC_DEFINE(HAVE_PMAP_SET)
48           ])])
49       AC_CHECK_FUNCS(pmap_getport pmap_getmaps rresvport)
50       dnl add for source routing support setsockopt
51       AC_CHECK_HEADERS(rpc/pmap_clnt.h, , , [
52 #include <sys/types.h>
53 #include <sys/socket.h>
54 #include <netinet/in.h>
55 #include <rpc/rpc.h>
56 #include <rpc/pmap_prot.h>
57                                             ])
58       vfs_flags="$vfs_flags, mcfs, ftpfs, fish"
59       use_net_code=true
60   fi
61
62   dnl
63   dnl Samba support
64   dnl
65   smbfs=""
66   SAMBAFILES=""
67   AC_ARG_WITH(samba,
68           [--with-samba             Support smb virtual file system],[
69           if test "x$withval" != "xno"; then
70                   AC_DEFINE(WITH_SMBFS)
71                   vfs_flags="$vfs_flags, smbfs"
72                   smbfs="smbfs.o"
73                   SAMBAFILES="\$(SAMBAFILES)"
74           fi
75   ])
76   AC_SUBST(smbfs)
77   AC_SUBST(SAMBAFILES)
78   
79   dnl
80   dnl The termnet support
81   dnl
82   termnet=false
83   AC_ARG_WITH(termnet,
84           [--with-termnet             If you want a termified net support],[
85           if test x$withval = xyes; then
86                   AC_DEFINE(USE_TERMNET)
87                   termnet=true          
88           fi
89   ])
90
91   TERMNET=""
92   AC_DEFINE(USE_VFS)
93   if $use_net_code; then
94      AC_DEFINE(USE_NETCODE)
95   fi
96   mcserv=
97   if test $have_socket = yes; then
98      mcserv="mcserv"
99      if $termnet; then
100         TERMNET="-ltermnet"
101      fi
102   fi
103
104   AC_SUBST(TERMNET)
105   AC_SUBST(mcserv)
106
107 dnl FIXME:
108 dnl GNOME_VFS_LIBS=
109
110 ])
111
112 AC_DEFUN([GNOME_VFS_CHECKS],[
113         use_vfs=yes
114         AC_ARG_WITH(vfs,
115                 [--with-vfs                Compile with the VFS code],
116                 use_vfs=$withval
117         )
118         case $use_vfs in
119                 yes)    GNOME_WITH_VFS;;
120                 no)     use_vfs=no;;
121                 *)      use_vfs=no;;
122                         dnl Should we issue a warning?
123         esac
124 ])
125
126