ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/configure.in
Revision: 1.71
Committed: Mon Jun 21 21:41:45 2004 UTC (20 years, 4 months ago) by tdb
Branch: MAIN
CVS Tags: LIBSTATGRAB_0_10_1
Changes since 1.70: +15 -2 lines
Log Message:
Add three variables to the pkg-config file: bin_owner, bin_group, bin_perm

The purpose of these variables is to suggest the required owner, group and
permissions that might be used to make a binary using libstatgrab work
fully. I'm not sure if this is the "best" way of doing this, but it seems
like a reasonable idea.

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