ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/configure.in
Revision: 1.54
Committed: Thu Feb 12 23:04:51 2004 UTC (20 years, 8 months ago) by tdb
Branch: MAIN
Changes since 1.53: +8 -2 lines
Log Message:
Add preliminary support for OpenBSD (tested on 3.3).

All works apart from Disk IO stats - currently the disks are not named
correctly. The fix for this is probably to use KVM.

Mostly similar to the NetBSD code, the notable exception being the uvm
stuff. In NetBSD there's a function to get it, in OpenBSD sysctl is needed
to get hold of it.

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