summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2012-02-02 22:01:13 +0000
committerMichał Górny <mgorny@gentoo.org>2012-02-02 22:01:13 +0000
commitcfea2b5593ee547710cffbc481b456b81f330061 (patch)
tree03c86cc2e1b7973a4e4ad94ebbce0a8901b0c3e1 /eclass/autotools-utils.eclass
parentVersion bump, thanks Julian Ospald (diff)
downloadgentoo-2-cfea2b5593ee547710cffbc481b456b81f330061.tar.gz
gentoo-2-cfea2b5593ee547710cffbc481b456b81f330061.tar.bz2
gentoo-2-cfea2b5593ee547710cffbc481b456b81f330061.zip
Use checksums to determine whether files need autoreconf. Fixes bug #399641.
Diffstat (limited to 'eclass/autotools-utils.eclass')
-rw-r--r--eclass/autotools-utils.eclass17
1 files changed, 10 insertions, 7 deletions
diff --git a/eclass/autotools-utils.eclass b/eclass/autotools-utils.eclass
index 59e58afe9f45..2d2cbc1d0b5f 100644
--- a/eclass/autotools-utils.eclass
+++ b/eclass/autotools-utils.eclass
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/autotools-utils.eclass,v 1.46 2012/01/30 13:11:27 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/autotools-utils.eclass,v 1.47 2012/02/02 22:01:13 mgorny Exp $
# @ECLASS: autotools-utils.eclass
# @MAINTAINER:
@@ -362,14 +362,17 @@ autotools-utils_src_prepare() {
[[ ${PATCHES} ]] && epatch "${PATCHES[@]}"
- touch "${T}"/.autotools-utils.timestamp || die
+ at_checksum() {
+ find '(' -name 'Makefile.am' \
+ -o -name 'configure.ac' \
+ -o -name 'configure.in' ')' \
+ -exec cksum {} + | sort -k2
+ }
+
+ [[ ! ${want_autoreconf} ]] && local checksum=$(at_checksum)
epatch_user
if [[ ! ${want_autoreconf} ]]; then
- if [[ $(find . -newer "${T}"/.autotools-utils.timestamp \
- -a '(' -name 'Makefile.am' \
- -o -name 'configure.ac' \
- -o -name 'configure.in' ')' \
- -print -quit) ]]; then
+ if [[ ${checksum} != $(at_checksum) ]]; then
einfo 'Will autoreconfigure due to user patches applied.'
want_autoreconf=yep
fi