ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/configure.in
Revision: 1.87
Committed: Sat Sep 24 13:29:21 2005 UTC (19 years, 1 month ago) by tdb
Branch: MAIN
Changes since 1.86: +11 -2 lines
Log Message:
Add WIN32 support via MINGW. We'll need to add stuff to the README file
about what this requires to build.

All the hard work done by: skel

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.86 2005/07/30 10:42:02 tdb Exp $
6 #
7
8 # Change these to change the package name and version
9 AC_INIT(libstatgrab, 0.13, bugs@i-scream.org)
10 AM_INIT_AUTOMAKE(libstatgrab, 0.13)
11
12 # Revision number (automatically updated)
13 AC_REVISION($Revision: 1.86 $)
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_CHECK_FUNCS(atoll seteuid setegid setresuid setresgid)
35
36 # Disk IO read and write statistics are only present on recent NetBSD.
37 AC_CHECK_MEMBER(struct disk_sysctl.dk_rbytes,
38 [AC_DEFINE(HAVE_DK_RBYTES, , [New-style NetBSD disk stats])],
39 [],
40 [#include <sys/disk.h>])
41
42 # Disk IO read and write statistics are only present on recent OpenBSD.
43 AC_CHECK_MEMBER(struct diskstats.ds_rbytes,
44 [AC_DEFINE(HAVE_DS_RBYTES, , [New-style OpenBSD disk stats])],
45 [],
46 [#include <sys/disk.h>])
47
48 # NetBSD 2.0 uses statvfs rather than statfs
49 AC_CHECK_MEMBER(struct statvfs.f_fstypename,
50 [AC_DEFINE(HAVE_STATVFS, , [NetBSD 2.0 statvfs])],
51 [],
52 [#include <sys/statvfs.h>])
53
54 # Check for sys/loadavg.h
55 AC_CHECK_HEADERS([sys/loadavg.h])
56
57 # Check for libdevinfo.h
58 AC_CHECK_HEADERS([libdevinfo.h])
59
60 # Default needing setgid/setuid to false
61 AM_CONDITIONAL(SETGIDBINS, false)
62 AM_CONDITIONAL(SETUIDBINS, false)
63
64 # Default MINGW setting
65 AM_CONDITIONAL(MINGW, false)
66
67 # Set things up for different OS's
68 # We define the name of the OS so the code can act accordingly
69 # We also need to add the right LDFLAGS
70 case $host_os in
71 solaris2.[[6-7]])
72 AC_CHECK_HEADERS([kstat.h],,[AC_MSG_ERROR([need kstat.h])])
73 AC_DEFINE(SOLARIS, , [Building on Solaris 2.x])
74 AC_DEFINE(SOL7, , [Building on Solaris 2.6 or 2.7])
75 AM_CONDITIONAL(SETUIDBINS, true)
76 BIN_OWNER="root"
77 BIN_PERM="4755"
78 LINKFLAGS="-lkstat -lsocket -lnsl"
79 AC_CHECK_LIB(devinfo, di_init, [LINKFLAGS="$LINKFLAGS -ldevinfo"])
80 ;;
81 solaris2.*)
82 AC_CHECK_HEADERS([kstat.h],,[AC_MSG_ERROR([need kstat.h])])
83 AC_DEFINE(SOLARIS, , [Building on Solaris 2.x])
84 LINKFLAGS="-lkstat -ldevinfo -lsocket -lnsl"
85 ;;
86 hpux11.11*)
87 AC_DEFINE(HPUX, , [Building on HP-UX 11.11])
88 ;;
89 freebsd4.*)
90 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
91 AC_DEFINE(FREEBSD, , [Building on FreeBSD])
92 AM_CONDITIONAL(SETGIDBINS, true)
93 BIN_GROUP="kmem"
94 BIN_PERM="2755"
95 LINKFLAGS="-lkvm -ldevstat"
96 ;;
97 freebsd[[5-7]].*)
98 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
99 AC_DEFINE(FREEBSD, , [Building on FreeBSD])
100 AC_DEFINE(FREEBSD5, , [Building on FreeBSD 5.x - 7.x])
101 LINKFLAGS="-ldevstat"
102 ;;
103 netbsdelf1*)
104 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
105 AC_DEFINE(NETBSD, , [Building on NetBSD])
106 ;;
107 netbsdelf2*)
108 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
109 AC_DEFINE(NETBSD, , [Building on NetBSD])
110 AC_DEFINE(NETBSD2, , [Building on NetBSD 2.x])
111 ;;
112 openbsd*)
113 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
114 AC_DEFINE(OPENBSD, , [Building on OpenBSD])
115 ;;
116 dragonfly*)
117 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
118 AC_DEFINE(DFBSD, , [Building on DragonFlyBSD])
119 AM_CONDITIONAL(SETGIDBINS, true)
120 BIN_GROUP="kmem"
121 BIN_PERM="2755"
122 LINKFLAGS="-lkvm -ldevstat"
123 ;;
124 linux-gnu)
125 AC_DEFINE(LINUX, , [Building on GNU/Linux])
126 AM_CONDITIONAL(SETUIDBINS, true)
127 BIN_OWNER="root"
128 BIN_PERM="4755"
129 ;;
130 cygwin)
131 AC_DEFINE(CYGWIN, , [Building on Cygwin])
132 ;;
133 mingw32)
134 AC_DEFINE(MINGW, , [Building on MinGW])
135 AC_DEFINE(WINVER, 0x0500, [Building for Windows 2000])
136 AM_CONDITIONAL(MINGW, true)
137 LINKFLAGS="-lpdh -lIphlpapi -lpsapi -lnetapi32"
138 ;;
139 *)
140 AC_MSG_ERROR([Cannot build on unknown OS: $host_os])
141 ;;
142 esac
143
144 # User specified curses/ncurses prefix
145 AC_ARG_WITH([curses-prefix],
146 [ --with-curses-prefix=PATH curses (or ncurses) is in PATH],
147 [
148 if test -d "$withval/lib"; then
149 SAIDARLIBS="-L${withval}/lib ${SAIDARLIBS}"
150 fi
151 if test -d "$withval/include"; then
152 SAIDARCPPFLAGS="-I${withval}/include -I${withval}/include/ncurses ${SAIRDARCPPFLAGS}"
153 fi
154 ]
155 )
156
157 # Check if user wants to disable statgrab
158 AM_CONDITIONAL(STATGRAB, true)
159 AC_ARG_ENABLE(statgrab,
160 [ --disable-statgrab disable building of statgrab],
161 [
162 if test "x$enableval" = "xno" ; then
163 AM_CONDITIONAL(STATGRAB, false)
164 fi
165 ]
166 )
167
168 # Check if user wants to disable saidar
169 AM_CONDITIONAL(SAIDAR, true)
170 AC_ARG_ENABLE(saidar,
171 [ --disable-saidar disable building of saidar],
172 [
173 if test "x$enableval" = "xno" ; then
174 AM_CONDITIONAL(SAIDAR, false)
175 fi
176 ],
177 [
178 # saidar needs curses
179 # (if we don't find curses we disable saidar)
180 MP_WITH_CURSES
181 ]
182 )
183
184 # Check if the user would prefer not to build examples
185 AM_CONDITIONAL(EXAMPLES, true)
186 AC_ARG_ENABLE(examples,
187 [ --disable-examples disable building of examples],
188 [
189 if test "x$enableval" = "xno" ; then
190 AM_CONDITIONAL(EXAMPLES, false)
191 fi
192 ]
193 )
194
195 # Check if user wants to install manpages
196 AM_CONDITIONAL(MANPAGES, true)
197 AC_ARG_ENABLE(manpages,
198 [ --disable-manpages disable installation of manpages],
199 [
200 if test "x$enableval" = "xno" ; then
201 AM_CONDITIONAL(MANPAGES, false)
202 fi
203 ]
204 )
205
206 # Check if the user wants to turn off setgid binaries
207 AC_ARG_ENABLE(setgid-binaries,
208 [ --disable-setgid-binaries disable binaries being setgid],
209 [
210 if test "x$enableval" = "xno" ; then
211 AM_CONDITIONAL(SETGIDBINS, false)
212 fi
213 ]
214 )
215
216 # Check if the user wants to turn off setuid binaries
217 AC_ARG_ENABLE(setuid-binaries,
218 [ --disable-setuid-binaries disable binaries being setuid],
219 [
220 if test "x$enableval" = "xno" ; then
221 AM_CONDITIONAL(SETUIDBINS, false)
222 fi
223 ]
224 )
225
226 # Check if the user would prefer not to include compatibility code
227 AM_CONDITIONAL(DEPRECATED, true)
228 AC_ARG_ENABLE(deprecated,
229 [ --disable-deprecated disable inclusion of pre-0.10 compatibility code],
230 [
231 if test "x$enableval" = "xno" ; then
232 AM_CONDITIONAL(DEPRECATED, false)
233 fi
234 ]
235 )
236
237 # The LIBS and CPPFLAGS that saidar needs
238 AC_SUBST(SAIDARLIBS)
239 AC_SUBST(SAIDARCPPFLAGS)
240
241 # The flags needed to link to libstatgrab
242 # (ie. our dependencies)
243 AC_SUBST(LINKFLAGS)
244
245 # Ownership and permissions possibly needed for binaries
246 AC_SUBST(BIN_OWNER)
247 AC_SUBST(BIN_GROUP)
248 AC_SUBST(BIN_PERM)
249
250 # And finish by changing these files
251 AC_CONFIG_FILES([Makefile src/Makefile src/libstatgrab/Makefile src/statgrab/Makefile docs/Makefile docs/libstatgrab/Makefile docs/statgrab/Makefile docs/saidar/Makefile examples/Makefile libstatgrab.pc src/statgrab/statgrab-make-mrtg-config src/statgrab/statgrab-make-mrtg-index src/saidar/Makefile])
252
253 AC_OUTPUT