1*0b57cec5SDimitry Andric============================================================================== 2*0b57cec5SDimitry AndricThe LLVM Project is under the Apache License v2.0 with LLVM Exceptions: 3*0b57cec5SDimitry Andric============================================================================== 4*0b57cec5SDimitry Andric 5*0b57cec5SDimitry Andric Apache License 6*0b57cec5SDimitry Andric Version 2.0, January 2004 7*0b57cec5SDimitry Andric http://www.apache.org/licenses/ 8*0b57cec5SDimitry Andric 9*0b57cec5SDimitry Andric TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 10*0b57cec5SDimitry Andric 11*0b57cec5SDimitry Andric 1. Definitions. 12*0b57cec5SDimitry Andric 13*0b57cec5SDimitry Andric "License" shall mean the terms and conditions for use, reproduction, 14*0b57cec5SDimitry Andric and distribution as defined by Sections 1 through 9 of this document. 15*0b57cec5SDimitry Andric 16*0b57cec5SDimitry Andric "Licensor" shall mean the copyright owner or entity authorized by 17*0b57cec5SDimitry Andric the copyright owner that is granting the License. 18*0b57cec5SDimitry Andric 19*0b57cec5SDimitry Andric "Legal Entity" shall mean the union of the acting entity and all 20*0b57cec5SDimitry Andric other entities that control, are controlled by, or are under common 21*0b57cec5SDimitry Andric control with that entity. For the purposes of this definition, 22*0b57cec5SDimitry Andric "control" means (i) the power, direct or indirect, to cause the 23*0b57cec5SDimitry Andric direction or management of such entity, whether by contract or 24*0b57cec5SDimitry Andric otherwise, or (ii) ownership of fifty percent (50%) or more of the 25*0b57cec5SDimitry Andric outstanding shares, or (iii) beneficial ownership of such entity. 26*0b57cec5SDimitry Andric 27*0b57cec5SDimitry Andric "You" (or "Your") shall mean an individual or Legal Entity 28*0b57cec5SDimitry Andric exercising permissions granted by this License. 29*0b57cec5SDimitry Andric 30*0b57cec5SDimitry Andric "Source" form shall mean the preferred form for making modifications, 31*0b57cec5SDimitry Andric including but not limited to software source code, documentation 32*0b57cec5SDimitry Andric source, and configuration files. 33*0b57cec5SDimitry Andric 34*0b57cec5SDimitry Andric "Object" form shall mean any form resulting from mechanical 35*0b57cec5SDimitry Andric transformation or translation of a Source form, including but 36*0b57cec5SDimitry Andric not limited to compiled object code, generated documentation, 37*0b57cec5SDimitry Andric and conversions to other media types. 38*0b57cec5SDimitry Andric 39*0b57cec5SDimitry Andric "Work" shall mean the work of authorship, whether in Source or 40*0b57cec5SDimitry Andric Object form, made available under the License, as indicated by a 41*0b57cec5SDimitry Andric copyright notice that is included in or attached to the work 42*0b57cec5SDimitry Andric (an example is provided in the Appendix below). 43*0b57cec5SDimitry Andric 44*0b57cec5SDimitry Andric "Derivative Works" shall mean any work, whether in Source or Object 45*0b57cec5SDimitry Andric form, that is based on (or derived from) the Work and for which the 46*0b57cec5SDimitry Andric editorial revisions, annotations, elaborations, or other modifications 47*0b57cec5SDimitry Andric represent, as a whole, an original work of authorship. For the purposes 48*0b57cec5SDimitry Andric of this License, Derivative Works shall not include works that remain 49*0b57cec5SDimitry Andric separable from, or merely link (or bind by name) to the interfaces of, 50*0b57cec5SDimitry Andric the Work and Derivative Works thereof. 51*0b57cec5SDimitry Andric 52*0b57cec5SDimitry Andric "Contribution" shall mean any work of authorship, including 53*0b57cec5SDimitry Andric the original version of the Work and any modifications or additions 54*0b57cec5SDimitry Andric to that Work or Derivative Works thereof, that is intentionally 55*0b57cec5SDimitry Andric submitted to Licensor for inclusion in the Work by the copyright owner 56*0b57cec5SDimitry Andric or by an individual or Legal Entity authorized to submit on behalf of 57*0b57cec5SDimitry Andric the copyright owner. For the purposes of this definition, "submitted" 58*0b57cec5SDimitry Andric means any form of electronic, verbal, or written communication sent 59*0b57cec5SDimitry Andric to the Licensor or its representatives, including but not limited to 60*0b57cec5SDimitry Andric communication on electronic mailing lists, source code control systems, 61*0b57cec5SDimitry Andric and issue tracking systems that are managed by, or on behalf of, the 62*0b57cec5SDimitry Andric Licensor for the purpose of discussing and improving the Work, but 63*0b57cec5SDimitry Andric excluding communication that is conspicuously marked or otherwise 64*0b57cec5SDimitry Andric designated in writing by the copyright owner as "Not a Contribution." 65*0b57cec5SDimitry Andric 66*0b57cec5SDimitry Andric "Contributor" shall mean Licensor and any individual or Legal Entity 67*0b57cec5SDimitry Andric on behalf of whom a Contribution has been received by Licensor and 68*0b57cec5SDimitry Andric subsequently incorporated within the Work. 69*0b57cec5SDimitry Andric 70*0b57cec5SDimitry Andric 2. Grant of Copyright License. Subject to the terms and conditions of 71*0b57cec5SDimitry Andric this License, each Contributor hereby grants to You a perpetual, 72*0b57cec5SDimitry Andric worldwide, non-exclusive, no-charge, royalty-free, irrevocable 73*0b57cec5SDimitry Andric copyright license to reproduce, prepare Derivative Works of, 74*0b57cec5SDimitry Andric publicly display, publicly perform, sublicense, and distribute the 75*0b57cec5SDimitry Andric Work and such Derivative Works in Source or Object form. 76*0b57cec5SDimitry Andric 77*0b57cec5SDimitry Andric 3. Grant of Patent License. Subject to the terms and conditions of 78*0b57cec5SDimitry Andric this License, each Contributor hereby grants to You a perpetual, 79*0b57cec5SDimitry Andric worldwide, non-exclusive, no-charge, royalty-free, irrevocable 80*0b57cec5SDimitry Andric (except as stated in this section) patent license to make, have made, 81*0b57cec5SDimitry Andric use, offer to sell, sell, import, and otherwise transfer the Work, 82*0b57cec5SDimitry Andric where such license applies only to those patent claims licensable 83*0b57cec5SDimitry Andric by such Contributor that are necessarily infringed by their 84*0b57cec5SDimitry Andric Contribution(s) alone or by combination of their Contribution(s) 85*0b57cec5SDimitry Andric with the Work to which such Contribution(s) was submitted. If You 86*0b57cec5SDimitry Andric institute patent litigation against any entity (including a 87*0b57cec5SDimitry Andric cross-claim or counterclaim in a lawsuit) alleging that the Work 88*0b57cec5SDimitry Andric or a Contribution incorporated within the Work constitutes direct 89*0b57cec5SDimitry Andric or contributory patent infringement, then any patent licenses 90*0b57cec5SDimitry Andric granted to You under this License for that Work shall terminate 91*0b57cec5SDimitry Andric as of the date such litigation is filed. 92*0b57cec5SDimitry Andric 93*0b57cec5SDimitry Andric 4. Redistribution. You may reproduce and distribute copies of the 94*0b57cec5SDimitry Andric Work or Derivative Works thereof in any medium, with or without 95*0b57cec5SDimitry Andric modifications, and in Source or Object form, provided that You 96*0b57cec5SDimitry Andric meet the following conditions: 97*0b57cec5SDimitry Andric 98*0b57cec5SDimitry Andric (a) You must give any other recipients of the Work or 99*0b57cec5SDimitry Andric Derivative Works a copy of this License; and 100*0b57cec5SDimitry Andric 101*0b57cec5SDimitry Andric (b) You must cause any modified files to carry prominent notices 102*0b57cec5SDimitry Andric stating that You changed the files; and 103*0b57cec5SDimitry Andric 104*0b57cec5SDimitry Andric (c) You must retain, in the Source form of any Derivative Works 105*0b57cec5SDimitry Andric that You distribute, all copyright, patent, trademark, and 106*0b57cec5SDimitry Andric attribution notices from the Source form of the Work, 107*0b57cec5SDimitry Andric excluding those notices that do not pertain to any part of 108*0b57cec5SDimitry Andric the Derivative Works; and 109*0b57cec5SDimitry Andric 110*0b57cec5SDimitry Andric (d) If the Work includes a "NOTICE" text file as part of its 111*0b57cec5SDimitry Andric distribution, then any Derivative Works that You distribute must 112*0b57cec5SDimitry Andric include a readable copy of the attribution notices contained 113*0b57cec5SDimitry Andric within such NOTICE file, excluding those notices that do not 114*0b57cec5SDimitry Andric pertain to any part of the Derivative Works, in at least one 115*0b57cec5SDimitry Andric of the following places: within a NOTICE text file distributed 116*0b57cec5SDimitry Andric as part of the Derivative Works; within the Source form or 117*0b57cec5SDimitry Andric documentation, if provided along with the Derivative Works; or, 118*0b57cec5SDimitry Andric within a display generated by the Derivative Works, if and 119*0b57cec5SDimitry Andric wherever such third-party notices normally appear. The contents 120*0b57cec5SDimitry Andric of the NOTICE file are for informational purposes only and 121*0b57cec5SDimitry Andric do not modify the License. You may add Your own attribution 122*0b57cec5SDimitry Andric notices within Derivative Works that You distribute, alongside 123*0b57cec5SDimitry Andric or as an addendum to the NOTICE text from the Work, provided 124*0b57cec5SDimitry Andric that such additional attribution notices cannot be construed 125*0b57cec5SDimitry Andric as modifying the License. 126*0b57cec5SDimitry Andric 127*0b57cec5SDimitry Andric You may add Your own copyright statement to Your modifications and 128*0b57cec5SDimitry Andric may provide additional or different license terms and conditions 129*0b57cec5SDimitry Andric for use, reproduction, or distribution of Your modifications, or 130*0b57cec5SDimitry Andric for any such Derivative Works as a whole, provided Your use, 131*0b57cec5SDimitry Andric reproduction, and distribution of the Work otherwise complies with 132*0b57cec5SDimitry Andric the conditions stated in this License. 133*0b57cec5SDimitry Andric 134*0b57cec5SDimitry Andric 5. Submission of Contributions. Unless You explicitly state otherwise, 135*0b57cec5SDimitry Andric any Contribution intentionally submitted for inclusion in the Work 136*0b57cec5SDimitry Andric by You to the Licensor shall be under the terms and conditions of 137*0b57cec5SDimitry Andric this License, without any additional terms or conditions. 138*0b57cec5SDimitry Andric Notwithstanding the above, nothing herein shall supersede or modify 139*0b57cec5SDimitry Andric the terms of any separate license agreement you may have executed 140*0b57cec5SDimitry Andric with Licensor regarding such Contributions. 141*0b57cec5SDimitry Andric 142*0b57cec5SDimitry Andric 6. Trademarks. This License does not grant permission to use the trade 143*0b57cec5SDimitry Andric names, trademarks, service marks, or product names of the Licensor, 144*0b57cec5SDimitry Andric except as required for reasonable and customary use in describing the 145*0b57cec5SDimitry Andric origin of the Work and reproducing the content of the NOTICE file. 146*0b57cec5SDimitry Andric 147*0b57cec5SDimitry Andric 7. Disclaimer of Warranty. Unless required by applicable law or 148*0b57cec5SDimitry Andric agreed to in writing, Licensor provides the Work (and each 149*0b57cec5SDimitry Andric Contributor provides its Contributions) on an "AS IS" BASIS, 150*0b57cec5SDimitry Andric WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 151*0b57cec5SDimitry Andric implied, including, without limitation, any warranties or conditions 152*0b57cec5SDimitry Andric of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 153*0b57cec5SDimitry Andric PARTICULAR PURPOSE. You are solely responsible for determining the 154*0b57cec5SDimitry Andric appropriateness of using or redistributing the Work and assume any 155*0b57cec5SDimitry Andric risks associated with Your exercise of permissions under this License. 156*0b57cec5SDimitry Andric 157*0b57cec5SDimitry Andric 8. Limitation of Liability. In no event and under no legal theory, 158*0b57cec5SDimitry Andric whether in tort (including negligence), contract, or otherwise, 159*0b57cec5SDimitry Andric unless required by applicable law (such as deliberate and grossly 160*0b57cec5SDimitry Andric negligent acts) or agreed to in writing, shall any Contributor be 161*0b57cec5SDimitry Andric liable to You for damages, including any direct, indirect, special, 162*0b57cec5SDimitry Andric incidental, or consequential damages of any character arising as a 163*0b57cec5SDimitry Andric result of this License or out of the use or inability to use the 164*0b57cec5SDimitry Andric Work (including but not limited to damages for loss of goodwill, 165*0b57cec5SDimitry Andric work stoppage, computer failure or malfunction, or any and all 166*0b57cec5SDimitry Andric other commercial damages or losses), even if such Contributor 167*0b57cec5SDimitry Andric has been advised of the possibility of such damages. 168*0b57cec5SDimitry Andric 169*0b57cec5SDimitry Andric 9. Accepting Warranty or Additional Liability. While redistributing 170*0b57cec5SDimitry Andric the Work or Derivative Works thereof, You may choose to offer, 171*0b57cec5SDimitry Andric and charge a fee for, acceptance of support, warranty, indemnity, 172*0b57cec5SDimitry Andric or other liability obligations and/or rights consistent with this 173*0b57cec5SDimitry Andric License. However, in accepting such obligations, You may act only 174*0b57cec5SDimitry Andric on Your own behalf and on Your sole responsibility, not on behalf 175*0b57cec5SDimitry Andric of any other Contributor, and only if You agree to indemnify, 176*0b57cec5SDimitry Andric defend, and hold each Contributor harmless for any liability 177*0b57cec5SDimitry Andric incurred by, or claims asserted against, such Contributor by reason 178*0b57cec5SDimitry Andric of your accepting any such warranty or additional liability. 179*0b57cec5SDimitry Andric 180*0b57cec5SDimitry Andric END OF TERMS AND CONDITIONS 181*0b57cec5SDimitry Andric 182*0b57cec5SDimitry Andric APPENDIX: How to apply the Apache License to your work. 183*0b57cec5SDimitry Andric 184*0b57cec5SDimitry Andric To apply the Apache License to your work, attach the following 185*0b57cec5SDimitry Andric boilerplate notice, with the fields enclosed by brackets "[]" 186*0b57cec5SDimitry Andric replaced with your own identifying information. (Don't include 187*0b57cec5SDimitry Andric the brackets!) The text should be enclosed in the appropriate 188*0b57cec5SDimitry Andric comment syntax for the file format. We also recommend that a 189*0b57cec5SDimitry Andric file or class name and description of purpose be included on the 190*0b57cec5SDimitry Andric same "printed page" as the copyright notice for easier 191*0b57cec5SDimitry Andric identification within third-party archives. 192*0b57cec5SDimitry Andric 193*0b57cec5SDimitry Andric Copyright [yyyy] [name of copyright owner] 194*0b57cec5SDimitry Andric 195*0b57cec5SDimitry Andric Licensed under the Apache License, Version 2.0 (the "License"); 196*0b57cec5SDimitry Andric you may not use this file except in compliance with the License. 197*0b57cec5SDimitry Andric You may obtain a copy of the License at 198*0b57cec5SDimitry Andric 199*0b57cec5SDimitry Andric http://www.apache.org/licenses/LICENSE-2.0 200*0b57cec5SDimitry Andric 201*0b57cec5SDimitry Andric Unless required by applicable law or agreed to in writing, software 202*0b57cec5SDimitry Andric distributed under the License is distributed on an "AS IS" BASIS, 203*0b57cec5SDimitry Andric WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 204*0b57cec5SDimitry Andric See the License for the specific language governing permissions and 205*0b57cec5SDimitry Andric limitations under the License. 206*0b57cec5SDimitry Andric 207*0b57cec5SDimitry Andric 208*0b57cec5SDimitry Andric---- LLVM Exceptions to the Apache 2.0 License ---- 209*0b57cec5SDimitry Andric 210*0b57cec5SDimitry AndricAs an exception, if, as a result of your compiling your source code, portions 211*0b57cec5SDimitry Andricof this Software are embedded into an Object form of such source code, you 212*0b57cec5SDimitry Andricmay redistribute such embedded portions in such Object form without complying 213*0b57cec5SDimitry Andricwith the conditions of Sections 4(a), 4(b) and 4(d) of the License. 214*0b57cec5SDimitry Andric 215*0b57cec5SDimitry AndricIn addition, if you combine or link compiled forms of this Software with 216*0b57cec5SDimitry Andricsoftware that is licensed under the GPLv2 ("Combined Software") and if a 217*0b57cec5SDimitry Andriccourt of competent jurisdiction determines that the patent provision (Section 218*0b57cec5SDimitry Andric3), the indemnity provision (Section 9) or other Section of the License 219*0b57cec5SDimitry Andricconflicts with the conditions of the GPLv2, you may retroactively and 220*0b57cec5SDimitry Andricprospectively choose to deem waived or otherwise exclude such Section(s) of 221*0b57cec5SDimitry Andricthe License, but only in their entirety and only with respect to the Combined 222*0b57cec5SDimitry AndricSoftware. 223*0b57cec5SDimitry Andric 224*0b57cec5SDimitry Andric============================================================================== 225*0b57cec5SDimitry AndricSoftware from third parties included in the LLVM Project: 226*0b57cec5SDimitry Andric============================================================================== 227*0b57cec5SDimitry AndricThe LLVM Project contains third party software which is under different license 228*0b57cec5SDimitry Andricterms. All such code will be identified clearly using at least one of two 229*0b57cec5SDimitry Andricmechanisms: 230*0b57cec5SDimitry Andric1) It will be in a separate directory tree with its own `LICENSE.txt` or 231*0b57cec5SDimitry Andric `LICENSE` file at the top containing the specific license and restrictions 232*0b57cec5SDimitry Andric which apply to that software, or 233*0b57cec5SDimitry Andric2) It will contain specific license and restriction terms at the top of every 234*0b57cec5SDimitry Andric file. 235*0b57cec5SDimitry Andric 236*0b57cec5SDimitry Andric============================================================================== 237*0b57cec5SDimitry AndricLegacy LLVM License (https://llvm.org/docs/DeveloperPolicy.html#legacy): 238*0b57cec5SDimitry Andric============================================================================== 239*0b57cec5SDimitry AndricUniversity of Illinois/NCSA 240*0b57cec5SDimitry AndricOpen Source License 241*0b57cec5SDimitry Andric 242*0b57cec5SDimitry AndricCopyright (c) 2010 Apple Inc. 243*0b57cec5SDimitry AndricAll rights reserved. 244*0b57cec5SDimitry Andric 245*0b57cec5SDimitry AndricDeveloped by: 246*0b57cec5SDimitry Andric 247*0b57cec5SDimitry Andric LLDB Team 248*0b57cec5SDimitry Andric 249*0b57cec5SDimitry Andric http://lldb.llvm.org/ 250*0b57cec5SDimitry Andric 251*0b57cec5SDimitry AndricPermission is hereby granted, free of charge, to any person obtaining a copy of 252*0b57cec5SDimitry Andricthis software and associated documentation files (the "Software"), to deal with 253*0b57cec5SDimitry Andricthe Software without restriction, including without limitation the rights to 254*0b57cec5SDimitry Andricuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 255*0b57cec5SDimitry Andricof the Software, and to permit persons to whom the Software is furnished to do 256*0b57cec5SDimitry Andricso, subject to the following conditions: 257*0b57cec5SDimitry Andric 258*0b57cec5SDimitry Andric * Redistributions of source code must retain the above copyright notice, 259*0b57cec5SDimitry Andric this list of conditions and the following disclaimers. 260*0b57cec5SDimitry Andric 261*0b57cec5SDimitry Andric * Redistributions in binary form must reproduce the above copyright notice, 262*0b57cec5SDimitry Andric this list of conditions and the following disclaimers in the 263*0b57cec5SDimitry Andric documentation and/or other materials provided with the distribution. 264*0b57cec5SDimitry Andric 265*0b57cec5SDimitry Andric * Neither the names of the LLDB Team, copyright holders, nor the names of 266*0b57cec5SDimitry Andric its contributors may be used to endorse or promote products derived from 267*0b57cec5SDimitry Andric this Software without specific prior written permission. 268*0b57cec5SDimitry Andric 269*0b57cec5SDimitry AndricTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 270*0b57cec5SDimitry AndricIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 271*0b57cec5SDimitry AndricFOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 272*0b57cec5SDimitry AndricCONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 273*0b57cec5SDimitry AndricLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 274*0b57cec5SDimitry AndricOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE 275*0b57cec5SDimitry AndricSOFTWARE. 276*0b57cec5SDimitry Andric 277