RFC: Alternative for exemaker

Matt Mackall mpm at selenic.com
Thu Jun 28 16:27:07 CDT 2012


On Thu, 2012-06-28 at 20:46 +0200, Adrian Buehlmann wrote:
> On 2012-06-28 19:32, Matt Mackall wrote:
> > On Thu, 2012-06-28 at 18:48 +0200, Adrian Buehlmann wrote:
> >> On 2012-06-27 18:30, Matt Mackall wrote:
> >>> Ok, tip now compiles cleanly with:
> >>>
> >>>  gcc -Ic:\python26\include -Lc:\python26\libs -Lpython26 hg.c -o hg.exe
> >>>
> >>> So I think this is now in a state where we should include it in our tree
> >>> (and possibly in our build process).
> >>
> >> Into what directory should hg.c go?
> > 
> > I was thinking mercurial/hgexe.c is probably the right place for it. 
> 
> Sorry for bothering again (forgot to ask).
> 
> If I send a patch that adds said mercurial/hgexe.c, what copyright
> header would you prefer?
> 
> Mads convinced me that GPL wasn't needed, so I picked the one I
> currently have [1], but I guess the current license header might look a
> bit odd if the file lives in the mercurial tree.
> 
> I don't have a strong opinion and am perfectly fine with using GPL V2+
> (that is, Mercurial's) or the one I have now.
> 
> [1] https://bitbucket.org/abuehl/hgexe/src/125dc659dd56/hg.c#cl-1

We have lots of effectively dual- and triple-licensed code in the tree
today, for instance:

 bytecode.py
 keepalive.py
 httpclient/*

I think you're correct in thinking that your hg.c is not a "derived
work" (despite the name[1]) as it can _trivially_ be repurposed to work
with any other Python script. This makes it fundamentally different from
a typical extension or module, which ceases to make any sense outside a
Mercurial context. 

So, yes, the license statement at the top of the source is fine, if
that's the license you'd like it to have[2]. My only license requirement
for inclusion of original, non-derived code is that it be GPL-compatible
so that the license of the whole can be treated as GPL.

[1] You should probably just name it 'exewrapper.c' or similar, since it
just consults argv.
[2] I'm personally not a fan of BSD-style licenses, as history has shown
that they aid rather than discourage the efforts of companies like Apple
to make computing more proprietary, and I have a vested personal and
professional interest in being able to continue bending computers to my
whim. But I also think every author should have the right to choose how
to license their original, non-derived works.

-- 
Mathematics is the supreme nostalgia of our time.




More information about the Mercurial-devel mailing list