aboutsummaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
authorLibravatar Kelvin M. Klann <kmk3.code@protonmail.com>2021-11-16 09:49:49 -0300
committerLibravatar Kelvin M. Klann <kmk3.code@protonmail.com>2021-11-25 11:32:07 -0300
commit36058bc54a059cd63bd4ce94b680f5f8c1441c92 (patch)
tree00dec7d656b03bf455e827b2468cb4e252354f49 /configure.ac
parentconfigure*: Add missing quotes to arguments (diff)
downloadfirejail-36058bc54a059cd63bd4ce94b680f5f8c1441c92.tar.gz
firejail-36058bc54a059cd63bd4ce94b680f5f8c1441c92.tar.zst
firejail-36058bc54a059cd63bd4ce94b680f5f8c1441c92.zip
configure*: Move AC_SUBST calls to more obvious places
These macros should always be called regardless of the intended value of each variable, as even if e.g.: no --enable-apparmor flag is given, the configure script still has to substitute `@HAVE_APPARMOR@` with blank in the relevant files. Something similar is already being done for HAVE_OVERLAYFS since commit fb9f2a5fb ("disabled overlayfs, fixes pending; added video channels to README* files", 2021-02-06). Note that each AC_SUBST is not immediately converted into search/replace code when generating the configure script. It appears that the variables are handled only after parsing all of configure.ac (or until a specific command is found), as all arguments passed to every AC_SUBST call are defined at once on the `ac_subst_vars` list. The actual substitutions are also done all at once (while iterating through the list) and that happens much later in the script (see both occurrences of `ac_subs_vars` on the current script).
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac44
1 files changed, 21 insertions, 23 deletions
diff --git a/configure.ac b/configure.ac
index 3f3d41bb9..20b60b522 100644
--- a/configure.ac
+++ b/configure.ac
@@ -57,22 +57,22 @@ AS_IF([test "x$enable_sanitizer" != "xno" ],
57)]) 57)])
58 58
59HAVE_APPARMOR="" 59HAVE_APPARMOR=""
60AC_SUBST([HAVE_APPARMOR])
60AC_ARG_ENABLE([apparmor], 61AC_ARG_ENABLE([apparmor],
61 [AS_HELP_STRING([--enable-apparmor], [enable apparmor])]) 62 [AS_HELP_STRING([--enable-apparmor], [enable apparmor])])
62AS_IF([test "x$enable_apparmor" = "xyes"], [ 63AS_IF([test "x$enable_apparmor" = "xyes"], [
63 HAVE_APPARMOR="-DHAVE_APPARMOR" 64 HAVE_APPARMOR="-DHAVE_APPARMOR"
64 PKG_CHECK_MODULES([AA], [libapparmor], 65 PKG_CHECK_MODULES([AA], [libapparmor],
65 [EXTRA_CFLAGS="$EXTRA_CFLAGS $AA_CFLAGS" && EXTRA_LDFLAGS="$EXTRA_LDFLAGS $AA_LIBS"]) 66 [EXTRA_CFLAGS="$EXTRA_CFLAGS $AA_CFLAGS" && EXTRA_LDFLAGS="$EXTRA_LDFLAGS $AA_LIBS"])
66 AC_SUBST([HAVE_APPARMOR])
67]) 67])
68 68
69HAVE_SELINUX="" 69HAVE_SELINUX=""
70AC_SUBST([HAVE_SELINUX])
70AC_ARG_ENABLE([selinux], 71AC_ARG_ENABLE([selinux],
71 [AS_HELP_STRING([--enable-selinux], [SELinux labeling support])]) 72 [AS_HELP_STRING([--enable-selinux], [SELinux labeling support])])
72AS_IF([test "x$enable_selinux" = "xyes"], [ 73AS_IF([test "x$enable_selinux" = "xyes"], [
73 HAVE_SELINUX="-DHAVE_SELINUX" 74 HAVE_SELINUX="-DHAVE_SELINUX"
74 EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lselinux" 75 EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lselinux"
75 AC_SUBST([HAVE_SELINUX])
76]) 76])
77 77
78AC_SUBST([EXTRA_CFLAGS]) 78AC_SUBST([EXTRA_CFLAGS])
@@ -80,173 +80,171 @@ AC_SUBST([EXTRA_LDFLAGS])
80 80
81 81
82HAVE_DBUSPROXY="" 82HAVE_DBUSPROXY=""
83AC_SUBST([HAVE_DBUSPROXY])
83AC_ARG_ENABLE([dbusproxy], 84AC_ARG_ENABLE([dbusproxy],
84 [AS_HELP_STRING([--disable-dbusproxy], [disable dbus proxy])]) 85 [AS_HELP_STRING([--disable-dbusproxy], [disable dbus proxy])])
85AS_IF([test "x$enable_dbusproxy" != "xno"], [ 86AS_IF([test "x$enable_dbusproxy" != "xno"], [
86 HAVE_DBUSPROXY="-DHAVE_DBUSPROXY" 87 HAVE_DBUSPROXY="-DHAVE_DBUSPROXY"
87 AC_SUBST([HAVE_DBUSPROXY])
88]) 88])
89 89
90# overlayfs features temporarily disabled pending fixes 90# overlayfs features temporarily disabled pending fixes
91HAVE_OVERLAYFS="" 91HAVE_OVERLAYFS=""
92AC_SUBST([HAVE_OVERLAYFS]) 92AC_SUBST([HAVE_OVERLAYFS])
93#
94#AC_ARG_ENABLE([overlayfs], 93#AC_ARG_ENABLE([overlayfs],
95# [AS_HELP_STRING([--disable-overlayfs], [disable overlayfs])]) 94# [AS_HELP_STRING([--disable-overlayfs], [disable overlayfs])])
96#AS_IF([test "x$enable_overlayfs" != "xno"], [ 95#AS_IF([test "x$enable_overlayfs" != "xno"], [
97# HAVE_OVERLAYFS="-DHAVE_OVERLAYFS" 96# HAVE_OVERLAYFS="-DHAVE_OVERLAYFS"
98# AC_SUBST([HAVE_OVERLAYFS])
99#]) 97#])
100 98
101HAVE_OUTPUT="" 99HAVE_OUTPUT=""
100AC_SUBST([HAVE_OUTPUT])
102AC_ARG_ENABLE([output], 101AC_ARG_ENABLE([output],
103 [AS_HELP_STRING([--disable-output], [disable --output logging])]) 102 [AS_HELP_STRING([--disable-output], [disable --output logging])])
104AS_IF([test "x$enable_output" != "xno"], [ 103AS_IF([test "x$enable_output" != "xno"], [
105 HAVE_OUTPUT="-DHAVE_OUTPUT" 104 HAVE_OUTPUT="-DHAVE_OUTPUT"
106 AC_SUBST([HAVE_OUTPUT])
107]) 105])
108 106
109HAVE_USERTMPFS="" 107HAVE_USERTMPFS=""
108AC_SUBST([HAVE_USERTMPFS])
110AC_ARG_ENABLE([usertmpfs], 109AC_ARG_ENABLE([usertmpfs],
111 [AS_HELP_STRING([--disable-usertmpfs], [disable tmpfs as regular user])]) 110 [AS_HELP_STRING([--disable-usertmpfs], [disable tmpfs as regular user])])
112AS_IF([test "x$enable_usertmpfs" != "xno"], [ 111AS_IF([test "x$enable_usertmpfs" != "xno"], [
113 HAVE_USERTMPFS="-DHAVE_USERTMPFS" 112 HAVE_USERTMPFS="-DHAVE_USERTMPFS"
114 AC_SUBST([HAVE_USERTMPFS])
115]) 113])
116 114
117HAVE_MAN="no" 115HAVE_MAN="no"
116AC_SUBST([HAVE_MAN])
118AC_ARG_ENABLE([man], 117AC_ARG_ENABLE([man],
119 [AS_HELP_STRING([--disable-man], [disable man pages])]) 118 [AS_HELP_STRING([--disable-man], [disable man pages])])
120AS_IF([test "x$enable_man" != "xno"], [ 119AS_IF([test "x$enable_man" != "xno"], [
121 HAVE_MAN="-DHAVE_MAN" 120 HAVE_MAN="-DHAVE_MAN"
122 AC_SUBST([HAVE_MAN])
123 AC_CHECK_PROG([HAVE_GAWK], [gawk], [yes], [no]) 121 AC_CHECK_PROG([HAVE_GAWK], [gawk], [yes], [no])
124 AS_IF([test "x$HAVE_GAWK" != "xyes"], [AC_MSG_ERROR([*** gawk not found ***])]) 122 AS_IF([test "x$HAVE_GAWK" != "xyes"], [AC_MSG_ERROR([*** gawk not found ***])])
125]) 123])
126 124
127HAVE_FIRETUNNEL="" 125HAVE_FIRETUNNEL=""
126AC_SUBST([HAVE_FIRETUNNEL])
128AC_ARG_ENABLE([firetunnel], 127AC_ARG_ENABLE([firetunnel],
129 [AS_HELP_STRING([--disable-firetunnel], [disable firetunnel])]) 128 [AS_HELP_STRING([--disable-firetunnel], [disable firetunnel])])
130AS_IF([test "x$enable_firetunnel" != "xno"], [ 129AS_IF([test "x$enable_firetunnel" != "xno"], [
131 HAVE_FIRETUNNEL="-DHAVE_FIRETUNNEL" 130 HAVE_FIRETUNNEL="-DHAVE_FIRETUNNEL"
132 AC_SUBST([HAVE_FIRETUNNEL])
133]) 131])
134 132
135HAVE_PRIVATEHOME="" 133HAVE_PRIVATEHOME=""
134AC_SUBST([HAVE_PRIVATE_HOME])
136AC_ARG_ENABLE([private-home], 135AC_ARG_ENABLE([private-home],
137 [AS_HELP_STRING([--disable-private-home], [disable private home feature])]) 136 [AS_HELP_STRING([--disable-private-home], [disable private home feature])])
138AS_IF([test "x$enable_private_home" != "xno"], [ 137AS_IF([test "x$enable_private_home" != "xno"], [
139 HAVE_PRIVATE_HOME="-DHAVE_PRIVATE_HOME" 138 HAVE_PRIVATE_HOME="-DHAVE_PRIVATE_HOME"
140 AC_SUBST([HAVE_PRIVATE_HOME])
141]) 139])
142 140
143HAVE_CHROOT="" 141HAVE_CHROOT=""
142AC_SUBST([HAVE_CHROOT])
144AC_ARG_ENABLE([chroot], 143AC_ARG_ENABLE([chroot],
145 [AS_HELP_STRING([--disable-chroot], [disable chroot])]) 144 [AS_HELP_STRING([--disable-chroot], [disable chroot])])
146AS_IF([test "x$enable_chroot" != "xno"], [ 145AS_IF([test "x$enable_chroot" != "xno"], [
147 HAVE_CHROOT="-DHAVE_CHROOT" 146 HAVE_CHROOT="-DHAVE_CHROOT"
148 AC_SUBST([HAVE_CHROOT])
149]) 147])
150 148
151HAVE_GLOBALCFG="" 149HAVE_GLOBALCFG=""
150AC_SUBST([HAVE_GLOBALCFG])
152AC_ARG_ENABLE([globalcfg], 151AC_ARG_ENABLE([globalcfg],
153 [AS_HELP_STRING([--disable-globalcfg], 152 [AS_HELP_STRING([--disable-globalcfg],
154 [if the global config file firejail.cfg is not present, continue the program using defaults])]) 153 [if the global config file firejail.cfg is not present, continue the program using defaults])])
155AS_IF([test "x$enable_globalcfg" != "xno"], [ 154AS_IF([test "x$enable_globalcfg" != "xno"], [
156 HAVE_GLOBALCFG="-DHAVE_GLOBALCFG" 155 HAVE_GLOBALCFG="-DHAVE_GLOBALCFG"
157 AC_SUBST([HAVE_GLOBALCFG])
158]) 156])
159 157
160HAVE_NETWORK="" 158HAVE_NETWORK=""
159AC_SUBST([HAVE_NETWORK])
161AC_ARG_ENABLE([network], 160AC_ARG_ENABLE([network],
162 [AS_HELP_STRING([--disable-network], [disable network])]) 161 [AS_HELP_STRING([--disable-network], [disable network])])
163AS_IF([test "x$enable_network" != "xno"], [ 162AS_IF([test "x$enable_network" != "xno"], [
164 HAVE_NETWORK="-DHAVE_NETWORK" 163 HAVE_NETWORK="-DHAVE_NETWORK"
165 AC_SUBST([HAVE_NETWORK])
166]) 164])
167 165
168HAVE_USERNS="" 166HAVE_USERNS=""
167AC_SUBST([HAVE_USERNS])
169AC_ARG_ENABLE([userns], 168AC_ARG_ENABLE([userns],
170 [AS_HELP_STRING([--disable-userns], [disable user namespace])]) 169 [AS_HELP_STRING([--disable-userns], [disable user namespace])])
171AS_IF([test "x$enable_userns" != "xno"], [ 170AS_IF([test "x$enable_userns" != "xno"], [
172 HAVE_USERNS="-DHAVE_USERNS" 171 HAVE_USERNS="-DHAVE_USERNS"
173 AC_SUBST([HAVE_USERNS])
174]) 172])
175 173
176HAVE_X11="" 174HAVE_X11=""
175AC_SUBST([HAVE_X11])
177AC_ARG_ENABLE([x11], 176AC_ARG_ENABLE([x11],
178 [AS_HELP_STRING([--disable-x11], [disable X11 sandboxing support])]) 177 [AS_HELP_STRING([--disable-x11], [disable X11 sandboxing support])])
179AS_IF([test "x$enable_x11" != "xno"], [ 178AS_IF([test "x$enable_x11" != "xno"], [
180 HAVE_X11="-DHAVE_X11" 179 HAVE_X11="-DHAVE_X11"
181 AC_SUBST([HAVE_X11])
182]) 180])
183 181
184HAVE_FILE_TRANSFER="" 182HAVE_FILE_TRANSFER=""
183AC_SUBST([HAVE_FILE_TRANSFER])
185AC_ARG_ENABLE([file-transfer], 184AC_ARG_ENABLE([file-transfer],
186 [AS_HELP_STRING([--disable-file-transfer], [disable file transfer])]) 185 [AS_HELP_STRING([--disable-file-transfer], [disable file transfer])])
187AS_IF([test "x$enable_file_transfer" != "xno"], [ 186AS_IF([test "x$enable_file_transfer" != "xno"], [
188 HAVE_FILE_TRANSFER="-DHAVE_FILE_TRANSFER" 187 HAVE_FILE_TRANSFER="-DHAVE_FILE_TRANSFER"
189 AC_SUBST([HAVE_FILE_TRANSFER])
190]) 188])
191 189
192HAVE_SUID="" 190HAVE_SUID=""
191AC_SUBST([HAVE_SUID])
193AC_ARG_ENABLE([suid], 192AC_ARG_ENABLE([suid],
194 [AS_HELP_STRING([--disable-suid], [install as a non-SUID executable])]) 193 [AS_HELP_STRING([--disable-suid], [install as a non-SUID executable])])
195AS_IF([test "x$enable_suid" = "xno"], 194AS_IF([test "x$enable_suid" = "xno"],
196 [HAVE_SUID="no"], 195 [HAVE_SUID="no"],
197 [HAVE_SUID="yes"] 196 [HAVE_SUID="yes"]
198) 197)
199AC_SUBST([HAVE_SUID])
200 198
201HAVE_FATAL_WARNINGS="" 199HAVE_FATAL_WARNINGS=""
200AC_SUBST([HAVE_FATAL_WARNINGS])
202AC_ARG_ENABLE([fatal_warnings], 201AC_ARG_ENABLE([fatal_warnings],
203 [AS_HELP_STRING([--enable-fatal-warnings], [-W -Wall -Werror])]) 202 [AS_HELP_STRING([--enable-fatal-warnings], [-W -Wall -Werror])])
204AS_IF([test "x$enable_fatal_warnings" = "xyes"], [ 203AS_IF([test "x$enable_fatal_warnings" = "xyes"], [
205 HAVE_FATAL_WARNINGS="-W -Wall -Werror" 204 HAVE_FATAL_WARNINGS="-W -Wall -Werror"
206 AC_SUBST([HAVE_FATAL_WARNINGS])
207]) 205])
208 206
209BUSYBOX_WORKAROUND="no" 207BUSYBOX_WORKAROUND="no"
208AC_SUBST([BUSYBOX_WORKAROUND])
210AC_ARG_ENABLE([busybox-workaround], 209AC_ARG_ENABLE([busybox-workaround],
211 [AS_HELP_STRING([--enable-busybox-workaround], [enable busybox workaround])]) 210 [AS_HELP_STRING([--enable-busybox-workaround], [enable busybox workaround])])
212AS_IF([test "x$enable_busybox_workaround" = "xyes"], [ 211AS_IF([test "x$enable_busybox_workaround" = "xyes"], [
213 BUSYBOX_WORKAROUND="yes" 212 BUSYBOX_WORKAROUND="yes"
214 AC_SUBST([BUSYBOX_WORKAROUND])
215]) 213])
216 214
217 215
218HAVE_GCOV="" 216HAVE_GCOV=""
217AC_SUBST([HAVE_GCOV])
219AC_ARG_ENABLE([gcov], 218AC_ARG_ENABLE([gcov],
220 [AS_HELP_STRING([--enable-gcov], [Gcov instrumentation])]) 219 [AS_HELP_STRING([--enable-gcov], [Gcov instrumentation])])
221AS_IF([test "x$enable_gcov" = "xyes"], [ 220AS_IF([test "x$enable_gcov" = "xyes"], [
222 HAVE_GCOV="--coverage -DHAVE_GCOV" 221 HAVE_GCOV="--coverage -DHAVE_GCOV"
223 EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lgcov --coverage" 222 EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lgcov --coverage"
224 AC_SUBST([HAVE_GCOV])
225]) 223])
226 224
227HAVE_CONTRIB_INSTALL="yes" 225HAVE_CONTRIB_INSTALL="yes"
226AC_SUBST([HAVE_CONTRIB_INSTALL])
228AC_ARG_ENABLE([contrib-install], 227AC_ARG_ENABLE([contrib-install],
229 [AS_HELP_STRING([--enable-contrib-install], [install contrib scripts])]) 228 [AS_HELP_STRING([--enable-contrib-install], [install contrib scripts])])
230AS_IF([test "x$enable_contrib_install" = "xno"], 229AS_IF([test "x$enable_contrib_install" = "xno"],
231 [HAVE_CONTRIB_INSTALL="no"], 230 [HAVE_CONTRIB_INSTALL="no"],
232 [HAVE_CONTRIB_INSTALL="yes"] 231 [HAVE_CONTRIB_INSTALL="yes"]
233) 232)
234AC_SUBST([HAVE_CONTRIB_INSTALL])
235 233
236HAVE_FORCE_NONEWPRIVS="" 234HAVE_FORCE_NONEWPRIVS=""
235AC_SUBST([HAVE_FORCE_NONEWPRIVS])
237AC_ARG_ENABLE([force-nonewprivs], 236AC_ARG_ENABLE([force-nonewprivs],
238 [AS_HELP_STRING([--enable-force-nonewprivs], [enable force nonewprivs])]) 237 [AS_HELP_STRING([--enable-force-nonewprivs], [enable force nonewprivs])])
239AS_IF([test "x$enable_force_nonewprivs" = "xyes"], [ 238AS_IF([test "x$enable_force_nonewprivs" = "xyes"], [
240 HAVE_FORCE_NONEWPRIVS="-DHAVE_FORCE_NONEWPRIVS" 239 HAVE_FORCE_NONEWPRIVS="-DHAVE_FORCE_NONEWPRIVS"
241 AC_SUBST([HAVE_FORCE_NONEWPRIVS])
242]) 240])
243 241
244HAVE_LTS="" 242HAVE_LTS=""
243AC_SUBST([HAVE_LTS])
245AC_ARG_ENABLE([lts], 244AC_ARG_ENABLE([lts],
246 [AS_HELP_STRING([--enable-lts], [enable long-term support software version (LTS)])]) 245 [AS_HELP_STRING([--enable-lts], [enable long-term support software version (LTS)])])
247AS_IF([test "x$enable_lts" = "xyes"], [ 246AS_IF([test "x$enable_lts" = "xyes"], [
248 HAVE_LTS="-DHAVE_LTS" 247 HAVE_LTS="-DHAVE_LTS"
249 AC_SUBST([HAVE_LTS])
250 248
251 HAVE_DBUSPROXY="" 249 HAVE_DBUSPROXY=""
252 AC_SUBST([HAVE_DBUSPROXY]) 250 AC_SUBST([HAVE_DBUSPROXY])