[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11b-49-
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11b-49-gf450cd1 |
Date: |
Tue, 24 Apr 2012 08:39:36 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".
http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=f450cd19f4efa6ab3bafa072d7756239b6888ae0
The branch, master has been updated
via f450cd19f4efa6ab3bafa072d7756239b6888ae0 (commit)
from 509b231118fff35e8f5dbfa797218265e8bc6acc (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit f450cd19f4efa6ab3bafa072d7756239b6888ae0
Author: Stefano Lattarini <address@hidden>
Date: Mon Apr 23 22:56:52 2012 +0200
coverage: test the internal $(am__relativize) variable
This new coverage might turn out be useful for the planned changes
in Automake-NG. Even if it eventually doesn't, we gen an improved
testsuite exposure of some non-trivial internals, so it's always a
win for us.
* t/relativize.tap: New test.
* t/list-of-tests.mk: Add it.
Signed-off-by: Stefano Lattarini <address@hidden>
-----------------------------------------------------------------------
Summary of changes:
t/list-of-tests.mk | 1 +
t/relativize.tap | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 97 insertions(+), 0 deletions(-)
create mode 100755 t/relativize.tap
diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk
index 2a3ec35..fef7165 100644
--- a/t/list-of-tests.mk
+++ b/t/list-of-tests.mk
@@ -885,6 +885,7 @@ t/python-virtualenv.sh \
t/python-pr10995.sh \
t/recurs.sh \
t/recurs2.sh \
+t/relativize.tap \
t/remake.sh \
t/remake1a.sh \
t/remake2.sh \
diff --git a/t/relativize.tap b/t/relativize.tap
new file mode 100755
index 0000000..8f53b6c
--- /dev/null
+++ b/t/relativize.tap
@@ -0,0 +1,96 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Test Automake-provided internal make macro $(am__relativize).
+
+am_create_testdir=empty
+. ./defs || Exit 1
+
+plan_ later
+
+mkdir uber uber/top
+cd uber/top
+
+: > install-sh
+: > missing
+
+cat >> configure.ac <<END
+AC_INIT([$me], [1.0])
+AM_INIT_AUTOMAKE
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT
+END
+
+cat > Makefile.am << 'END'
+# The 'am__relitivize' definition is only brought in when
+# SUBDIRS are defined.
+SUBDIRS = .
+
+.PHONY: test
+test:
+ @$(am__relativize); echo "result: '$$reldir'"; set -x; \
+ case $${reldir:-.} in "$$exp"|"$$exp/.") ;; *) exit 1;; esac
+END
+
+$ACLOCAL && $AUTOMAKE && $AUTOCONF && ./configure || fatal_ "setup failure"
+
+rel_ ()
+{
+ case $1 in -x) directive=TODO; shift;; *) directive=;; esac
+ test $# -eq 4 && test x"$3" = x"=" || fatal_ "rel_: incorrect usage"
+ command_ok_ "$1/{$4} = $2" -D "$directive" \
+ env dir1=$1 dir2=$2 exp=$4 $MAKE test
+}
+
+# am__relativize
+# ~~~~~~~~~~~~~~
+# 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
+
+rel_ . . = .
+rel_ . .. = ..
+rel_ .. . = top
+
+for d in x long-longer a/b 1/2/3/4/5; do
+ rel_ $d $d = .
+ for d2 in . .. x r/s/t; do
+ rel_ $d $d/$d2 = $d2
+ done
+done
+
+rel_ one two = ../two
+rel_ a b/c = ../b/c
+rel_ a/b . = ../..
+rel_ a/b foo = ../../foo
+rel_ a/b foo/bar = ../../foo/bar
+rel_ a/b a/c = ../c
+rel_ a/b a/c/d = ../c/d
+
+rel_ foo/bar/baz foo/bar/qux/zap = ../qux/zap
+
+rel_ ../foo . = ../top
+rel_ ../.. . = uber/top
+rel_ ../../foo . = ../uber/top
+rel_ ../../x ok = ../uber/top/ok
+rel_ ../../x bo/ba = ../uber/top/bo/ba
+rel_ ../../x ../ok2 = ../uber/top/../ok2
+rel_ ../a/b/c/d/e . = ../../../../../top
+
+:
hooks/post-receive
--
GNU Automake
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11b-49-gf450cd1,
Stefano Lattarini <=