<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY kappname "kdesvn-build">
  <!ENTITY package "kdesdk">
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % Italian "INCLUDE"
> <!-- Change language only here -->
  <!ENTITY svn "<application
>Subversion</application
>">
  <!ENTITY kdesvn-build "<application
>kdesvn-build</application
>">
]>

<book lang="&language;">

<bookinfo>
<title
>Manuale dello script &kdesvn-build;</title>

<authorgroup id="authors">
<author
><firstname
>Michael</firstname
><surname
>Pyne</surname
> <affiliation
><address
><email
>michael.pyne@kdemail.net</email
></address
></affiliation>
</author
> 
<author
><firstname
>Carlos</firstname
><surname
>Woelz</surname
> <affiliation
><address
><email
>carloswoelz@imap-mail.com</email
></address
></affiliation>
</author
> 


<othercredit role="translator"
><firstname
>Federico</firstname
><surname
>Zenith</surname
><affiliation
><address
><email
>zenith@chemeng.ntnu.no</email
></address
></affiliation
><contrib
>Traduzione della documentazione in italiano</contrib
></othercredit
> 

</authorgroup>

<copyright>
<year
>2005</year>
<holder
>Michael Pyne</holder>
</copyright>

<copyright>
<year
>2005</year>
<holder
>Carlos Woelz</holder>
</copyright>


<legalnotice
>&FDLNotice;</legalnotice>

<date
>2005-06-18</date>
<releaseinfo
>0.98</releaseinfo>

<abstract>
<para
>&kdesvn-build; è uno script Perl che genera e installa &kde; direttamente dal codice sorgente del deposito &svn; di &kde;.</para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kdesdk</keyword>
<keyword
>SVN</keyword>
<keyword
>Subversion</keyword>
<keyword
>Sviluppo di KDE</keyword>
</keywordset>

</bookinfo>


<chapter id="introduction">
<title
>Introduzione</title>

<para
>&kdesvn-build; è uno script Perl che aiuta gli utenti ad installare <ulink url="http://www.kde.org/"
>&kde;</ulink
> da <ulink url="http://subversion.tigris.org/"
>&svn;</ulink
>. Potresti anche considerare lo script <filename
>kde-build</filename
> incluso con il modulo kdesdk di &kde;. </para>

<para
>Qui documentiamo la sintassi e le opzioni del file di configurazione di &kdesvn-build;, le sue opzioni alla riga di comando, le sue funzionalità, e una panoramica di tutti i passi necessari a generare &kde; dal codice sorgente, inclusi i passi che dovresti effettuare con altri strumenti, ovvero quelli non effettuati automaticamente dallo script &kdesvn-build;. </para>

</chapter>

<chapter id="getting-started">
<title
>Per cominciare</title>

<para
>In questo capitolo, mostriamo come usare &kdesvn-build; per ritirare i moduli dal deposito di &kde; e generarli. Diamo anche una rapida spiegazione della struttura del deposito &svn; di &kde; e di cosa devi fare prima di eseguire lo script. </para>

<para
>Tutti gli argomenti qui presenti sono trattati in maggiore dettaglio nella <ulink url="http://quality.kde.org/develop/cvsguide/buildstep.php"
>guida a generare &kde; dai file sorgente</ulink
>, al <ulink url="http://quality.kde.org"
>sito Web della squadra di qualità di &kde;</ulink
>. Se stai compilando &kde; per la prima volta, è una buona idea leggerla, o almeno consultarla come riferimento. Troverai informazioni dettagliate sugli strumenti di gestione dei pacchetti e su requisiti, errori comuni di compilazione, strategie e informazioni su come far funzionare la tua nuova installazione di &kde;. </para>

<sect1 id="before-building">
<title
>Preparare il sistema per la generazione di &kde;</title>

<para
>Si raccomanda di scaricare e generare &kde; usando un account utente. Se hai già installato i pacchetti di &kde;, la scelta migliore sarebbe creare un utente diverso (apposito) per generare ed avviare il nuovo &kde;. Il vantaggio di generare &kde; con un utente apposito è che non puoi rovinare il sistema di base, e avrai sempre il modo di continuare a lavorare tranquillamente anche se qualcosa va storto. </para>

<para
>In seguito, se vorrai, potrai fare un'installazione come amministratore. Questo documento non considera l'installazione come amministratore. Se stai facendo un'installazione per tutto il sistema, probabilmente sai comunque lo stesso quello che stai facendo. </para>

<para
>Prima di usare lo script &kdesvn-build; (o qualsiasi altra strategia di generazione) devi installare gli strumenti di sviluppo e le librerie necessarie a &kde;. Ti serve la libreria &Qt;, versione 3.3.0 o successiva, Automake 1.8, Autoconf 2.5X (meglio se successivo a 2.57, siccome è stato segnalato un errore nelle versioni precedenti), il client di Subversion (SVN), il compilatore gcc con supporto per C++, libxml2, openssl, libbz2 e molti altri (per un elenco completo, vedi <ulink url="http://www.kde.org/info/requirements/3.4.php"
>i requisiti di compilazione di &kde;</ulink
>). Normalmente ci dovrebbero essere dei pacchetti di questi strumenti forniti dalla tua distribuzione o dal tuo fornitore. </para>

<para
>Alcuni di questi pacchetti sono divisi in librerie, programmi e pacchetti di sviluppo. Ti serviranno almeno il programma o la libreria, e il suo pacchetto di sviluppo. Nel dubbio, installa tutto. Le librerie di cui avrai bisogno cambieranno a seconda dei moduli che intendi generare, perché ogni modulo ha i suoi requisiti. La <ulink url="http://quality.kde.org/develop/cvsguide/buildstep.php#step1"
>guida passo-passo per la generazione di &kde; dal codice sorgente</ulink
> ha maggiori dettagli sugli strumenti e tecniche specifici usati per installare e trovare i programmi necessari. </para>

<para
>Probabilmente hai già una versione dello script &kdesvn-build; installata sul tuo sistema. &kdesvn-build; ti richiede di creare un file di configurazione, chiamato <filename
>.kdesvn-buildrc</filename
>. Questo file dovrebbe venire installato nella cartella Home (cioè <filename
>~/</filename
>), e contenere tutti i dati di configurazione necessari per l'esecuzione dello script, come le opzioni di configurazione, di compilazione, la posizione dei sorgenti, la destinazione dell'installazione (il prefisso), i moduli da costruire, eccetera. I dati di configurazione predefiniti sono forniti nel file <filename
>kdesvn-buildrc-sample</filename
>. Puoi trovare maggiori informazioni sulla sintassi del file di configurazione nel<xref linkend="configure-data"/> e nel <xref linkend="kdesvn-buildrc"/>. </para>

<para
>Un buon modo di prendere l'ultima versione è andare alla pagina kdesdk/scripts del sito Web <ulink url="http://websvn.kde.org/trunk/KDE"
>websvn.kde.org</ulink
>. Vedrai un elenco dei file disponibili nella cartella kdesdk/scripts del deposito &svn; di &kde;. Fai clic sul collegamento a &kdesvn-build; e scarica l'ultima versione dello script. Fai lo stesso per il file <filename
>kdesvn-buildrc-sample</filename
>. Rendi eseguibile lo script, e assicurati che sia nel tuo percorso. </para>

</sect1>

<sect1 id="configure-data">
<title
>Impostare i dati della configurazione</title>

<para
>Per usare lo script, devi avere un file nella tua cartella Home chiamato <filename
>.kdesvn-buildrc</filename
>, che imposta le opzioni generali e i moduli che vuoi scaricare e generare. </para>

<para
>Usa il file <filename
>kdesvn-buildrc-sample</filename
> come modello per impostare le opzioni globali e i moduli da generare. </para>

<para
>Seleziona il server usato per ritirare i file da &svn; impostando l'opzione globale <literal
>svn-server</literal
>. Il valore predefinito è il deposito &svn; anonimo, <filename
>svn://anonsvn.kde.org/</filename
>, ma cambialo se hai un <ulink url="http://developer.kde.org/documentation/misc/firststepsaccount"
>account &svn; di &kde;</ulink
>, o se hai un <ulink url="http://developer.kde.org/source/anonsvn.html"
>mirror vicino</ulink
>. </para>

<para
>Fai molta attenzione alle variabili globali <envar
>kdedir</envar
> e <envar
>qtdir</envar
>, perché la prima imposta dove sarà generato &kde; (come impostazione predefinita <filename
>~/kde</filename
>), e la seconda dove (e se) sarà compilata e installata la libreria &Qt; (come impostazione predefinita <filename
>~/kdesvn/build/qt-copy</filename
>). Più avanti dovrai ricordarti il valore di <envar
>kdedir</envar
> e <envar
>qtdir</envar
>, per impostare le variabili d'ambiente necessarie a far funzionare la tua installazione. Controlla se i moduli elencati sono effettivamente quelli che vuoi generare. Le opzioni predefinite del file <filename
>kdesvn-buildrc-sample</filename
> dovrebbero essere sufficienti per avere un'installazione di &kde; piuttosto completa. Salva il risultato come <filename
>.kdesvn-buildrc</filename
> nella tua cartella Home. </para>

<para
>Se vuoi affinare il file <filename
>.kdesvn-buildrc</filename
>, consulta <xref linkend="kdesvn-buildrc"/> per informazioni dettagliate su tutte le opzioni di configurazione. </para>

</sect1>

<sect1 id="building-and-troubleshooting">
<title
>Usare lo script &kdesvn-build;</title>

<para
>Adesso sei pronto per eseguire lo script. Da una finestra di terminale, accedi come l'utente che vuoi usare per compilare &kde; ed esegui lo script: <screen
><prompt
>&percnt;</prompt
><command
>su</command
> <option
>-</option
> <replaceable
>nome utente</replaceable>
<prompt
>&percnt;</prompt
><command
>kdesvn-build</command
>
</screen>
</para>

<para
>Adesso lo script dovrebbe cominciare a scaricare il codice sorgente e a compilarlo. È improbabile che funzioni tutto al primo colpo nella compilazione di &kde;. Non disperare! Controlla i file di registro per vedere se ti mancano degli strumenti o dei pacchetti di sviluppo (i file di registro sono messi dove indicato dalla variabile <envar
>log-dir</envar
> nel file di configurazione). A volte, il ramo di sviluppo principale diventa molto instabile e difficile da generare, specialmente quando si avvicina una scadenza di sviluppo. Abbi pazienza. Puoi trovare gli esempi più comuni di cose che possono andare storte e le loro soluzioni, oltre a diversi suggerimenti e strategie per generare &kde;, nella <ulink url="http://quality.kde.org/develop/cvsguide/buildstep.php#step1"
>guida passo-passo per generare &kde; dal codice sorgente</ulink
>. </para>

</sect1>

<sect1 id="environment">
<title
>Impostare l'ambiente per far funzionare il tuo nuovo &kde;</title>

<para
>Supponendo che tu stia usando un utente apposito per generare &kde;, e che tu abbia già installato una versione di &kde;, far funzionare il nuovo &kde; potrebbe essere un po' difficile, perché il nuovo deve prendere la precedenza sul vecchio. Cambia le variabili d'ambiente per assicurarti che sia così. </para>

<para
>Apri o crea il file <filename
>.bash_profile</filename
> nella cartella Home con un qualsiasi editor di testo, e aggiungi alla fine del file: <programlisting>
KDEDIR=<replaceable
>(percorso a kdedir)</replaceable>
KDEDIRS=$KDEDIR
PATH=$KDEDIR/bin:$QTDIR/bin:$PATH
LD_LIBRARY_PATH=$KDEDIR/lib:$LD_LIBRARY_PATH
export KDEDIRS PATH LD_LIBRARY_PATH
</programlisting
> Se stai generando il modulo <filename
>qt-copy</filename
>, aggiungi invece: <programlisting
>QTDIR=<replaceable
>(percorso a qtdir)</replaceable>
KDEDIR=<replaceable
>(percorso a kdedir)</replaceable>
KDEDIRS=$KDEDIR
PATH=$KDEDIR/bin:$QTDIR/bin:$PATH
MANPATH=$QTDIR/doc/man:$MANPATH
LD_LIBRARY_PATH=$KDEDIR/lib:$QTDIR/lib:$LD_LIBRARY_PATH
export QTDIR KDEDIRS PATH MANPATH LD_LIBRARY_PATH
</programlisting>
</para>

<para
>Se non stai usando un utente apposito, imposta una diversa variabile <envar
>$KDEHOME</envar
> per il tuo nuovo ambiente nel tuo <filename
>.bash_profile</filename
>: <programlisting
>export KDEHOME="${HOME}/.kde-svn"

# Crealo se necessario
[ ! -e ~/.kde-svn ] &amp;&amp; mkdir ~/.kde-svn
</programlisting>
</para>

<note>
<para
>Se in seguito il menu è vuoto o troppo affollato da applicazioni della tua distribuzione, potresti dover impostare le variabili d'ambiente <envar
>XDG</envar
> nel tuo <filename
>.bash_profile</filename
>: <programlisting
>XDG_CONFIG_DIRS="/etc/xdg"
XDG_DATA_DIRS="${KDEDIR}/share:/usr/share"
export XDG_CONFIG_DIRS XDG_DATA_DIRS
</programlisting>

</para>
</note>

<para
>Adesso che abbiamo finito, devi assicurarti che venga usato lo script di avvio <application
>startkde</application
> giusto: </para>

<para
>Apri il file di testo <filename
>.xinitrc</filename
> (o <filename
>.xsession</filename
>, a seconda della distribuzione) dalla cartella Home, o crealo se necessario. Aggiungi la riga: <programlisting
>exec ${KDEDIR}/bin/startkde
</programlisting>
</para>

<para
>Adesso, avvia il tuo nuovo &kde;: nei sistemi BSD e Linux con supporto per i terminali virtuali, le combinazioni di tasti <keycombo action="simul"
>&Ctrl;&Alt;<keycap
>F1...F12</keycap
></keycombo
> vengono usate per selezionare le console virtuali dalla 1 alla 12. Ciò permette di avere più di un ambiente desktop allo stesso tempo. Le prime sei sono terminali di testo, e le seguenti sono terminali grafici. </para>

<para
>Se quando avvii la macchina ti viene invece presentato il gestore grafico, puoi usare il nuovo ambiente &kde;, anche se non è elencato come opzione. Premi <keycombo action="simul"
>&Ctrl;&Alt;<keycap
>F2</keycap
></keycombo
>, e ti troverai davanti a un terminale testuale. Accedi usando l'utente apposito e scrivi: </para>

<screen
>startx -- :1
</screen>

<tip>
<para
>Puoi far girare il &kde; compilato dal codice sorgente e il vecchio &kde; allo stesso tempo! Puoi tornare al tuo utente normale premendo <keycombo action="simul"
>&Ctrl;&Alt;<keycap
>F7</keycap
></keycombo
> (o <keycap
>F6</keycap
>, <keycap
>F8</keycap
>... provali, uno dev'essere quello giusto). Per tornare alla versione di &kde; dal codice sorgente, premi <keycombo action="simul"
>&Ctrl;&Alt;<keycap
>F8</keycap
></keycombo
> (o il tasto giusto). Adesso puoi passare da una versione di &kde; all'altra, e provare quella nuova sapendo che puoi tornare rapidamente alla sicurezza del desktop &kde; stabile. </para>
</tip>


</sect1>

</chapter>

<chapter id="features">
<title
>Funzionalità dello script</title>

<para
>Le funzionalità di &kdesvn-build; includono: </para>


<itemizedlist>

<listitem
><para
>Ritira o aggiorna automaticamente i moduli da &svn;, a seconda di cosa è appropriato. </para
></listitem>

<listitem
><para
>Prende il tempo di generazione dei moduli. </para
></listitem>

<listitem
><para
>Cerca automaticamente di rigenerare i moduli che usano il <command
>make</command
> incrementale, che tende a non riuscire dopo alcuni tipi di deposito. </para
></listitem>

<listitem
><para
>Può far ripartire uno script precedente, o avviare il processo di generazione da un modulo particolare. </para
></listitem>

<listitem
><para
>Ha già un insieme di opzioni predefinite appropriate per generare un'installazione monoutente di &kde; dal deposito anonimo di &svn;. </para
></listitem>

<listitem
><para
>Contiene supporto per <ulink url="http://www.kde.me.uk/index.php?page=unsermake"
>Unsermake</ulink
>. </para
></listitem>

<listitem
><para
>Espansione della tilde per le opzioni di configurazione. Per esempio, puoi specificare: <programlisting
>qtdir ~/kdesvn/build/qt-copy</programlisting>
</para
></listitem>

<listitem
><para
>Cartelle di generazione, sorgente e registro configurabili </para
></listitem>

<listitem
><para
>Configura automaticamente un sistema di generazione, con la cartella del codice sorgente diversa da quella di generazione, per mantenere pulita la cartella sorgente. L'eccezione è <application
>qt-copy</application
>, che non è progettato per essere costruito in questo modo (a meno che tu voglia provare il <link linkend="conf-use-qt-builddir-hack"
><quote
>trucco per usare una cartella di generazione separata con Qt</quote
></link
>. </para
></listitem>

<listitem
><para
>Puoi specificare che le opzioni globali si applichino a ogni modulo da ritirare, e puoi anche specificare opzioni da applicare a singoli moduli. </para
></listitem>

<listitem
><para
>Siccome gli <application
>Autotools</application
> a volte non sono sincronizzati con le modifiche nell'albero del codice sorgente, puoi forzare la rigenerazione di un modulo creando un file <filename
>.refresh-me</filename
> nella cartella di generazione del modulo, o eseguendo &kdesvn-build; con l'opzione <option
>--refresh-build</option
>. </para
></listitem>

<listitem
><para
>Puoi specificare varie variabili d'ambiente da usare durante la generazione, incluse <envar
>KDEDIR</envar
>, <envar
>QTDIR</envar
>, <envar
>DO_NOT_COMPILE</envar
> e <envar
>CXXFLAGS</envar
>. </para
></listitem>

<listitem
><para
>I registri dei comandi hanno data e ora, in modo da avere sempre un registro dell'esecuzione dello script. Inoltre, uno speciale collegamento simbolico chiamato <filename
>latest</filename
> viene creato e punta sempre al file più recente della cartella dei registri. </para
></listitem>

<listitem
><para
>Se stai usando una versione utente di &kde; invece di una di sistema (per installare la quale devi essere amministratore), puoi usare lo script per installarla al posto tuo. Non ho verificato bene il codice, e fa ampio uso della chiamata <function
>system()</function
>, quindi non raccomanderei di usarlo come amministratore per ora. </para
></listitem>

<listitem
><para
>Puoi usare <link linkend="conf-make-install-prefix"
>make-install-prefix</link
> per prefissare la riga di comando di <command
>make install</command
> con un altro comando, cosa utile per <command
>sudo</command
>. </para
></listitem>

<listitem
><para
>Puoi usare l'opzione <link linkend="conf-apidox"
>apidox</link
> per generare e installare automaticamente la documentazione dell'API per alcuni moduli. </para
></listitem>

<listitem
><para
>Puoi ritirare anche solo una parte di un modulo &svn; di &kde;. Per esempio, potresti ritirare solo <application
>taglib</application
> da <application
>kdesupport</application
>, o solo <application
>K3B</application
> da <application
>extragear/multimedia</application
>. Lo script includerà automaticamente <application
>kde-common</application
> quando necessario per far funzionare la generazione. </para
></listitem>

<listitem
><para
>Puoi <quote
>far finta</quote
> di fare le operazioni. Se passi le opzioni <option
>--pretend</option
> o <option
>-p</option
> sulla riga di comando, lo script darà una descrizione logorroica dei comandi che sta per eseguire, senza però eseguirli. </para
></listitem>

<listitem
><para
>Supporto per ritirare particolari rami dei moduli &svn;. Questo lavoro deve ancora essere completato, ma puoi già selezionare il ramo che vuoi generare usando l'<link linkend="conf-module-base-path"
>opzione di configurazione <option
>module-base-path</option
></link
>. </para
></listitem>

</itemizedlist>

<para
>Cose che &kdesvn-build; <emphasis
>non</emphasis
> fa: </para>

<itemizedlist>

<listitem
><para
>Trovare il mirror &svn; di &kde;. Per ora non c'è nemmeno un elenco nello script, però il server predefinito dovrebbe funzionare senza problemi. </para
></listitem>

<listitem
><para
>Spazzolarti i denti. Quello te lo devi ricordare tu. </para
></listitem>

<listitem
><para
>Lo script probabilmente non è esente da errori. Scusa. </para
></listitem>

</itemizedlist>

</chapter>

<chapter id="kdesvn-buildrc">
<title
>Il formato di <filename
>.kdesvn-buildrc</filename
></title>

<para
>Per usare lo script, devi avere un file chiamato <filename
>.kdesvn-buildrc</filename
> nella tua cartella Home, il quale descrive i moduli che vuoi scaricare e generare. </para>



<para
>Parte con le opzioni globali, specificate come segue: </para>

<programlisting
>global
<replaceable
>nome-opzione valore-opzione</replaceable>
<replaceable
>[...]</replaceable>
end global
</programlisting>

<para
>Seguono quindi una o più sezioni per i moduli, specificate come segue: </para>

<programlisting
>module <replaceable
>nome-modulo</replaceable>
<replaceable
>nome-opzione valore-opzione</replaceable>
<replaceable
>[...]</replaceable>
end module
</programlisting>

<para
><replaceable
>nome-modulo</replaceable
> deve essere un modulo del deposito &svn; di &kde; (per esempio, <userinput
>kdelibs</userinput
> o <userinput
>kdebase</userinput
>). Alcune opzioni sostituiscono quelle globali, alcune si aggiungono ad esse, e alcune opzioni globali non si possono sostituire. </para>

<para
>Segue un elenco alfabetico delle opzioni disponibili. Fai clic sull'opzione per saperne di più. Se ne trovi una non documentata, scrivi agli autori usando l'indirizzo che trovi <link linkend="authors"
>sopra</link
>. </para>

<itemizedlist>
<listitem
><para
><link linkend="conf-apidox"
>apidox</link
>, per generare la documentazione dell'API.</para
></listitem>
<listitem
><para
><link linkend="conf-apply-qt-patches"
>apply-qt-patches</link
>, per migliorare qt-copy.</para
></listitem>
<listitem
><para
><link linkend="conf-binpath"
>binpath</link
>, per impostare la variabile <envar
>PATH</envar
>.</para
></listitem>
<listitem
><para
><link linkend="conf-branch"
>branch</link
>, per ritirare da un ramo invece che dal tronco principale.</para
></listitem>
<listitem
><para
><link linkend="conf-build-dir"
>build-dir</link
>, per impostare la cartella in cui generare.</para
></listitem>
<listitem
><para
><link linkend="conf-checkout-only"
>checkout-only</link
>, per ritirare soltanto alcune parti di un modulo.</para
></listitem>
<listitem
><para
><link linkend="conf-colorful-output"
>colorful-output</link
>, per aggiungere del colore all'output dello script.</para
></listitem>
<listitem
><para
><link linkend="conf-configure-flags"
>configure-flags</link
>, per definire quali flag con cui configurare un modulo.</para
></listitem>
<listitem
><para
><link linkend="conf-cxxflags"
>cxxflags</link
>, per definire la variabile <envar
>CXXFLAGS</envar
>.</para
></listitem>
<listitem
><para
><link linkend="conf-dest-dir"
>dest-dir</link
>, per cambiare il nome della cartella di un modulo.</para
></listitem>
<listitem
><para
><link linkend="conf-disable-agent-check"
>disable-agent-check</link
>, per evitare che &kdesvn-build; controlli lo stato dell'agente <application
>ssh</application
>.</para
></listitem>
<listitem
><para
><link linkend="conf-do-not-compile"
>do-not-compile</link
>, per segnare le cartelle da non generare.</para
></listitem>
<listitem
><para
><link linkend="conf-inst-apps"
>inst-apps</link
>, per generare e installare solo alcune cartelle.</para
></listitem>
<listitem
><para
><link linkend="conf-install-after-build"
>install-after-build</link
>, per evitare di installare dopo il processo di generazione.</para
></listitem>
<listitem
><para
><link linkend="conf-kdedir"
>kdedir</link
>, per impostare la cartella in cui installare &kde;.</para
></listitem>
<listitem
><para
><link linkend="conf-libpath"
>libpath</link
>, per impostare la variabile <envar
>LD_LIBRARY_PATH</envar
>.</para
></listitem>
<listitem
><para
><link linkend="conf-make-install-prefix"
>make-install-prefix</link
>, per avviare un programma di aiuto (come <application
>sudo</application
>) durante <command
>make install</command
>.</para
></listitem>
<listitem
><para
><link linkend="conf-make-options"
>make-options</link
>, per passare opzioni al programma <command
>make</command
>.</para
></listitem>
<listitem
><para
><link linkend="conf-manual-build"
>manual-build</link
>, per evitare di generare il modulo automaticamente.</para
></listitem>
<listitem
><para
><link linkend="conf-manual-update"
>manual-update</link
>, per evitare di fare qualsiasi cosa sul modulo in automatico.</para
></listitem>
<listitem
><para
><link linkend="conf-module-base-path"
>module-base-path</link
>, per cambiare da dove scaricare il modulo (utile per rami e tag).</para
></listitem>
<listitem
><para
><link linkend="conf-niceness"
>niceness</link
>, per cambiare la priorità nell'uso della <hardware
>CPU</hardware
>.</para
></listitem>
<listitem
><para
><link linkend="conf-no-rebuild-on-fail"
>no-rebuild-on-fail</link
>, per evitare di far ripartire <command
>make</command
> se non riesce.</para
></listitem>
<listitem
><para
><link linkend="conf-qtdir"
>qtdir</link
>, per impostare il percorso alle librerie &Qt;.</para
></listitem>
<listitem
><para
><link linkend="conf-set-env"
>set-env</link
>, per impostare una variabile d'ambiente.</para
></listitem>
<listitem
><para
><link linkend="conf-source-dir"
>source-dir</link
>, per cambiare da dove scaricare il codice sorgente.</para
></listitem>
<listitem
><para
><link linkend="conf-stop-on-failure"
>stop-on-failure</link
>, per far fermare &kdesvn-build; non appena qualcosa non riesce.</para
></listitem>
<listitem
><para
><link linkend="conf-svn-server"
>svn-server</link
>, per cambiare il server da cui si scarica il codice sorgente.</para
></listitem>
<listitem
><para
><link linkend="conf-use-qt-builddir-hack"
>use-qt-builddir-hack</link
>, per dare a &Qt; una cartella di generazione separata dal suo codice sorgente, come per &kde;.</para
></listitem>
<listitem
><para
><link linkend="conf-use-unsermake"
>use-unsermake</link
>, per usare il sistema di generazione avanzato <application
>unsermake</application
>.</para
></listitem>
</itemizedlist>


<para
>Questa è una tabella delle varie opzioni con alcuni commenti. Ogni opzione che ne sostituisca una globale sostituirà anche un'impostazione della riga di comando. </para>

<table id="option-table">
<title
>Tabella delle opzioni</title>
<tgroup cols="3">

<thead>
<row>
<entry
>Nome dell'opzione</entry>
<entry
>Sostituibilità</entry>
<entry
>Note</entry>
</row>
</thead>

<tbody>

<row id="conf-apidox">
<entry
>apidox</entry>
<entry
>Sostituisce globale</entry>
<entry
>Imposta questa opzione a <option
>true</option
> (vero) per fare in modo che &kdesvn-build; generi e installi la documentazione dell'API per il modulo dopo il normale processo di generazione e installazione. Questo funziona soltanto per i moduli nei quali <command
>make apidox</command
> ha effetto, tra cui kdelibs, kdebase, koffice e altri. </entry>
</row>

<row id="conf-apply-qt-patches">
<entry
>apply-qt-patches</entry>
<entry
>Sostituisce globale</entry>
<entry
>Questa opzione è utile solo per qt-copy. Se è impostata ad un valore non nullo, lo script <filename
>apply-patches</filename
> sarà eseguito prima della generazione, per applicare le patch non ufficiali a qt-copy. Siccome queste patch sono normalmente la ragione per cui si installa qt-copy invece di un normale &Qt;, non dovrebbe far male abilitarle. L'impostazione predefinita è abilitare le patch.</entry>
</row>

<row id="conf-binpath">
<entry
>binpath</entry>
<entry
>Non sostituibile</entry>
<entry
><para
>Imposta questa opzione per impostare la variabile d'ambiente <envar
>PATH</envar
> durante la generazione. Non puoi sostituire questa impostazione nelle opzioni di un modulo. Il valore predefinito è <filename class="directory"
>/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin</filename
>. Questa variabile d'ambiente dovrebbe includere i percorsi, separati da due punti, dei tuoi strumenti di sviluppo. I percorsi <filename class="directory"
>$<envar
>KDEDIR</envar
>/bin</filename
> e <filename class="directory"
>$<envar
>QTDIR</envar
>/bin</filename
> sono aggiunti automaticamente. Puoi usare la tilde (~) per qualsiasi percorso che aggiungi con questa opzione.</para>
</entry>
</row>

<row id="conf-branch">
<entry
>branch</entry>
<entry
>Sostituisce globale</entry>
<entry
><para
>Imposta questa opzione per ritirare i file da un ramo di &kde; invece che dal tronco, che è predefinito ed è dove avviene lo sviluppo di &kde;. Per esempio, per ritirare &kde; 3.4, imposteresti questa opzione a <option
>3.4</option
>.</para>
<para
>Nota che alcuni moduli usano un diverso nome su alcuni rami. In particolare, il modulo &arts; richiesto non segue i numeri di versione di &kde;. La versione di &arts; corrispondente a &kde; 3.4 era la versione 1.4.</para>
<para
>Se &kdesvn-build; non riesce a scaricare correttamente un ramo con questa opzione, potresti dover specificare manualmente l'URL da cui scaricare usando l'opzione <link linkend="conf-override-url"
>override-url</link
>.</para>
</entry>
</row>

<row id="conf-build-dir">
<entry
>build-dir</entry>
<entry
>Sostituisce globale</entry>
<entry
>Usa questa opzione per cambiare la cartella che conterrà il codice costruito. Ci sono tre diversi modi di usarla: <itemizedlist
><listitem
><para
>Relativa alla cartella sorgente della cartella del codice sorgente &svn; di &kde; (vedi <link linkend="conf-source-dir"
>l'opzione source-dir</link
>). Questo è il modo predefinito, e il modo in cui lo script ha funzionato fino alla versione 0.61. Questa modalità viene selezionata se scrivi un nome di cartella che non comincia per tilde (~) o sbarra (/).</para
><para
>Il valore predefinito è <filename class="directory"
>build</filename
>.</para
></listitem
><listitem
><para
>Percorso assoluto. Se specifichi un percorso che comincia per /, quel percorso sarà usato direttamente. Per esempio, <filename class="directory"
>/tmp/kde-obj-dir/</filename
>.</para
></listitem
><listitem
><para
>Relativo alla tua cartella Home. Se specifichi un percorso che comincia per ~, il percorso è inteso relativo alla tua cartella Home, analogamente all'espansione della tilde in una shell. Per esempio, <filename class="directory"
>~/builddir</filename
> imposterebbe la cartella di generazione a <filename class="directory"
>/home/nome-utente/builddir</filename
>.</para
></listitem
></itemizedlist
> Forse ti sorprenderà, ma questa opzione è effettivamente modificabile a seconda del modulo. </entry>
</row>

<row id="conf-checkout-only">
<entry
>checkout-only</entry>
<entry
>Sostituisce globale</entry>
<entry
>Imposta questa opzione per ritirare il codice sorgente &svn; un pezzo alla volta. Il valore di questa opzione dovrebbe essere un elenco separato da spazi di cartelle da ritirare. Se non includi la cartella <filename
>admin</filename
>, essa verrà inclusa automaticamente (se necessario). Quando ritiri un pezzo alla volta, la cartella <filename
>admin</filename
> sarà presa da kde-common, che è dove si trova sul server &svn;. Sebbene questa opzione sostituisca l'opzione globale, tieni presente che impostare questa opzione come globale non ha senso. </entry>
</row>

<row id="conf-configure-flags">
<entry
>configure-flags</entry>
<entry
>Si aggiunge alle opzioni globali (eccetto qt-copy)</entry>
<entry
>Usa questa opzione per specificare quali flag passare a <command
>./configure</command
> quando crei il sistema di generazione per il modulo. Quando usata come opzione globale, viene applicata a tutti i moduli generati da questo script. qt-copy usa un insieme molto diverso di opzioni rispetto al resto di &kde;, quindi questa opzione <emphasis
>sostituisce</emphasis
> le impostazioni globali quando applicata a qt-copy.</entry>
</row>

<row id="conf-colorful-output">
<entry
>colorful-output</entry>
<entry
>Non sostituibile</entry>
<entry
>Imposta questa opzione a <option
>false</option
> (falso) per disattivare l'output colorato di &kdesvn-build;. Questa opzione ha valore predefinito <option
>true</option
> (vero). Nota che &kdesvn-build; non passerà codici di colore a nient'altro che a un terminale (come <application
>xterm</application
>, &konsole;, o la normale console di Linux). </entry>
</row>

<row id="conf-cxxflags">
<entry
>cxxflags</entry>
<entry
>Si aggiunge alle opzioni globali</entry>
<entry
>Usa questa opzione per specificare quali flag passare a <command
>./configure</command
> nella forma della variabile <envar
>CXXFLAGS</envar
> quando crei il sistema di generazione del modulo. Questa opzione viene specificata qui invece che con <link linkend="conf-configure-flags"
>configure-flags</link
> perché questa opzione imposterà anche la variabile d'ambiente <envar
>CXXFLAGS</envar
> durante il processo di generazione. </entry>
</row>

<row id="conf-dest-dir">
<entry
>dest-dir</entry>
<entry
>Sostituisce globale</entry>
<entry
>Usa questa opzione per cambiare il nome che viene dato a un modulo sul disco. Per esempio, se il modulo era <filename
>extragear/network</filename
>, potresti rinominarlo a <filename
>extragear-network</filename
> usando questa opzione. </entry>
</row>

<row id="conf-disable-agent-check">
<entry
>disable-agent-check</entry>
<entry
>Non sostituibile</entry>
<entry
>Normalmente, se stai usando <application
>ssh</application
> per scaricare i sorgenti da <application
>Subversion</application
> (come nel caso in cui stessi usando il protocollo <filename
>svn+ssh</filename
>), &kdesvn-build; cercherà di assicurarsi che se stai usando <application
>ssh-agent</application
>, questo stia effettivamente gestendo delle identità <application
>ssh</application
>. Questo è per cercare di prevenire che <application
>ssh</application
> chieda la password per ogni modulo. Puoi disabilitare questa opzione impostando <option
>disable-agent-check</option
> a <option
>true</option
> (vero). </entry>
</row>

<row id="conf-do-not-compile">
<entry
>do-not-compile</entry>
<entry
>Sostituisce globale</entry>
<entry
><para
>Usa questa opzione per impostare la variabile d'ambiente <envar
>DO_NOT_COMPILE</envar
> prima di eseguire lo script di configurazione. Secondo le <ulink url="http://developer.kde.org/documentation/other/developer-faq.html"
>domande ricorrenti per gli sviluppatori di &kde;</ulink
>, ciò dovrebbe impedire la compilazione di ogni cartella di massimo livello che passi. Le cartelle dovrebbero essere separate da spazi.</para>

<para
>Nota che il codice sorgente dei programmi sarà comunque scaricato. Puoi usare la direttiva <link linkend="conf-checkout-only"
>checkout-only</link
> per scegliere le cartelle che vuoi ritirare.</para>
</entry>
</row>

<row id="conf-email-address">
<entry
>email-address</entry>
<entry
>Non sostituibile</entry>
<entry>
<para
>Imposta questa opzione all'indirizzo di posta elettronica da cui &kdesvn-build; dovrebbe inviare una lettera se mai ne avesse bisogno. Non te ne devi curare se non usi nessuna funzionalità che usa la posta (come impostazione predefinita sono tutte disattivate). </para>

<para
>Attualmente solo <link linkend="conf-email-on-compile-error"
> email-on-compile-error</link
> ha bisogno di questa opzione. </para>
</entry>
</row>

<row id="conf-email-on-compile-error">
<entry
>email-on-compile-error</entry>
<entry
>Non sostituibile</entry>
<entry>
<para
>Puoi impostare questa opzione all'indirizzo di posta elettronica a cui mandare un rapporto quando un modulo non può essere generato. &kdesvn-build; aspetterà fino a quando tutti i moduli saranno stati generati e metterà assieme tutti i risultati in un rapporto. Il rapporto viene inviato solo se almeno un modulo non è potuto essere generato. </para>

<para
>Vedi anche l'opzione <link linkend="conf-email-address"
>email-address</link
> per impostare l'indirizzo da cui &kdesvn-build; dovrebbe inviare la lettera, perché il valore predefinito normalmente non è quello che vuoi. </para>
</entry>
</row>

<row id="conf-inst-apps">
<entry
>inst-apps</entry>
<entry
>Sostituisce globale</entry>
<entry
><para
>Questo è il contrario dell'opzione <link linkend="conf-do-not-compile"
>do-not-compile</link
>. Questa opzione fa in modo che solo le cartelle di massimo livello siano generate. Le cartelle devono essere separate da spazi.</para>

<para
>Nessun cambiamento avrà effetto fino alla prossima volta che verrà eseguito <command
>make <option
>-f</option
> <filename
>Makefile.cvs</filename
></command
>, automaticamente dallo script o a mano con le opzioni <link linkend="cmdline-refresh-build"
><option
>--refresh-build</option
></link
> o <link linkend="cmdline-recreate-configure"
><option
>--recreate-configure</option
></link
>. </para>

<para
>Nota che il codice sorgente dei programmi sarà comunque scaricato. Puoi usare la direttiva <link linkend="conf-checkout-only"
>checkout-only</link
> per scegliere le cartelle che vuoi ritirare.</para>
</entry>
</row>

<row id="conf-install-after-build">
<entry
>install-after-build</entry>
<entry
>Sostituisce globale</entry>
<entry
>Questa opzione viene usata per installare il pacchetto a seguito di una generazione riuscita. Come impostazione predefinita, questa opzione è attiva. Se vuoi disattivarla, devi impostarla a <option
>0</option
> nel file di configurazione. Puoi anche usare l'opzione <link linkend="cmdline-no-install"
><option
>--no-install</option
></link
> dalla riga di comando. </entry>
</row>

<row id="conf-kdedir">
<entry
>kdedir</entry>
<entry
>Non sostituibile</entry>
<entry
>Questa opzione imposta la cartella in cui &kde; sarà installato dopo essere stato generato. Il suo valore predefinito è <filename class="directory"
>~/kde</filename
>. Se la cambi a una cartella che richiede accesso come amministratore di sistema, potresti essere interessato anche all'opzione <link linkend="conf-make-install-prefix"
>make-install-prefix</link
>.</entry>
</row>

<row id="conf-libpath">
<entry
>libpath</entry>
<entry
>Non sostituibile</entry>
<entry
>Imposta questa opzione per impostare la variabile d'ambiente <envar
>LD_LIBRARY_PATH</envar
>. Non puoi sostituire questa impostazione per un singolo modulo. Il valore predefinito è vuoto, ma i percorsi <filename class="directory"
>$<envar
>KDEDIR</envar
>/lib</filename
> e <filename class="directory"
>$<envar
>QTDIR</envar
>/lib</filename
> vengono aggiunti automaticamente. Puoi usare la tilde (~) per qualsiasi percorso che aggiungi con questa opzione. </entry>
</row>

<row id="conf-log-dir">
<entry
>log-dir</entry>
<entry
>Sostituisce globale</entry>
<entry
>Usa questa opzione per cambiare la cartella usata per contenere i file di registro generati dallo script. Questa opzione può essere impostata singolarmente per ogni modulo dalla versione 0.64 in avanti. </entry>
</row>

<row id="conf-make-install-prefix">
<entry
>make-install-prefix</entry>
<entry
>Sostituisce globale</entry>
<entry
>Imposta questa variabile a un elenco separato da spazi, che verrà interpretato come un comando con le sue opzioni con cui far precedere il comando <command
>make install</command
> usato per installare i moduli. È comodo per installare i pacchetti con per esempio <command
>sudo</command
>, ma sii cauto quando usi i privilegi di amministratore.</entry>
</row>

<row id="conf-make-options">
<entry
>make-options</entry>
<entry
>Sostituisce globale</entry>
<entry
>Imposta questa variabile per passare le opzioni della riga di comando al comando <command
>make</command
>. È utile per programmi come <ulink url="http://distcc.samba.org/"
><application
>distcc</application
></ulink
>. <application
>distcc</application
> ti permette di condividere il lavoro di compilazione tra diversi computer. Per usarlo, devi usare l'opzione <option
>j</option
> di <application
>make</application
>. La documentazione raccomanda di usare 2×(numero di cpu in rete). Se hai una sola <hardware
>CPU</hardware
>, sarebbe <option
>-j2</option
>.</entry>
</row>

<row id="conf-manual-build">
<entry
>manual-build</entry>
<entry
>Sostituisce globale</entry>
<entry
>Imposta il valore dell'opzione a <option
>true</option
> (vero) per impedire al processo di cercare di generare questo modulo. Sarà comunque aggiornato quando si aggiorna da &svn;. Questa opzione è esattamente equivalente all'opzione da riga di comando <link linkend="cmdline-no-build"
><option
>--no-build</option
></link
>. </entry>
</row>

<row id="conf-manual-update">
<entry
>manual-update</entry>
<entry
>Sostituisce globale</entry>
<entry
>Imposta il valore dell'opzione a <option
>true</option
> (vero) per impedire che il processo di generazione cerchi di aggiornare (e di conseguenza generare o installare) questo modulo. Se imposti questa opzione per un modulo, lo stai in pratica escludendo. </entry>
</row>

<row id="conf-module-base-path">
<entry
>module-base-path</entry>
<entry
>Sostituisce globale</entry>
<entry
><para
>Imposta questa opzione per sostituire il percorso alla cartella predefinita di &kdesvn-build; per il modulo. Si può usare, per esempio, per ritirare particolari rami o versioni di alcune librerie. <ulink url="http://websvn.kde.org/"
>Il visore del sorgente di &kde;</ulink
> è utilissimo per capire quale percorso scegliere.</para>
<para
>Nota che &kdesvn-build; costruisce il percorso finale secondo il modello seguente: <varname
>$svn-server</varname
>/home/kde/<varname
>$module-base-path</varname
>/<varname
>$module-name</varname
>. </para>
<para
>Il valore predefinito è <option
>trunk</option
> o <option
>trunk/KDE</option
>, a seconda del nome del modulo.</para>
</entry>
</row>

<row id="conf-niceness">
<entry
>niceness</entry>
<entry
>Non sostituibile</entry>
<entry
>Imposta questa opzione a un numero tra 20 e 0. Maggiore è il numero, minore la priorità che &kdesvn-build; si assegnerà. Il valore predefinito è 10. </entry>
</row>

<row id="conf-no-rebuild-on-fail">
<entry
>no-rebuild-on-fail</entry>
<entry
>Sostituisce globale</entry>
<entry
>Imposta questa opzione a <option
>true</option
> (vero) per impedire sempre che &kdesvn-build; cerchi di ricostruire questo modulo se una generazione incrementale non dovesse riuscire. Normalmente &kdesvn-build; cercherà di ricostruire il modulo da zero per annullare l'effetto di aggiornamenti &svn; mancanti che danneggiano il sistema di generazione.</entry>
</row>

<row id="conf-override-url">
<entry
>override-url</entry>
<entry
>Sostituisce globale</entry>
<entry
>Se imposti questa opzione, &kdesvn-build; userà il suo valore come l'URL da passare a <application
>Subversion</application
> <emphasis
>esattamente com'è</emphasis
>. Generalmente dovresti usarla se vuoi scaricare un rilascio particolare ma &kdesvn-build; non riesce a capire quello che vuoi fare usando <link linkend="conf-branch"
>branch</link
>. </entry>
</row>

<row id="conf-qtdir">
<entry
>qtdir</entry>
<entry
>Non sostituibile</entry>
<entry
>Imposta questa opzione per impostare la variabile d'ambiente <envar
>QTDIR</envar
> durante la generazione. Non puoi sostituire questa impostazione nelle opzioni di un modulo. Se non specifichi l'opzione, il suo valore predefinito sarà <filename class="directory"
><varname
>$(source-dir)</varname
>/build/qt-copy</filename
>, che usa il modulo qt-copy incluso nel deposito sorgente di &kde;. Puoi usare una tilde (~) per rappresentare la tua cartella Home. </entry>
</row>

<row id="conf-remove-after-install">
<entry
>remove-after-install</entry>
<entry
>Sostituisce globale</entry>
<entry
><para
>Se hai poco spazio su disco, potrebbe interessarti questa opzione per eliminare automaticamente la cartella di generazione (o entrambe le cartelle del codice sorgente e di generazione per le installazioni singole) dopo che sarà riuscita l'installazione del modulo. </para>
<para
>I valori possibili di questa opzione sono: <itemizedlist>
<listitem
><para
><option
>none</option
> - Non eliminare nulla (predefinito).</para
></listitem>
<listitem
><para
><option
>builddir</option
> - Elimina la cartella di generazione, ma non il codice sorgente.</para
></listitem>
<listitem
><para
><option
>all</option
> - Elimina sia la cartella del codice sorgente che quella di generazione.</para
></listitem>
</itemizedlist>
</para>

<para
>Nota che l'uso di questa opzione può avere un significativo impatto negativo sul tuo uso di banda (se usi <option
>all</option
>) e sul tempo necessario a compilare &kde;, perché &kdesvn-build; non potrà effettuare generazioni incrementali.</para>
</entry>
</row>

<row id="conf-set-env">
<entry
>set-env</entry>
<entry
>Sostituisce globale</entry>
<entry
><para
>Questa opzione accetta un insieme di valori separati da spazi, dove il primo è la variabile d'ambiente da impostare, e il resto i valori a cui vuoi impostarla. Per esempio, per impostare la variabile <envar
>PINCO</envar
> a <replaceable
>pallino</replaceable
>, inseriresti questo comando nella sezione opportuna:</para>
<screen
><command
>set-env</command
> <envar
>PINCO</envar
> <replaceable
>pallino</replaceable
></screen>
<para
>Questa opzione è speciale perché può essere ripetuta senza sostituire le impostazioni di <option
>set-env</option
> precedenti nella stessa sezione del file di configurazione. In questo modo puoi impostare diverse variabili d'ambiente per modulo (o globalmente).</para>
</entry>
</row>

<row id="conf-source-dir">
<entry
>source-dir</entry>
<entry
>Non sostituibile</entry>
<entry
>Questa opzione viene usata per impostare la cartelle in cui tenere il codice sorgente &svn; di &kde; sul tuo computer. Se non specifichi questo valore, quello predefinito sarà <filename class="directory"
>~/kdesvn</filename
>. Se invece lo specifichi, usa un percorso assoluto. </entry>
</row>

<row id="conf-svn-server">
<entry
>svn-server</entry>
<entry
>Non sostituibile</entry>
<entry
>Questa opzione viene usata per impostare il server usato per ritirare i file da &svn;. Il valore predefinito è il deposito &svn; anonimo, <filename
>svn://anonsvn.kde.org/</filename
>.</entry>
</row>

<row id="conf-stop-on-failure">
<entry
>stop-on-failure</entry>
<entry
>Sostituisce globale</entry>
<entry
>Imposta questa opzione a <option
>true</option
> (vero) per far fermare l'esecuzione dello script a seguito del verificarsi di un errore durante il processo di generazione o installazione. Il valore predefinito di questa opzione è spento. </entry>
</row>

<row id="conf-tag">
<entry
>tag</entry>
<entry
>Sostituisce globale</entry>
<entry
><para
>Usa questa opzione per scaricare un rilascio specifico di un modulo.</para>
<para
><emphasis
>Nota:</emphasis
> è molto probabile che usare questa opzione <emphasis
>non è quello che vuoi fare</emphasis
>. I rilasci di &kde; sono disponibili come tarball dal <ulink url="ftp://ftp.kde.org/"
>sito FTP di &kde;</ulink
> o da uno dei suoi <ulink url="http://download.kde.org/download.php"
>mirror</ulink
>.</para>
<para
>Se stai usando &kdesvn-build; perché hai dei problemi ad ottenere un rilascio di &kde; per la tua distribuzione, considera piuttosto lo <ulink url="http://developer.kde.org/build/konstruct/"
>strumento di generazione Konstruct</ulink
>, che funziona con le tarball dei rilasci.</para>
</entry>
</row>

<row id="conf-use-qt-builddir-hack">
<entry
>use-qt-builddir-hack</entry>
<entry
>Sostituisce globale</entry>
<entry
>Sebbene questa opzione sostituisca quella globale, ha senso solo per qt-copy. Imposta questa opzione a <option
>true</option
> (vero) per abilitare la modalità <emphasis
>sperimentale</emphasis
> dello script, con srcdir diverso da builddir. Quando abilitata, &kdesvn-build; copierà il modulo del codice sorgente qt-copy nella cartella di generazione, ed effettuerà la generazione da lì. Ciò vuol dire che la tua variabile d'ambiente <envar
>QTDIR</envar
> dovrebbe invece essere impostata a <filename class="directory"
>$(qt-copy-build-dir)/qt-copy/lib</filename
>. Dovresti anche cambiare l'opzione <link linkend="conf-qtdir"
>qtdir</link
> corrispondentemente. La compilazione incrementale dovrebbe funzionare ancora in questa modalità, perché le date e le ore dei file saranno mantenute dopo la copia. Se usi l'opzione <link linkend="conf-apply-qt-patches"
>apply-qt-patches</link
>, le patch saranno applicate nella cartella di generazione, non in quella del codice sorgente. Questa opzione ha valore predefinito <option
>true</option
> (vero). </entry>
</row>

<row id="conf-use-unsermake">
<entry
>use-unsermake</entry>
<entry
>Sostituisce globale</entry>
<entry
><para
>Imposta questa opzione a <option
>true</option
> (vero) per usare il programma sperimentale <application
>unsermake</application
> invece di <application
>automake</application
> quando esegui lo script di configurazione. Ciò può portare a notevoli riduzioni del tempo di generazione, specialmente per i <ulink url="http://www.csh.rit.edu/slashdot/distcc.html"
>sistemi di generazione distribuiti</ulink
>. Questa opzione ha valore predefinito <option
>true</option
> (vero). </para>

<para
>Normalmente, se usi questa opzione &kdesvn-build; manterrà automaticamente <application
>unsermake</application
> aggiornato. Questo potrebbe essere fastidioso, specialmente se gestisci <application
>unsermake</application
> a mano. Se questo è il caso, puoi impostare questa opzione a <option
>self</option
>, e &kdesvn-build; userà ancora <application
>unsermake</application
>, ma non farà nulla di particolare per tenerlo aggiornato. </para>
</entry>
</row>

</tbody>

</tgroup>
</table>

</chapter>

<chapter id="cmdline">
<title
>Opzioni da riga di comando e variabili d'ambiente</title>

<para
>Questo script non usa variabili d'ambiente. se devi impostare delle variabili d'ambiente per il processo di generazione o installazione, vedi l'opzione <link linkend="conf-set-env"
>set-env</link
>. </para>

<para
>Lo script accetta le seguenti opzioni dalla riga di comando: </para>

<variablelist>

<varlistentry id="cmdline-help">
<term
><option
>--help</option
></term>
<listitem
><para
>mostra soltanto un semplice aiuto sull'uso di questo script. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-version">
<term
><option
>--version</option
></term>
<listitem
><para
>mostra la versione del programma. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-author">
<term
><option
>--author</option
></term>
<listitem
><para
>mostra informazioni per contattare l'autore. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-color">
<term
><option
>--color</option
></term>
<listitem
><para
>abilita l'output colorato. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-color">
<term
><option
>--no-color</option
></term>
<listitem
><para
>disabilita l'output colorato. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-pretend">
<term
><option
>--pretend</option
> (o <option
>-p</option
>)</term>
<listitem
><para
>non fare nulla, fai solo finta di farlo. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-quiet">
<term
><option
>--quiet</option
> (o <option
>-q</option
>)</term>
<listitem
><para
>non scrivere tanto output. Con questa opzione vengono scritte solo le cose fondamentali. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-really-quiet">
<term
><option
>--really-quiet</option
></term>
<listitem
><para
>scrivi solo avvertimenti ed errori. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-verbose">
<term
><option
>--verbose</option
></term>
<listitem
><para
>scrivi molte cose su quello che sta succedendo, e su cosa sta facendo &kdesvn-build;. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-svn-only">
<term
><option
>--svn-only</option
></term>
<listitem
><para
>fai solo l'aggiornamento del codice sorgente. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-build-only">
<term
><option
>--build-only</option
></term>
<listitem
><para
>fai solo la generazione. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-ignore-modules">
<term
><option
>--ignore-modules</option
></term>
<listitem
><para
>non includere i moduli passati sul resto della riga di comando nel processo di aggiornamento e generazione. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-svn">
<term
><option
>--no-svn</option
></term>
<listitem
><para
>salta la connessione al server &svn;. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-build">
<term
><option
>--no-build</option
></term>
<listitem
><para
>salta il processo di generazione. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-install">
<term
><option
>--no-install</option
></term>
<listitem
><para
>non installare automaticamente i pacchetti dopo averli generati. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-debug">
<term
><option
>--debug</option
></term>
<listitem
><para
>abilita la modalità di debug per lo script. Attualmente ciò vuol dire che tutto l'output sarà riversato sullo standard output oltre ad essere registrato nella cartella di registro, come sarebbe normale. Inoltre, molte funzioni sono molto più verbose riguardo a quello che stanno facendo in modalità di debug. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-rebuild-on-fail">
<term
><option
>--no-rebuild-on-fail</option
></term>
<listitem
><para
>non cercare di rigenerare da zero i moduli che non è stato possibile generare. &kdesvn-build; non cercherà mai di farlo con un modulo che si è già cercato di generare da zero. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-refresh-build">
<term
><option
>--refresh-build</option
></term>
<listitem
><para
>ricrea il sistema di generazione e compila da zero. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-reconfigure">
<term
><option
>--reconfigure</option
></term>
<listitem
><para
>esegui lo script di configurazione senza pulire la cartella di generazione. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-recreate-configure">
<term
><option
>--recreate-configure</option
></term>
<listitem
><para
>esegui di nuovo <command
>make <option
>-f</option
> <filename
>Makefile.cvs</filename
></command
> per creare lo script di configurazione, e continua a generare come normalmente. Questa opzione implica  <option
><link linkend="cmdline-reconfigure"
>--reconfigure</link
></option
>. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-resume">
<term
><option
>--resume</option
></term>
<listitem
><para
>cerca di riprendere la generazione da dove lo script si è fermato l'ultima volta. Lo script comincia la generazione del modulo dopo l'ultimo compilato all'ultima esecuzione dello script, che sia riuscito o meno. Questa opzione implica <link linkend="cmdline-no-svn"
><option
>--no-svn</option
></link
>. Non dovresti specificare altri nomi di moduli sulla riga di comando. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-resume-from">
<term
><option
>--resume-from</option
></term>
<listitem
><para
>è come <link linkend="cmdline-resume"
><option
>--resume</option
></link
>, tranne che indichi il modulo da cui cominciare a generare nel successivo parametro della riga di comando. Questa opzione implica <link linkend="cmdline-no-svn"
><option
>--no-svn</option
></link
>. Non dovresti specificare altri nomi di moduli sulla riga di comando. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-rc-file">
<term
><option
>--rc-file</option
></term>
<listitem
><para
>interpreta il prossimo parametro della riga di comando come il file da cui leggere le opzioni di configurazione. Il valore predefinito di questo parametro è <filename
>~/.kdesvn-buildrc</filename
>. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-prefix">
<term
><option
>--prefix=&lt;/percorso/a/kde&gt;</option
></term>
<listitem
><para
>permette di cambiare la cartella in cui sarà installato &kde; dalla riga di comando. Questa opzione implica <link linkend="cmdline-reconfigure"
><option
>--reconfigure</option
></link
>. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-build-system-only">
<term
><option
>--build-system-only</option
></term>
<listitem
><para
>ferma dopo aver eseguito <command
>make <option
>-f</option
> <filename
>Makefile.cvs</filename
></command
>. Lo script di configurazione dovrà ancora essere eseguito, cosa che &kdesvn-build; farà la volta successiva. Ciò ti permette di preparare tutti gli script di configurazione in una volta, in modo da poter eseguire <command
>./configure <option
>--help</option
></command
> per ogni modulo, e modificare i tuoi flag di configurazione opportunamente. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-install"
><term
><option
>--install</option
></term>
<listitem
><para
>Se questa è l'unica opzione dalla riga di comando, cerca di installare tutti i moduli contenuti nella cartella <filename
>successfully-built</filename
>, tranne per qt-copy che non richiede installazione. Se sono specificate opzioni da riga di comando dopo <option
>--install</option
>, sono considerate essere i moduli da installare. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-global-option">
<term
><option
>--&lt;nome-opzione&gt;=</option
></term>
<listitem
><para
>Puoi usare questa opzione per sostituire un'opzione nel tuo file di configurazione per ogni modulo. Per esempio, per sostituire l'opzione <link linkend="conf-log-dir"
>log-dir</link
>, scriveresti: <option
>--log-dir=<replaceable
>/percorso/a/cartella</replaceable
></option
>. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-module-option">
<term
><option
>--&lt;nome-modulo&gt;,&lt;nome-opzione&gt;=</option
></term>
<listitem
><para
>Puoi usare questa opzione per sostituire un'opzione nel tuo file di configurazione per un modulo particolare. Per esempio, per sostituire l'opzione <link linkend="conf-use-unsermake"
>use-unsermake</link
> per kdemultimedia, scriveresti <option
>--kdemultimedia,use-unsermake=false</option
>. </para
></listitem>
</varlistentry>

</variablelist>

<para
>Tutte le altre opzioni da riga di comando sono considerate come moduli da aggiornare e generare. Non confondere la generazione con l'installazione. </para>

</chapter>

<chapter id="credits-and-licenses">
<title
>Riconoscimenti e licenza</title>
&underFDL; </chapter>

</book>
