e2fsprogs/MCONFIG.in
Theodore Ts'o c1986ecb6f Fix blhc (Build Log Hardening Check) warnings
The Build Log Hardening Check is a debian tool which scans the output
of a package build making sure that the security hardening flags are
used when compiling and linking all of binaries in a package.

For the most part we were passing CFLAGS, CPPFLAGS, and LDFLAGS down
to the compiler and link commands, but there there were one or two
exceptions.  In addition, there where a few places in "make install"
where the V=1 option was not being honored, which triggered blhc
warnings since it couldn't analyze those commands.

The e2fsck.static was the only binary that was not getting built and
packaged with the hardening flags, but I've fixed all of the blhc
warnings so in the future it will be obvious if we regress.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2012-06-13 16:06:44 -04:00

267 lines
7.7 KiB
Plaintext

# Beginning of file MCONFIG
all::
check::
SHELL = /bin/sh
COMPRESS_EXT = gz bz2 bz Z
prefix = @prefix@
root_prefix = @root_prefix@
exec_prefix = @exec_prefix@
root_bindir = @root_bindir@
root_sbindir = @root_sbindir@
root_libdir = @root_libdir@
datarootdir = @datarootdir@
bindir = @bindir@
sbindir = @sbindir@
libdir = @libdir@
datadir= @datadir@
localedir = $(datadir)/locale
root_sysconfdir= @root_sysconfdir@
includedir = @includedir@
mandir = @mandir@
man1dir = $(mandir)/man1
man3dir = $(mandir)/man3
man5dir = $(mandir)/man5
man8dir = $(mandir)/man8
infodir = @infodir@
datadir = @datadir@
@SET_MAKE@
@ifGNUmake@ V =
@ifGNUmake@ ifeq ($(strip $(V)),)
@ifGNUmake@ # E = @echo
@ifGNUmake@ # ES = echo
@ifGNUmake@ # Q = @
@ifGNUmake@ E = @E@
@ifGNUmake@ ES = @ES@
@ifGNUmake@ Q = @Q@
@ifGNUmake@ else
@ifGNUmake@ E = @\#
@ifGNUmake@ ES = \#
@ifGNUmake@ Q =
@ifGNUmake@ endif
@ifNotGNUmake@ E = @E@
@ifNotGNUmake@ ES = @ES@
@ifNotGNUmake@ Q = @Q@
CC = @CC@
BUILD_CC = @BUILD_CC@
CFLAGS = @CFLAGS@
CPPFLAGS = @INCLUDES@
ALL_CFLAGS = $(CPPFLAGS) $(CFLAGS)
LDFLAGS = @LDFLAGS@
ALL_LDFLAGS = $(LDFLAGS) @LDFLAG_DYNAMIC@
LDFLAGS_STATIC = $(LDFLAGS) @LDFLAG_STATIC@
BUILD_CFLAGS = @BUILD_CFLAGS@
BUILD_LDFLAGS = @BUILD_LDFLAGS@
RDYNAMIC = @RDYNAMIC@
LINK_BUILD_FLAGS = @LINK_BUILD_FLAGS@
LINK_INSTALL_FLAGS = @LINK_INSTALL_FLAGS@
RM = @RM@
LN = @LN@
LN_S = @LN_S@
MV = @MV@
CP = @CP@
CHMOD = @CHMOD@
AR = @AR@
AWK = @AWK@
SED = @SED@
PERL = @PERL@
RANLIB = @RANLIB@
STRIP = @STRIP@
LD = $(PURE) @CC@
ARUPD = $(AR) r
ARGEN = $(AR) rc
LDCONFIG = @LDCONFIG@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
MKINSTALLDIRS = @MKINSTALLDIRS@
#
# Library definitions
#
LIB = $(top_builddir)/lib
LIBSS = $(LIB)/libss@LIB_EXT@ @PRIVATE_LIBS_CMT@ @DLOPEN_LIB@
LIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ @PRIVATE_LIBS_CMT@ @SEM_INIT_LIB@
LIBE2P = $(LIB)/libe2p@LIB_EXT@
LIBEXT2FS = $(LIB)/libext2fs@LIB_EXT@
LIBUUID = @LIBUUID@ @SOCKET_LIB@
LIBQUOTA = @STATIC_LIBQUOTA@
LIBBLKID = @LIBBLKID@ @PRIVATE_LIBS_CMT@ $(LIBUUID)
LIBINTL = @LIBINTL@
DEPLIBSS = $(LIB)/libss@LIB_EXT@
DEPLIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@
DEPLIBUUID = @DEPLIBUUID@
DEPLIBQUOTA = @DEPSTATIC_LIBQUOTA@
DEPLIBBLKID = @DEPLIBBLKID@ @PRIVATE_LIBS_CMT@ $(DEPLIBUUID)
STATIC_LIBSS = $(LIB)/libss@STATIC_LIB_EXT@ @DLOPEN_LIB@
STATIC_LIBCOM_ERR = $(LIB)/libcom_err@STATIC_LIB_EXT@ @SEM_INIT_LIB@
STATIC_LIBE2P = $(LIB)/libe2p@STATIC_LIB_EXT@
STATIC_LIBEXT2FS = $(LIB)/libext2fs@STATIC_LIB_EXT@
STATIC_LIBUUID = @STATIC_LIBUUID@ @SOCKET_LIB@
STATIC_LIBQUOTA = @STATIC_LIBQUOTA@
STATIC_LIBBLKID = @STATIC_LIBBLKID@ $(STATIC_LIBUUID)
DEPSTATIC_LIBSS = $(LIB)/libss@STATIC_LIB_EXT@
DEPSTATIC_LIBCOM_ERR = $(LIB)/libcom_err@STATIC_LIB_EXT@
DEPSTATIC_LIBUUID = @DEPSTATIC_LIBUUID@
DEPSTATIC_LIBQUOTA = @DEPSTATIC_LIBQUOTA@
DEPSTATIC_LIBBLKID = @DEPSTATIC_LIBBLKID@ $(DEPSTATIC_LIBUUID)
PROFILED_LIBSS = $(LIB)/libss@PROFILED_LIB_EXT@ @DLOPEN_LIB@
PROFILED_LIBCOM_ERR = $(LIB)/libcom_err@PROFILED_LIB_EXT@ @SEM_INIT_LIB@
PROFILED_LIBE2P = $(LIB)/libe2p@PROFILED_LIB_EXT@
PROFILED_LIBEXT2FS = $(LIB)/libext2fs@PROFILED_LIB_EXT@
PROFILED_LIBUUID = @PROFILED_LIBUUID@ @SOCKET_LIB@
PROFILED_LIBQUOTA = @PROFILED_LIBQUOTA@
PROFILED_LIBBLKID = @PROFILED_LIBBLKID@ $(PROFILED_LIBUUID)
DEPPROFILED_LIBSS = $(LIB)/libss@PROFILED_LIB_EXT@
DEPPROFILED_LIBCOM_ERR = $(LIB)/libcom_err@PROFILED_LIB_EXT@
DEPPROFILED_LIBUUID = @PROFILED_LIBUUID@
DEPPROFILED_LIBQUOTA = @PROFILED_LIBQUOTA@
DEPPROFILED_LIBBLKID = @PROFILED_LIBBLKID@ $(DEPPROFILED_LIBUUID)
#
# A fast substitution command for fixing up man pages, shell scripts, etc.
#
SUBST_CONF=$(top_builddir)/util/subst.conf
SUBSTITUTE= $(top_builddir)/util/subst -f $(SUBST_CONF)
SUBSTITUTE_UPTIME= $(top_builddir)/util/subst -t -f $(SUBST_CONF)
DEP_SUBSTITUTE= $(top_builddir)/util/subst $(SUBST_CONF)
$(top_builddir)/util/subst:
cd $(top_builddir)/util ; $(MAKE) subst
#
# Script for installing symlinks (for shared libraries)
#
$(top_builddir)/util/install-symlink: $(top_srcdir)/util/install-symlink.in \
$(top_builddir)/config.status
cd $(top_builddir); CONFIG_FILES=util/install-symlink ./config.status
chmod +x $(top_builddir)/util/install-symlink
$(top_builddir)/util/symlinks:
cd $(top_builddir)/util ; $(MAKE) symlinks
INSTALL_SYMLINK = /bin/sh $(top_builddir)/util/install-symlink \
@SYMLINK_RELATIVE@ \
--symlinks=$(top_builddir)/util/symlinks
DEP_INSTALL_SYMLINK = $(top_builddir)/util/install-symlink \
$(top_builddir)/util/symlinks
#
# Warning flags
#
# Run make gcc-wall to do a build with warning messages.
#
#
WFLAGS= -std=c99 -D_XOPEN_SOURCE=600 -D_GNU_SOURCE \
-pedantic $(WFLAGS_EXTRA) \
-Wall -W -Wwrite-strings -Wpointer-arith \
-Wcast-qual -Wcast-align -Wno-variadic-macros \
-Wstrict-prototypes -Wmissing-prototypes \
-Wformat-security -Wformat-nonliteral \
-Wmissing-format-attribute -O2 -Wstrict-aliasing \
-Wnested-externs -Winline -DNO_INLINE_FUNCS -Wshadow \
-UENABLE_NLS
gcc-wall-new:
(make CFLAGS="@CFLAGS@ $(WFLAGS)" > /dev/null) 2>&1 | sed -f $(top_srcdir)/util/gcc-wall-cleanup
gcc-wall:
make clean > /dev/null
make gcc-wall-new
#
# Installation user and groups
#
BINGRP= bin
BINOWN= bin
BINMODE= 555
INCGRP= bin
INCOWN= bin
INCMODE= 444
LIBOWN= bin
LIBGRP= bin
LIBMODE= 444
MANGRP= bin
MANOWN= bin
MANMODE= 444
#
# Autoconf magic...
#
DEP_LIB_MAKEFILES = $(top_srcdir)/lib/Makefile.library \
$(top_srcdir)/lib/Makefile.elf-lib \
$(top_srcdir)/lib/Makefile.bsd-lib $(top_srcdir)/lib/Makefile.darwin-lib \
$(top_srcdir)/lib/Makefile.solaris-lib $(top_srcdir)/lib/Makefile.checker \
$(top_srcdir)/lib/Makefile.profile
$(top_builddir)/config.status: $(top_srcdir)/configure
cd $(top_builddir); ./config.status --recheck
$(top_builddir)/MCONFIG: $(top_srcdir)/MCONFIG.in $(top_builddir)/config.status
cd $(top_builddir); CONFIG_FILES=MCONFIG ./config.status
$(top_builddir)/lib/config.h: $(top_srcdir)/lib/config.h.in \
$(top_builddir)/config.status
cd $(top_builddir); CONFIG_FILES=lib/config.h ./config.status
$(top_builddir)/lib/dirpaths.h: $(DEP_SUBSTITUTE) $(top_srcdir)/lib/dirpaths.h.in
$(E) " SUBST $@"
$(Q) $(SUBSTITUTE) $(top_srcdir)/lib/dirpaths.h.in $@
$(top_builddir)/lib/substitute_sh: $(top_srcdir)/lib/substitute_sh.in \
$(top_builddir)/config.status
cd $(top_builddir); CONFIG_FILES=lib/substitute_sh ./config.status
$(top_builddir)/util/subst.conf: $(top_srcdir)/util/subst.conf.in \
$(top_builddir)/config.status
cd $(top_builddir); CONFIG_FILES=util/subst.conf ./config.status
Makefile: $(srcdir)/Makefile.in $(top_builddir)/MCONFIG \
$(DEP_MAKEFILE) $(top_builddir)/config.status
cd $(top_builddir); CONFIG_FILES=$(my_dir)/Makefile ./config.status
@MAINTAINER_CMT@$(top_srcdir)/configure: $(top_srcdir)/configure.in
@MAINTAINER_CMT@ cd $(top_srcdir) && autoheader && autoconf
#
# Make depend magic...
#
.depend: Makefile $(SRCS) $(top_srcdir)/depfix.sed $(top_srcdir)/wordwrap.pl
if test -n "$(SRCS)" ; then \
$(CC) -M $(ALL_CFLAGS) $(SRCS) | \
$(SED) -f $(top_srcdir)/depfix.sed \
-e 's; $(srcdir)/; $$(srcdir)/;g' \
-e 's; $(top_srcdir)/; $$(top_srcdir)/;g' \
-e 's; $(top_builddir)/; $$(top_builddir)/;g' \
-e 's; \./; ;g' \
-e '/^#/d' \
-e '/^ *\\$$/d' | \
$(PERL) $(top_srcdir)/wordwrap.pl > .depend; \
else :; fi
depend:: .depend
if test -n "$(SRCS)" ; then \
sed -e '/^# +++ Dependency line eater +++/,$$d' \
< $(srcdir)/Makefile.in | cat - .depend \
> $(srcdir)/Makefile.in.new; \
if cmp -s $(srcdir)/Makefile.in $(srcdir)/Makefile.in.new ; then \
$(RM) $(srcdir)/Makefile.in.new ; \
else \
$(MV) $(srcdir)/Makefile.in $(srcdir)/Makefile.in.old; \
$(MV) $(srcdir)/Makefile.in.new $(srcdir)/Makefile.in; \
fi ; else :; fi
# End of file MCONFIG