On Sun, Jun 01, 2025 at 06:48:38PM -0500, Bob Friesenhahn wrote:
> It seems a shame that a distribution tarball will lack a source file
> due to makefile build rules. Build rules are a simple technical issue,
> which have been solved before, and are even already supported by
> Automake.

I agree wholeheartedly.  The bootstrap script forms part of the
corresponding source code for configure and should definitely be
included in the distribution.

Automake is distributed under the terms of the GPL version 2 or any
later version.  The configure script included in the tar archive
unquestionably is object code or executable form and the version 2 of
the GPL requires that whenever anyone distributes object code, they must
ALSO distribute "complete source code ... plus scripts used to control
compilation" which unquestionably includes the bootstrap script.
Version 3 of the GPL has very similar requirements.

If either version of the GPL applies to Automake's configure script
then not including the bootstrap script in the tarball presents a
serious practical problem: the tarball is not legally redistributable
by itself.  To exercise the GPL's permission to redistribute the
tarball, one would need to modify it to remove the configure script, or
track down the missing source code (which hopefully is still available).

In the specific case of Automake we might argue that the distributed
configure script contains this notice (which is also printed by
./configure --version):

  # Copyright (C) 1992-1996, 1998-2017, 2020-2023 Free Software Foundation,
  # Inc.
  #
  #
  # This configure script is free software; the Free Software Foundation
  # gives unlimited permission to copy, distribute and modify it.

And thus this "unlimited permission" means the Free Software Foundation
(which also holds copyright on Automake) permits distribution of
Automake's configure script without its corresponding source code.

But I think this is a bad take.  This special permission is not
reflected in Automake's configure.ac (it ended up in configure only
because Autoconf put it there as part of Autoconf's license exception).

In less words: even if there's no real license problem, source tarballs
published by the GNU project should not include object code without its
corresponding source code.

Cheers,
  Nick

Reply via email to