diff options
author | Alex Elder <aelder@sgi.com> | 2011-03-04 19:37:36 +0000 |
---|---|---|
committer | Alex Elder <aelder@sgi.com> | 2011-03-09 14:52:45 -0600 |
commit | 6249f4ae8dc7828041b180a025cbf099583af1c1 (patch) | |
tree | 5a02f4d7b24d4a463b5933a657a9775f8842dda6 /Makefile | |
parent | 19becaacd6d167eebf34e6c6a13527482e1c78e6 (diff) |
xfstests: a few fixes to Makefile
Change the top-level Makefile, to make it clearer just what makes
what, and what depends on what:
- Separate the rules for "configure" and "include/builddefs" into
two parts, each of which generate one of the files
- Get rid of the rule for include/config.h, and group it with the
one for include/builddefs (the same command creates both files)
Having done this, we find that having both "include/builddefs" and
"include/config.h" as dependencies for the default target results in
a parallel invocation of "make" spawning two concurrent attempts to
do the configure step--and that doesn't work.
Creating one of those two will result in the other getting created,
so just list one of them as a dependency for the default rule.
A couple of other small fixes:
- Get rid of the "new", "remake" and "check" dependencies for the
default rule, which serv no purpose
- Use the $(Q) convention in a few missed spots
- Stop a DMAPI-only comment from getting echoed on default build
- Delete the "
This updated version pulls in the content of a patch previously
posted separately to fix the problem with parallel builds.
Signed-off-by: Alex Elder <aelder@sgi.com>
Reviewed-by: Eric Sandeen <sandeen@sandeen.net>
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 23 |
1 files changed, 10 insertions, 13 deletions
@@ -39,14 +39,14 @@ TOOL_SUBDIRS = ltp src m4 SUBDIRS = $(LIB_SUBDIRS) $(TOOL_SUBDIRS) -default: include/builddefs include/config.h $(DMAPI_MAKEFILE) new remake check $(TESTS) +default: include/builddefs $(DMAPI_MAKEFILE) $(TESTS) ifeq ($(HAVE_BUILDDEFS), no) $(Q)$(MAKE) $(MAKEOPTS) $@ else $(Q)$(MAKE) $(MAKEOPTS) $(SUBDIRS) +ifeq ($(HAVE_DMAPI), true) # automake doesn't always support "default" target # so do dmapi make explicitly with "all" -ifeq ($(HAVE_DMAPI), true) $(Q)$(MAKE) $(MAKEOPTS) -C $(TOPDIR)/dmapi all endif endif @@ -60,22 +60,19 @@ else clean: # if configure hasn't run, nothing to clean endif -configure include/builddefs: +configure: configure.in autoheader autoconf + +include/builddefs include/config.h: configure ./configure \ --libexecdir=/usr/lib \ --enable-lib64=yes -include/config.h: include/builddefs -## Recover from the removal of $@ - @if test -f $@; then :; else \ - rm -f include/builddefs; \ - $(MAKE) $(AM_MAKEFLAGS) include/builddefs; \ - fi - +ifeq ($(HAVE_DMAPI), true) $(DMAPI_MAKEFILE): - cd $(TOPDIR)/dmapi/ ; ./configure + $(Q)cd $(TOPDIR)/dmapi && ./configure +endif aclocal.m4:: aclocal --acdir=`pwd`/m4 --output=$@ @@ -97,5 +94,5 @@ install-dev install-lib: $(MAKE) $(MAKEOPTS) -C $* install realclean distclean: clean - rm -f $(LDIRT) $(CONFIGURE) - rm -rf autom4te.cache Logs + $(Q)rm -f $(LDIRT) $(CONFIGURE) + $(Q)rm -rf autom4te.cache Logs |