automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Testing automake on Cygwin 1.7


From: Stefano Lattarini
Subject: Re: Testing automake on Cygwin 1.7
Date: Mon, 28 Nov 2011 20:43:15 +0100
User-agent: KMail/1.13.7 (Linux/2.6.30-2-686; KDE/4.6.5; i686; ; )

On Monday 28 November 2011, Peter Rosin wrote:
> Stefano Lattarini skrev 2011-11-26 19:11:
> > 
> > I propose to substitute the first patch with the attached one
> > instead.  Peter, if you have time, could you test if it works
> > correctly on Cygwin?
> 
> Oh crap, crap crap. It looks like I've been bitten by this:
> 
> http://cygwin.com/ml/cygwin/2011-03/msg00836.html
> 
> Please drop the patch for txinfo21 and sorry for the noise.
>
Cool, one less workaround to maintain! :-)

> Regarding the commit message for the 2/2 patch, the trouble with
> the double leading slash is not Cygwin specific, but instead a
> run-of-the-mill POSIX violation.
>
> A leading double slash is the key into an implementation defined
> namespace.
> 
> From the end of section 4.11 at:
> http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html#tag_04_11
> 
>       "A pathname that begins with two successive slashes may be
>       interpreted in an implementation-defined manner, although
>       more than two leading slashes shall be treated as a single
>       slash."
>
Still, Cygwin is AFAIK the only non-museum implementation that handles
leading `//' differently from `/'.  That said, we are in bikeshedding
territory, and the patch is in your name, so ...

> So, please use this commit message (or something like it)
> 
>       tests: fix 'distcheck-override-infodir.test' on Cygwin
>       * tests/distcheck-override-infodir.test (Makefile.am): Do not add
>       any `/' between $(DESTDIR) and the following paths.  Otherwise,
>       when $(DESTDIR) is empty, the recipes will try to access files
>       with a leading double slash, which have an implementation defined
>       interpretation.  For Cygwin they mean UNC paths.
> 
... I've amended the ChangeLog entry accordingly (next time, I'll leave 
to you the burden of distilling your fixes in proper patches ;-).

Attached is what I'll push in 72 hours or by your ACK (whichever comes
first).

Thanks,
  Stefano

From a7983a0f81d2135387138b563acac6ad0fb0f5f8 Mon Sep 17 00:00:00 2001
Message-Id: <address@hidden>
From: Peter Rosin <address@hidden>
Date: Sat, 26 Nov 2011 14:54:00 +0100
Subject: [PATCH] tests: fix 'distcheck-override-infodir.test' on Cygwin

* tests/distcheck-override-infodir.test (Makefile.am): Do not add
any `/' between $(DESTDIR) and the following paths.  Otherwise,
when $(DESTDIR) is empty, the recipes will try to access files
with a leading double slash, which have an implementation-defined
interpretation (e.g., for Cygwin, they mean UNC paths).
---
 ChangeLog                             |    9 +++++++++
 tests/distcheck-override-infodir.test |    8 ++++----
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index a8e6587..2ad35bb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2011-11-28  Peter Rosin  <address@hidden>
+
+       tests: fix 'distcheck-override-infodir.test' on Cygwin
+       * tests/distcheck-override-infodir.test (Makefile.am): Do not add
+       any `/' between $(DESTDIR) and the following paths.  Otherwise,
+       when $(DESTDIR) is empty, the recipes will try to access files
+       with a leading double slash, which have an implementation-defined
+       interpretation (e.g., for Cygwin, they mean UNC paths).
+
 2011-11-24  Stefano Lattarini  <address@hidden>
 
        cosmetics: typofix in comments
diff --git a/tests/distcheck-override-infodir.test 
b/tests/distcheck-override-infodir.test
index 19ad3d1..3cf38c5 100755
--- a/tests/distcheck-override-infodir.test
+++ b/tests/distcheck-override-infodir.test
@@ -32,11 +32,11 @@ info_TEXINFOS = main.texi
 ## Sanity check.
 installcheck-local:
        if test x$${infodir+set} != xset; then \
-         ls -l "$(DESTDIR)/$(prefix)/blah/blah/foobar/" || exit 1; \
-         test -f "$(DESTDIR)/$(prefix)/blah/blah/foobar/dir" || exit 1; \
+         ls -l "$(DESTDIR)$(prefix)/blah/blah/foobar/" || exit 1; \
+         test -f "$(DESTDIR)$(prefix)/blah/blah/foobar/dir" || exit 1; \
        else \
-         ls -l "$(DESTDIR)/$$infodir/" || exit 1; \
-         test -f "$(DESTDIR)/$$infodir/dir" || exit 1; \
+         ls -l "$(DESTDIR)$$infodir/" || exit 1; \
+         test -f "$(DESTDIR)$$infodir/dir" || exit 1; \
        fi
 END
 
-- 
1.7.2.3


reply via email to

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