summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorinfirit <[email protected]>2014-01-03 15:22:38 +0100
committerinfirit <[email protected]>2014-01-03 15:27:58 +0100
commit2c0c0cc3954d08542d41a796926a29307076a154 (patch)
treeb11e319af7c906b59eb051942e043ed6aec478dc
parentab26b36ea5a8c3afccd13e60165f89678b73c7f3 (diff)
downloadmate-common-2c0c0cc3954d08542d41a796926a29307076a154.tar.bz2
mate-common-2c0c0cc3954d08542d41a796926a29307076a154.tar.xz
Trace AC_CONFIG_SUBDIRS with autoconf
Find configure.ac and configure.in files using the trace functionality of autoconf in order to skip build directories from incomplete make distcheck runs. GNOME bug url: http://bugzilla.gnome.org/show_bug.cgi?id=510713 Based on GNOME commit: https://git.gnome.org/browse/gnome-common/commit/?id=4668cc8250c15119dc7bdbbf842da53f4fe478fe
-rw-r--r--macros/mate-autogen19
1 files changed, 18 insertions, 1 deletions
diff --git a/macros/mate-autogen b/macros/mate-autogen
index 255cdc9..f2c0910 100644
--- a/macros/mate-autogen
+++ b/macros/mate-autogen
@@ -280,7 +280,24 @@ want_gtk_doc=false
want_yelp_tools=false
want_maintainer_mode=false
-configure_files="`find $srcdir -name '{arch}' -prune -o -name '_darcs' -prune -o -name '.??*' -prune -o -name configure.ac -print -o -name configure.in -print`"
+find_configure_files() {
+ configure_ac=
+ if test -f "$1/configure.ac"; then
+ configure_ac="$1/configure.ac"
+ elif test -f "$1/configure.in"; then
+ configure_ac="$1/configure.in"
+ fi
+ if test "x$configure_ac" != x; then
+ echo "$configure_ac"
+ # TODO We have not detected the right autoconf yet!
+ autoconf -t 'AC_CONFIG_SUBDIRS:$1' "$configure_ac" | while read dir; do
+ find_configure_files "$1/$dir"
+ done
+ fi
+}
+
+configure_files="`find_configure_files .`"
+
for configure_ac in $configure_files; do
dirname=`dirname $configure_ac`
if [ -f $dirname/NO-AUTO-GEN ]; then