Neil Hopcroft

A digital misfit

Autoconf licence question…I’ve been poking around with autoconf, since it seems fairly popular amongst software distribution. Amongst GPLd software at least. And it looks like it does what I want. However, I’m a little confused about the implications of using autoconf for a non-GPL project. I’m intending to start a project soon for which the ultimate distribution mechanism is currently unknown[0]. I don’t want to make a choice now that forces it to be GPLd.

The configure scripts that autoconf makes include a GPL licence reference, suggesting that they must be released under the GPL. Which doesn’t make a lot of sense without some source code to go with them….

So, my question: if I’m using a configure script for building is my work considered my own work or a derivative work? I assume the intention is that it is my own work, but its not clear to me that this is the case. Anyone got any pointers to previous discussions of this issue?

[0] I know the zealots will say that all software should be released under the GPL – and in some ways I’m inclined to agree, but right now I don’t want to commit one way or another.


15 comments

  1. ewx

    Oh, and it’s not true that configure scripts “include a GPL reference”; normally they just say: “this configure script is free software; the FSF gives unlimited permission to copy, distribute and modify it”. It would be possible to end up with a GPL’d configure script if the input configure.ac was thus licensed, or if you use any additional macros via the aclocal mechanism that were thus licensed; so you should just not do those things if you to avoid a GPL’d configure.

    The source code for configure is the original configure.ac (“preferred form for modification”).

    • configure: “Copyright (C) 2003 Free Software Foundation, Inc.”

      …is in the configure script, which was the cause of my concern….and I couldn’t the see the faq link on http://www.gnu.org/software/autoconf/ (which is probably because I’m using 2.59, the latest, for which there was some problem generating html documentation…ironically related to copyright notices) and, indeed, my concern is somewhat validated by “In Autoconf version 1, they were covered by the GNU General Public License. We still encourage software authors to distribute their work under terms like those of the GPL, but doing so is not required to use Autoconf.”

        • True, but it *does* mean that I don’t own the copyright on the configure script….which means that I’m therefore expected to respect the copyright ownership of that file…and the redistribution licence of that file, unless otherwise notified it is my understanding there is no redistribution rights.

          Of course, reading the next two lines does say:
          ” This configure script is free software; the Free Software Foundation
          gives unlimited permission to copy, distribute and modify it.”

          That, however, does not grant a use for commercial purposes, some of which are expressly disallowed by the GPL….so, do the above two lines constitute the entire licence for the automatically generated script, or is there some more licence lying around somewhere that I don’t know how to find?

          More specifically, am I allowed to withhold the distribution of the configure script in the case of, say, a commercial binary distribution? Or a commercial source distribution? (not that I actually think that would be a good thing to do – I would intend to distribute the entire thing in source form, but potentially under a few different licence agreements, depending upon who it is being licenced to)

          …I think it is safe to assume that it is OK for me to use autoconf for the project I’m about to embark upon (given the clarification in 17.1, thank you), but I would like to understand the exact nature of the beast I’m dealing with here.

          • Re: commercial purposes

            Without placing any requirements upon…

            And I assume that to be unrevocable, too?

            Is there any way those rights could change with future versions? Could I land in trouble if somebody decides to change back to the v1 rules? Do I need to check the output every time I run (a new version of) autoconf, just to make sure those lines remain the same? Should I stop whinging and just use the damned software?

            (this is why licence agreements turn into 20 pages of lawyerspeak that noone can be bothered to read, isn’t it?)

          • ewx

            Re: commercial purposes

            If you’re really, really worried you should do either or both of contacting the FSF or hiring a lawyer with relevant expertise. The latter is likely to be cheaper…

          • Re: commercial purposes

            No, I’m not particularly worried…I just want to make sure I understand before it goes horribly wrong. I know some of the FSF people can be a bit overzealous when it comes to the idea of people selling software, I don’t want to be on the wrong end of an argument with them.

            If all else fails I can just delete configure.ac and hand code a makefile.

          • On the face of it I’d say those two lines did constitute the entire license. If the intention was for it to be GPLed it should say that it was in as many words; it wouldn’t be hard for the autoconf maintainers to do this if they chose. Furthermore, the permission is expressly “unlimited”, so I’d say that includes commercial purposes.

            What do you mean by “commercial purposes, some of which are expressly disallowed by the GPL” ?

          • AIUI, there are limits on the commercial purposes you can put derivative works to[0], though theres no limit on the use of GPL software within commercial organisations. I want to make sure I’m on the right side of those lines before engaging in a long development process only to find myself sued by RMS at the end of it.

            [0] ie, distribution a derivative work requires distribution of the source of the derivative work under the GPL.

          • Yes, that’s my understanding too. The GPL doesn’t explicitly prohibit commercial activities, but getting corporate lawyers to agree that it’s OK to redistribute such code in conjunction with code under other (proprietary?) licences can be quite hard, and is probably impossible if the proprietary licences want to keep their source confidential.

          • What I want is the ability to make the choice of licence for my project later – right now I’ve no idea whether GPL would be appropriate, or something else.

            It is likely to be targetted at medium/large corporates, and so I figure they should pay for it. Ideally I would release it for non-commercial purposes under a free licence of some kind, but require payment for commercial use. If the requirement to release as GPL came from some of the tools I was using to build the system I would have to choose different tools, ones without that requirement. Which would be a shame in this case, since autoconf seems to be the tool for the job.

  2. Sounds like thats worth investigating – is the licence itself available in the public domain? Or would I need to write something similar?

  3. Well, it kind-of is, in the sense that I’m happy to provide source code for both commercial and non-commercial, the thing I’m worried about is the potential for rights to be conveyed by the GPL for further derivation by commercial entities.

Leave a Reply

Your email address will not be published.