configure: Check for insmod.static and fail if not present.
[febootstrap.git] / configure.ac
1 dnl febootstrap configure.ac
2 dnl (C) Copyright 2009-2010 Red Hat Inc.
3 dnl
4 dnl This program is free software; you can redistribute it and/or modify
5 dnl it under the terms of the GNU General Public License as published by
6 dnl the Free Software Foundation; either version 2 of the License, or
7 dnl (at your option) any later version.
8 dnl
9 dnl This program is distributed in the hope that it will be useful,
10 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
11 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 dnl GNU General Public License for more details.
13 dnl
14 dnl You should have received a copy of the GNU General Public License
15 dnl along with this program; if not, write to the Free Software
16 dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17 dnl
18 dnl Written by Richard W.M. Jones <rjones@redhat.com>
19
20 AC_INIT(febootstrap,3.0)
21 AM_INIT_AUTOMAKE
22
23 dnl Check for basic C environment.
24 AC_PROG_CC_STDC
25 gl_EARLY
26
27 AC_PROG_INSTALL
28 AC_PROG_CPP
29
30 AC_C_PROTOTYPES
31 test "x$U" != "x" && AC_MSG_ERROR([Compiler not ANSI compliant])
32
33 AM_PROG_CC_C_O
34
35 dnl Check support for 64 bit file offsets.
36 AC_SYS_LARGEFILE
37
38 gl_INIT
39
40 # OCaml and ocamlfind are required to compile.
41 AC_PROG_OCAML
42 if test "$OCAMLC" = "no"; then
43     AC_MSG_ERROR([You must install the OCaml compiler])
44 fi
45 AM_CONDITIONAL([HAVE_OCAMLOPT],[test "$OCAMLBEST" = "opt"])
46 AC_PROG_FINDLIB
47 if test "$OCAMLFIND" = "no"; then
48     AC_MSG_ERROR([You must install OCaml findlib (the ocamlfind command)])
49 fi
50
51 dnl Optional programs.
52 AC_CHECK_PROG(PERLDOC,[perldoc],[perldoc],[no])
53 if test "x$PERLDOC" = "xno" ; then
54   AC_MSG_WARN([perldoc not found - install perl to make man pages])
55 fi
56 AM_CONDITIONAL(HAVE_PERLDOC,[test "$perldoc" != "no"])
57
58 dnl For yum-rpm handler.
59 AC_CHECK_PROG(YUM,[yum],[yum],[no])
60 AC_CHECK_PROG(RPM,[rpm],[rpm],[no])
61 AC_CHECK_PROG(YUMDOWNLOADER,[yumdownloader],[yumdownloader],[no])
62
63 dnl For Debian handler.
64 AC_CHECK_PROG(APTITUDE,[aptitude],[aptitude],[no])
65 AC_CHECK_PROG(DPKG,[dpkg],[dpkg],[no])
66
67 dnl Required programs, libraries.
68 AC_PATH_PROG([INSMODSTATIC],[insmod.static],[no])
69 if test "x$INSMODSTATIC" = "xno" ; then
70   AC_MSG_FAILURE([insmod.static program not found
71
72 Is /sbin in your current path?
73
74 Note that Debian/Ubuntu do not package this file from module-init-tools.
75 Sorry, please fix your distribution.  In the meantime you can copy
76 /sbin/insmod.static from a Fedora machine.
77 ])
78 fi
79 AC_DEFINE_UNQUOTED([INSMODSTATIC],["$INSMODSTATIC"],
80   [Full path to the insmod.static program.])
81
82 AC_PATH_PROG([MKE2FS],[mke2fs],[no])
83 if test "x$MKE2FS" = "xno" ; then
84   AC_MSG_FAILURE([mke2fs program not found (is /sbin in your current path?)])
85 fi
86 AC_DEFINE_UNQUOTED([MKE2FS],["$MKE2FS"],
87   [Full path to the mke2fs program.])
88
89 old_LIBS="$LIBS"
90 AC_CHECK_LIB([com_err],[error_message],[],[
91   AC_MSG_FAILURE([com_err library not found (part of e2fsprogs)])
92 ])
93 LIBS="$old_LIBS"
94
95 old_LIBS="$LIBS"
96 AC_CHECK_LIB([ext2fs],[ext2fs_file_open2],[],[
97   AC_MSG_FAILURE([libext2fs library not found (part of e2fsprogs)])
98 ])
99 LIBS="$old_LIBS"
100
101 AC_CHECK_HEADER([ext2fs/ext2fs.h],[],[
102   AC_MSG_FAILURE([Header <ext2fs/ext2fs.h> not found (part of e2fsprogs)])
103 ])
104
105 AC_CONFIG_HEADERS([config.h])
106 AC_CONFIG_FILES([config.ml Makefile lib/Makefile helper/Makefile])
107 AC_OUTPUT