1 |
# -*- Autoconf -*- |
2 |
# Process this file with autoconf to produce a configure script. |
3 |
# |
4 |
# configure.in for i-scream ihost |
5 |
# $Id: configure.in,v 1.19 2003/03/29 18:09:01 tdb Exp $ |
6 |
# |
7 |
|
8 |
# Change these to change the package name and version |
9 |
AC_INIT(ihost, 1.5.5, dev@i-scream.org.uk) |
10 |
AM_INIT_AUTOMAKE(ihost, 1.5.5) |
11 |
|
12 |
# Revision number (automatically updated) |
13 |
AC_REVISION($Revision: 1.19 $) |
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_RANLIB |
25 |
|
26 |
# User specified libstatgrab prefix |
27 |
AC_ARG_WITH([libstatgrab-prefix], |
28 |
[ --with-libstatgrab-prefix=PATH libstatgrab is in PATH], |
29 |
[ |
30 |
if test -d "$withval/lib"; then |
31 |
LDFLAGS="-L${withval}/lib ${LDFLAGS}" |
32 |
fi |
33 |
if test -d "$withval/include"; then |
34 |
CPPFLAGS="-I${withval}/include ${CPPFLAGS}" |
35 |
fi |
36 |
] |
37 |
) |
38 |
|
39 |
# User specified libukcprog prefix |
40 |
AC_ARG_WITH([libukcprog-prefix], |
41 |
[ --with-libukcprog-prefix=PATH libukcprog is in PATH], |
42 |
[ |
43 |
if test -d "$withval/lib"; then |
44 |
LDFLAGS="-L${withval}/lib ${LDFLAGS}" |
45 |
fi |
46 |
if test -d "$withval/include"; then |
47 |
CPPFLAGS="-I${withval}/include ${CPPFLAGS}" |
48 |
fi |
49 |
] |
50 |
) |
51 |
|
52 |
# Checks for header files |
53 |
AC_HEADER_STDC |
54 |
AC_CHECK_HEADERS(statgrab.h,,[AC_MSG_ERROR([need statgrab.h])]) |
55 |
AC_CHECK_HEADERS(ukcprog.h,,[AC_MSG_ERROR([need ukcprog.h])]) |
56 |
|
57 |
# Checks for typedefs, structures, and compiler characteristics |
58 |
AC_C_CONST |
59 |
|
60 |
# Checks for library functions |
61 |
AC_FUNC_MALLOC |
62 |
AC_FUNC_REALLOC |
63 |
AC_FUNC_FORK |
64 |
AC_CHECK_FUNCS(strlcat) |
65 |
|
66 |
# Figure out details about the host - we need the OS |
67 |
AC_CANONICAL_HOST |
68 |
|
69 |
# Default needing setgid kmem to false |
70 |
AM_CONDITIONAL(SETGIDKMEM, false) |
71 |
|
72 |
# Set things up for different OS's |
73 |
# We define the name of the OS so the code can act accordingly |
74 |
# We also need to add the right LDFLAGS |
75 |
case $host_os in |
76 |
solaris2.*) |
77 |
AC_DEFINE(SOLARIS, , [Building on Solaris 2.x]) |
78 |
LIBS="$LIBS -lnsl -lsocket -lkstat -Wl,-Bstatic -lstatgrab -lukcprog -Wl,-Bdynamic" |
79 |
;; |
80 |
freebsd4.*) |
81 |
AC_DEFINE(FREEBSD, , [Building on FreeBSD 4.x]) |
82 |
LIBS="$LIBS -lkvm -lstatgrab -lukcprog -static" |
83 |
# FreeBSD needs ihost to be setgid kmem |
84 |
AM_CONDITIONAL(SETGIDKMEM, true) |
85 |
;; |
86 |
linux-gnu) |
87 |
AC_DEFINE(LINUX, , [Building on GNU/Linux]) |
88 |
LIBS="$LIBS -lstatgrab -lukcprog -static" |
89 |
;; |
90 |
*) |
91 |
AC_MSG_ERROR([Cannot build on unknown OS: $host_os]) |
92 |
;; |
93 |
esac |
94 |
|
95 |
# Library checks that need to be done after the OS specific stuff |
96 |
AC_CHECK_LIB(statgrab, get_general_stats,[:],[AC_MSG_ERROR([need libstatgrab])]) |
97 |
AC_CHECK_LIB(ukcprog, fpgetline,[:],[AC_MSG_ERROR([need libukcprog])]) |
98 |
|
99 |
# Check for the --with-pid-file option |
100 |
AC_ARG_WITH([pid-file], [ --with-pid-file=FILE location of PID file (default: /var/tmp/.ihost.pid)], [pidfile=$withval], [pidfile=[/var/tmp/.ihost.pid]]) |
101 |
AC_DEFINE_UNQUOTED([PID_FILE], ["$pidfile"], [Location of PID file]) |
102 |
|
103 |
# Check for the --with-max-udp-size option |
104 |
AC_ARG_WITH([max-udp-size], [ --with-max-udp-size=KB maximum size of UDP packets in kilobytes (default: 8192kb)], [max_udp_size=$withval], [max_udp_size=[8192]]) |
105 |
AC_DEFINE_UNQUOTED([MAX_UDP_PACKET_SIZE], [$max_udp_size], [Maximum size of UDP packets in kilobytes]) |
106 |
|
107 |
# Check for the --with-log-file option |
108 |
AC_ARG_WITH([log-file], [ --with-log-file=FILE location of log file (default: /var/log/ihost.log)], [logfile=$withval], [logfile=[/var/log/ihost.log]]) |
109 |
AC_DEFINE_UNQUOTED([LOG_FILE], ["$logfile"], [Location of log file]) |
110 |
|
111 |
# And finish by changing these files |
112 |
AC_CONFIG_FILES([Makefile]) |
113 |
|
114 |
AC_OUTPUT |