1139749SimpGCC RUNTIME LIBRARY EXCEPTION 2113205Smdodd 3113205SmdoddVersion 3.1, 31 March 2009 4113205Smdodd 5113205SmdoddCopyright (C) 2009 Free Software Foundation, Inc. <http://fsf.org/> 6113205Smdodd 7113205SmdoddEveryone is permitted to copy and distribute verbatim copies of this 8113205Smdoddlicense document, but changing it is not allowed. 9113205Smdodd 10113205SmdoddThis GCC Runtime Library Exception ("Exception") is an additional 11113205Smdoddpermission under section 7 of the GNU General Public License, version 12113205Smdodd3 ("GPLv3"). It applies to a given file (the "Runtime Library") that 13113205Smdoddbears a notice placed by the copyright holder of the file stating that 14113205Smdoddthe file is governed by GPLv3 along with this Exception. 15113205Smdodd 16113205SmdoddWhen you use GCC to compile a program, GCC may combine portions of 17113205Smdoddcertain GCC header files and runtime libraries with the compiled 18113205Smdoddprogram. The purpose of this Exception is to allow compilation of 19113205Smdoddnon-GPL (including proprietary) programs to use, in this way, the 20113205Smdoddheader files and runtime libraries covered by this Exception. 21113205Smdodd 22113205Smdodd0. Definitions. 23113205Smdodd 24113205SmdoddA file is an "Independent Module" if it either requires the Runtime 25113205SmdoddLibrary for execution after a Compilation Process, or makes use of an 26113205Smdoddinterface provided by the Runtime Library, but is not otherwise based 27113205Smdoddon the Runtime Library. 28113205Smdodd 29113205Smdodd"GCC" means a version of the GNU Compiler Collection, with or without 30113205Smdoddmodifications, governed by version 3 (or a specified later version) of 31113205Smdoddthe GNU General Public License (GPL) with the option of using any 32113205Smdoddsubsequent versions published by the FSF. 33113205Smdodd 34113205Smdodd"GPL-compatible Software" is software whose conditions of propagation, 35113205Smdoddmodification and use would permit combination with GCC in accord with 36113205Smdoddthe license of GCC. 37113205Smdodd 38113205Smdodd"Target Code" refers to output from any compiler for a real or virtual 39119420Sobrientarget processor architecture, in executable form or suitable for 40119420Sobrieninput to an assembler, loader, linker and/or execution 41119420Sobrienphase. Notwithstanding that, Target Code does not include data in any 42113205Smdoddformat that is used as a compiler intermediate representation, or used 43113205Smdoddfor producing a compiler intermediate representation. 44113205Smdodd 45113205SmdoddThe "Compilation Process" transforms code entirely represented in 46113205Smdoddnon-intermediate languages designed for human-written code, and/or in 47113205SmdoddJava Virtual Machine byte code, into Target Code. Thus, for example, 48113205Smdodduse of source code generators and preprocessors need not be considered 49113205Smdoddpart of the Compilation Process, since the Compilation Process can be 50113205Smdoddunderstood as starting with the output of the generators or 51113205Smdoddpreprocessors. 52113205Smdodd 53113205SmdoddA Compilation Process is "Eligible" if it is done using GCC, alone or 54113205Smdoddwith other GPL-compatible software, or if it is done without using any 55113205Smdoddwork based on GCC. For example, using non-GPL-compatible Software to 56113205Smdoddoptimize any GCC intermediate representations would not qualify as an 57113205SmdoddEligible Compilation Process. 58113205Smdodd 59113205Smdodd1. Grant of Additional Permission. 60113205Smdodd 61113205SmdoddYou have permission to propagate a work of Target Code formed by 62113205Smdoddcombining the Runtime Library with Independent Modules, even if such 63113205Smdoddpropagation would otherwise violate the terms of GPLv3, provided that 64113205Smdoddall Target Code was generated by Eligible Compilation Processes. You 65113205Smdoddmay then convey such a combination under terms of your choice, 66113205Smdoddconsistent with the licensing of the Independent Modules. 67113205Smdodd 68113205Smdodd2. No Weakening of GCC Copyleft. 69113205Smdodd 70113205SmdoddThe availability of this Exception does not imply any general 71113205Smdoddpresumption that third-party software is unaffected by the copyleft 72127135Snjlrequirements of the license of GCC. 73127135Snjl 74113205Smdodd