123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561 |
- ## automake - create Makefile.in from Makefile.am
- ## Copyright (C) 2001-2017 Free Software Foundation, Inc.
- ## This program is free software; you can redistribute it and/or modify
- ## it under the terms of the GNU General Public License as published by
- ## the Free Software Foundation; either version 2, or (at your option)
- ## any later version.
- ## This program is distributed in the hope that it will be useful,
- ## but WITHOUT ANY WARRANTY; without even the implied warranty of
- ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ## GNU General Public License for more details.
- ## You should have received a copy of the GNU General Public License
- ## along with this program. If not, see <http://www.gnu.org/licenses/>.
- DIST_COMMON += $(am__DIST_COMMON)
- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
- if %?TOPDIR_P%
- distdir = $(PACKAGE)-$(VERSION)
- top_distdir = $(distdir)
- am__remove_distdir = \
- if test -d "$(distdir)"; then \
- find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -rf "$(distdir)" \
- ## On MSYS (1.0.17) it is not possible to remove a directory that is in
- ## use; so, if the first rm fails, we sleep some seconds and retry, to
- ## give pending processes some time to exit and "release" the directory
- ## before we remove it. The value of "some seconds" is 5 for the moment,
- ## which is mostly an arbitrary value, but seems high enough in practice.
- ## See automake bug#10470.
- || { sleep 5 && rm -rf "$(distdir)"; }; \
- else :; fi
- am__post_remove_distdir = $(am__remove_distdir)
- endif %?TOPDIR_P%
- if %?SUBDIRS%
- ## computes a relative pathname RELDIR such that DIR1/RELDIR = DIR2.
- ## Input:
- ## - DIR1 relative pathname, relative to the current directory
- ## - DIR2 relative pathname, relative to the current directory
- ## Output:
- ## - reldir relative pathname of DIR2, relative to DIR1
- am__relativize = \
- dir0=`pwd`; \
- sed_first='s,^\([^/]*\)/.*$$,\1,'; \
- sed_rest='s,^[^/]*/*,,'; \
- sed_last='s,^.*/\([^/]*\)$$,\1,'; \
- sed_butlast='s,/*[^/]*$$,,'; \
- while test -n "$$dir1"; do \
- first=`echo "$$dir1" | sed -e "$$sed_first"`; \
- if test "$$first" != "."; then \
- if test "$$first" = ".."; then \
- dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
- dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
- else \
- first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
- if test "$$first2" = "$$first"; then \
- dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
- else \
- dir2="../$$dir2"; \
- fi; \
- dir0="$$dir0"/"$$first"; \
- fi; \
- fi; \
- dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
- done; \
- reldir="$$dir2"
- endif %?SUBDIRS%
- .PHONY: distdir
- if %?SUBDIRS%
- AM_RECURSIVE_TARGETS += distdir
- endif %?SUBDIRS%
- distdir: $(DISTFILES)
- ##
- ## For Gnits users, this is pretty handy. Look at 15 lines
- ## in case some explanatory text is desirable.
- ##
- if %?TOPDIR_P%
- if %?CK-NEWS%
- @case `sed 15q $(srcdir)/NEWS` in \
- *"$(VERSION)"*) : ;; \
- *) \
- echo "NEWS not updated; not releasing" 1>&2; \
- exit 1;; \
- esac
- endif %?CK-NEWS%
- endif %?TOPDIR_P%
- ##
- ## Only for the top dir.
- ##
- if %?TOPDIR_P%
- $(am__remove_distdir)
- test -d "$(distdir)" || mkdir "$(distdir)"
- endif %?TOPDIR_P%
- ##
- ##
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- ##
- ## Yet another hack to support SUN make.
- ##
- ## Let's assume 'foo' appears in DISTFILES and is not a built file.
- ## When building with VPATH=$(srcdir), SUN make and OSF1/Tru64 will
- ## rewrite 'foo' as '$(srcdir)/foo'. An attempt to install the file
- ## with
- ## cp $file $(distdir)/$file
- ## will thus install $(srcdir)/foo as $(distdir)/$(srcdir)/foo
- ## instead of $(distdir)/foo.
- ##
- ## So let's strip this leading $(srcdir)/ when it exists. (As far we
- ## know, only SUN make and OSF1/Tru64 make add it.) Searching whether
- ## the file is to be found in the source or build directory will be
- ## done later.
- ##
- ## In case we are _not_ using SUN or OSF1/Tru64 make, how can we be sure
- ## we are not stripping a legitimate filename that starts with the
- ## same pattern as $(srcdir)?
- ## Well, it can't happen without the Makefile author distributing
- ## something out of the distribution (which is bad). As an example,
- ## consider "EXTRA_DIST = ../bar". This is an issue if $srcdir is
- ## '..', however getting this value for srcdir is impossible:
- ## "EXTRA_DIST = ../bar" implies we are in a subdirectory (so '../bar'
- ## is within the package), hence '$srcdir' is something like
- ## '../../subdir'.
- ##
- ## There is more to say about files which are above the current directory,
- ## like '../bar' in the previous example. The OSF1/Tru64 make
- ## implementation can simplify filenames resulting from a VPATH lookup.
- ## For instance if "VPATH = ../../subdir" and '../bar' is found in that
- ## VPATH directory, then occurrences of '../bar' will be replaced by
- ## '../../bar' (instead of '../../subdir/../bar'). This obviously defeats
- ## any attempt to strip a leading $srcdir. Presently we have no workaround
- ## for this. We avoid this issue by writing "EXTRA_DIST = $(srcdir)/../bar"
- ## instead of "EXTRA_DIST = ../bar". This prefixing is needed only for files
- ## above the current directory. Fortunately, apart from auxdir files which
- ## can be located in .. or ../.., this situation hardly occurs in practice.
- ##
- ## Also rewrite $(top_srcdir) (which sometimes appears in DISTFILES, and can
- ## be absolute) by $(top_builddir) (which is always relative). $(srcdir) will
- ## be prepended later.
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- ## (The second 't' command clears the flag for the next round.)
- ##
- ## Make the subdirectories for the files.
- ##
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- ##
- ##
- for file in $$dist_files; do \
- ##
- ## Always look for the file in the build directory first. That way
- ## for something like yacc output we will correctly pick up the latest
- ## version. Also check for directories in the build directory first,
- ## so one can ship generated directories.
- ##
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- ##
- ## Use cp, not ln. There are situations in which "ln" can fail. For
- ## instance a file to distribute could actually be a cross-filesystem
- ## symlink -- this can easily happen if "gettextize" was run on the
- ## distribution.
- ##
- if test -d $$d/$$file; then \
- ## Don't mention $$file in the destination argument, since this fails if
- ## the destination directory already exists. Also, use '-R' and not '-r'.
- ## '-r' is almost always incorrect.
- ##
- ## If a directory exists both in '.' and $(srcdir), then we copy the
- ## files from $(srcdir) first and then install those from '.'. This
- ## can help people who distribute directories made of source files
- ## *and* generated files. It is also important when the directory
- ## exists only in $(srcdir), because some vendor Make (such as Tru64)
- ## will magically create an empty directory in '.'.
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- ## If the destination directory already exists, it may contain read-only
- ## files, e.g., during "make distcheck".
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- ## Test for file existence because sometimes a file gets included in
- ## DISTFILES twice. For example this happens when a single source
- ## file is used in building more than one program.
- ## See also test 'dist-repeated.sh'.
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
- ##
- ## Test for directory existence here because previous automake
- ## invocation might have created some directories. Note that we
- ## explicitly set distdir for the subdir make; that lets us mix-n-match
- ## many automake-using packages into one large package, and have "dist"
- ## at the top level do the right thing. If we're in the topmost
- ## directory, then we use 'distdir' instead of 'top_distdir'; this lets
- ## us work correctly with an enclosing package.
- if %?SUBDIRS%
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- $(am__make_dryrun) \
- || test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
- $(am__relativize); \
- new_distdir=$$reldir; \
- dir1=$$subdir; dir2="$(top_distdir)"; \
- $(am__relativize); \
- new_top_distdir=$$reldir; \
- echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
- echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
- ($(am__cd) $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$new_top_distdir" \
- distdir="$$new_distdir" \
- ## Disable am__remove_distdir so that sub-packages do not clear a
- ## directory we have already cleared and might even have populated
- ## (e.g. shared AUX dir in the sub-package).
- am__remove_distdir=: \
- ## Disable filename length check:
- am__skip_length_check=: \
- ## No need to fix modes more than once:
- am__skip_mode_fix=: \
- distdir) \
- || exit 1; \
- fi; \
- done
- endif %?SUBDIRS%
- ##
- ## We might have to perform some last second updates, such as updating
- ## info files.
- ## We must explicitly set distdir and top_distdir for these sub-makes.
- ##
- if %?DIST-TARGETS%
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$(top_distdir)" distdir="$(distdir)" \
- %DIST-TARGETS%
- endif %?DIST-TARGETS%
- ##
- ## This complex find command will try to avoid changing the modes of
- ## links into the source tree, in case they're hard-linked.
- ##
- ## Ignore return result from chmod, because it might give an error
- ## if we chmod a symlink.
- ##
- ## Another nastiness: if the file is unreadable by us, we make it
- ## readable regardless of the number of links to it. This only
- ## happens in perverse cases.
- ##
- ## We use $(install_sh) because that is a known-portable way to modify
- ## the file in place in the source tree.
- ##
- ## If we are being invoked recursively, then there is no need to walk
- ## the whole subtree again. This is a complexity reduction for a deep
- ## hierarchy of subpackages.
- ##
- if %?TOPDIR_P%
- -test -n "$(am__skip_mode_fix)" \
- || find "$(distdir)" -type d ! -perm -755 \
- -exec chmod u+rwx,go+rx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r "$(distdir)"
- if %?FILENAME_FILTER%
- @if test -z "$(am__skip_length_check)" && find "$(distdir)" -type f -print | \
- grep '^%FILENAME_FILTER%' 1>&2; then \
- echo 'error: the above filenames are too long' 1>&2; \
- exit 1; \
- else :; fi
- endif %?FILENAME_FILTER%
- endif %?TOPDIR_P%
- ## --------------------------------------- ##
- ## Building various distribution flavors. ##
- ## --------------------------------------- ##
- ## Note that we don't use GNU tar's '-z' option. One reason (but not
- ## the only reason) is that some versions of tar (e.g., OSF1)
- ## interpret '-z' differently.
- ##
- ## The -o option of GNU tar used to exclude empty directories. This
- ## behavior was fixed in tar 1.12 (released on 1997-04-25). But older
- ## versions of tar are still used (for instance NetBSD 1.6.1 ships
- ## with tar 1.11.2). We do not do anything specific w.r.t. this
- ## incompatibility since packages where empty directories need to be
- ## present in the archive are really unusual.
- ##
- ## We order DIST_TARGETS by expected duration of the compressors,
- ## slowest first, for better parallelism in "make dist". Do not
- ## reorder DIST_ARCHIVES, users may expect gzip to be first.
- ##
- ## Traditionally, gzip prepended the contents of the GZIP environment
- ## variable to its arguments, and the commands below formerly used
- ## this by invoking 'GZIP=$(GZIP_ENV) gzip'. The GZIP environment
- ## variable is now considered to be obsolescent, so the commands below
- ## now use 'eval GZIP= gzip $(GZIP_ENV)' instead; this should work
- ## with both older and newer gzip implementations. The 'eval' is to
- ## support makefile assignments like 'GZIP_ENV = "-9 -n"' that quote
- ## the GZIP_ENV right-hand side because that was needed with the
- ## former invocation pattern.
- if %?TOPDIR_P%
- ?GZIP?DIST_ARCHIVES += $(distdir).tar.gz
- GZIP_ENV = --best
- .PHONY: dist-gzip
- dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
- $(am__post_remove_distdir)
- ?BZIP2?DIST_ARCHIVES += $(distdir).tar.bz2
- .PHONY: dist-bzip2
- dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
- $(am__post_remove_distdir)
- ?LZIP?DIST_ARCHIVES += $(distdir).tar.lz
- .PHONY: dist-lzip
- dist-lzip: distdir
- tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
- $(am__post_remove_distdir)
- ?XZ?DIST_ARCHIVES += $(distdir).tar.xz
- .PHONY: dist-xz
- dist-xz: distdir
- tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
- $(am__post_remove_distdir)
- ?COMPRESS?DIST_ARCHIVES += $(distdir).tar.Z
- .PHONY: dist-tarZ
- dist-tarZ: distdir
- @echo WARNING: "Support for distribution archives compressed with" \
- "legacy program 'compress' is deprecated." >&2
- @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__post_remove_distdir)
- ?SHAR?DIST_ARCHIVES += $(distdir).shar.gz
- .PHONY: dist-shar
- dist-shar: distdir
- @echo WARNING: "Support for shar distribution archives is" \
- "deprecated." >&2
- @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
- shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
- $(am__post_remove_distdir)
- ?ZIP?DIST_ARCHIVES += $(distdir).zip
- .PHONY: dist-zip
- dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__post_remove_distdir)
- ?LZIP?DIST_TARGETS += dist-lzip
- ?XZ?DIST_TARGETS += dist-xz
- ?SHAR?DIST_TARGETS += dist-shar
- ?BZIP2?DIST_TARGETS += dist-bzip2
- ?GZIP?DIST_TARGETS += dist-gzip
- ?ZIP?DIST_TARGETS += dist-zip
- ?COMPRESS?DIST_TARGETS += dist-tarZ
- endif %?TOPDIR_P%
- ## ------------------------------------------------- ##
- ## Building all the requested distribution flavors. ##
- ## ------------------------------------------------- ##
- ## Currently we cannot use if/endif inside a rule. The file_contents
- ## parser needs work.
- if %?TOPDIR_P%
- .PHONY: dist dist-all
- if %?SUBDIRS%
- AM_RECURSIVE_TARGETS += dist dist-all
- endif %?SUBDIRS%
- dist dist-all:
- $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
- $(am__post_remove_distdir)
- endif %?TOPDIR_P%
- ## ------------------------- ##
- ## Checking a distribution. ##
- ## ------------------------- ##
- if %?TOPDIR_P%
- if %?SUBDIRS%
- AM_RECURSIVE_TARGETS += distcheck
- endif %?SUBDIRS%
- # This target untars the dist file and tries a VPATH configuration. Then
- # it guarantees that the distribution is self-contained by making another
- # tarfile.
- .PHONY: distcheck
- distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.lz*) \
- lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
- *.tar.xz*) \
- xz -dc $(distdir).tar.xz | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- ## Make the new source tree read-only. Distributions ought to work in
- ## this case. However, make the top-level directory writable so we
- ## can make our new subdirs.
- chmod -R a-w $(distdir)
- chmod u+w $(distdir)
- mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
- ## Undo the write access.
- chmod a-w $(distdir)
- ## With GNU make, the following command will be executed even with "make -n",
- ## due to the presence of '$(MAKE)'. That is normally all well (and '$(MAKE)'
- ## is necessary for things like parallel distcheck), but here we don't want
- ## execution. To avoid MAKEFLAGS parsing hassles, use a witness file that a
- ## non-'-n' run would have just created.
- test -d $(distdir)/_build || exit 0; \
- ## Compute the absolute path of '_inst'. Strip any leading DOS drive
- ## to allow DESTDIR installations. Otherwise "$(DESTDIR)$(prefix)" would
- ## expand to "c:/temp/am-dc-5668/c:/src/package/package-1.0/_inst".
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- ## We will attempt a DESTDIR install in $dc_destdir. We don't
- ## create this directory under $dc_install_base, because it would
- ## create very long directory names.
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- ?DISTCHECK-HOOK? && $(MAKE) $(AM_MAKEFLAGS) distcheck-hook \
- ## Parallel BSD make may not start a new shell for each command in a recipe,
- ## so be sure to 'cd' back to the original directory after this.
- && am__cwd=`pwd` \
- ## If we merely used '$(distdir)/_build' here, "make distcheck" could
- ## sometimes fail to detect missing files in the distribution tarball,
- ## especially in those cases where both the generated files and their
- ## dependencies are explicitly in $(srcdir). See automake bug#18286.
- && $(am__cd) $(distdir)/_build/sub \
- && ../../configure \
- ?GETTEXT? --with-included-gettext \
- ## Additional flags for configure.
- $(AM_DISTCHECK_CONFIGURE_FLAGS) \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- ## At the moment, the code doesn't actually support changes in these --srcdir
- ## and --prefix values, so don't allow them to be overridden by the user or
- ## the developer. That used to be allowed, and caused issues in practice
- ## (in corner-case usages); see automake bug#14991.
- --srcdir=../.. --prefix="$$dc_install_base" \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- ## Make sure the package has proper DESTDIR support (we could not test this
- ## in the previous install/installcheck/uninstall test, because it's reasonable
- ## for installcheck to fail in a DESTDIR install).
- ## We make the '$dc_install_base' read-only because this is where files
- ## with missing DESTDIR support are likely to be installed.
- && chmod -R a-w "$$dc_install_base" \
- ## The logic here is quite convoluted because we must clean $dc_destdir
- ## whatever happens (it won't be erased by the next run of distcheck like
- ## $(distdir) is).
- && ({ \
- ## Build the directory, so we can cd into it even if "make install"
- ## didn't create it. Use mkdir, not $(MKDIR_P) because we want to
- ## fail if the directory already exists (PR/413).
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- ## Make sure to remove the dists we created in the test build directory.
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
- ## Cater to parallel BSD make (see above).
- && cd "$$am__cwd" \
- || exit 1
- $(am__post_remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
- ## Define distuninstallcheck_listfiles and distuninstallcheck separately
- ## from distcheck, so that they can be overridden by the user.
- .PHONY: distuninstallcheck
- distuninstallcheck_listfiles = find . -type f -print
- ## The 'dir' file (created by install-info) might still exist after
- ## uninstall, so we must be prepared to account for it. The following
- ## check is not 100% strict, but is definitely good enough, and even
- ## accounts for overridden $(infodir).
- am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
- | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
- distuninstallcheck:
- @test -n '$(distuninstallcheck_dir)' || { \
- echo 'ERROR: trying to run $@ with an empty' \
- '$$(distuninstallcheck_dir)' >&2; \
- exit 1; \
- }; \
- $(am__cd) '$(distuninstallcheck_dir)' || { \
- echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
- exit 1; \
- }; \
- test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
- ## Define distcleancheck_listfiles and distcleancheck separately
- ## from distcheck, so that they can be overridden by the user.
- .PHONY: distcleancheck
- distcleancheck_listfiles = find . -type f -print
- distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
- endif %?TOPDIR_P%
|