ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/configure.in
Revision: 1.57
Committed: Sat Feb 14 16:58:18 2004 UTC (20 years, 2 months ago) by ats
Branch: MAIN
Changes since 1.56: +4 -4 lines
Log Message:
Rework iface_stat code for Solaris so that it uses SIOCGIFFLAGS to find out
whether an interface is up or not. This means that we need to link with
-lsocket -lnsl now to get socket().

Also make the comment about when bytes-transferred stats a bit more explicit.
We're now in the slightly odd situation where it's possible for an interface to
show up in either or both of get_network_stats and get_network_iface_stats: for
instance, on raptor at the moment, ce0 is in use so shows up in both, lo0
doesn't have kstats for bytes transferred and thus only shows up in the second,
and ce1 exists but hasn't been plumbed so only shows up in the first. I'd be
mildly inclined to "fix" this by making get_network_stats do a SIOCGIFFLAGS
ioctl so unplumbed interfaces don't show up at all (and add packets
received/transmited to the get_network_stats result so we can at least show
something for lo0).

File Contents

# Content
1 # -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3 #
4 # configure.in for libstatgrab
5 # $Id: configure.in,v 1.56 2004/02/14 12:20:02 tdb Exp $
6 #
7
8 # Change these to change the package name and version
9 AC_INIT(libstatgrab, 0.9, bugs@i-scream.org)
10 AM_INIT_AUTOMAKE(libstatgrab, 0.9)
11
12 # Revision number (automatically updated)
13 AC_REVISION($Revision: 1.56 $)
14
15 # Might work with older autoconfs... but tested on 2.57
16 AC_PREREQ(2.57)
17
18 # The file we use to pass #define's to the source
19 AM_CONFIG_HEADER([config.h])
20
21 # Checks for programs
22 AC_PROG_CC
23 AC_PROG_INSTALL
24 AC_PROG_LIBTOOL
25
26 # Checks for header files
27 AC_HEADER_STDC
28
29 # Checks for typedefs, structures, and compiler characteristics
30 AC_C_CONST
31
32 # Checks for library functions
33 AC_FUNC_MALLOC
34 AC_FUNC_REALLOC
35 AC_CHECK_FUNCS(atoll)
36
37 # Disk IO read and write statistics are only present on recent NetBSD.
38 AC_CHECK_MEMBER(struct disk_sysctl.dk_rbytes,
39 [AC_DEFINE(HAVE_DK_RBYTES, , [New-style NetBSD stats])],
40 [],
41 [#include <sys/disk.h>])
42
43 # Check for sys/loadavg.h
44 AC_CHECK_HEADERS([sys/loadavg.h])
45
46 # Check for libdevinfo.h
47 AC_CHECK_HEADERS([libdevinfo.h])
48
49 # Default needing setgid/setuid to false
50 AM_CONDITIONAL(SETGIDBINS, false)
51 AM_CONDITIONAL(SETUIDBINS, false)
52
53 # Set things up for different OS's
54 # We define the name of the OS so the code can act accordingly
55 # We also need to add the right LDFLAGS
56 case $host_os in
57 solaris2.[[6-7]])
58 AC_CHECK_HEADERS([kstat.h],,[AC_MSG_ERROR([need kstat.h])])
59 AC_DEFINE(SOLARIS, , [Building on Solaris 2.x])
60 AC_DEFINE(SOL7, , [Building on Solaris 2.6 or 2.7])
61 AM_CONDITIONAL(SETUIDBINS, true)
62 LINKFLAGS="-lkstat -lsocket -lnsl"
63 AC_CHECK_LIB(devinfo, di_init, [LINKFLAGS="$LINKFLAGS -ldevinfo"])
64 ;;
65 solaris2.*)
66 AC_CHECK_HEADERS([kstat.h],,[AC_MSG_ERROR([need kstat.h])])
67 AC_DEFINE(SOLARIS, , [Building on Solaris 2.x])
68 AM_CONDITIONAL(SETUIDBINS, true)
69 LINKFLAGS="-lkstat -ldevinfo -lsocket -lnsl"
70 ;;
71 freebsd4.*)
72 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
73 AC_DEFINE(FREEBSD, , [Building on FreeBSD])
74 AM_CONDITIONAL(SETGIDBINS, true)
75 LINKFLAGS="-lkvm -ldevstat"
76 ;;
77 freebsd5.*)
78 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
79 AC_DEFINE(FREEBSD, , [Building on FreeBSD])
80 AC_DEFINE(FREEBSD5, , [Building on FreeBSD 5.x])
81 AM_CONDITIONAL(SETGIDBINS, true)
82 LINKFLAGS="-lkvm -ldevstat"
83 ;;
84 netbsdelf*)
85 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
86 AC_DEFINE(NETBSD, , [Building on NetBSD])
87 ;;
88 openbsd*)
89 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
90 AC_DEFINE(OPENBSD, , [Building on OpenBSD])
91 ;;
92 linux-gnu)
93 AC_DEFINE(LINUX, , [Building on GNU/Linux])
94 ;;
95 cygwin)
96 AC_DEFINE(CYGWIN, , [Building on Cygwin])
97 ;;
98 *)
99 AC_MSG_ERROR([Cannot build on unknown OS: $host_os])
100 ;;
101 esac
102
103 # User specified curses/ncurses prefix
104 AC_ARG_WITH([curses-prefix],
105 [ --with-curses-prefix=PATH curses (or ncurses) is in PATH],
106 [
107 if test -d "$withval/lib"; then
108 SAIDARLIBS="-L${withval}/lib ${SAIDARLIBS}"
109 fi
110 if test -d "$withval/include"; then
111 SAIDARCPPFLAGS="-I${withval}/include -I${withval}/include/ncurses ${SAIRDARCPPFLAGS}"
112 fi
113 ]
114 )
115
116 # Check if user wants to disable statgrab
117 AM_CONDITIONAL(STATGRAB, true)
118 AC_ARG_ENABLE(statgrab,
119 [ --disable-statgrab disable building of statgrab],
120 [
121 if test "x$enableval" = "xno" ; then
122 AM_CONDITIONAL(STATGRAB, false)
123 fi
124 ]
125 )
126
127 # Check if user wants to disable saidar
128 AM_CONDITIONAL(SAIDAR, true)
129 AC_ARG_ENABLE(saidar,
130 [ --disable-saidar disable building of saidar],
131 [
132 if test "x$enableval" = "xno" ; then
133 AM_CONDITIONAL(SAIDAR, false)
134 fi
135 ],
136 [
137 # saidar needs curses
138 # (if we don't find curses we disable saidar)
139 MP_WITH_CURSES
140 ]
141 )
142
143 # Check if the user would prefer not to build examples
144 AM_CONDITIONAL(EXAMPLES, true)
145 AC_ARG_ENABLE(examples,
146 [ --disable-examples disable building of examples],
147 [
148 if test "x$enableval" = "xno" ; then
149 AM_CONDITIONAL(EXAMPLES, false)
150 fi
151 ]
152 )
153
154 # Check if user wants to install manpages
155 AM_CONDITIONAL(MANPAGES, true)
156 AC_ARG_ENABLE(manpages,
157 [ --disable-manpages disable installation of manpages],
158 [
159 if test "x$enableval" = "xno" ; then
160 AM_CONDITIONAL(MANPAGES, false)
161 fi
162 ]
163 )
164
165 # Check if the user wants to turn off setgid binaries
166 AC_ARG_ENABLE(setgid-binaries,
167 [ --disable-setgid-binaries disable binaries being setgid],
168 [
169 if test "x$enableval" = "xno" ; then
170 AM_CONDITIONAL(SETGIDBINS, false)
171 fi
172 ]
173 )
174
175 # Check if the user wants to turn off setuid binaries
176 AC_ARG_ENABLE(setuid-binaries,
177 [ --disable-setuid-binaries disable binaries being setuid],
178 [
179 if test "x$enableval" = "xno" ; then
180 AM_CONDITIONAL(SETUIDBINS, false)
181 fi
182 ]
183 )
184
185 # The LIBS and CPPFLAGS that saidar needs
186 AC_SUBST(SAIDARLIBS)
187 AC_SUBST(SAIDARCPPFLAGS)
188
189 # The flags needed to link to libstatgrab
190 # (ie. our dependencies)
191 AC_SUBST(LINKFLAGS)
192
193 # And finish by changing these files
194 AC_CONFIG_FILES([Makefile src/Makefile src/libstatgrab/Makefile src/statgrab/Makefile docs/Makefile examples/Makefile libstatgrab.pc src/statgrab/statgrab-make-mrtg-config src/statgrab/statgrab-make-mrtg-index src/saidar/Makefile])
195
196 AC_OUTPUT