From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,ed34204f6da15e19 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!news4.google.com!newshub.sdsu.edu!elnk-nf2-pas!newsfeed.earthlink.net!stamper.news.pas.earthlink.net!newsread1.news.pas.earthlink.net.POSTED!56fb6cac!not-for-mail From: "Marc A. Criley" User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20030225 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: ANNOUNCE: DTraq Released References: <44916CA0.9080909@earthlink.net> In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Message-ID: Date: Tue, 20 Jun 2006 00:37:07 GMT NNTP-Posting-Host: 4.255.246.112 X-Complaints-To: abuse@earthlink.net X-Trace: newsread1.news.pas.earthlink.net 1150763827 4.255.246.112 (Mon, 19 Jun 2006 17:37:07 PDT) NNTP-Posting-Date: Mon, 19 Jun 2006 17:37:07 PDT Organization: EarthLink Inc. -- http://www.EarthLink.net Xref: g2news2.google.com comp.lang.ada:4845 Date: 2006-06-20T00:37:07+00:00 List-Id: Simon Wright wrote: > What I don't see is why using GNAT.Sockets, which as an abstract > interface can be obtained GPL or GMGPL, ditto its implementations, > should make a difference to the licence under which _your_ source is > released? This, like your other points, is true...when considered strictly on its own merits. But in context it's not so cut and dried. There are two major personal factors that affect my OSS development efforts. First is that I want to stay as close to a vendor-supported configuration as I can, therefore my progression from 3.15p to GNAT GPL 2005, and soon to 2006. (The advocate-maintained distributions are perfectly fine and their maintainers are to be commended, but AdaCore's GNAT is the de facto standard and so I want to stay close to that.) Second is that I do want to make binary distributions, I usually prefer those, so I assume others do as well. (I know this makes me less than an OSS purist, but I prefer that I have _access_ to the source, rather than it being _required_. For most things I'm a user, not a builder. :-) So, since I'm now on the GNAT GPL 200x track, that means, in this specific case, that I'm using its version of GNAT.Sockets, which is licensed as GPL. The DTraq logging server and data viewer both use that specific package, so simply for that reason alone they and their executables are GPL. The DTraq.Tap client code needs a socket package, so while I could use the GNAT.Sockets abstract interface and then you the application builder can link with a GMGPL version of that package, you won't. Why? Because DTraq uses ASIS, and ASIS-for-GNAT is compiler and version specific, so in order for the DTraq source analyzer program to work, your application must be compilable with the same GNAT version that the source analyzer uses, i.e., GNAT GPL 2005. I know that simply compiling the code (and building the trees used by ASIS) doesn't require that your app by GPLed, but I doubt many are going to compile and test their code with one version of a compiler, but then deliver it having used another. (If for no other reason than you'd not be testing what you're delivering.) You can certainly build DTraq from source using another compiler and ASIS version, and the result will conform to the relevant licenses, and I'd be happy to do that if someone were to make it worth my while, or would certainly make available a contributed distribution alongside the distributions I maintain. All this is why in the original posting I stated "for what it's worth" when mentioning transitioning from GNAT.Sockets to AdaSockets for DTraq 1.100. Since your app is in all likelihood going to be built with the GPLed runtime if you're using DTraq 1.100, your app is going to have to be GPL anyway because of the RTL. _But_ it's not going to be DTraq that's directly causing that, so I can use the same instrumentation code for different compilers and versions (concerning myself _only_ with AdaSockets' one license, not the different GNAT.Sockets ones). In other words, the instrumentation code ought to be software _and_licensing_ portable across different compilers and versions (though I've not verified the software portability). It's simply then that the rest of the DTraq application be able to accommodate whatever compiler is being used on the application. > Anyone is free to use eg the Booch Components with any Ada compiler > they like; certainly Aonix, probably Apex, either flavour of > GNAT. Instantiating a GMGPL source using a GPL runtime is going to > result in a binary that has to be issued under the GPL, sure. Because of ASIS, though, DTraq is not like the Booch Components. ASIS is tied to a specific compiler-version distribution, and therefore its license. > I would find it quite hard to justify using AdaSockets given that > there is a perfectly workable and supported functionality in GNAT > already. GNAT.Sockets actually has some extra functionality (regarding 'socket select') that I took advantage of in the DTraq core components. > I also don't see why you've jumped through hoops to use AdaSockets > instead of GNAT.Sockets "so as to get GMGPL instead of GPL (for GNAT > GPL 2005 and beyond)". If I use GNAT GPL I _must_ release under GPL > (if at all), regardless of any GMGPL freedoms on other library > components. Actually I didn't have to jump through hoops, it was an easy changeover. The initial releases of DTraq used AdaSockets, and I had previously migrated to GNAT.Sockets primarily to gain access to the socket select capabilities. And yes, "if [you] use GNAT GPL [you] _must_ release under GPL", but that's because you are using _GNAT_GPL_, _not_ DTraq.Tap. -- Marc A. Criley -- McKae Technologies -- www.mckae.com -- DTraq - XPath In Ada - XML EZ Out