]> git.proxmox.com Git - mirror_lxc.git/blame - configure.ac
configure.ac - allow user to switch off/on documentation generation
[mirror_lxc.git] / configure.ac
CommitLineData
5e97c3fc 1# -*- Autoconf -*-
2# Process this file with autoconf to produce a configure script.
3
f49d83e9 4AC_INIT([lxc], [0.6.3])
5e97c3fc 5
f8dafdbb 6AC_CONFIG_SRCDIR([configure.ac])
5e97c3fc 7AC_CONFIG_AUX_DIR([config])
8AM_CONFIG_HEADER([src/config.h])
9AM_INIT_AUTOMAKE([-Wno-portability])
10AC_CANONICAL_HOST
5e97c3fc 11AM_PROG_CC_C_O
12AC_GNU_SOURCE
e90b6974 13AC_CHECK_PROG(SETCAP, setcap, yes, no, $PATH$PATH_SEPARATOR/sbin)
5c8f9bd8
AN
14
15AC_ARG_ENABLE([doc],
16 [AC_HELP_STRING([--enable-doc], [make mans (require docbook2man installed) [default=auto]])],
17 [], [enable_doc=auto])
18
19if test "x$enable_doc" = "xyes" -o "x$enable_doc" = "xauto"; then
20 AC_CHECK_PROG(have_docbook, [docbook2man], [yes], [no])
21
22 test "x$have_docbook" = "xno" -a "x$enable_doc" = "xyes" && \
23 AC_MSG_ERROR([docbook2man required by man request, but not found])
24fi
25
26AM_CONDITIONAL([ENABLE_DOCBOOK], [test "x$have_docbook" = "xyes"])
27
b6345ba1
DL
28AS_AC_EXPAND(PREFIX, $prefix)
29AS_AC_EXPAND(LIBDIR, $libdir)
7ad641d5 30AS_AC_EXPAND(BINDIR, $bindir)
b6345ba1 31AS_AC_EXPAND(INCLUDEDIR, $includedir)
a25ba7aa 32AS_AC_EXPAND(LIBEXECDIR, $libexecdir)
7ad641d5 33AS_AC_EXPAND(SYSCONFDIR, $sysconfdir)
3eae9733 34AS_AC_EXPAND(DATADIR, $datadir)
7ad641d5 35AS_AC_EXPAND(LOCALSTATEDIR, $localstatedir)
abf424cf 36AS_AC_EXPAND(LXCPATH, "${localstatedir}/lib/lxc")
be43f17e 37AS_AC_EXPAND(LXC_GENERATE_DATE, "$(date)")
805415fc 38
881450bb
DL
39AH_TEMPLATE([LXCPATH], [lxc configuration repository])
40AH_TEMPLATE([LXCLIBEXECDIR], [lxc executable library path])
41AC_DEFINE_UNQUOTED(LXCPATH, "$LXCPATH")
42AC_DEFINE_UNQUOTED(LXCLIBEXECDIR, "$LIBEXECDIR")
43
90e0a869
GT
44AC_CHECK_HEADERS([linux/netlink.h linux/genetlink.h],
45 [],
46 AC_MSG_ERROR([netlink headers not found. Please install the linux kernel headers.]),
47 [#include <sys/socket.h>
48 ])
35f549fe 49
50AC_CHECK_HEADERS([sys/capability.h], [], AC_MSG_ERROR([please install libcap-devel.]),
ddceb1f9
DL
51[#include <sys/types.h>
52#include <sys/capability.h>])
35f549fe 53
656994bb
MH
54# Some systems lack PR_CAPBSET_DROP definition => HAVE_DECL_PR_CAPBSET_DROP
55AC_CHECK_DECLS([PR_CAPBSET_DROP], [], [], [#include <sys/prctl.h>])
56
ff218c25 57AC_CHECK_HEADERS([sys/signalfd.h])
58
5e97c3fc 59AC_PROG_GCC_TRADITIONAL
60
61if test "x$GCC" = "xyes"; then
8642237a 62 CFLAGS="$CFLAGS -Wall"
5e97c3fc 63fi
64
65c46aef 65LXC_MAJOR_VERSION=$(echo $PACKAGE_VERSION | cut -d. -f1)
66LXC_MINOR_VERSION=$(echo $PACKAGE_VERSION | cut -d. -f2)
67LXC_MICRO_VERSION=$(echo $PACKAGE_VERSION | cut -d. -f3)
68
69AC_SUBST(LXC_MAJOR_VERSION)
70AC_SUBST(LXC_MINOR_VERSION)
71AC_SUBST(LXC_MICRO_VERSION)
72
5e97c3fc 73AC_CONFIG_FILES([
74 Makefile
b6345ba1 75 lxc.pc
5e97c3fc 76 lxc.spec
77 config/Makefile
d823d5b9 78
79 doc/Makefile
80 doc/lxc-create.sgml
81 doc/lxc-destroy.sgml
82 doc/lxc-execute.sgml
83 doc/lxc-start.sgml
84 doc/lxc-stop.sgml
b0a33c1e 85 doc/lxc-console.sgml
d823d5b9 86 doc/lxc-freeze.sgml
87 doc/lxc-unfreeze.sgml
88 doc/lxc-monitor.sgml
89 doc/lxc-wait.sgml
90 doc/lxc-ls.sgml
91 doc/lxc-ps.sgml
b0e505c9 92 doc/lxc-cgroup.sgml
8a67a2b2 93 doc/lxc.conf.sgml
8b8b04f8 94 doc/lxc.sgml
10fba81b 95 doc/common_options.sgml
99e4008c 96 doc/see_also.sgml
d823d5b9 97
c9844b87 98 scripts/Makefile
99 scripts/lxc-debian
54b1eb68 100 scripts/lxc-fedora
c9844b87 101 scripts/lxc-sshd
102
5e97c3fc 103 src/Makefile
5e97c3fc 104 src/lxc/Makefile
105 src/lxc/lxc-ps
d823d5b9 106 src/lxc/lxc-ls
9d0195cb 107 src/lxc/lxc-netstat
237315ff
DL
108 src/lxc/lxc-checkconfig
109 src/lxc/lxc-setcap
bcd952a1 110 src/lxc/lxc-version
c9844b87 111
5e97c3fc 112 etc/Makefile
113 etc/lxc-macvlan.conf
114 etc/lxc-no-netns.conf
5f58350a 115 etc/lxc-empty-netns.conf
5e97c3fc 116 etc/lxc-phys.conf
117 etc/lxc-veth.conf
118 etc/lxc-complex-config
5e97c3fc 119])
120AC_CONFIG_COMMANDS([default],[[]],[[]])
121AC_OUTPUT
805415fc 122
123if test "x$SETCAP" = "xno"; then
f8dafdbb 124 AC_MSG_NOTICE([
805415fc 125
126Warning:
127--------
128
87476557
FG
129The setcap binary was not found. This means the tools to set the
130privilege for the lxc commands are not available, that's ok, but you
131will need to run these commands as root or install libcap-2.
805415fc 132
133])
134
135else
136
f8dafdbb 137 AC_MSG_NOTICE([
805415fc 138
139Advice:
140-------
141
87476557 142If you wish to have a non root user to use the lxc tools,
237315ff
DL
143you can add the needed capabilities to the tools by invoking
144the 'lxc-setcap' script. To remove the capabilities, use
87476557 145'lxc-setcap -d'.
805415fc 146])
147
148fi