Re: [RFC] Make build and install dirs used by distcheck configurable. (was: Re: absolute build directory with spaces)

2010-11-12 Thread Stefano Lattarini
Hello automakers and gnulibers.

Is anyone still interested in this feature?  If yes, I have some
simple updates, second thoughts, and new ideas, for which comments
are welcome.  If not, let me know before I start investing more
time on the implementation!

On Monday 06 September 2010, Stefano Lattarini wrote:
 On Sunday 05 September 2010, Ralf Wildenhues wrote:
  Hello,
  
  * Jim Meyering wrote on Sat, Sep 04, 2010 at 07:28:58PM CEST:
   Stefano Lattarini wrote:
What about instead making the names of the temporaries
source/build/install directories used by make distcheck
configurable?
 It turns out that making the srcdir configurable is not very easy or
 natural; also, I don't see any real use case for that.  So I didn't
 add this feature in the patch series.  If anyone would find this
 feature useful nonetheless, please speak up.
This will offer more flexibility, and won't
introduce still another automake option which would make
backward-compatibility more problematic.

I was thinking of something on these lines:
  $ cat Makefile.am
  ...
  AM_DISTCHECK_BUILDDIR_NAME = _ b u i l d ## will be relative to 
$(distdir)
  AM_DISTCHECK_SRCDIR_NAME = . ## likewise
  AM_DISTCHECK_INSTALLDIR_NAME = i...@l1   ## likewise
 In the end, I went for the slighty shorter names `AM_DISTCHECK_BUILDDIR'
 and `AM_DISTCHECK_INSTALLDIR'.

If you like the proposal, I might try to implement this (but not
right away).
   
   I do like it.  Thanks!
Nonetheless, I'm starting to think that making `AM_DISTCHECK_BUILDDIR_NAME'
and `AM_DISTCHECK_INSTALLDIR_NAME' defined at configure time might be a
better policy.  This way we could:
  - warn about bad values for them at ./configure time rather than at
make distcheck time;
  - allow *any* character in their values (also `#' and single-quotes)
  - allow leading and trailing whitespaces in their values.
  - make it easier for developers working on more limited system to stick
with less stressful values, thus avoiding potential spurious failures.

Opinions?

  
  Me too, but the onus for quoting should probably be with the person
  defining the variables, because there is no well-defined way to do
  otherwise.  (And of course you cannot have comments in variables.)
This problems would be solved by having `AM_DISTCHECK_BUILDDIR_NAME'
and `AM_DISTCHECK_INSTALLDIR_NAME' properly processed at configure time.

 In my patch, I let Automake take the onus for quoting, the only additional
 limit being that AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR cannot
 contain the single-quote character.
Not entirely true, in hindsight.  They also can not contain the `#'
character and leading and trailing whitespaces.

 We might still change this of course, as the attached patch is mostly
 tentative.
  I like it also because some packages will never want to care about
  being buildable under more stressful circumstances.
Also, some developers will never want to care about making distcheck
under more stressful circumstances on some more limited systems.  The
configure-time definition policy would cater to this situation, too.
 
 IMPORTANT NOTE: I still haven't run the whole testsuite against this
 patch.  I will if they are no serious objection or proposals of
 changes/extensions.
 
 Regards,
   Stefano
 
 -*-*-*-
 
 Make build and install dirs used by distcheck configurable.
 
 * automake.in (generate_makefile): Define makefile variables
 AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR when needed;
 they default respectively to `_build' and `_inst'.
 * lib/am/distdir.am (distcheck): Sanitize and honour variables
 $(AM_DISTCHECK_BUILDDIR) and $(AM_DISTCHECK_INSTALLDIR).

 * tests/distcheck0.test: New test script.
 * tests/distcheck1a.test: Likewise.
 * tests/distcheck1b.test: Likewise.
 * tests/distcheck2a.test: Likewise.
 * tests/distcheck2b.test: Likewise.
 * tests/distcheck3.test: Likewise.
 * tests/distcheck4.test: Likewise.
 * tests/distcheck5.test: Likewise.
 * tests/distcheck6.test: Likewise.
 * tests/distcheck7.test: Likewise.
 * tests/distcheck8.test: Likewise.
 * tests/distcheck9.test: Likewise.
Clearer and more expressive names for the new testcases are in order,
also.

 * tests/Makefile.am (TESTS): Updated.

Regards,
  Stefano



Re: [RFC] Make build and install dirs used by distcheck configurable. (was: Re: absolute build directory with spaces)

2010-11-12 Thread Stefano Lattarini
Hello automakers and gnulibers.

Is anyone still interested in this feature?  If yes, I have some
simple updates, second thoughts, and new ideas, for which comments
are welcome.  If not, let me know before I start investing more
time on the implementation!

On Monday 06 September 2010, Stefano Lattarini wrote:
 On Sunday 05 September 2010, Ralf Wildenhues wrote:
  Hello,
  
  * Jim Meyering wrote on Sat, Sep 04, 2010 at 07:28:58PM CEST:
   Stefano Lattarini wrote:
What about instead making the names of the temporaries
source/build/install directories used by make distcheck
configurable?
 It turns out that making the srcdir configurable is not very easy or
 natural; also, I don't see any real use case for that.  So I didn't
 add this feature in the patch series.  If anyone would find this
 feature useful nonetheless, please speak up.
This will offer more flexibility, and won't
introduce still another automake option which would make
backward-compatibility more problematic.

I was thinking of something on these lines:
  $ cat Makefile.am
  ...
  AM_DISTCHECK_BUILDDIR_NAME = _ b u i l d ## will be relative to 
$(distdir)
  AM_DISTCHECK_SRCDIR_NAME = . ## likewise
  AM_DISTCHECK_INSTALLDIR_NAME = i...@l1   ## likewise
 In the end, I went for the slighty shorter names `AM_DISTCHECK_BUILDDIR'
 and `AM_DISTCHECK_INSTALLDIR'.

If you like the proposal, I might try to implement this (but not
right away).
   
   I do like it.  Thanks!
Nonetheless, I'm starting to think that making `AM_DISTCHECK_BUILDDIR_NAME'
and `AM_DISTCHECK_INSTALLDIR_NAME' defined at configure time might be a
better policy.  This way we could:
  - warn about bad values for them at ./configure time rather than at
make distcheck time;
  - allow *any* character in their values (also `#' and single-quotes)
  - allow leading and trailing whitespaces in their values.
  - make it easier for developers working on more limited system to stick
with less stressful values, thus avoiding potential spurious failures.

Opinions?

  
  Me too, but the onus for quoting should probably be with the person
  defining the variables, because there is no well-defined way to do
  otherwise.  (And of course you cannot have comments in variables.)
This problems would be solved by having `AM_DISTCHECK_BUILDDIR_NAME'
and `AM_DISTCHECK_INSTALLDIR_NAME' properly processed at configure time.

 In my patch, I let Automake take the onus for quoting, the only additional
 limit being that AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR cannot
 contain the single-quote character.
Not entirely true, in hindsight.  They also can not contain the `#'
character and leading and trailing whitespaces.

 We might still change this of course, as the attached patch is mostly
 tentative.
  I like it also because some packages will never want to care about
  being buildable under more stressful circumstances.
Also, some developers will never want to care about making distcheck
under more stressful circumstances on some more limited systems.  The
configure-time definition policy would cater to this situation, too.
 
 IMPORTANT NOTE: I still haven't run the whole testsuite against this
 patch.  I will if they are no serious objection or proposals of
 changes/extensions.
 
 Regards,
   Stefano
 
 -*-*-*-
 
 Make build and install dirs used by distcheck configurable.
 
 * automake.in (generate_makefile): Define makefile variables
 AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR when needed;
 they default respectively to `_build' and `_inst'.
 * lib/am/distdir.am (distcheck): Sanitize and honour variables
 $(AM_DISTCHECK_BUILDDIR) and $(AM_DISTCHECK_INSTALLDIR).

 * tests/distcheck0.test: New test script.
 * tests/distcheck1a.test: Likewise.
 * tests/distcheck1b.test: Likewise.
 * tests/distcheck2a.test: Likewise.
 * tests/distcheck2b.test: Likewise.
 * tests/distcheck3.test: Likewise.
 * tests/distcheck4.test: Likewise.
 * tests/distcheck5.test: Likewise.
 * tests/distcheck6.test: Likewise.
 * tests/distcheck7.test: Likewise.
 * tests/distcheck8.test: Likewise.
 * tests/distcheck9.test: Likewise.
Clearer and more expressive names for the new testcases are in order,
also.

 * tests/Makefile.am (TESTS): Updated.

Regards,
  Stefano



[RFC] Make build and install dirs used by distcheck configurable. (was: Re: absolute build directory with spaces)

2010-09-06 Thread Stefano Lattarini
On Sunday 05 September 2010, Ralf Wildenhues wrote:
 Hello,
 
 * Jim Meyering wrote on Sat, Sep 04, 2010 at 07:28:58PM CEST:
  Stefano Lattarini wrote:
   What about instead making the names of the temporaries
   source/build/install directories used by make distcheck
   configurable?
It turns out that making the srcdir configurable is not very easy or
natural; also, I don't see any real use case for that.  So I didn't
add this feature in the patch series.  If anyone would find this
feature useful nonetheless, please speak up.
   This will offer more flexibility, and won't
   introduce still another automake option which would make
   backward-compatibility more problematic.
   
   I was thinking of something on these lines:
 $ cat Makefile.am
 ...
 AM_DISTCHECK_BUILDDIR_NAME = _ b u i l d ## will be relative to 
   $(distdir)
 AM_DISTCHECK_SRCDIR_NAME = . ## likewise
 AM_DISTCHECK_INSTALLDIR_NAME = i...@l1   ## likewise
In the end, I went for the slighty shorter names `AM_DISTCHECK_BUILDDIR'
and `AM_DISTCHECK_INSTALLDIR'.
   
   If you like the proposal, I might try to implement this (but not
   right away).
  
  I do like it.  Thanks!
 
 Me too, but the onus for quoting should probably be with the person
 defining the variables, because there is no well-defined way to do
 otherwise.  (And of course you cannot have comments in variables.)
In my patch, I let Automake take the onus for quoting, the only additional
limit being that AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR cannot
contain the single-quote character.  We might still change this of course,
as the attached patch is mostly tentative.
 I like it also because some packages will never want to care about
 being buildable under more stressful circumstances.

IMPORTANT NOTE: I still haven't run the whole testsuite against this
patch.  I will if they are no serious objection or proposals of
changes/extensions.

Regards,
  Stefano

-*-*-*-

Make build and install dirs used by distcheck configurable.

* automake.in (generate_makefile): Define makefile variables
AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR when needed;
they default respectively to `_build' and `_inst'.
* lib/am/distdir.am (distcheck): Sanitize and honour variables
$(AM_DISTCHECK_BUILDDIR) and $(AM_DISTCHECK_INSTALLDIR).
* tests/distcheck0.test: New test script.
* tests/distcheck1a.test: Likewise.
* tests/distcheck1b.test: Likewise.
* tests/distcheck2a.test: Likewise.
* tests/distcheck2b.test: Likewise.
* tests/distcheck3.test: Likewise.
* tests/distcheck4.test: Likewise.
* tests/distcheck5.test: Likewise.
* tests/distcheck6.test: Likewise.
* tests/distcheck7.test: Likewise.
* tests/distcheck8.test: Likewise.
* tests/distcheck9.test: Likewise.
* tests/Makefile.am (TESTS): Updated.
---
 ChangeLog  |   22 +++
 Makefile.in|   42 +++--
 automake.in|9 +++
 lib/am/distdir.am  |   50 +---
 tests/Makefile.am  |   12 
 tests/Makefile.in  |   12 
 tests/distcheck0.test  |   45 ++
 tests/distcheck1a.test |   56 +
 tests/distcheck1b.test |   61 +++
 tests/distcheck2a.test |   69 +
 tests/distcheck2b.test |   74 +++
 tests/distcheck3.test  |   79 
 tests/distcheck4.test  |   71 ++
 tests/distcheck5.test  |   77 
 tests/distcheck6.test  |   88 +++
 tests/distcheck7.test  |   86 ++
 tests/distcheck8.test  |  156 
 tests/distcheck9.test  |   50 +++
 18 files changed, 1044 insertions(+), 15 deletions(-)
 create mode 100755 tests/distcheck0.test
 create mode 100755 tests/distcheck1a.test
 create mode 100755 tests/distcheck1b.test
 create mode 100755 tests/distcheck2a.test
 create mode 100755 tests/distcheck2b.test
 create mode 100755 tests/distcheck3.test
 create mode 100755 tests/distcheck4.test
 create mode 100755 tests/distcheck5.test
 create mode 100755 tests/distcheck6.test
 create mode 100755 tests/distcheck7.test
 create mode 100755 tests/distcheck8.test
 create mode 100755 tests/distcheck9.test
From bd9c7804d24297ef9e3c9e7492a1247a71f9279a Mon Sep 17 00:00:00 2001
From: Stefano Lattarini stefano.lattar...@gmail.com
Date: Sun, 5 Sep 2010 12:00:05 +0200
Subject: [PATCH] Make build and install dirs used by distcheck configurable.

* automake.in (generate_makefile): Define makefile variables
AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR when needed;
they default respectively to `_build' and `_inst'.
* lib/am/distdir.am (distcheck): Sanitize and honour variables
$(AM_DISTCHECK_BUILDDIR) and $(AM_DISTCHECK_INSTALLDIR).
* tests/distcheck0.test: New test script.
* tests/distcheck1a.test: Likewise.
* tests/distcheck1b.test: Likewise.
* tests/distcheck2a.test: Likewise.
* tests/distcheck2b.test: Likewise.
* 

[RFC] Make build and install dirs used by distcheck configurable. (was: Re: absolute build directory with spaces)

2010-09-06 Thread Stefano Lattarini
On Sunday 05 September 2010, Ralf Wildenhues wrote:
 Hello,
 
 * Jim Meyering wrote on Sat, Sep 04, 2010 at 07:28:58PM CEST:
  Stefano Lattarini wrote:
   What about instead making the names of the temporaries
   source/build/install directories used by make distcheck
   configurable?
It turns out that making the srcdir configurable is not very easy or
natural; also, I don't see any real use case for that.  So I didn't
add this feature in the patch series.  If anyone would find this
feature useful nonetheless, please speak up.
   This will offer more flexibility, and won't
   introduce still another automake option which would make
   backward-compatibility more problematic.
   
   I was thinking of something on these lines:
 $ cat Makefile.am
 ...
 AM_DISTCHECK_BUILDDIR_NAME = _ b u i l d ## will be relative to 
   $(distdir)
 AM_DISTCHECK_SRCDIR_NAME = . ## likewise
 AM_DISTCHECK_INSTALLDIR_NAME = i...@l1   ## likewise
In the end, I went for the slighty shorter names `AM_DISTCHECK_BUILDDIR'
and `AM_DISTCHECK_INSTALLDIR'.
   
   If you like the proposal, I might try to implement this (but not
   right away).
  
  I do like it.  Thanks!
 
 Me too, but the onus for quoting should probably be with the person
 defining the variables, because there is no well-defined way to do
 otherwise.  (And of course you cannot have comments in variables.)
In my patch, I let Automake take the onus for quoting, the only additional
limit being that AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR cannot
contain the single-quote character.  We might still change this of course,
as the attached patch is mostly tentative.
 I like it also because some packages will never want to care about
 being buildable under more stressful circumstances.

IMPORTANT NOTE: I still haven't run the whole testsuite against this
patch.  I will if they are no serious objection or proposals of
changes/extensions.

Regards,
  Stefano

-*-*-*-

Make build and install dirs used by distcheck configurable.

* automake.in (generate_makefile): Define makefile variables
AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR when needed;
they default respectively to `_build' and `_inst'.
* lib/am/distdir.am (distcheck): Sanitize and honour variables
$(AM_DISTCHECK_BUILDDIR) and $(AM_DISTCHECK_INSTALLDIR).
* tests/distcheck0.test: New test script.
* tests/distcheck1a.test: Likewise.
* tests/distcheck1b.test: Likewise.
* tests/distcheck2a.test: Likewise.
* tests/distcheck2b.test: Likewise.
* tests/distcheck3.test: Likewise.
* tests/distcheck4.test: Likewise.
* tests/distcheck5.test: Likewise.
* tests/distcheck6.test: Likewise.
* tests/distcheck7.test: Likewise.
* tests/distcheck8.test: Likewise.
* tests/distcheck9.test: Likewise.
* tests/Makefile.am (TESTS): Updated.
---
 ChangeLog  |   22 +++
 Makefile.in|   42 +++--
 automake.in|9 +++
 lib/am/distdir.am  |   50 +---
 tests/Makefile.am  |   12 
 tests/Makefile.in  |   12 
 tests/distcheck0.test  |   45 ++
 tests/distcheck1a.test |   56 +
 tests/distcheck1b.test |   61 +++
 tests/distcheck2a.test |   69 +
 tests/distcheck2b.test |   74 +++
 tests/distcheck3.test  |   79 
 tests/distcheck4.test  |   71 ++
 tests/distcheck5.test  |   77 
 tests/distcheck6.test  |   88 +++
 tests/distcheck7.test  |   86 ++
 tests/distcheck8.test  |  156 
 tests/distcheck9.test  |   50 +++
 18 files changed, 1044 insertions(+), 15 deletions(-)
 create mode 100755 tests/distcheck0.test
 create mode 100755 tests/distcheck1a.test
 create mode 100755 tests/distcheck1b.test
 create mode 100755 tests/distcheck2a.test
 create mode 100755 tests/distcheck2b.test
 create mode 100755 tests/distcheck3.test
 create mode 100755 tests/distcheck4.test
 create mode 100755 tests/distcheck5.test
 create mode 100755 tests/distcheck6.test
 create mode 100755 tests/distcheck7.test
 create mode 100755 tests/distcheck8.test
 create mode 100755 tests/distcheck9.test
From bd9c7804d24297ef9e3c9e7492a1247a71f9279a Mon Sep 17 00:00:00 2001
From: Stefano Lattarini stefano.lattar...@gmail.com
Date: Sun, 5 Sep 2010 12:00:05 +0200
Subject: [PATCH] Make build and install dirs used by distcheck configurable.

* automake.in (generate_makefile): Define makefile variables
AM_DISTCHECK_BUILDDIR and AM_DISTCHECK_INSTALLDIR when needed;
they default respectively to `_build' and `_inst'.
* lib/am/distdir.am (distcheck): Sanitize and honour variables
$(AM_DISTCHECK_BUILDDIR) and $(AM_DISTCHECK_INSTALLDIR).
* tests/distcheck0.test: New test script.
* tests/distcheck1a.test: Likewise.
* tests/distcheck1b.test: Likewise.
* tests/distcheck2a.test: Likewise.
* tests/distcheck2b.test: Likewise.
* 

Re: absolute build directory with spaces

2010-09-05 Thread Ralf Wildenhues
Hello,

* Jim Meyering wrote on Sat, Sep 04, 2010 at 07:28:58PM CEST:
 Stefano Lattarini wrote:
  What about instead making the names of the temporaries source/build/install
  directories used by make distcheck configurable?  This will offer more
  flexibility, and won't introduce still another automake option which would
  make backward-compatibility more problematic.
 
  I was thinking of something on these lines:
 
$ cat Makefile.am
...
AM_DISTCHECK_BUILDDIR_NAME = _ b u i l d ## will be relative to $(distdir)
AM_DISTCHECK_SRCDIR_NAME = . ## likewise
AM_DISTCHECK_INSTALLDIR_NAME = i...@l1   ## likewise
 
  If you like the proposal, I might try to implement this (but right away).
 
 I do like it.  Thanks!

Me too, but the onus for quoting should probably be with the person
defining the variables, because there is no well-defined way to do
otherwise.  (And of course you cannot have comments in variables.)

I like it also because some packages will never want to care about
being buildable under more stressful circumstances.

However, I think you probably need either srcdir and reverse_srcdir,
or only the latter and compute the former from that.

Thanks,
Ralf



Re: absolute build directory with spaces

2010-09-04 Thread Bruno Haible
Hi,

Jim Meyering wrote on bug-gnulib:
 Coreutils tests with an absolute build directory name that contains
 a space.  Not quoting this directory name caused a failure.
 * tests/test-vc-list-files-git.sh: Quote PATH dir name.
 ...
 --- a/tests/test-vc-list-files-git.sh
 +++ b/tests/test-vc-list-files-git.sh
 @@ -17,7 +17,7 @@
  # along with this program.  If not, see http://www.gnu.org/licenses/.  */
 
  : ${srcdir=.}
 -. $srcdir/init.sh; path_prepend_ $abs_aux_dir .
 +. $srcdir/init.sh; path_prepend_ $abs_aux_dir .
 

This extra check, part of make distcheck, that verifies that the package
builds even when the srcdir or builddir contains a space, would be useful
for more packages. On mingw, it is frequent to have spaces in directories.

Could Automake offer this check, if a certain Automake option is specified
in AM_INIT_AUTOMAKE?

Bruno



Re: absolute build directory with spaces

2010-09-04 Thread Stefano Lattarini
On Saturday 04 September 2010, Bruno Haible wrote:
 Hi,
 
 Jim Meyering wrote on bug-gnulib:
  Coreutils tests with an absolute build directory name that
  contains a space.  Not quoting this directory name caused a
  failure. * tests/test-vc-list-files-git.sh: Quote PATH dir name.
  ...
  --- a/tests/test-vc-list-files-git.sh
  +++ b/tests/test-vc-list-files-git.sh
  @@ -17,7 +17,7 @@
  
   # along with this program.  If not, see
   http://www.gnu.org/licenses/.  */
   
   : ${srcdir=.}
  
  -. $srcdir/init.sh; path_prepend_ $abs_aux_dir .
  +. $srcdir/init.sh; path_prepend_ $abs_aux_dir .
 
 This extra check, part of make distcheck, that verifies that the
 package builds even when the srcdir or builddir contains a space,
 would be useful for more packages. On mingw, it is frequent to
 have spaces in directories.
 
 Could Automake offer this check, if a certain Automake option is
 specified in AM_INIT_AUTOMAKE?
What about instead making the names of the temporaries source/build/install
directories used by make distcheck configurable?  This will offer more
flexibility, and won't introduce still another automake option which would
make backward-compatibility more problematic.

I was thinking of something on these lines:

  $ cat Makefile.am
  ...
  AM_DISTCHECK_BUILDDIR_NAME = _ b u i l d ## will be relative to $(distdir)
  AM_DISTCHECK_SRCDIR_NAME = . ## likewise
  AM_DISTCHECK_INSTALLDIR_NAME = i...@l1   ## likewise

If you like the proposal, I might try to implement this (but right away).

Regards,
Stefano



Re: absolute build directory with spaces

2010-09-04 Thread Jim Meyering
Bruno Haible wrote:
 Jim Meyering wrote on bug-gnulib:
 Coreutils tests with an absolute build directory name that contains
 a space.  Not quoting this directory name caused a failure.
 * tests/test-vc-list-files-git.sh: Quote PATH dir name.
 ...
 --- a/tests/test-vc-list-files-git.sh
 +++ b/tests/test-vc-list-files-git.sh
 @@ -17,7 +17,7 @@
  # along with this program.  If not, see http://www.gnu.org/licenses/.  */

  : ${srcdir=.}
 -. $srcdir/init.sh; path_prepend_ $abs_aux_dir .
 +. $srcdir/init.sh; path_prepend_ $abs_aux_dir .

 This extra check, part of make distcheck, that verifies that the package
 builds even when the srcdir or builddir contains a space, would be useful
 for more packages. On mingw, it is frequent to have spaces in directories.

It would be useful for builddir, but not for srcdir.
That srcdir is sane is already guaranteed via every
reasonably-modern autoconf-generated configure script.

 Could Automake offer this check, if a certain Automake option is specified
 in AM_INIT_AUTOMAKE?

I'd like that.
Then I'd use it in all automake-using projects,
and not just in the few that have this custom check[*].

But note that as I've implemented it for coreutils, this
is rather expensive, in that it requires an additional, full
non-srcdir build-and-make-check from tarball (sole difference is
that the absolute builddir has a component named a b).
It has to be non-srcdir, since the srcdir cannot be the
invalid like the builddir can.

However, if this build-and-make-check passes, there is little
reason to repeat the process with a normal builddir, so there
is no inherent requirement that it take more time.

--
[*] It's the taint-distcheck rule here:
http://git.sv.gnu.org/cgit/coreutils.git/tree/dist-check.mk#n49



Re: absolute build directory with spaces

2010-09-04 Thread Jim Meyering
Stefano Lattarini wrote:

 On Saturday 04 September 2010, Bruno Haible wrote:
 Hi,

 Jim Meyering wrote on bug-gnulib:
  Coreutils tests with an absolute build directory name that
  contains a space.  Not quoting this directory name caused a
  failure. * tests/test-vc-list-files-git.sh: Quote PATH dir name.
  ...
  --- a/tests/test-vc-list-files-git.sh
  +++ b/tests/test-vc-list-files-git.sh
  @@ -17,7 +17,7 @@
 
   # along with this program.  If not, see
   http://www.gnu.org/licenses/.  */
 
   : ${srcdir=.}
 
  -. $srcdir/init.sh; path_prepend_ $abs_aux_dir .
  +. $srcdir/init.sh; path_prepend_ $abs_aux_dir .

 This extra check, part of make distcheck, that verifies that the
 package builds even when the srcdir or builddir contains a space,
 would be useful for more packages. On mingw, it is frequent to
 have spaces in directories.

 Could Automake offer this check, if a certain Automake option is
 specified in AM_INIT_AUTOMAKE?
 What about instead making the names of the temporaries source/build/install
 directories used by make distcheck configurable?  This will offer more
 flexibility, and won't introduce still another automake option which would
 make backward-compatibility more problematic.

 I was thinking of something on these lines:

   $ cat Makefile.am
   ...
   AM_DISTCHECK_BUILDDIR_NAME = _ b u i l d ## will be relative to $(distdir)
   AM_DISTCHECK_SRCDIR_NAME = . ## likewise
   AM_DISTCHECK_INSTALLDIR_NAME = i...@l1   ## likewise

 If you like the proposal, I might try to implement this (but right away).

I do like it.  Thanks!



Re: absolute build directory with spaces

2010-09-04 Thread Stefano Lattarini
On Saturday 04 September 2010, Jim Meyering wrote:
 Stefano Lattarini wrote:
 
  What about instead making the names of the temporaries
  source/build/install directories used by make distcheck
  configurable?  This will offer more flexibility, and won't
  introduce still another automake option which would make
  backward-compatibility more problematic.
  
  I was thinking of something on these lines:
$ cat Makefile.am
...
AM_DISTCHECK_BUILDDIR_NAME = _ b u i l d ## will be relative to $(distdir)
AM_DISTCHECK_SRCDIR_NAME = . ## likewise
AM_DISTCHECK_INSTALLDIR_NAME = i...@l1   ## likewise
  
  If you like the proposal, I might try to implement this (but
  right away).
Oops! I meant but not right away! (Which means probably next week) .

 I do like it.
Good.  We'll see what I'll be able to come up with.

Regards,
   Stefano