]>
Commit | Line | Data |
---|---|---|
1 | # Beginning of file MCONFIG | |
2 | ||
3 | all:: | |
4 | ||
5 | all-static:: | |
6 | ||
7 | check:: | |
8 | ||
9 | fullcheck:: | |
10 | ||
11 | SHELL = /bin/sh | |
12 | ||
13 | COMPRESS_EXT = gz bz2 bz Z | |
14 | ||
15 | prefix = @prefix@ | |
16 | root_prefix = @root_prefix@ | |
17 | exec_prefix = @exec_prefix@ | |
18 | root_bindir = @root_bindir@ | |
19 | root_sbindir = @root_sbindir@ | |
20 | root_libdir = @root_libdir@ | |
21 | datarootdir = @datarootdir@ | |
22 | bindir = @bindir@ | |
23 | sbindir = @sbindir@ | |
24 | libdir = @libdir@ | |
25 | datadir= @datadir@ | |
26 | localedir = $(datadir)/locale | |
27 | root_sysconfdir= @root_sysconfdir@ | |
28 | includedir = @includedir@ | |
29 | mandir = @mandir@ | |
30 | man1dir = $(mandir)/man1 | |
31 | man3dir = $(mandir)/man3 | |
32 | man5dir = $(mandir)/man5 | |
33 | man8dir = $(mandir)/man8 | |
34 | infodir = @infodir@ | |
35 | datadir = @datadir@ | |
36 | pkgconfigdir = $(libdir)/pkgconfig | |
37 | pkglibdir = $(libdir)/e2fsprogs | |
38 | ||
39 | HAVE_UDEV = @have_udev@ | |
40 | UDEV_RULES_DIR = @pkg_udev_rules_dir@ | |
41 | HAVE_CROND = @have_crond@ | |
42 | CROND_DIR = @crond_dir@ | |
43 | HAVE_SYSTEMD = @have_systemd@ | |
44 | SYSTEMD_SYSTEM_UNIT_DIR = @systemd_system_unit_dir@ | |
45 | ||
46 | @SET_MAKE@ | |
47 | ||
48 | @ifGNUmake@ V = | |
49 | @ifGNUmake@ ifeq ($(strip $(V)),) | |
50 | @ifGNUmake@ # E = @echo | |
51 | @ifGNUmake@ # ES = echo | |
52 | @ifGNUmake@ # Q = @ | |
53 | @ifGNUmake@ E = @E@ | |
54 | @ifGNUmake@ ES = @ES@ | |
55 | @ifGNUmake@ Q = @Q@ | |
56 | @ifGNUmake@ else | |
57 | @ifGNUmake@ E = @\# | |
58 | @ifGNUmake@ ES = \# | |
59 | @ifGNUmake@ Q = | |
60 | @ifGNUmake@ endif | |
61 | ||
62 | @ifNotGNUmake@ E = @E@ | |
63 | @ifNotGNUmake@ ES = @ES@ | |
64 | @ifNotGNUmake@ Q = @Q@ | |
65 | ||
66 | @ifGNUmake@ CHECK=sparse | |
67 | @ifGNUmake@ CHECK_OPTS=-Wsparse-all -Wno-transparent-union -Wno-return-void -Wno-undef -Wno-non-pointer-null | |
68 | @ifGNUmake@ CPPCHECK=cppcheck | |
69 | @ifGNUmake@ CPPCHECK_OPTS=--force --enable=all --quiet | |
70 | @ifGNUmake@ ifeq ("$(C)", "2") | |
71 | @ifGNUmake@ CHECK_CMD=$(CHECK) $(CHECK_OPTS) -Wbitwise -D__CHECK_ENDIAN__ | |
72 | @ifGNUmake@ CPPCHECK_CMD=$(CPPCHECK) $(CPPCHECK_OPTS) | |
73 | @ifGNUmake@ else | |
74 | @ifGNUmake@ ifeq ("$(C)", "1") | |
75 | @ifGNUmake@ CHECK_CMD=$(CHECK) $(CHECK_OPTS) | |
76 | @ifGNUmake@ CPPCHECK_CMD=$(CPPCHECK) $(CPPCHECK_OPTS) | |
77 | @ifGNUmake@ else | |
78 | @ifGNUmake@ CHECK_CMD=@true | |
79 | @ifGNUmake@ CPPCHECK_CMD=@true | |
80 | @ifGNUmake@ endif | |
81 | @ifGNUmake@ endif | |
82 | ||
83 | @ifNotGNUmake@ CHECK_CMD=true | |
84 | @ifNotGNUmake@ CPPCHECK_CMD=true | |
85 | ||
86 | SANITIZER_CFLAGS = @lto_cflags@ @ubsan_cflags@ @addrsan_cflags@ @threadsan_cflags@ | |
87 | SANITIZER_LDFLAGS = @lto_ldflags@ @ubsan_ldflags@ @addrsan_ldflags@ @threadsan_ldflags@ | |
88 | ||
89 | CC = @PTHREAD_CC@ | |
90 | CXX = @CXX@ | |
91 | BUILD_CC = @BUILD_CC@ | |
92 | PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ | |
93 | PTHREAD_LIBS = @PTHREAD_LIBS@ | |
94 | CFLAGS = @CFLAGS@ | |
95 | CFLAGS_SHLIB = @CFLAGS_SHLIB@ | |
96 | CFLAGS_STLIB = @CFLAGS_STLIB@ | |
97 | CPPFLAGS = @INCLUDES@ | |
98 | ALL_CFLAGS = $(CPPFLAGS) $(SANITIZER_CFLAGS) $(CFLAGS) $(PTHREAD_CFLAGS) $(CFLAGS_WARN) @DEFS@ $(LOCAL_CFLAGS) | |
99 | ALL_CFLAGS_SHLIB = $(CPPFLAGS) $(SANITIZER_CFLAGS) $(CFLAGS_SHLIB) $(PTHREAD_CFLAGS) $(CFLAGS_WARN) @DEFS@ $(LOCAL_CFLAGS) | |
100 | ALL_CFLAGS_STLIB = $(CPPFLAGS) $(SANITIZER_CFLAGS) $(CFLAGS_STLIB) $(PTHREAD_CFLAGS) $(CFLAGS_WARN) @DEFS@ $(LOCAL_CFLAGS) | |
101 | LDFLAGS = $(SANITIZER_LDFLAGS) $(PTHREAD_CFLAGS) @LDFLAGS@ | |
102 | LDFLAGS_SHLIB = $(SANITIZER_LDFLAGS) $(PTHREAD_CFLAGS) @LDFLAGS_SHLIB@ | |
103 | ALL_LDFLAGS = $(LDFLAGS) @LDFLAG_DYNAMIC@ $(LOCAL_LDFLAGS) | |
104 | LDFLAGS_STATIC = $(SANITIZER_LDFLAGS) $(PTHREAD_CFLAGS) @LDFLAGS_STATIC@ | |
105 | BUILD_CFLAGS = $(SANITIZER_CFLAGS) @BUILD_CFLAGS@ | |
106 | BUILD_LDFLAGS = $(SANITIZER_LDFLAGS) @BUILD_LDFLAGS@ | |
107 | RDYNAMIC = @RDYNAMIC@ | |
108 | LINK_BUILD_FLAGS = @LINK_BUILD_FLAGS@ | |
109 | LINK_INSTALL_FLAGS = @LINK_INSTALL_FLAGS@ | |
110 | RM = @RM@ | |
111 | LN = @LN@ | |
112 | LN_S = @LN_S@ | |
113 | MV = @MV@ | |
114 | CP = @CP@ | |
115 | CHMOD = @CHMOD@ | |
116 | AR = @AR@ | |
117 | AWK = @AWK@ | |
118 | SED = @SED@ | |
119 | PERL = @PERL@ | |
120 | RANLIB = @RANLIB@ | |
121 | STRIP = @STRIP@ | |
122 | LD = $(PURE) @CC@ | |
123 | ARUPD = $(AR) r | |
124 | ARGEN = $(AR) rc | |
125 | LDCONFIG = @LDCONFIG@ | |
126 | INSTALL_PROGRAM = @INSTALL_PROGRAM@ | |
127 | INSTALL_DATA = @INSTALL_DATA@ | |
128 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ | |
129 | ||
130 | # | |
131 | # Library definitions | |
132 | # | |
133 | LIB = $(top_builddir)/lib | |
134 | LIBSS = $(LIB)/libss@LIB_EXT@ @PRIVATE_LIBS_CMT@ @DLOPEN_LIB@ | |
135 | LIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ @PRIVATE_LIBS_CMT@ @SEM_INIT_LIB@ | |
136 | LIBE2P = $(LIB)/libe2p@LIB_EXT@ | |
137 | LIBEXT2FS = $(LIB)/libext2fs@LIB_EXT@ | |
138 | LIBUUID = @LIBUUID@ @SOCKET_LIB@ | |
139 | LIBMAGIC = @MAGIC_LIB@ | |
140 | LIBFUSE = @FUSE_LIB@ | |
141 | LIBSUPPORT = $(LIBINTL) $(LIB)/libsupport@STATIC_LIB_EXT@ | |
142 | LIBBLKID = @LIBBLKID@ @PRIVATE_LIBS_CMT@ $(LIBUUID) | |
143 | LIBINTL = @LIBINTL@ | |
144 | SYSLIBS = @LIBS@ @PTHREAD_LIBS@ | |
145 | DEPLIBSS = $(LIB)/libss@LIB_EXT@ | |
146 | DEPLIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ | |
147 | DEPLIBUUID = @DEPLIBUUID@ | |
148 | DEPLIBSUPPORT = $(LIB)/libsupport@STATIC_LIB_EXT@ | |
149 | DEPLIBBLKID = @DEPLIBBLKID@ @PRIVATE_LIBS_CMT@ $(DEPLIBUUID) | |
150 | TESTENV = LD_LIBRARY_PATH="$(LIB):$${LD_LIBRARY_PATH}" DYLD_LIBRARY_PATH="$(LIB):$${DYLD_LIBRARY_PATH}" | |
151 | ||
152 | STATIC_LIBSS = $(LIB)/libss@STATIC_LIB_EXT@ @DLOPEN_LIB@ | |
153 | STATIC_LIBCOM_ERR = $(LIB)/libcom_err@STATIC_LIB_EXT@ @SEM_INIT_LIB@ | |
154 | STATIC_LIBE2P = $(LIB)/libe2p@STATIC_LIB_EXT@ | |
155 | STATIC_LIBEXT2FS = $(LIB)/libext2fs@STATIC_LIB_EXT@ | |
156 | STATIC_LIBUUID = @STATIC_LIBUUID@ @SOCKET_LIB@ | |
157 | STATIC_LIBSUPPORT = $(LIBINTL) $(LIBSUPPORT) | |
158 | STATIC_LIBBLKID = @STATIC_LIBBLKID@ $(STATIC_LIBUUID) | |
159 | DEPSTATIC_LIBSS = $(LIB)/libss@STATIC_LIB_EXT@ | |
160 | DEPSTATIC_LIBCOM_ERR = $(LIB)/libcom_err@STATIC_LIB_EXT@ | |
161 | DEPSTATIC_LIBUUID = @DEPSTATIC_LIBUUID@ | |
162 | DEPSTATIC_LIBSUPPORT = $(DEPLIBSUPPORT) | |
163 | DEPSTATIC_LIBBLKID = @DEPSTATIC_LIBBLKID@ $(DEPSTATIC_LIBUUID) | |
164 | ||
165 | PROFILED_LIBSS = $(LIB)/libss@PROFILED_LIB_EXT@ @DLOPEN_LIB@ | |
166 | PROFILED_LIBCOM_ERR = $(LIB)/libcom_err@PROFILED_LIB_EXT@ @SEM_INIT_LIB@ | |
167 | PROFILED_LIBE2P = $(LIB)/libe2p@PROFILED_LIB_EXT@ | |
168 | PROFILED_LIBEXT2FS = $(LIB)/libext2fs@PROFILED_LIB_EXT@ | |
169 | PROFILED_LIBUUID = @PROFILED_LIBUUID@ @SOCKET_LIB@ | |
170 | PROFILED_LIBSUPPORT = $(LIBINTL) $(LIB)/libsupport@PROFILED_LIB_EXT@ | |
171 | PROFILED_LIBBLKID = @PROFILED_LIBBLKID@ $(PROFILED_LIBUUID) | |
172 | DEPPROFILED_LIBSS = $(LIB)/libss@PROFILED_LIB_EXT@ | |
173 | DEPPROFILED_LIBCOM_ERR = $(LIB)/libcom_err@PROFILED_LIB_EXT@ | |
174 | DEPPROFILED_LIBUUID = @PROFILED_LIBUUID@ | |
175 | DEPPROFILED_LIBSUPPORT = $(PROFILED_LIBSUPPORT) | |
176 | DEPPROFILED_LIBBLKID = @PROFILED_LIBBLKID@ $(DEPPROFILED_LIBUUID) | |
177 | ||
178 | # | |
179 | # A fast substitution command for fixing up man pages, shell scripts, etc. | |
180 | # | |
181 | SUBST_CONF=$(top_builddir)/util/subst.conf | |
182 | SUBSTITUTE= $(top_builddir)/util/subst -f $(SUBST_CONF) | |
183 | SUBSTITUTE_UPTIME= $(top_builddir)/util/subst -t -f $(SUBST_CONF) | |
184 | DEP_SUBSTITUTE= $(top_builddir)/util/subst $(SUBST_CONF) | |
185 | ||
186 | $(top_builddir)/util/subst: | |
187 | cd $(top_builddir)/util ; $(MAKE) subst | |
188 | ||
189 | # | |
190 | # Script for generating utf8data.h | |
191 | # | |
192 | MKUTF8DATA=$(top_builddir)/util/mkutf8data | |
193 | ||
194 | $(top_builddir)/util/mkutf8data: | |
195 | $(MAKE) -C $(top_builddir)/util mkutf8data | |
196 | ||
197 | # | |
198 | # Script for installing symlinks (for shared libraries) | |
199 | # | |
200 | $(top_builddir)/util/install-symlink: $(top_srcdir)/util/install-symlink.in \ | |
201 | $(top_builddir)/config.status | |
202 | cd $(top_builddir); CONFIG_FILES=util/install-symlink ./config.status | |
203 | chmod +x $(top_builddir)/util/install-symlink | |
204 | ||
205 | $(top_builddir)/util/symlinks: | |
206 | cd $(top_builddir)/util ; $(MAKE) symlinks | |
207 | ||
208 | INSTALL_SYMLINK = /bin/sh $(top_builddir)/util/install-symlink \ | |
209 | @SYMLINK_RELATIVE@ \ | |
210 | --symlinks=$(top_builddir)/util/symlinks | |
211 | DEP_INSTALL_SYMLINK = $(top_builddir)/util/install-symlink \ | |
212 | $(top_builddir)/util/symlinks | |
213 | ||
214 | # | |
215 | # Warning flags | |
216 | # | |
217 | # Run make gcc-wall to do a build with warning messages. | |
218 | # | |
219 | # | |
220 | WFLAGS= -std=gnu99 -D_XOPEN_SOURCE=600 -D_GNU_SOURCE $(WFLAGS_EXTRA) \ | |
221 | -Wall -W -Wwrite-strings -Wpointer-arith \ | |
222 | -Wcast-qual -Wcast-align -Wno-variadic-macros \ | |
223 | -Wstrict-prototypes -Wmissing-prototypes \ | |
224 | -Wformat-security -Wformat-nonliteral \ | |
225 | -Wmissing-format-attribute -O2 -Wstrict-aliasing \ | |
226 | -Wnested-externs -Winline -DNO_INLINE_FUNCS -Wshadow \ | |
227 | -UENABLE_NLS | |
228 | ||
229 | gcc-wall-new: | |
230 | ($(MAKE) CFLAGS_WARN="$(WFLAGS)" > /dev/null) 2>&1 | |
231 | ||
232 | gcc-wall: | |
233 | $(MAKE) clean > /dev/null | |
234 | $(MAKE) gcc-wall-new | |
235 | ||
236 | static-check: | |
237 | ($(MAKE) C=1 V=1 CFLAGS="$(ALL_CFLAGS) $(WFLAGS)") 2>&1 | |
238 | ||
239 | static-check-all: | |
240 | $(MAKE) clean > /dev/null | |
241 | $(MAKE) static-check | |
242 | ||
243 | # | |
244 | # Installation user and groups | |
245 | # | |
246 | BINGRP= bin | |
247 | BINOWN= bin | |
248 | BINMODE= 555 | |
249 | INCGRP= bin | |
250 | INCOWN= bin | |
251 | INCMODE= 444 | |
252 | LIBOWN= bin | |
253 | LIBGRP= bin | |
254 | LIBMODE= 444 | |
255 | MANGRP= bin | |
256 | MANOWN= bin | |
257 | MANMODE= 444 | |
258 | ||
259 | # | |
260 | # Autoconf magic... | |
261 | # | |
262 | ||
263 | DEP_LIB_MAKEFILES = $(top_srcdir)/lib/Makefile.library \ | |
264 | $(top_srcdir)/lib/Makefile.elf-lib \ | |
265 | $(top_srcdir)/lib/Makefile.bsd-lib \ | |
266 | $(top_srcdir)/lib/Makefile.darwin-lib \ | |
267 | $(top_srcdir)/lib/Makefile.solaris-lib \ | |
268 | $(top_srcdir)/lib/Makefile.profile | |
269 | ||
270 | $(top_builddir)/config.status: $(top_srcdir)/configure | |
271 | cd $(top_builddir); ./config.status --recheck | |
272 | ||
273 | $(top_builddir)/MCONFIG: $(top_srcdir)/MCONFIG.in $(top_builddir)/config.status | |
274 | cd $(top_builddir); CONFIG_FILES=MCONFIG ./config.status | |
275 | ||
276 | $(top_builddir)/lib/config.h: $(top_srcdir)/lib/config.h.in \ | |
277 | $(top_builddir)/config.status | |
278 | cd $(top_builddir); CONFIG_FILES=lib/config.h ./config.status | |
279 | ||
280 | $(top_builddir)/lib/dirpaths.h: $(DEP_SUBSTITUTE) $(top_srcdir)/lib/dirpaths.h.in | |
281 | $(E) " SUBST $@" | |
282 | $(Q) $(SUBSTITUTE) $(top_srcdir)/lib/dirpaths.h.in $@ | |
283 | ||
284 | $(top_builddir)/lib/substitute_sh: $(top_srcdir)/lib/substitute_sh.in \ | |
285 | $(top_builddir)/config.status | |
286 | cd $(top_builddir); CONFIG_FILES=lib/substitute_sh ./config.status | |
287 | ||
288 | $(top_builddir)/util/subst.conf: $(top_srcdir)/util/subst.conf.in \ | |
289 | $(top_builddir)/config.status | |
290 | cd $(top_builddir); CONFIG_FILES=util/subst.conf ./config.status | |
291 | ||
292 | Makefile: $(srcdir)/Makefile.in $(top_builddir)/MCONFIG \ | |
293 | $(DEP_MAKEFILE) $(top_builddir)/config.status | |
294 | cd $(top_builddir); CONFIG_FILES=$(my_dir)/Makefile ./config.status | |
295 | ||
296 | @MAINTAINER_CMT@$(top_srcdir)/configure: $(top_srcdir)/configure.ac | |
297 | @MAINTAINER_CMT@ cd $(top_srcdir) && autoheader && autoconf | |
298 | ||
299 | coverage.txt: Makefile $(SRCS) | |
300 | if test -n "$(SRCS)"; then \ | |
301 | gcov -s $(top_srcdir) -o . $(SRCS) > coverage.txt 2>&1 ; \ | |
302 | fi | |
303 | ||
304 | clean:: | |
305 | $(RM) -f *.gcda *.gcov *.gcno coverage.txt | |
306 | ||
307 | # | |
308 | # Make depend magic... | |
309 | # | |
310 | ||
311 | .depend: Makefile $(SRCS) $(top_srcdir)/depfix.sed $(top_srcdir)/wordwrap.pl | |
312 | if test -n "$(SRCS)" ; then \ | |
313 | $(CC) -M $(ALL_CFLAGS) $(DEPEND_CFLAGS) $(SRCS) | \ | |
314 | $(SED) -f $(top_srcdir)/depfix.sed \ | |
315 | -e 's; $(srcdir)/; $$(srcdir)/;g' \ | |
316 | -e 's; $(top_srcdir)/; $$(top_srcdir)/;g' \ | |
317 | -e 's; $(top_builddir)/; $$(top_builddir)/;g' \ | |
318 | -e 's; \./; ;g' \ | |
319 | -e '/^#/d' \ | |
320 | -e '/^ *\\$$/d' | \ | |
321 | $(PERL) $(top_srcdir)/wordwrap.pl > .depend; \ | |
322 | else :; fi | |
323 | ||
324 | depend:: .depend | |
325 | if test -n "$(SRCS)" ; then \ | |
326 | sed -e '/^# +++ Dependency line eater +++/,$$d' \ | |
327 | < $(srcdir)/Makefile.in | cat - .depend \ | |
328 | > $(srcdir)/Makefile.in.new; \ | |
329 | if cmp -s $(srcdir)/Makefile.in $(srcdir)/Makefile.in.new ; then \ | |
330 | $(RM) $(srcdir)/Makefile.in.new ; \ | |
331 | else \ | |
332 | $(MV) $(srcdir)/Makefile.in $(srcdir)/Makefile.in.old; \ | |
333 | $(MV) $(srcdir)/Makefile.in.new $(srcdir)/Makefile.in; \ | |
334 | fi ; else :; fi | |
335 | ||
336 | # End of file MCONFIG |