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,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,c92999d3d36edb6c X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,CP1252 Path: g2news2.google.com!postnews.google.com!s21g2000vbb.googlegroups.com!not-for-mail From: =?ISO-8859-1?Q?Hibou57_=28Yannick_Duch=EAne=29?= Newsgroups: comp.lang.ada Subject: Re: MinGW Ada compiler licence question targeting commercial applications Date: Thu, 18 Jun 2009 12:05:34 -0700 (PDT) Organization: http://groups.google.com Message-ID: References: <4a3a1fd6$0$30224$9b4e6d93@newsspool1.arcor-online.net> NNTP-Posting-Host: 77.198.58.216 Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1245351934 23974 127.0.0.1 (18 Jun 2009 19:05:34 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Thu, 18 Jun 2009 19:05:34 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: s21g2000vbb.googlegroups.com; posting-host=77.198.58.216; posting-account=vrfdLAoAAAAauX_3XwyXEwXCWN3A1l8D User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; fr),gzip(gfe),gzip(gfe) Xref: g2news2.google.com comp.lang.ada:6512 Date: 2009-06-18T12:05:34-07:00 List-Id: On 18 juin, 20:25, "Jeffrey R. Carter" wrote: > In the case of an Ada program, there are 2 consideration: > > 1. The Ada run-time. This has 2 parts: > > =A0 =A0a. The Ada run-time is linked with your program: If the run-time i= s pure GPL, > then every program compiled by the compiler is GPL. > > =A0 =A0b. The Ada run-time is a shared library: If you don't distribute t= he library, > then your program may not be GPL even if the library is pure GPL. If you = do > distribute the library, then your program is affected if the library is p= ure GPL. > > 2. Instantiating vendor-supplied generics, including generics defined in = the > standard. If these are pure GPL, then any program that instantiates any o= f them > is GPL. Thanks for this detailed description. You are talking like a lawyer :p I hope some one else will find this thread useful On 18 juin, 20:32, "Jeffrey R. Carter" wrote: > That answers your main question: you can create proprietary programs usin= g the > MinGW compiler. The rest of the paragraph is legal CYA so they can't be s= ued if > you use a (non-MinGW) pure GPL library and try to claim that your program= is not > GPL. What CYA ? (I'm not native english, and there are many common english acronyms I do not know) Well, a very interesing stuff : I've pointed a big difference between the GNAT GPS compiler and the MinGW Ada compiler (wich is althought sourced from GNAT) Juste look at the package body for =93Ada.Asynchronous_Task_Control=94 as an exemple (the file is name =93a-astaco.adb=94). The one shipped with GNAT GPS has the following copyright notice : >-- = -- >-- GNAT RUN-TIME COMPONENTS = -- >-- = -- >-- A D A . A S Y N C H R O N O U S _ T A S K _ C O N T R O L = -- >-- = -- >-- B o d y = -- >-- = -- >-- Copyright (C) 1992-2005, Free Software Foundation, Inc. = -- >-- = -- >-- GNAT is free software; you can redistribute it and/or modify it unde= r -- >-- terms of the GNU General Public License as published by the Free Soft= - -- >-- ware Foundation; either version 2, or (at your option) any later ver= - -- >-- sion. GNAT is distributed in the hope that it will be useful, but WITH= - -- >-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILIT= Y -- >-- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public Licens= e -- >-- for more details. You should have received a copy of the GNU Genera= l -- >-- Public License distributed with GNAT; see file COPYING. If not, writ= e -- >-- to the Free Software Foundation, 51 Franklin Street, Fifth Floor= , -- >-- Boston, MA 02110-1301, USA. = -- >-- = -- >-- = -- >-- = -- >-- = -- >-- = -- >-- = -- >-- = -- >-- = -- >-- = -- >-- GNAT was originally developed by the GNAT team at New York University= . -- >-- Extensive contributions were provided by Ada Core Technologies Inc. = -- Notice the big blank by the way... Now, let see the copyright notice for the same file, for the Ada compiler (provided by GNAT) which comes with MinGW : >--------------------------------------------------------------------------= ---- >-- = -- >-- GNAT RUNTIME COMPONENTS = -- >-- = -- >-- A D A . A S Y N C H R O N O U S _ T A S K _ C O N T R O L = -- >-- = -- >-- B o d y = -- >-- = -- >-- Copyright (C) 1992,1993,1994,1995 Free Software Foundation, Inc. = -- >-- = -- >-- GNAT is free software; you can redistribute it and/or modify it unde= r -- >-- terms of the GNU General Public License as published by the Free Soft= - -- >-- ware Foundation; either version 2, or (at your option) any later ver= - -- >-- sion. GNAT is distributed in the hope that it will be useful, but WITH= - -- >-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILIT= Y -- >-- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public Licens= e -- >-- for more details. You should have received a copy of the GNU Genera= l -- >-- Public License distributed with GNAT; see file COPYING. If not, writ= e -- >-- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston= , -- >-- MA 02111-1307, USA. = -- >-- = -- >-- As a special exception, if other files instantiate generics from thi= s -- >-- unit, or you link this unit with other files to produce an executable= , -- >-- this unit does not by itself cause the resulting executable to b= e -- >-- covered by the GNU General Public License. This exception does no= t -- >-- however invalidate any other reasons why the executable file might b= e -- >-- covered by the GNU Public License. = -- >-- = -- >-- GNAT was originally developed by the GNAT team at New York University= . -- >-- Extensive contributions were provided by Ada Core Technologies Inc. = -- >-- = -- >--------------------------------------------------------------------------= ---- The blank is now filled and contains something which as important conscequences Finally, it the application statically links to this file and it is compiled with GNAT GPS, it must be GPL, while if it is compiled with MinGW, it can be GPL, of course, but it is not required to be. The presence of this special statements should be checked for each file required for the application. A different copyright notice may be found, depending on the version of MinGW. The actual release candidate has this one for the same file (once again, the interesting thing is the middle part) : >--------------------------------------------------------------------------= ---- >-- = -- >-- GNAT RUN-TIME COMPONENTS = -- >-- = -- >-- A D A . A S Y N C H R O N O U S _ T A S K _ C O N T R O L = -- >-- = -- >-- B o d y = -- >-- = -- >-- Copyright (C) 1992-2009, Free Software Foundation, Inc. = -- >-- = -- >-- GNAT is free software; you can redistribute it and/or modify it unde= r -- >-- terms of the GNU General Public License as published by the Free Soft= - -- >-- ware Foundation; either version 3, or (at your option) any later ver= - -- >-- sion. GNAT is distributed in the hope that it will be useful, but WITH= - -- >-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILIT= Y -- >-- or FITNESS FOR A PARTICULAR PURPOSE. = -- >-- = -- >-- As a special exception under Section 7 of GPL version 3, you are grante= d -- >-- additional permissions described in the GCC Runtime Library Exception, = -- >-- version 3.1, as published by the Free Software Foundation. = -- >-- = -- >-- You should have received a copy of the GNU General Public License and = -- >-- a copy of the GCC Runtime Library Exception along with this program; = -- >-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see = -- >-- . = -- >-- = -- >-- GNAT was originally developed by the GNAT team at New York University= . -- >-- Extensive contributions were provided by Ada Core Technologies Inc. = -- >-- = -- >--------------------------------------------------------------------------= ---- But I do not really know how to interpret this one =93 As a special exception under Section 7 of GPL version 3, you are granted additional permissions described in the GCC Runtime Library Exception, version 3.1, as published by the Free Software Foundation. =94 So what does this =93 GCC Runtime Library Exception, version 3.1 =94 says ? Here is what it says : ( source is http://mirrors.xservers.ro/gentoo-portage/licenses/gcc-runtime-= library-exception-3.1 ) 1. Grant of Additional Permission. > [...] > > You have permission to propagate a work of Target Code formed by > combining the Runtime Library with Independent Modules, even if such > propagation would otherwise violate the terms of GPLv3, provided that > all Target Code was generated by Eligible Compilation Processes. You > may then convey such a combination under terms of your choice, > consistent with the licensing of the Independent Modules. > > [...] I suppose =93 consistent with the licensing of the Independent Modules. =94 talks about other modules (i.e. other ones which does not make reference this notice). Now, a question about =93 Eligible Compilation Processes =94 : is a compilation processe Eligible if it links to a module which make reference to this satement ? If it is, both the first copyright notice found with the older version of MinGW and the newer one will allow to compile commercial application written in Ada. But as I'm not sure about the meaning of =93 Eligible Compilation Processes =94 ( and perhaps =93 =93 consistent with the licensing of the Independent Modules. =94 =94 ), I will leave it as-is for the time, waiting for comments on this interpretation (hope I'm not looking so much clumsy).