[Top][All Lists]

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

Re: license question

From: Bob Friesenhahn
Subject: Re: license question
Date: Thu, 11 Apr 2013 09:39:12 -0500 (CDT)
User-agent: Alpine 2.01 (GSO 1266 2009-07-14)

On Thu, 11 Apr 2013, Peter Gavin wrote:


Since I'm not sure where else to ask this question, I'll ask it here:

I'm working on a project that uses the m4sugar.m4 file included with
autoconf to generate files using m4.  I'd like to license my project using
a BSD-style 2-clause license, rather than GPLv3 (with the exception of the
m4sugar.m4 file, which will be distributed under the terms of the GPLv3 as
required).  I several questions regarding this:

1. Can I license my source files with the BSD license even though they call
macros from m4sugar? (I can't think of a reason this isn't a "yes",

Yes, you may apply any license to your source files as long as the license is compatible with GPLv3 (e.g. provides for distribution of source code). As long as you are depending on the GPLv3 file, the whole work needs to be distributable/distributed as per GPLv3 (e.g. provide source files) but your own files may use a different license. If you later remove the GPLv3 component, then the remainder would fall under your own license.

Whether a binary built from these files is encumbered by GPLv3 would depend on your point #2.

2. Must any generated files (as produced by running m4 on my files which
m4_include m4sugar.m4) be distributed under GPL3?  (I'm assuming the
Autoconf exception as documented at applies, since
m4sugar is part of Autoconf, so this would be a "no".)

This might be correct but not because of the Autoconf configure script exception since you are not using Autoconf to prepare a configure script (Autoconf's typical output). Instead, you are taking advantage of a file delivered with Autoconf. The output from these macros does not constitute 'typical output of Autoconf' since the normal output of Autoconf is well defined (e.g. a configure script).

The reason why it may be ok to use the output under your own terms is because copyrighted content of m4sugar is not copied to the output. A quick inspection of m4sugar shows that it provides only algorithms and does not copy parts of itself to its output. That is the reason why I assume that it is ok to use the output under your own terms.

3. My project generates source code.  Can binaries compiled from this
source code be distributed under the terms of the BSD license?  (Since I'm
assuming the Autoconf exception applies, I'm also assuming this is a "yes".)

This would depend on #2.

4. Will distributions of either only the generated source code or only
binaries compiled from that source code require distribution of the
m4sugar.m4 file? (I'm assuming this is a "no".)

This also depends on #2.

Are my assumptions correct?  If I distribute a tarball that includes the
GPL3 licensed m4sugar.m4, my BSD-licensed sources, and some source files
generated using all of these, the GPL3 would only apply to m4sugar.m4 and
nothing else in the tarball, is that correct?  I'm not personally planning
on distributing binaries at the moment, but if I or someone else were to
distribute them in the future, is it correct to assume that only my BSD
license would apply?

The BSD licence may apply to your own files but GPLv3 terms also apply to the whole combined work as long as you depend on a GPLv3 file.

I am not a lawyer.

Bob Friesenhahn
GraphicsMagick Maintainer,

reply via email to

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