]> git.sur5r.net Git - bacula/rescue/blob - rescue/autoconf/configure.in
Updates
[bacula/rescue] / rescue / autoconf / configure.in
1 lal#
2 dnl#
3 dnl# Process this file with autoconf to produce a configure script.
4 dnl#
5 AC_INIT(version.h)
6 BUILD_DIR=`pwd`
7 cd ..
8 TOP_DIR=`pwd`
9 cd ${BUILD_DIR}
10 AC_SUBST(BUILD_DIR)
11 AC_CONFIG_AUX_DIR(${BUILD_DIR}/autoconf)
12
13 dnl require a recent autoconf
14 AC_PREREQ(2.13)
15
16
17 dnl search for true and false programs.
18 AC_PATH_PROGS(TRUEPRG, true, :)
19 AC_PATH_PROGS(FALSEPRG, false, :)
20
21 AC_PROG_AWK
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 :;
27 else
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    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!])
32 fi
33 THE_AWK=$AWK
34 AC_PATH_PROG(AWK, $THE_AWK, $THE_AWK)
35
36
37 dnl Rescue version
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`
40 AC_SUBST(VERSION)dnl 
41 AC_SUBST(DATE)dnl 
42 echo "configuring for Rescue $VERSION ($DATE)"
43
44
45 dnl -------------------------------------------------------
46 dnl# Check for programs.
47 dnl ------------------------------------------------------
48 AC_PROG_INSTALL
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)
55
56 dnl --------------------------------------------------
57 dnl OP Sys determination (see aclocal.m4)
58 dnl --------------------------------------------------
59 BA_CHECK_OPSYS
60
61 # -----------------------------------------------------------
62 dnl OPSys Distribution determination (see aclocal.m4)
63 # ----------------------------------------------------------
64 BA_CHECK_OPSYS_DISTNAME
65
66 # -------------------------------------------------------------------------
67 #  If the user has not set --exec-prefix, we default to ${prefix}
68 # -------------------------------------------------------------------------
69 if test x${exec_prefix} = xNONE ; then
70     exec_prefix=${prefix}
71 fi
72
73 # -------------------------------------------
74 # check for cdrecord writer location
75 # get scsibus,target,lun
76 # -------------------------------------------
77 CDSTL="3,0,0"
78 if test ! x$CDRECORD = x ; then
79    CDSTL=`${CDRECORD} -scanbus 2>/dev/null | grep CD-RW | ${AWK} '{print $1}'`
80    if test x${CDSTL} = x ; then
81       CDSTL=`${CDRECORD} -scanbus 2>/dev/null | grep CD+RW | ${AWK} '{print $1}'`
82    fi
83    if test x${CDSTL} = x ; then
84       CDSTL="3,0,0"
85    fi
86 fi
87 AC_SUBST(CDSTL)
88
89 dnl# --------------------------------------------------------------------------
90 dnl# CHECKING COMMAND LINE OPTIONS
91 dnl# --------------------------------------------------------------------------
92
93
94 where=
95 # ------------------------------------------
96 # Where to get iso
97 # ------------------------------------------
98 AC_ARG_WITH(iso,
99    [  --with-iso=PATH    specify path to iso (not implemented)],
100    [
101        if test "x$withval" != "xno" ; then     
102            where=$withval
103            type=iso
104        fi
105    ]
106 )
107 AC_SUBST(iso)
108
109 # ------------------------------------------
110 # Where to get cdrom
111 # ------------------------------------------
112 AC_ARG_WITH(cdrom,
113    [  --with-cdrom=PATH    specify path to cdrom],
114    [
115        if test "x$withval" != "xno" ; then     
116           where=$withval
117           type=cdrom
118        fi
119    ]
120 )
121
122 AC_SUBST(where)
123 AC_SUBST(type)
124
125
126 # ------------------------------------------
127 # Which kernel to take
128 # ------------------------------------------
129 AC_ARG_WITH(kernel,
130    [  --with-kernel=version  specify complete kernel version (e.g. 2.6.14-2) ],
131    [
132        if test "x$withval" != "xno" ; then     
133           KERNEL=$withval
134        fi
135    ]
136 )
137 AC_SUBST(KERNEL)
138
139
140 # ------------------------------------------
141 # Where to get Bacula source
142 # ------------------------------------------
143 AC_ARG_WITH(bacula,
144    [  --with-bacula=PATH    specify path to Bacula source],
145    [
146        if test "x$withval" != "xno" ; then     
147           bacula=$withval
148        fi
149    ]
150 )
151 AC_SUBST(bacula)
152
153 STATIC_FD=
154 # ------------------------------------------
155 # Where to get static-bacula-fd
156 # ------------------------------------------
157 AC_ARG_WITH(static-fd,
158    [  --with-static-fd=PATH    specify path to static FD],
159    [
160        if test "x$withval" != "xno" ; then     
161           STATIC_FD=$withval
162        fi
163    ]
164 )
165 AC_SUBST(STATIC_FD)
166
167 if test x${bacula} = x -a x${STATIC_FD} = x ; then
168    AC_MSG_ERROR(You must specify either --with-bacula=PATH or --with-static-fd=PATH)
169 fi
170
171 #
172 # Finally we set appropriate distribution specific
173 #  variables and defaults
174 #
175 # PFILES are platform specific files
176 PFILES=""
177 WIN32=
178 MACOSX=
179 hostname=`uname -n | cut -d '.' -f 1`
180 case "$DISTNAME" in
181 aix)
182         DISTVER=`uname -r`
183   ;;      
184 alpha)
185         DISTVER=`uname -r`
186   ;;
187 bsdi)
188         DISTVER=`uname -a |awk '{print $3}'`
189   ;;
190 cygwin)
191         DISTVER=`uname -a |awk '{print $3}'`
192         WIN32=win32
193   ;;
194 darwin)
195         DISTVER=`uname -r`
196   ;;
197 debian)
198         DISTVER=`cat /etc/debian_version`
199   ;;
200 freebsd)
201         DISTVER=`uname -a |awk '{print $3}'`
202   ;;
203 hpux)
204         DISTVER=`uname -r`
205   ;;
206 irix)
207         DISTVER=`uname -r`
208   ;;
209 netbsd)
210         DISTVER=`uname -a |awk '{print $3}'`
211   ;;
212 openbsd)
213         DISTVER=`uname -a |awk '{print $3}'`
214   ;;
215 redhat)
216         if test -f /etc/whitebox-release ; then
217            f=/etc/whitebox-release
218         else
219            f=/etc/redhat-release
220         fi
221         if test `cat $f | grep release |\
222                    cut -f 3 -d ' '`x = "Enterprise"x ; then
223            DISTVER="Enterprise "`cat $f | grep release |\
224                     cut -f 6 -d ' '`
225         else
226             DISTVER=`cat /etc/redhat-release | grep release |\
227                      cut -f 5 -d ' '`
228         fi
229         hostname=`hostname -s`
230   ;;
231 mandrake)
232         DISTVER=`cat /etc/mandrake-release | grep release |\
233            cut -f 5 -d ' '`
234   ;;
235 gentoo)
236         DISTVER=`awk '/version / {print $5}' < /etc/gentoo-release`
237   ;;
238 slackware)
239         DISTVER=`cat /etc/slackware-version`
240   ;;
241 solaris)
242         DISTVER=`uname -r`
243   ;;
244 suse)
245         DISTVER=`cat /etc/SuSE-release |grep VERSION|\
246             cut -f 3 -d ' '`
247   ;;
248 suse5)
249         DISTNAME=suse
250         DISTVER=5.x
251   ;;
252 unknown)
253         DISTVER=unknown
254   ;;
255 *)
256   echo " === Something went wrong. Unknown DISTNAME $DISTNAME ==="
257   ;;
258 esac  
259
260 AC_SUBST(hostname)
261
262 AC_SUBST(DISTNAME)
263 AC_SUBST(DISTVER)
264
265 dnl# common parts of the Makefile
266 MCOMMON=./autoconf/Make.common
267 AC_SUBST_FILE(MCOMMON)
268
269
270 AC_OUTPUT([    \
271            autoconf/Make.common \
272            Makefile \
273            linux/Makefile \
274            linux/cdrom/Makefile \
275            linux/cdrom/bacula/Makefile \
276            linux/cdrom/cdtree/boot/isolinux/boot.msg \
277            freebsd/Makefile \
278            solaris/Makefile \
279            $PFILES ],  
280           [ ]
281 )
282
283
284 echo "
285 Configuration on `date`:
286
287   Host:                       $host -- ${DISTNAME} ${DISTVER}
288   Rescue version:             ${VERSION} (${DATE})
289   Source code location:       ${bacula}
290   Static FD location:         ${STATIC_FD}
291   Specific kernel version:    ${KERNEL}
292
293   " > config.out
294
295 cat config.out