IT-lexikon › Programmering › LLVM-undantaget

LLVM-undantaget

Programmering In English → Uppdaterad: 2026-11-01

Tillägget till Apache License 2.0 som gör att program kompilerade med LLVM inte behöver bära LLVM:s licensvillkor.

LLVM låg ursprungligen under University of Illinois/NCSA-licensen, en kort permissiv text utan patentskydd. Projektet beslöt att byta till Apache 2.0, och processen drog ut i flera år eftersom varje tidigare bidragsgivare måste godkänna bytet. Men Apache-licensen ensam skapade ett nytt problem: kompilatorer stoppar in bitar av sina egna runtime-bibliotek i den färdiga binären, och då skulle varje program byggt med Clang tekniskt sett behöva följa Apaches krav på licenstext och NOTICE-filer.

Undantaget tar bort just det kravet för kompilerad kod. Det innehåller dessutom en klausul för kombination med GPLv2-kod, eftersom Apache 2.0 annars anses krocka med GPLv2. I SPDX skrivs det Apache-2.0 WITH LLVM-exception. GCC löste samma sak med sitt runtime-undantag långt tidigare.

← Tillbaka till lexikonet