automake-commit
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]