Qual è il significato di MODULE_LICENSE_BSD_LIKE nel codice sorgente Android? [chiuso]

0

Nel codice sorgente di Android, vediamo file come MODULE_LICENSE_APACHE2, MODULE_LICENSE_BSD_LIKE, MODULE_LICENSE_W3C. Un osservatore esterno potrebbe pensare che questi specificano la licenza prevista che si applica all'albero del codice sorgente in cui risiede questo file.

Prendi il modulo JSON , ad esempio. Ha un file vuoto MODULE_LICENSE_BSD_LIKE, che potrebbe indicare che il modulo JSON è concesso in licenza in una delle licenze BSD. Tuttavia, le fonti stesse affermano di avere una licenza Apache License 2.0, come visto in JSON.java .

I pacchetti di questa libreria per Fedora, così come altri sistemi operativi come Debian, considerano la licenza della libreria come Apache License 2.0. Questo sembra ragionevole, in quanto un file vuoto non ha alcun peso legale.

Tuttavia, MODULE_LICENSE_BSD_LIKE è apparentemente lì per uno scopo. Qual è lo scopo?

    
posta asaveljevs 28.03.2014 - 09:52
fonte

1 risposta

3

DejaCode * sembra essersi chiesto questa stessa domanda . Questo è ciò che hanno trovato:

Empty marker files named MODULE_LICENSE_xxx (where xxx is a license "key") are stored in the codebase side-by-side or close to the code they document.
Typically, the presence of such a file indicates that the code in a current directory has a given license identified by xxx in the MODULE_LICENSE_xxx file name

Riguardo al perché questo è stato fatto, questo è quello che hanno detto:

The Android Open Source Project re-uses a large number of third-party software components under several different licenses (typically Open Source Initiative-approved licenses). ... Internally, the Android team uses specific conventions and techniques to document the origin and license of third-party components within the codebase itself.

Quindi i file vuoti sono lì per aiutare il team di sviluppo di Android a tenere traccia della licenza originale del codice che hanno incorporato nel progetto.

Vale la pena leggere il resto dell'articolo di DejaCode che descrive l'utilizzo dei file NOTICE e property ( .prop ).

* Il sito Web DejaCode non esiste più. Versione archiviata.

    
risposta data 28.03.2014 - 11:39
fonte

Leggi altre domande sui tag