These is the D compiler frontend for GCC. See below for information how to obtain the source. The upstream version is at http://dgcc.sourceforge.net/ D Frontend to gcc and parts of the runtime library (phobos): Copyright (C) 2004, 2007 David Friedman This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. Digital Mars has kindly licensed the contents of the dmd and dmd2 directories under the GNU General Public License version 1 or above or the artistic license, this extends the license grant indicated in the source tarball. Below is his mail to this end (irrelevant parts edited at [...]). Subject: Re: D compiler front end license From: Walter Bright [...] Date: Wed, 01 Oct 2008 17:55:07 -0700 Message-ID: <48E41BEB.1040208@digitalmars.com> To: Thomas Viehmann I agree to it. You have my permission to forward it there. Thanks, -Walter Bright Thomas Viehmann wrote: [...] > How about the one below? [...] > If you could mail the two bugs at 499931@bugs.debian.org, > 499927@bugs.debian.org with it (to create a public record), or permit me > to forward it there, it would be most helpful. [...] > ---- > > Digital Mars licenses > The D Programming Language > Compiler Front End Source > Copyright (c) 1999-2008, by Digital Mars > > as free software; you can redistribute it and/or modify > it under the terms of the GNU General Public License as published by > the Free Software Foundation; either version 1 of the License, or > (at your option) any later version, or alternatively under the Artistic > License (distributed with the source as artistic.txt). > > This program is distributed in the hope that it will be useful, > but WITHOUT ANY WARRANTY; without even the implied warranty of > MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > license you choose for details. > > This grant of license also applies to previously published versions of > the D Programming Language Compiler Front End Source. On Debian GNU/Linux the GNU General Public License systems can be found in `/usr/share/common-licenses/GPL'. The D runtime library (phobos) is copyrighted and licensed as follows: Copyright (C) 2004-2005 by Digital Mars, www.digitalmars.com Written by Walter Bright Copyright (C) 2003-2004,2005 by Matthew Wilson and Synesis Software Written by Matthew Wilson Copyright (C) 2004-2005 by Christopher E. Miller This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, in both source and binary form, subject to the following restrictions: o The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. o Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. o This notice may not be removed or altered from any source distribution. d/phobos/std/stream.d: Copyright (c) 2001-2005 Pavel "EvilOne" Minayev with buffering and endian support added by Ben Hinkle with buffered readLine performance improvements by Dave Fladebo with opApply inspired by (and mostly copied from) Regan Heath with bug fixes and MemoryStream/SliceStream enhancements by Derick Eddington Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Author makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. Several files of the phobos library have been put in the public domain by their authors. In the tarball d/phobos/etc/c/zlib, a copy of zlib is included with the following copyright and license: Copyright (C) 1995-2005 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu Here is general information about the source added by the packager: This is the Debian GNU/Linux prepackaged version of the GNU compiler collection, containing Ada, C, C++, Fortran 95, Java, Objective-C, Objective-C++, and Treelang compilers, documentation, and support libraries. In addition, Debian provides the GNU Pascal compiler in the same source package. Packaging is done by the Debian GCC Maintainers , with sources obtained from: ftp://gcc.gnu.org/pub/gcc/releases/ (for full releases) svn://gcc.gnu.org/svn/gcc/ (for prereleases) http://gnu-pascal.de/alpha/ (for GNU Pascal) http://dgcc.sourceforge.net/ (for D) Changes: See changelog.Debian.gz Debian splits the GNU Compiler Collection into packages for each language, library, and documentation as follows: Language Compiler package Library package Documentation --------------------------------------------------------------------------- Ada gnat-4.1 libgnat-4.1 gnat-4.1-doc C gcc-4.1 gcc-4.1-doc C++ g++-4.1 libstdc++6 libstdc++6-4.1-doc Fortran 95 gfortran-4.1 libgfortran1 gfortran-4.1-doc Java gcj-4.1 libgcj7 libgcj-doc Objective C gobjc-4.1 libobjc1 Objective C++ gobjc++-4.1 Pascal gpc-4.1 D gdc-4.1 Treelang treelang-4.1 For some language run-time libraries, Debian provides source files, development files, debugging symbols and libraries containing position- independent code in separate packages: Language Sources Development Debugging Position-Independent --------------------------------------------------------------------------- C++ libstdc++6-4.1-dbg libstdc++6-4.1-pic Java libgcj7-src libgcj7-dev libgcj7-dbg Additional packages include: All languages: libgcc1, libgcc2, libgcc4 GCC intrinsics (platform-dependent) libffi4-dev, libffi4 Foreign Function Interface library gcc-4.1-base Base files common to all compilers gcc-4.1-soft-float Software floating point (ARM only) gcc-4.1-source The sources with patches Ada: libgnatvsn-dev, libgnatvsn4.1 GNAT version library libgnatprj-dev, libgnatprj4.1 GNAT Project Manager library C: cpp-4.1, cpp-4.1-doc GNU C Preprocessor libmudflap0-dev, libmudflap0 Library for instrumenting pointers libssp0-dev, libssp0 GCC stack smashing protection library fixincludes Fix non-ANSI header files protoize Create/remove ANSI prototypes from C code Java: fastjar Jar creation utility gij The Java bytecode interpreter and VM libgcj-common Common files for the Java run-time libgcj7-awt The Abstract Windowing Toolkit libgcj7-jar Java ARchive for the Java run-time Biarch support: On some 64-bit platforms which can also run 32-bit code, Debian provides additional packages containing 32-bit versions of some libraries. These packages have names beginning with 'lib32' instead of 'lib', for example lib32stdc++6. Similarly, on some 32-bit platforms which can also run 64-bit code, Debian provides additional packages with names beginning with 'lib64' instead of 'lib'. These packages contain 64-bit versions of the libraries. (At this time, not all platforms and not all libraries support biarch.) The license terms for these lib32 or lib64 packages are identical to the ones for the lib packages. COPYRIGHT STATEMENTS AND LICENSING TERMS GCC is Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. On Debian GNU/Linux systems, the complete text of the GNU General Public License is in `/usr/share/common-licenses/GPL'. The libstdc++-v3 library is licensed under the terms of the GNU General Public License, with this special exception: As a special exception, you may use this file as part of a free software library without restriction. Specifically, if other files instantiate templates or use macros or inline functions from this file, or you compile this file and link it with other files to produce an executable, this file does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License. The libgnat-4.1 Ada support library and libgnatvsn are licensed under the terms of the GNU General Public License, with this special exception: As a special exception, if other files instantiate generics from this unit, or you link this unit with other files to produce an executable, this unit does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU Public License. In contrast, libgnatprj is licensed under the terms of the pure GNU General Public License. gpc is copyright Free Software Foundation, and is licensed under the GNU General Public License which on Debian GNU/Linux systems can be found as `/usr/share/common-licenses/GPL3'. The gpc runtime library is licensed under the terms of the GNU General Public License, with this special exception: As a special exception, if you link this file with files compiled with a GNU compiler to produce an executable, this does not cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License. } The libgcj library is licensed under the terms of the GNU General Public License, with a special exception: Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. gcc/libgcc2.c (source for libgcc) has the following addition: In addition to the permissions in the GNU General Public License, the Free Software Foundation gives you unlimited permission to link the compiled version of this file into combinations with other programs, and to distribute those combinations without any restriction coming from the use of this file. (The General Public License restrictions do apply in other respects; for example, they cover modification of the file, and distribution when not linked into a combine executable.) gcc/unwind-libunwind.c (source for libgcc) has the following addition: As a special exception, if you link this library with other files, some of which are compiled with GCC, to produce an executable, this library does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License. The mudflap library is licensed under the terms of the GNU General Public License, and has the following addition: In addition to the permissions in the GNU General Public License, the Free Software Foundation gives you unlimited permission to link the compiled version of this file into combinations with other programs, and to distribute those combinations without any restriction coming from the use of this file. (The General Public License restrictions do apply in other respects; for example, they cover modification of the file, and distribution when not linked into a combine executable.) The ssp library is licensed under the terms of the GNU General Public License, with a special exception: As a special exception, if you link this library with other files, some of which are compiled with GCC, to produce an executable, this library does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License. The documentation is licensed under the GNU Free Documentation License (v1.2), appended at the end of this file. On Debian GNU/Linux systems the GNU Free Documentation License version 1.2 can be found in /usr/share/common-licenses/GFDL-1.2.