Il modulo distutils.core è il solo modulo che deve essere installato per usare le Distutils. Fornisce la funzione setup() (che viene richiamata dallo script di setup). Indirettamente fornisce le classi distutils.dist.Distribution e distutils.cmd.Command.
arguments) |
La funzione setup() richiede un gran numero di argomenti. Questi vengono mostrati nella seguente tavola.
nome argomento | valore | tipo |
---|---|---|
Il nome del package | come stringa | |
Il numero di versione del package | Si veda distutils.version | |
Una singola riga che descrive il package | come stringa | |
Un'estesa descrizione del package | come stringa | |
Il nome dell'autore del package | come stringa | |
L'indirizzo email dell'autore del package | come stringa | |
Il nome del manutentore corrente, se differisce da quello dell'autore | come stringa | |
Il nome del manutentore corrente, se differisce da quello dell'autore | ||
La URL per il package (homepage) | come URL | |
L'URL da dove scaricare il package | come URL | |
Un elenco di package Python che distutils può manipolare | come lista di stringhe | |
Un elenco di moduli Python che distutils può manipolare | come lista di stringhe | |
Un elenco di script separati di file per compilare ed installare | come lista di stringhe | |
Un elenco di estensioni Python per compilare | Una lista di istanze di distutils.core.Extension | |
Un elenco di categorie Trove per il package | XXX link ad una migliore definizione | |
La classe Distribution da usare | Una sottoclasse di distutils.core.Distribution | |
Il nome dello script di setup setup.py -
predefinito a sys.argv[0] |
come stringa | |
Argomenti da fornire allo script di setup | come lista di stringhe | |
Opzioni predefinite per lo script di setup | come stringa | |
la licenza relativa al package | ||
Meta-data descrittivi. Si veda la PEP 314 | ||
Una mappa di nomi di comandi per sottoclassi Command | come un dizionario |
script_name[, script_args=None , stop_after='run' ]) |
script_name è un file che verrà eseguito dalla funzione execfile(), sys.argv[0] verrà rimpiazzato con script per la durata della chiamata. script_args è una lista di stringhe; se indicato, sys.argv[1:] verrà rimpiazzato da script_args per la durata della chiamata.
stop_after dice a setup() quando fermare il processo; valori possibili:
valore | descrizione |
---|---|
Lo stop dopo l'istanza Distribution viene creata e popolata con argomenti a parola chiave per setup() | |
Lo stop dopo i file di configurazione che devono essere analizzati (i dati verranno memorizzati nell'istanza Distribution). | |
Lo stop dopo la riga di comando
(sys.argv[1:] o script_args) verrà analizzata (i dati
verranno memorizzati nell'istanza Distribution). |
|
Lo stop dopo che sono stati eseguiti tutti i comandi (come se fosse stato chiamato setup() nella solita maniera). Ovvero con i valori predefiniti. |
In aggiunta, il modulo distutils.core propone un certo numero di classi che si trovano altrove.
Segue una breve descrizione di ognuna di queste, ma si faccia riferimento ai moduli più importanti per un riferimento completo.
Le classi di estensione descrivono un singolo modulo C o C++ in uno script di setup. Accetta i seguenti argomenti a parola chiave nel suo costruttore
nome dell'argomento | valore | tipo |
---|---|---|
Il nome completo dell'estensione, incluso ogni packages -- ad esempio non un nome di un file od un percorso, ma un nome puntato Python. | stringa | |
Un elenco di nomi di file sorgenti, relativi alla
distribuzione principale (dove risiede il file script di setup),
nella forma Unix (separata da delle barre oblique) per
portabilità. I file sorgenti possono essere in C, C++, SWIG (.i),
file specifici per la piattaforma o di qualsiasi altro tipo
riconosciuto dal comando build_ext come sorgente di
estensione per Python. |
stringa | |
Un elenco di directory dove ricercare file d'intestazione per C/C++ (per portabilità nella forma Unix). | stringa | |
Un elenco di macro da definire; ogni macro
viene definita mediante una tupla composta da due elementi, dove
la definizione di 'value' può essere rappresentata con una stringa
di definizione, oppure una stringa insieme ad un None , quindi
senza un particolare valore (equivalente a #define FOO nel
sorgente o -DFOO da riga di comando del compilatore
C su Unix) |
(stringa,stringa) tupla o (nome, None ). |
|
Un elenco di macro non definibili esplicitamente. | stringa | |
Un elenco di directory dove ricercare librerie C/C++ al momento del link. | stringa | |
un elenco di nomi di librerie (non nomi di file o percorsi) in previsione del link. | stringa | |
Un elenco di directory dove ricercare file o librerie C/C++ al momento dell'esecuzione (per estensioni condivise, questo avviene quando l'estensione viene caricata). | stringa | |
Un elenco di file extra di cui dovrà essere effettuato il link (come oggetti file non implicati in 'sorgenti', librerie statiche che dovranno essere esplicitamente specificate, file binari di risorse, etc.). | stringa | |
Ogni altra informazione extra, specifica per la piattaforma o per la compilazione, da usare nel file sorgente con altri 'sorgenti'. Per piattaforme e compilatori di file sorgenti, dove ha senso usare la riga di comando, queste informazioni sono sostanzialmente argomenti da riga di comando, ma per altre piattaforme possono non avere significato. | stringa | |
Ogni altra informazione extra, specifica per la piattaforma, da usare quando avviene il linkaggio degli oggetti file insieme alla realizzazione delle estensioni (o per la realizzazione di un nuovo interprete Python statico). Un'interpretazione simile a quella per 'extra_compile_args'. | stringa | |
Un elenco di simboli che dovranno essere
esportati da estensioni condivise. Non sfruttabile su tutte le
piattaforme e generalmente non necessario per estensioni python che
solitamente esportano esattamente un simbolo:
init + nome_estensione. |
stringa | |
Un elenco di file da cui dipendono le estensioni. | stringa | |
Estensioni del linguaggio (come 'c' ,
'c++' , 'objc' ). Se non fornite, verranno rilevate
dall'estensione sorgente. |
stringa |
Si veda la funzione setup() per una lista di argomenti a parola chiave accettati dal costruttore di Distribution. setup() crea un'istanza di Distribution.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.