ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/configure.in
Revision: 1.96
Committed: Sat Feb 16 16:11:16 2008 UTC (16 years, 1 month ago) by tdb
Branch: MAIN
CVS Tags: LIBSTATGRAB_0_16
Changes since 1.95: +4 -2 lines
Log Message:
saidar uses fabs which requires libm.

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