ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/configure.in
Revision: 1.59
Committed: Sat Feb 14 19:21:36 2004 UTC (20 years, 2 months ago) by tdb
Branch: MAIN
Changes since 1.58: +2 -3 lines
Log Message:
We don't need to be setuid root on Solaris 8+. On Solaris 7 and below we
do need to, but only if we care about the disk mappings.

This leaves us needing to be setuid root for disk mappings on Solaris 7
and below, and needing setgid kmem on FreeBSD 4 for swap statistics.

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.59 # $Id: configure.in,v 1.58 2004/02/14 19:03:35 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.55 AC_INIT(libstatgrab, 0.9, bugs@i-scream.org)
10     AM_INIT_AUTOMAKE(libstatgrab, 0.9)
11 tdb 1.1
12 tdb 1.4 # Revision number (automatically updated)
13 tdb 1.59 AC_REVISION($Revision: 1.58 $)
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     AC_FUNC_REALLOC
35 tdb 1.17 AC_CHECK_FUNCS(atoll)
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     [AC_DEFINE(HAVE_DK_RBYTES, , [New-style NetBSD stats])],
40     [],
41     [#include <sys/disk.h>])
42 tdb 1.50
43 tdb 1.51 # Check for sys/loadavg.h
44 tdb 1.50 AC_CHECK_HEADERS([sys/loadavg.h])
45 tdb 1.51
46     # Check for libdevinfo.h
47     AC_CHECK_HEADERS([libdevinfo.h])
48 tdb 1.4
49 tdb 1.46 # Default needing setgid/setuid to false
50 tdb 1.35 AM_CONDITIONAL(SETGIDBINS, false)
51 tdb 1.46 AM_CONDITIONAL(SETUIDBINS, false)
52 tdb 1.35
53 tdb 1.4 # 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 tdb 1.1 case $host_os in
57 tdb 1.8 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 tdb 1.52 AC_DEFINE(SOL7, , [Building on Solaris 2.6 or 2.7])
61 tdb 1.46 AM_CONDITIONAL(SETUIDBINS, true)
62 ats 1.57 LINKFLAGS="-lkstat -lsocket -lnsl"
63 tdb 1.52 AC_CHECK_LIB(devinfo, di_init, [LINKFLAGS="$LINKFLAGS -ldevinfo"])
64 tdb 1.8 ;;
65 tdb 1.1 solaris2.*)
66 tdb 1.4 AC_CHECK_HEADERS([kstat.h],,[AC_MSG_ERROR([need kstat.h])])
67 tdb 1.1 AC_DEFINE(SOLARIS, , [Building on Solaris 2.x])
68 ats 1.57 LINKFLAGS="-lkstat -ldevinfo -lsocket -lnsl"
69 tdb 1.1 ;;
70     freebsd4.*)
71 ats 1.38 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
72 tdb 1.34 AC_DEFINE(FREEBSD, , [Building on FreeBSD])
73 tdb 1.35 AM_CONDITIONAL(SETGIDBINS, true)
74 tdb 1.34 LINKFLAGS="-lkvm -ldevstat"
75     ;;
76     freebsd5.*)
77 ats 1.38 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
78 tdb 1.34 AC_DEFINE(FREEBSD, , [Building on FreeBSD])
79     AC_DEFINE(FREEBSD5, , [Building on FreeBSD 5.x])
80 tdb 1.58 LINKFLAGS="-ldevstat"
81 ats 1.38 ;;
82 tdb 1.42 netbsdelf*)
83 ats 1.38 AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
84     AC_DEFINE(NETBSD, , [Building on NetBSD])
85 tdb 1.54 ;;
86     openbsd*)
87     AC_DEFINE(ALLBSD, , [Building on a BSD-derived system])
88     AC_DEFINE(OPENBSD, , [Building on OpenBSD])
89 tdb 1.1 ;;
90     linux-gnu)
91     AC_DEFINE(LINUX, , [Building on GNU/Linux])
92 tdb 1.43 ;;
93     cygwin)
94     AC_DEFINE(CYGWIN, , [Building on Cygwin])
95 tdb 1.1 ;;
96     *)
97     AC_MSG_ERROR([Cannot build on unknown OS: $host_os])
98     ;;
99     esac
100 tdb 1.29
101 tdb 1.31 # User specified curses/ncurses prefix
102     AC_ARG_WITH([curses-prefix],
103     [ --with-curses-prefix=PATH curses (or ncurses) is in PATH],
104     [
105     if test -d "$withval/lib"; then
106     SAIDARLIBS="-L${withval}/lib ${SAIDARLIBS}"
107     fi
108     if test -d "$withval/include"; then
109 tdb 1.32 SAIDARCPPFLAGS="-I${withval}/include -I${withval}/include/ncurses ${SAIRDARCPPFLAGS}"
110 tdb 1.31 fi
111     ]
112     )
113    
114     # Check if user wants to disable statgrab
115     AM_CONDITIONAL(STATGRAB, true)
116     AC_ARG_ENABLE(statgrab,
117     [ --disable-statgrab disable building of statgrab],
118     [
119     if test "x$enableval" = "xno" ; then
120     AM_CONDITIONAL(STATGRAB, false)
121     fi
122     ]
123     )
124    
125     # Check if user wants to disable saidar
126     AM_CONDITIONAL(SAIDAR, true)
127     AC_ARG_ENABLE(saidar,
128     [ --disable-saidar disable building of saidar],
129     [
130     if test "x$enableval" = "xno" ; then
131     AM_CONDITIONAL(SAIDAR, false)
132     fi
133     ],
134     [
135     # saidar needs curses
136     # (if we don't find curses we disable saidar)
137     MP_WITH_CURSES
138     ]
139     )
140    
141     # Check if the user would prefer not to build examples
142     AM_CONDITIONAL(EXAMPLES, true)
143     AC_ARG_ENABLE(examples,
144     [ --disable-examples disable building of examples],
145     [
146     if test "x$enableval" = "xno" ; then
147     AM_CONDITIONAL(EXAMPLES, false)
148     fi
149     ]
150     )
151    
152     # Check if user wants to install manpages
153     AM_CONDITIONAL(MANPAGES, true)
154     AC_ARG_ENABLE(manpages,
155     [ --disable-manpages disable installation of manpages],
156     [
157     if test "x$enableval" = "xno" ; then
158     AM_CONDITIONAL(MANPAGES, false)
159     fi
160     ]
161 tdb 1.35 )
162    
163     # Check if the user wants to turn off setgid binaries
164     AC_ARG_ENABLE(setgid-binaries,
165     [ --disable-setgid-binaries disable binaries being setgid],
166     [
167     if test "x$enableval" = "xno" ; then
168     AM_CONDITIONAL(SETGIDBINS, false)
169 tdb 1.46 fi
170     ]
171     )
172    
173     # Check if the user wants to turn off setuid binaries
174     AC_ARG_ENABLE(setuid-binaries,
175     [ --disable-setuid-binaries disable binaries being setuid],
176     [
177     if test "x$enableval" = "xno" ; then
178     AM_CONDITIONAL(SETUIDBINS, false)
179 tdb 1.35 fi
180     ]
181 tdb 1.31 )
182    
183     # The LIBS and CPPFLAGS that saidar needs
184     AC_SUBST(SAIDARLIBS)
185     AC_SUBST(SAIDARCPPFLAGS)
186    
187     # The flags needed to link to libstatgrab
188     # (ie. our dependencies)
189 tdb 1.29 AC_SUBST(LINKFLAGS)
190 tdb 1.1
191 tdb 1.4 # And finish by changing these files
192 tdb 1.31 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])
193 tdb 1.4
194     AC_OUTPUT