bug-gnulib
[Top][All Lists]
Advanced

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

Re: no license on some test modules


From: Bruno Haible
Subject: Re: no license on some test modules
Date: Fri, 7 Dec 2007 12:18:35 +0100
User-agent: KMail/1.5.4

Hi Jim,

> Of course, including the tests is solely so that we can get
> better test coverage

Sure, that's the purpose.

> I noticed that several test modules don't specify a
> license, which makes gnulib-tool --lgpl fail.
> ...
> I can see a couple ways of fixing it, assuming you are game:
>   - allow gnulib-tool to exempt test modules
>   - add a permissive License: line

The problem is deeper than that. The problem is that we have LGPLed
modules whose tests need 'xalloc' or other GPLed modules. And this
should be allowed, because writing tests is tedious enough already;
it would not help the test coverage if we forbid LGPLed modules from
using some parts of gnulib, especially 'xalloc' and friends.

Currently, as you say, 'gnulib --lgpl' does not handle this, and fails.
If gnulib-tool were to omit the files from 'xalloc', it could not make the
test work. If gnulib-tool were to copy the files from 'xalloc' into lib/,
there would be confusion between LGPLed and GPLed modules, and the programmer
might accidentally link with GPLed code although he didn't intend to do so.

You can use '--avoid=alloca-opt-tests' and similar, but that's only a
workaround.

A fix could be to make func_import work a bit like func_create_testdir, but
with a single configure file:
  - Put the configure tests for 'xalloc' into the normal configure. This is
    OK since the *.m4 files are all under a permissive license.
  - Put the source code for 'xalloc' into tests/ instead of lib/. This works
    without filename clashes since tests source files start with 'test-' by
    convention.
  - Emit rules into tests/Makefile.am to create a libtests.a, and link all
    tests with this library.
So lib/libgnu.a will be LGPLed, but tests/libtests.a will be GPLed.

Does that sound right?

Bruno





reply via email to

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