ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/configure.in
Revision: 1.98
Committed: Sat May 24 21:05:17 2008 UTC (15 years, 10 months ago) by ats
Branch: MAIN
Changes since 1.97: +2 -3 lines
Log Message:
Disable autoconf maintainer mode -- it's less broken in modern autoconf,
so it's useful now.

File Contents

# User Rev Content
1 tdb 1.4 # -*- Autoconf -*-
2     # Process this file with autoconf to produce a configure script.
3     #
4     # configure.in for libstatgrab
5 ats 1.98 # $Id: configure.in,v 1.97 2008/03/17 08:50:33 tdb Exp $
6 tdb 1.4 #
7 tdb 1.1
8 tdb 1.4 # Change these to change the package name and version
9 tdb 1.97 AC_INIT(libstatgrab, 0.17, bugs@i-scream.org)
10     AM_INIT_AUTOMAKE(libstatgrab, 0.17)
11 tdb 1.1
12 tdb 1.4 # Revision number (automatically updated)
13 ats 1.98 AC_REVISION($Revision: 1.97 $)
14 tdb 1.1
15 tdb 1.4 # 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 tdb 1.1 AC_PROG_CC
23     AC_PROG_INSTALL
24 tdb 1.2 AC_PROG_LIBTOOL
25 tdb 1.1
26 tdb 1.4 # Checks for header files
27 tdb 1.1 AC_HEADER_STDC
28    
29 tdb 1.4 # Checks for typedefs, structures, and compiler characteristics
30     AC_C_CONST
31 tdb 1.1
32 tdb 1.4 # Checks for library functions
33     AC_FUNC_MALLOC
34 tdb 1.77 AC_CHECK_FUNCS(atoll seteuid setegid setresuid setresgid)
35 ats 1.39
36     # Disk IO read and write statistics are only present on recent NetBSD.
37     AC_CHECK_MEMBER(struct disk_sysctl.dk_rbytes,
38 tdb 1.69 [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 ats 1.39 [],
46     [#include <sys/disk.h>])
47 tdb 1.70
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 tdb 1.50
54 tdb 1.51 # Check for sys/loadavg.h
55 tdb 1.50 AC_CHECK_HEADERS([sys/loadavg.h])
56 tdb 1.51
57     # Check for libdevinfo.h
58     AC_CHECK_HEADERS([libdevinfo.h])
59 tdb 1.4
60 tdb 1.46 # Default needing setgid/setuid to false
61 tdb 1.35 AM_CONDITIONAL(SETGIDBINS, false)
62 tdb 1.46 AM_CONDITIONAL(SETUIDBINS, false)
63 tdb 1.35
64 tdb 1.87 # Default MINGW setting
65     AM_CONDITIONAL(MINGW, false)
66    
67 tdb 1.4 # 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 tdb 1.1 case $host_os in
71 tdb 1.8 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 tdb 1.52 AC_DEFINE(SOL7, , [Building on Solaris 2.6 or 2.7])
75 tdb 1.46 AM_CONDITIONAL(SETUIDBINS, true)
76 tdb 1.71 BIN_OWNER="root"
77     BIN_PERM="4755"
78 ats 1.57 LINKFLAGS="-lkstat -lsocket -lnsl"
79 tdb 1.52 AC_CHECK_LIB(devinfo, di_init, [LINKFLAGS="$LINKFLAGS -ldevinfo"])
80 tdb 1.96 AC_CHECK_LIB(m, fabs, [SAIDARLIBS="$SAIDARLIBS -lm"])
81 tdb 1.8 ;;
82 tdb 1.1 solaris2.*)
83 tdb 1.4 AC_CHECK_HEADERS([kstat.h],,[AC_MSG_ERROR([need kstat.h])])
84 tdb 1.1 AC_DEFINE(SOLARIS, , [Building on Solaris 2.x])
85 ats 1.57 LINKFLAGS="-lkstat -ldevinfo -lsocket -lnsl"
86 tdb 1.96 AC_CHECK_LIB(m, fabs, [SAIDARLIBS="$SAIDARLIBS -lm"])
87 tdb 1.77 ;;
88     hpux11.11*)
89     AC_DEFINE(HPUX, , [Building on HP-UX 11.11])
90 tdb 1.1 ;;
91     freebsd4.*)
92 ats 1.38 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
93 tdb 1.34 AC_DEFINE(FREEBSD, , [Building on FreeBSD])
94 tdb 1.35 AM_CONDITIONAL(SETGIDBINS, true)
95 tdb 1.71 BIN_GROUP="kmem"
96     BIN_PERM="2755"
97 tdb 1.34 LINKFLAGS="-lkvm -ldevstat"
98     ;;
99 tdb 1.94 freebsd[[5-8]].*)
100 ats 1.38 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
101 tdb 1.34 AC_DEFINE(FREEBSD, , [Building on FreeBSD])
102 tdb 1.94 AC_DEFINE(FREEBSD5, , [Building on FreeBSD 5.x - 8.x])
103 tdb 1.65 LINKFLAGS="-ldevstat"
104 ats 1.38 ;;
105 tdb 1.66 netbsdelf1*)
106 ats 1.38 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
107     AC_DEFINE(NETBSD, , [Building on NetBSD])
108 tdb 1.66 ;;
109 tdb 1.90 netbsdelf[[2-3]]*)
110 tdb 1.66 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
111     AC_DEFINE(NETBSD, , [Building on NetBSD])
112     AC_DEFINE(NETBSD2, , [Building on NetBSD 2.x])
113 tdb 1.54 ;;
114     openbsd*)
115     AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
116     AC_DEFINE(OPENBSD, , [Building on OpenBSD])
117 tdb 1.61 ;;
118     dragonfly*)
119     AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
120     AC_DEFINE(DFBSD, , [Building on DragonFlyBSD])
121     AM_CONDITIONAL(SETGIDBINS, true)
122 tdb 1.71 BIN_GROUP="kmem"
123     BIN_PERM="2755"
124 tdb 1.61 LINKFLAGS="-lkvm -ldevstat"
125 tdb 1.1 ;;
126 tdb 1.95 linux-gnu*)
127 tdb 1.1 AC_DEFINE(LINUX, , [Building on GNU/Linux])
128 tdb 1.60 AM_CONDITIONAL(SETUIDBINS, true)
129 tdb 1.71 BIN_OWNER="root"
130     BIN_PERM="4755"
131 tdb 1.43 ;;
132     cygwin)
133     AC_DEFINE(CYGWIN, , [Building on Cygwin])
134 tdb 1.87 ;;
135     mingw32)
136     AC_DEFINE(MINGW, , [Building on MinGW])
137     AC_DEFINE(WINVER, 0x0500, [Building for Windows 2000])
138     AM_CONDITIONAL(MINGW, true)
139     LINKFLAGS="-lpdh -lIphlpapi -lpsapi -lnetapi32"
140 tdb 1.1 ;;
141     *)
142     AC_MSG_ERROR([Cannot build on unknown OS: $host_os])
143     ;;
144     esac
145 tdb 1.29
146 tdb 1.31 # User specified curses/ncurses prefix
147     AC_ARG_WITH([curses-prefix],
148     [ --with-curses-prefix=PATH curses (or ncurses) is in PATH],
149     [
150     if test -d "$withval/lib"; then
151     SAIDARLIBS="-L${withval}/lib ${SAIDARLIBS}"
152     fi
153     if test -d "$withval/include"; then
154 tdb 1.91 SAIDARCPPFLAGS="-I${withval}/include ${SAIRDARCPPFLAGS}"
155 tdb 1.31 fi
156     ]
157     )
158    
159     # Check if user wants to disable statgrab
160     AM_CONDITIONAL(STATGRAB, true)
161     AC_ARG_ENABLE(statgrab,
162     [ --disable-statgrab disable building of statgrab],
163     [
164     if test "x$enableval" = "xno" ; then
165     AM_CONDITIONAL(STATGRAB, false)
166     fi
167     ]
168     )
169    
170     # Check if user wants to disable saidar
171     AM_CONDITIONAL(SAIDAR, true)
172     AC_ARG_ENABLE(saidar,
173     [ --disable-saidar disable building of saidar],
174     [
175     if test "x$enableval" = "xno" ; then
176     AM_CONDITIONAL(SAIDAR, false)
177     fi
178     ],
179     [
180     # saidar needs curses
181     # (if we don't find curses we disable saidar)
182     MP_WITH_CURSES
183     ]
184     )
185    
186     # Check if the user would prefer not to build examples
187     AM_CONDITIONAL(EXAMPLES, true)
188     AC_ARG_ENABLE(examples,
189     [ --disable-examples disable building of examples],
190     [
191     if test "x$enableval" = "xno" ; then
192     AM_CONDITIONAL(EXAMPLES, false)
193     fi
194     ]
195     )
196    
197     # Check if user wants to install manpages
198     AM_CONDITIONAL(MANPAGES, true)
199     AC_ARG_ENABLE(manpages,
200     [ --disable-manpages disable installation of manpages],
201     [
202     if test "x$enableval" = "xno" ; then
203     AM_CONDITIONAL(MANPAGES, false)
204     fi
205     ]
206 tdb 1.35 )
207    
208     # Check if the user wants to turn off setgid binaries
209     AC_ARG_ENABLE(setgid-binaries,
210     [ --disable-setgid-binaries disable binaries being setgid],
211     [
212     if test "x$enableval" = "xno" ; then
213     AM_CONDITIONAL(SETGIDBINS, false)
214 tdb 1.46 fi
215     ]
216     )
217    
218     # Check if the user wants to turn off setuid binaries
219     AC_ARG_ENABLE(setuid-binaries,
220     [ --disable-setuid-binaries disable binaries being setuid],
221     [
222     if test "x$enableval" = "xno" ; then
223     AM_CONDITIONAL(SETUIDBINS, false)
224 tdb 1.35 fi
225     ]
226 tdb 1.67 )
227    
228     # Check if the user would prefer not to include compatibility code
229     AM_CONDITIONAL(DEPRECATED, true)
230     AC_ARG_ENABLE(deprecated,
231     [ --disable-deprecated disable inclusion of pre-0.10 compatibility code],
232     [
233     if test "x$enableval" = "xno" ; then
234     AM_CONDITIONAL(DEPRECATED, false)
235     fi
236     ]
237 tdb 1.31 )
238    
239     # The LIBS and CPPFLAGS that saidar needs
240     AC_SUBST(SAIDARLIBS)
241     AC_SUBST(SAIDARCPPFLAGS)
242    
243     # The flags needed to link to libstatgrab
244     # (ie. our dependencies)
245 tdb 1.29 AC_SUBST(LINKFLAGS)
246 tdb 1.71
247     # Ownership and permissions possibly needed for binaries
248     AC_SUBST(BIN_OWNER)
249     AC_SUBST(BIN_GROUP)
250     AC_SUBST(BIN_PERM)
251 tdb 1.1
252 tdb 1.4 # And finish by changing these files
253 tdb 1.84 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])
254 tdb 1.4
255     AC_OUTPUT