3 dnl# Process this file with autoconf to produce a configure script.
11 AC_CONFIG_AUX_DIR(${BUILD_DIR}/autoconf)
13 dnl require a recent autoconf
17 dnl search for true and false programs.
18 AC_PATH_PROGS(TRUEPRG, true, :)
19 AC_PATH_PROGS(FALSEPRG, false, :)
22 # Some AWK programs fail, so test it and warn the user
23 if echo xfoo | $AWK 'BEGIN { prog=ARGV[1]; ARGC=1 }
24 { if ((prog == $2) || (("(" prog ")") == $2) ||
25 (("[" prog "]") == $2) ||
26 ((prog ":") == $2)) { print $1 ; exit 0 } }' xfoo>/dev/null; then :;
28 AC_MSG_ERROR([!!!!!!!!! WARNING !!!!!!!!!!!!!!
29 The regex engine of $AWK is too broken to be used you
30 might want to install GNU AWK.
31 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!])
34 AC_PATH_PROG(AWK, $THE_AWK, $THE_AWK)
38 VERSION=`sed -n -e 's/^.*VERSION.*"\(.*\)"$/\1/p' ${srcdir}/version.h`
39 DATE=`sed -n -e 's/^.*[ \t]*BDATE.*"\(.*\)"$/\1/p' ${srcdir}/version.h`
42 echo "configuring for Rescue $VERSION ($DATE)"
45 dnl -------------------------------------------------------
46 dnl# Check for programs.
47 dnl ------------------------------------------------------
49 AC_PATH_PROG(MV, mv, mv)
50 AC_PATH_PROG(RM, rm, rm)
51 AC_PATH_PROG(CP, cp, cp)
52 AC_PATH_PROG(ECHO, echo, echo)
53 AC_PATH_PROG(AR, ar, ar)
54 AC_PATH_PROG(CDRECORD, cdrecord, cdrecord)
56 dnl --------------------------------------------------
57 dnl OP Sys determination (see aclocal.m4)
58 dnl --------------------------------------------------
61 # -----------------------------------------------------------
62 dnl OPSys Distribution determination (see aclocal.m4)
63 # ----------------------------------------------------------
64 BA_CHECK_OPSYS_DISTNAME
66 # -------------------------------------------------------------------------
67 # If the user has not set --exec-prefix, we default to ${prefix}
68 # -------------------------------------------------------------------------
69 if test x${exec_prefix} = xNONE ; then
73 # ------------------------------------------
75 # ------------------------------------------
78 [ --with-dev=DEVICE specify device (e.g. /dev/hdc)],
80 if test "x$withval" != "xno" ; then
86 # -------------------------------------------
87 # if no --with-dev given check for cdrecord writer location
88 # get scsibus,target,lun
89 # -------------------------------------------
90 if test x$DEV = x ; then
92 if test ! x$CDRECORD = x ; then
93 CDSTL=`${CDRECORD} -scanbus 2>/dev/null | grep CD-RW | ${AWK} '{print $1}'`
94 if test x${CDSTL} = x ; then
95 CDSTL=`${CDRECORD} -scanbus 2>/dev/null | grep CD+RW | ${AWK} '{print $1}'`
97 if test x${CDSTL} = x ; then
105 dnl# --------------------------------------------------------------------------
106 dnl# CHECKING COMMAND LINE OPTIONS
107 dnl# --------------------------------------------------------------------------
111 # ------------------------------------------
113 # ------------------------------------------
115 [ --with-iso=PATH specify path to iso (not implemented)],
117 if test "x$withval" != "xno" ; then
125 # ------------------------------------------
127 # ------------------------------------------
129 [ --with-cdrom=PATH specify path to cdrom],
131 if test "x$withval" != "xno" ; then
142 # ------------------------------------------
143 # Which kernel to take
144 # ------------------------------------------
146 [ --with-kernel=version specify complete kernel version (e.g. 2.6.14-2) ],
148 if test "x$withval" != "xno" ; then
156 # ------------------------------------------
157 # Where to get Bacula source
158 # ------------------------------------------
160 [ --with-bacula=PATH specify path to Bacula source],
162 if test "x$withval" != "xno" ; then
170 # ------------------------------------------
171 # Where to get static-bacula-fd
172 # ------------------------------------------
173 AC_ARG_WITH(static-fd,
174 [ --with-static-fd=PATH specify path to static FD],
176 if test "x$withval" != "xno" ; then
184 # ------------------------------------------
185 # Where to get Bacula binaries
186 # ------------------------------------------
187 AC_ARG_WITH(bacula-bin,
188 [ --with-bacula-bin=PATH specify path to bacula binaries (NOT IMPLEMENTED)],
190 if test "x$withval" != "xno" ; then
198 # ------------------------------------------
199 # Where to get Bacula scripts
200 # ------------------------------------------
201 AC_ARG_WITH(bacula-scripts,
202 [ --with-bacula-scripts=PATH specify path to bacula scripts],
204 if test "x$withval" != "xno" ; then
205 BACULA_SCRIPTS=$withval
209 AC_SUBST(BACULA_SCRIPTS)
213 if test x${bacula} = x -a x${STATIC_FD} = x ; then
214 AC_MSG_ERROR(You must specify either --with-bacula=PATH or --with-static-fd=PATH)
218 # Finally we set appropriate distribution specific
219 # variables and defaults
221 # PFILES are platform specific files
225 hostname=`uname -n | cut -d '.' -f 1`
234 DISTVER=`uname -a |awk '{print $3}'`
237 DISTVER=`uname -a |awk '{print $3}'`
244 DISTVER=`cat /etc/debian_version`
247 DISTVER=`uname -a |awk '{print $3}'`
256 DISTVER=`uname -a |awk '{print $3}'`
259 DISTVER=`uname -a |awk '{print $3}'`
262 if test -f /etc/whitebox-release ; then
263 f=/etc/whitebox-release
265 f=/etc/redhat-release
267 if test `cat $f | grep release |\
268 cut -f 3 -d ' '`x = "Enterprise"x ; then
269 DISTVER="Enterprise "`cat $f | grep release |\
272 DISTVER=`cat /etc/redhat-release | grep release |\
275 hostname=`hostname -s`
278 DISTVER=`cat /etc/mandrake-release | grep release |\
282 DISTVER=`awk '/version / {print $5}' < /etc/gentoo-release`
285 DISTVER=`cat /etc/slackware-version`
291 DISTVER=`cat /etc/SuSE-release |grep VERSION|\
302 echo " === Something went wrong. Unknown DISTNAME $DISTNAME ==="
311 dnl# common parts of the Makefile
312 MCOMMON=./autoconf/Make.common
313 AC_SUBST_FILE(MCOMMON)
317 autoconf/Make.common \
320 linux/cdrom/Makefile \
321 linux/cdrom/bacula/Makefile \
322 linux/cdrom/cdtree/boot/isolinux/boot.msg \
323 knoppix/cdrom/Makefile \
324 knoppix/cdrom/bacula/Makefile \
334 Configuration on `date`:
336 Host: $host -- ${DISTNAME} ${DISTVER}
337 Rescue version: ${VERSION} (${DATE})
338 Bacula scripts location: ${BACULA_SCRIPTS}
339 Source code location: ${bacula}
340 Static FD location: ${STATIC_FD}
341 Specific kernel version: ${KERNEL}