make.sh: Introduce DEFAULT_PARALLELISM
[ipfire-2.x.git] / src / installer / configure.ac
1 #  This file is part of the installer.
2 #
3 #  installer is free software; you can redistribute it and/or modify it
4 #  under the terms of the GNU Lesser General Public License as published by
5 #  the Free Software Foundation; either version 2.1 of the License, or
6 #  (at your option) any later version.
7
8 AC_PREREQ([2.64])
9
10 AC_INIT([installer],
11         [001],
12         [],
13         [installer],
14         [http://git.ipfire.org/?p=ipfire-2.x.git;a=summary])
15
16 AC_CONFIG_MACRO_DIR([m4])
17 AC_CONFIG_HEADERS([config.h])
18 AC_CONFIG_AUX_DIR([build-aux])
19
20 AM_INIT_AUTOMAKE([
21         foreign
22         1.11
23         -Wall
24         -Wno-portability
25         silent-rules
26         tar-pax
27         no-dist-gzip
28         dist-xz
29         subdir-objects
30 ])
31 AM_SILENT_RULES([yes])
32
33 LT_PREREQ(2.2)
34 LT_INIT([disable-static])
35
36 AC_PROG_SED
37
38 AC_PROG_CC
39 AC_PROG_CC_C99
40 AC_PROG_CC_C_O
41
42 CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\
43         "-Wformat=2 -Wformat-security -Wformat-nonliteral" \
44         -Werror=overflow \
45         -fno-strict-aliasing \
46         -fstack-protector \
47         -fstack-protector-strong \
48         -fPIE \
49         --param=ssp-buffer-size=4])
50 AC_SUBST([OUR_CFLAGS], "$with_cflags")
51
52 AC_PATH_PROG([M4], [m4])
53
54 # Gettext
55 AM_GNU_GETTEXT([external])
56 AM_GNU_GETTEXT_VERSION([0.18])
57 AC_CHECK_HEADERS([libintl.h])
58
59 # This makes sure pkg.m4 is available.
60 m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config])
61
62 save_LIBS="$LIBS"
63
64 # newt
65 LIBS=
66 AC_SEARCH_LIBS([newtWinMenu], [newt], [], [AC_MSG_ERROR([*** newt library not found])])
67 NEWT_LIBS="$LIBS"
68 AC_SUBST(NEWT_LIBS)
69
70 LIBS="$save_LIBS"
71
72 PKG_CHECK_MODULES(BLKID, [blkid])
73 PKG_CHECK_MODULES(PCI, [libpci])
74 PKG_CHECK_MODULES(LIBSMOOTH, [libsmooth])
75 PKG_CHECK_MODULES(UDEV, [libudev])
76
77 AC_ARG_WITH([distro-name],
78         AS_HELP_STRING([--with-distro-name] [The name of the distribution]),
79         AC_DEFINE_UNQUOTED([DISTRO_NAME], "$withval", [The name of the distribution]),
80         AC_MSG_ERROR([*** you need to set the name with --with-distro-name=]))
81
82 AC_ARG_WITH([distro-sname],
83         AS_HELP_STRING([--with-distro-sname] [The short name of the distribution]),
84         AC_DEFINE_UNQUOTED([DISTRO_SNAME], "$withval", [The sname of the distribution]),
85         AC_MSG_ERROR([*** you need to set the sname with --with-distro-sname=]))
86
87 AC_ARG_WITH([distro-version],
88         AS_HELP_STRING([--with-distro-sname] [The version of the distribution]),
89         AC_DEFINE_UNQUOTED([DISTRO_VERSION], "$withval", [The version of the distribution]),
90         AC_MSG_ERROR([*** you need to set the version with --with-distro-version=]))
91
92 AC_ARG_WITH([distro-slogan],
93         AS_HELP_STRING([--with-distro-slogan] [The slogan of the distribution]),
94         AC_DEFINE_UNQUOTED([DISTRO_SLOGAN], "$withval", [The slogan of the distribution]),
95         AC_MSG_ERROR([*** you need to set the slogan with --with-distro-slogan=]))
96
97 AC_ARG_WITH([config-root],
98         AS_HELP_STRING([--with-distro-config-root] [The configuration directory]),
99         AC_DEFINE_UNQUOTED([CONFIG_ROOT], "$withval", [The config-root]),
100         AC_MSG_ERROR([*** you need to set CONFIG_ROOT with --with-config-root=]))
101
102 AC_ARG_WITH([download-url],
103         AS_HELP_STRING([--with-download-url] [The default download URL]),
104         AC_DEFINE_UNQUOTED([DOWNLOAD_URL], "$withval", [The default download URL]),
105         AC_MSG_ERROR([*** you need to set DOWNLOAD_URL with --with-download-url=]))
106
107 AC_CONFIG_FILES([
108         Makefile
109         po/Makefile.in
110 ])
111
112 AC_OUTPUT
113 AC_MSG_RESULT([
114         $PACKAGE_NAME $VERSION
115
116         CFLAGS:                 ${OUR_CFLAGS} ${CFLAGS}
117         CPPFLAGS:               ${OUR_CPPFLAGS} ${CPPFLAGS}
118         LDFLAGS:                ${OUR_LDFLAGS} ${LDFLAGS}
119
120         Distribution:           ${DISTRO_NAME} (${DISTRO_SNAME})
121         Version:                ${DISTRO_VERSION}
122         Slogan:                 ${DISTRO_SLOGAN}
123         Config Root:            ${CONFIG_ROOT}
124 ])