Das Kreuz mit Lizenzen und Co.

Lizenzprobleme: Steht LLVM bald unter Apache-2.0-Lizenz?

Michael Thomas

© Shutterstock.com/Tashatuvango

Die LLVM Foundation wird bereits des Längeren von Problemen mit ihren Lizenz- und Patentrichtlinien geplagt. Mit dem Ziel diese zu lösen hat Chris Lattner, der führende Kopf hinter dem LLVM-Projekt, der Community nun den Vorschlag unterbreitet, die gesamte LLVM unter die Apache 2.0-Lizenz zu stellen – inklusive einer auf die Laufzeit abzielenden Ausnahmeklausel.

Das LLVM-Projekt, dessen Markenname einmal für „Low Level Virtual Machine“ stand, wird mittlerweile auch als gemeinsame Infrastruktur für die Implementierung einer ganzen Reihe von statischen und über die Laufzeit kompilierten Sprachen genutzt. In dieser Funktion hat LLVM eine Vielzahl von speziellen Compilern ersetzt, darunter die Laufzeit-Engine für Apples OpenGL Stack.

Probleme …

Bei der LLVM Foundation ist leider nicht alles eitel Sonnenschein: Wie Chris Lattner im Rahmen seines aktuellen Vorschlags ausführlich beschreibt, wird sie vor allem von drei Problemen geplagt, die allesamt auf Lizenz- und Patentrechtliche Ursachen zurückzuführen sind:

1) Einige Mitwirkende werden aktiv an der Beteiligung an LLVM gehindert

Demnach werden viele Patches zurückgehalten, weil sich insbesondere beitragende Unternehmen aufgrund unklarer Formulierungen im entsprechenden Abschnitt der Lizenz in der unsicheren Situation befinden, eventuell unbeabsichtigt Patente freizugeben und Rechte an geistigem Eigentum zu verlieren.

2) „Schisma“ zwischen Compiler-Code und Laufzeitbibliotheks-Code

Der Compiler-Code steht unter UIUC-Lizenz, der Laufzeitbibliotheks-Code unter UIUC- und MIT-Lizenz. Die Vermischung der Lizenzen führt potentiell zu einem Problem, wenn ein Projekt von LLVM zum compiler_rt wechselt: Es besteht jedes mal die Möglichkeit, dass der jeweilige Urheber zwar der UIUC-, aber nicht der MIT-Lizenz zugestimmt hat.

3) Der Patentschutz der Developer Policy könnte nicht ausreichend sein

Weder die UIUC- noch die MIT-Lizenzen verlieren ein auch nur ein Wort über Patente. Der Patentabschnitt der Developer Policy wurde nicht von einem Anwalt, sondern einem einzelnen Jura-Studenten geschrieben und ist deshalb vermutlich alles andere als wasserdicht.

… und mögliche Lösungen

Um diese Probleme anzugehen, präsentiert Lattner neben einer möglicherweise bislang nicht bedachten Möglichkeit insgesamt drei explizite Lösungsvorschläge  – wobei er keinen Hehl daraus macht, welcher ihm der liebste wäre:

1) Eine neuartige rechtliche Lösung

Eine völlig neue Lizenz oder Patentrichtlinie zu entwerfen oder bestehende zu modifizieren ist zwar möglich, aber nicht unproblematisch: Zunächst ist ein solcher Prozess kompliziert und langwierig und das Ergebnis muss, im Gegensatz zu bestehenden Lizenzen, zunächst juristisch von allen Seiten abgeklopft werden. Des Weiteren müssen Firmenangestellte häufig eine Erlaubnis einholen, bevor sie an einem Projekt wie LLVM mitwirken können, was bei einer neuen Lizenz deutlich länger dauern dürfte als bei altbekannten.

2) Neue Mitwirkende unterzeichnen das Apache Contributor License Agreement

Dies würde zwar die Blockade lösen, da es den Geltungsbereich von Patenten absteckt und die Gefahr einer Klage abwenden würde, allerdings ergäben sich dadurch neue Nachteile, u. a. im Hinblick auf Zugangsbarrieren (Preisgabe persönlicher Informationen) und (Unternehmens-)rechtliche Gründe (Da nur ein kleine Änderung das Dokument aus rechtlicher Hinsicht zu einem komplett neuen macht, kämen alle Probleme aus Lösungsvorschlag Nummer 1 auf die Foundation zu).

3) Das Projekt wird unter die Apache 2.0-Lizenz gesellt – inklusive einer Ausnahmeklausel für die Laufzeit

Die Vorteile der Apache-Lizenz sieht Lattner nicht nur ihrer Bekanntheit sowie ihrer breiten Anwendung und Akzeptanz. Vor allem würde sie alle der formulierten Probleme umgehen bzw. beseitigen.

Lattners bevorzugte Variante ist folgerichtig Lösung Nummer drei: Sämtlichen Code, der sich derzeit noch unter UIUC- und MIT-Lizenzen befindet, unter die Apache 2.0-Lizenz stellen. Er stellt jedoch ausdrücklich klar, dass es sich nur um einen Vorschlag handelt, der in der kommenden Zeit von der Community diskutiert werden soll. So oder so rechnet er mit einem langwierigen Umstellungsprozess mit einer mindestens 18 Monate währenden Übergangszeit.

Aufmacherbild: Licenses Concept von Shutterstock.com / Urheberrecht: Tashatuvango

Verwandte Themen:

Geschrieben von
Michael Thomas
Michael Thomas
Michael Thomas studierte Erziehungswissenschaft an der Johannes Gutenberg-Universität Mainz und arbeitet seit 2013 als Freelance-Autor bei JAXenter.de. Kontakt: mthomas[at]sandsmedia.com
Kommentare

Hinterlasse einen Kommentar

avatar
4000
  Subscribe  
Benachrichtige mich zu: