Tabel met beschikbare configuratieopties

Hieronder is een tabel met de verschillende opties, met de volgende informatie:

  • Naam van optie

  • Een beschrijving van hoe kdesrc-build reageert als de optie is ingesteld in zowel de global section, en de module section van het configuratiebestand bij het bouwen van een module.

  • Speciale opmerkingen over het doel en het gebruik van de optie.

Tabel 4.1. Tabel met opties

Naam optieModule -> Globaal gedragOpmerkingen
apidox 

Deze optie werd gebruikt voor het bouwen van de KDE module API documentatie. Het is verwijderd in kdesrc-build 1.6.3 omdat het niet werd gebruikt. Online API documentatie is beschikbaar in kde.org. Daarnaast is mogelijk om KDE API documentatie te bouwen met de hulp van het kdedoxygen.sh script dat is meegeleverd met de kde-dev-scripts module. Zie KDE TechBase voor meer details.

apply-qt-patches Deze optie is verwijderd in kdesrc-build 1.10. Om hetzelfde effect te krijgen, zie de paragraaf met de naam “qt-ondersteuning” en de optie repository.
asyncIs niet overschrijfbaar

Deze optie maakt een asynchrone operatiemodus mogelijk, waar het parallel uitvoeren van de update van de broncode en het bouwproces mogelijk is, in plaats dat er gewacht op dat alle broncode geupdated is voordat het bouwproces start. De standaardinstelling van deze optie is dat de asynchrone modus ingeschakeld is. Om dit uit te schakelen, stelt u deze optie in op false

Deze optie is vanaf de 1.6 release beschikbaar.

binpathInstelling bij Module overschrijft de instelling bij global

Gebruik deze optie om de omgevingsvariabele PATH in te stellen voor tijdens het bouwen. U kunt deze instelling niet met een module-optie overschrijven. De standaardinstelling is de $PATH dat is ingesteld als het script start. Deze omgevingsvariabele zou ook de door dubbele punt (:) gescheiden paden van uw development toolchain moeten hebben. De paden $KDEDIR/bin en $QTDIR/bin worden automatisch toegevoegd. U mag in elk pad dat u toevoegt de tilde (~) gebruiken.

branchInstelling bij Module overschrijft de instelling bij global

Stel deze optie in om een checkout te doen van een branch van KDE in plaats van de standaard master (bij Git modules) of trunk (bij Subversion), waar de KDE ontwikkeling gebeurt.

Bijvoorbeeld, om de KDE 4.6 branch uit te checken, zou u deze optie in willen stellen op 4.6.

Als het kdesrc-build niet lukt om met deze optie een branch goed te downloaden, dan moet u wellicht handmatig de URL opgegeven waarvan te downloaden met behulp van de opties module-base-path of override-url.

Opmerking

Bij de meeste KDE modules wilt u waarschijnlijk in plaats daarvan de optie branch-group gebruiken en deze optie gebruiken voor de uitzonderingen.

branch-groupInstelling bij Module overschrijft de instelling bij global

Gebruik deze optie om een algemene groep in te stellen waarvan u de modules wilt selecteren.

Voor de ondersteunde Git module types, zal kdesrc-build bepalen welke branch automatisch daadwerkelijk gebruikt zal worden, gebaseerd op door de KDE ontwikkelaars bepaalde regels (deze regels zijn te bekijken in de kde-build-metadata broncoderepository in uw broncode-map). Nadat een branch is gekozen, zal die branch worden gebruikt alsof u het zelf had opgegeven met de optie branch.

Dit is handig als u alleen maar probeert om bij te blijven met sommige gewone ontwikkelingen zonder dat u aandacht hoeft te geven aan alle naamswijzigingen van branches.

De huidige branch groups (op of 2013-08-11) zijn:

  • stable-qt4, voor het volgen van bugfixes van de op Qt™ 4-gebaseerde KDE bibliotheken en programma's.

  • latest-qt4, voor de huidige ontwikkelingen en nieuwe mogelijkheden van de Qt™ 4-gebaseerde KDE bibliotheken en programma's.

  • kf5-qt5, voor het volgen van bleeding-edge ontwikkelingen van de komende Qt™ 5-gebaseerde KDE Frameworks 5, Plasma™ Workspace 2, etc.

Merk op dat als u daadwerkelijk zelf een branch kiest, dat het deze instelling overschrijft. Datzelfde geldt ook voor andere branch-selectie opties zoals tag.

Deze optie is toegevoegd in kdesrc-build 1.16-pre2.

Opmerking

deze optie is alleen geldig voor kde-projects Git modules (de algemene geval). Zie ook de paragraaf met de naam “De officiële database voor KDE-modulen”.

build-dirInstelling bij Module overschrijft de instelling bij globalGebruik deze optie om de map te wijzigen waarin het compilatieresultaat geplaatst wordt. Er zijn drie verschillende manieren om het te gebruiken:
  1. Relatief ten opzichte van de KDE Subversion map met broncode (zie de optie source-dir). Deze is de standaard, en wordt geselecteerd als u een naam van een map invoert die niet een tilde (~) of een slash (/) begint.

    De standaard waarde is build.

  2. Absoluut pad. Als u een pad specificeert dat begint met een /, dan wordt dat pad in deze vorm gebruikt. Bijvoorbeeld, /tmp/kde-obj-dir/.

  3. Relatief ten opzichte van uw thuismap. Als u een pad specificeert dat begint met een ~, dan is het opgegeven pad relatief ten opzichte van uw thuismap, overeenkomend met de tilde-expansie in het terminalvenster. Bijvoorbeeld, ~/builddir zal de bouwmap instellen naar /home/user-name/builddir.

Verrassend misschien, maar deze optie is per module instelbaar.
build-when-unchangedInstelling bij Module overschrijft de instelling bij global

Gebruik deze om in te stellen of kdesrc-build altijd probeert om een module te bouwen die geen broncode update heeft gehad.

Door build-when-unchanged naar true in te stellen, zal kdesrc-build altijd het bouwproces voor een module proberen, zelfs als er voor de module geen updates van de broncode zijn. Dit is de standaardinstelling omdat dit een grotere kans geeft op een correcte bouw.

Door build-when-unchanged naar false in te stellen, zal kdesrc-build alleen het bouwproces voor een module proberen als er voor de module updates van de broncode zijn, of in andere situaties waar het waarschijnlijk is dat opnieuw bouwen daadwerkelijk nodig is. Dit kan tijd besparen, met name als u kdesrc-build dagelijks, of nog vaker uitvoert.

Belangrijk

Deze mogelijkheid is er alleen als optimalisatie. Zoals zoveel andere optimalisaties, is er een afweging wat betreft de correctheid van uw installatie. Bijvoorbeeld, bij wijzigingen van de qt of kdelibs modules kan een herbouw van andere modules nodig zijn, zelfs als de broncode daarvan helemaal niet is verandert.

checkout-onlyInstelling bij Module overschrijft de instelling bij global

Deze optie is in januari 2022 verwijderd. Het gaf de mogelijkheid om subsets uit te checken van een module uit een Subversion-opslagruimte.

cmake-generatorInstelling bij Module overschrijft de instelling bij global

Deze optie gebruiken om te specificeren welke generator samen met CMake te gebruiken. Op dit moment worden beiden Ninja en Unix Makefiles evenals extra generators op hen gebaseerd zoals Eclipse CDT4 - Ninja ondersteund. Ongeldige (niet-ondersteunde) waarden worden genegeerd en behandeld alsof ze niet zijn ingesteld. Indien niet ingesteld zal Unix Makefiles als standaard worden gebruikt.

Merk op dat als een geldige generator ook is gespecificeerd via cmake-options het de waarde voor cmake-generator zal overschrijven.

cmake-toolchainInstelling bij Module overschrijft de instelling bij global

Deze optie gebruiken om een toolchain-bestand te specificeren om te gebruiken met CMake.

Wanneer een geldig toolchain-bestand is geconfigureerd zal kdesrc-build niet langer automatisch omgevingsvariabelen instellen. U kunt set-env, binpath en libpath gebruiken om de omgeving handmatig bij te werken als uw toolchain-bestand niet zomaar werkt met kdesrc-build. Kijk in het overzicht van standaard vlaggen toegevoegd door kdesrc-build voor meer informatie.

Merk op dat als een geldige toolchain ook is gespecificeerd via cmake-options het de waarde voor cmake-toolchain zal overschrijven.

cmake-optionsVoegt toe aan de global options voor het standaard bouwproces, overschrijft global voor andere bouwprocessen.

Gebruik deze optie om op te geven welke flags aan CMake worden doorgegeven bij het creëren van het bouwsysteem voor de module. Als u dit gebruikt als een global optie, dan wordt het toegepast bij alle modules dat dit script bouwt. Als u dit als een module optie gebruikt, dan wordt het aan het eind van de global opties toegevoegd. Hierdoor kunt u algemene CMake opties in het global sectie specificeren.

Deze optie is niet van toepassing op qt (wat CMake niet gebruikt). Gebruik in plaats daarvan configure-flags.

Als een geldige generator is gespecificeerd onder de gegeven opties het de waarde van cmake-generator zal overschrijven. Ongeldige (niet-ondersteunde) generators worden genegeerd en zullen niet worden doorgegeven aan CMake.

Als een geldige toolchain-bestand is gespecificeerd onder de gegeven opties het de waarde van cmake-toolchain zal overschrijven. Ongeldige (niet-ondersteunde) toolchains worden genegeerd en zullen niet worden doorgegeven aan CMake.

Omdat deze opties direct worden doorgegeven naar CMake commandoregel, moet u ze opgegeven alsof u intikt bij CMake. bijvoorbeeld:

cmake-options -DCMAKE_BUILD_TYPE=RelWithDebInfo

Omdat dit altijd een probleem is, neemt kdesrc-build de zorg op zich om er voor te zorgen dat zolang de rest van de opties correct zijn ingesteld, u deze optie leeg zou moeten kunnen laten. (Met andere woorden, vereiste CMake parameters worden voor u automatisch ingesteld)

colorful-outputIs niet overschrijfbaarStel deze optie in op false om de gekleurde uitvoer van kdesrc-build uit te schakelen. De standaardinstelling van deze optie is true. Merk op dat kdesrc-build de kleurcodes alleen naar het terminalvenster (zoals xterm, Konsole, of de normale Linux® console) uitvoert.
compile-commands-exportInstelling bij Module overschrijft de instelling bij global

Schakelt de generatie van een compile_commands.json in via CMake in de bouwmap. Deze optie is standaard true, zet het op false om dit gedrag uit te schakelen.

compile-commands-linkingInstelling bij Module overschrijft de instelling bij global

Schakelt het aanmaken van een symbolische koppeling in van compile_commands.json in gegenereerd via CMake in de bouwmap naar de broncodemap. Deze optie is standaard false, zet het op true om het maken van de symbolische koppeling in te schakelen.

configure-flagsVoegt toe aan de global options voor het standaard bouwproces, overschrijft global voor andere bouwprocessen.

Gebruik deze optie om op te geven welke flags naar ./configure moeten worden doorgegeven bij het creëren van het bouwsysteem van de module. Als u dit gebruikt als een global-optie, dan is het van toepassing op alle modules dat dit script bouwt. Deze optie is alleen van toepassing op qt.

Voor het wijzigen van configuratiegegevens voor KDE modules, zie cmake-options.

custom-build-commandInstelling bij Module overschrijft de instelling bij global (build system optie)

U kunt deze optie zo instellen dat het een ander commando uitvoert (ander dan make, bijvoorbeeld) in om het bouwproces uit te voeren. kdesrc-build zou in het algemeen de juiste actie uit moeten voeren, daarom zou het niet nodig moeten zijn om deze optie in te stellen. Maar het kan handig zijn om alternatieve bouwsystemen te gebruiken.

De inhoud van deze optie wordt als commando op de commandoregel gebruikt, normaal gesproken gemodificeerd door de optie make-options.

cxxflagsVoegt toe aan de global options voor het standaard bouwproces, overschrijft global voor andere bouwprocessen.

Gebruik deze optie om te specificeren welke flags gebruikt worden voor het bouwen van de module. Deze optie wordt hier gespecificeerd en niet bij configure-flags of cmake-options omdat deze optie de omgevingsvariabele CXXFLAGS instelt tijdens het bouwproces.

Noot: merk op dat voor KDE 4 en elke andere modules die gebruik maken van CMake, het nodig is om de optie CMAKE_BUILD_TYPE in te stellen op none bij het configureren van de module. Dit kunt u doen door de optie cmake-options te gebruiken.

dest-dirInstelling bij Module overschrijft de instelling bij globalGebruik deze optie om de naam van een module gebruikt op de harde schijf te wijzigen. Bijvoorbeeld, als uw module was extragear/network, dan zou u het met deze optie kunnen hernoemen naar extragear-network. Merk wel op dat ofschoon dit wel de naam op de harde schijf wijzigt, het geen goed idee is om mappen of map-scheidingen in de naam op te nemen omdat dit interfereert met de build-dir of source-dir opties.
disable-agent-checkIs niet overschrijfbaarAls u normaal gesproken SSH gebruikt om de broncode uit Subversion te downloaden (als of u het svn+ssh protocol gebruikt), dan zal kdesrc-build er voor zorgen dat als u ssh-agent gebruikt, het daadwerkelijk enkele SSH-identiteiten gebruikt. Dit is om te voorkomen dat SSH voor elke module weer om uw wachtwoord vraagt. U kunt deze controle uitschakelen door disable-agent-check in te stellen op true.
do-not-compileInstelling bij Module overschrijft de instelling bij global

Gebruik deze optie om een specifieke set van mappen op te geven die niet in een module gebouwd moeten worden (in plaats van allemaal). De niet te bouwen modules moeten door spaties gescheiden zijn.

Merk op dat de broncode voor de programma's toch gewoon worden gedownload.

Bijvoorbeeld, om het bouwen van de codeeditor en mappen minimaltest van het framework syntaxhighlighting uit te schakelen, zou u do-not-compile codeeditor minimaltest compileren toevoegen, u zou "do-not-compile juk kscd" aan uw syntaxhighlighting opties moeten toevoegen.

Zie de paragraaf met de naam “Mappen uit een bouw verwijderen” voor een voorbeeld.

email-addressIs niet overschrijfbaar

Deze optie is verwijderd in kdesrc-build 1.14.

email-on-compile-errorIs niet overschrijfbaar

Deze optie is verwijderd in kdesrc-build 1.14.

inst-apps Deze optie is verwijderd in versie 1.10
git-desired-protocolIs niet overschrijfbaar

Deze optie is alleen van toepassing op modules van een KDE project repository.

Wat deze optie eigenlijk doet is het instellen van welk netwerk-protocol de voorkeur heeft bij het opsturen van de broncode voor deze modules. Normaal gesproken wordt het zeer efficiënte git protocol gebruikt, maar bij sommige netwerken (b.v. intranetten van bedrijven, publieke Wi-Fi) kan deze geblokkeerd worden. Een alternatief protocol welke veel beter wordt ondersteund is het https protocol gebruikt voor Internet web sites.

Als u een van deze beperkende netwerken moet gebruiken dan kunt u deze optie op http instellen om aan https communicatie de voorkeur te geven.

Tip

U heeft wellicht ook de optie http-proxy nodig omdat ook een HTTP proxy nodig is voor netwerkverkeer.

In alle andere situaties zou u deze optie niet moeten instellen omdat het standaardprotocol het meeste efficient is.

Deze optie is toegevoegd in kdesrc-build 1.16. Vóór 20.06 werd deze optie gebruikt om ophaal-URL te configuren in plaats van de opstuur-URL. Vanaf 20.06 wordt https altijd gebruikt bij het bijwerken van KDE-projecten.

git-repository-baseIs niet overschrijfbaar

Deze optie, toegevoegd in versie 1.12.1, gebruikt u voor het creëren van een verkorte naam om naar een specifieke Git-repository gebaseerde URL te refereren in latere module set declaraties, wat handig is bij het snel declareren van veel te bouwen Git modules.

U moet twee dingen (gescheiden door een spatie) specificeren: De naam waaraan de basis URL wordt toegekend en de actuele basis URL zelf. Bijvoorbeeld:

global
   # andere opties

   # Dit is het algemene pad naar alle anonieme Git server modules.
   git-repository-base kde-git kde:
end global

# Module declaraties

module-set
   # Nu kunt u de alias gebruiken die u eerder definieerde, maar alleen
   # in een module-set.
   repository kde-git

   use-modules module1.git module2.git
end module-set

De module-instelling use-modules optie creëerde twee modules intern, waardoor kdesrc-build zich gedraagt alsof het heeft ingelezen:

module module1
    repository kde:module1.git
end module

module module2
    repository kde:module2.git
end module

Het hierboven gebruikte Git repository voorvoegsel kde: is een afkorting die automatisch door kdesrc-build wordt opgezet. Zie het artikel URL Renaming in de TechBase voor meer informatie. Merk op dat in tegenstelling tot andere opties, u deze optie meerdere keren kan specificeren om net zoveel aliassen als nodig te creëren.

Tip

Het is geen vereiste om deze optie te gebruiken om de module-set handig te gebruiken, deze optie bestaat om makkelijk dezelfde repository in veel verschillende module sets te gebruiken.

git-userInstelling bij Module overschrijft de instelling bij global

Deze optie is bedoeld voor KDE-ontwikkelaars. Indien ingesteld, zal het gebruikt worden om automatisch identiteitsinformatie voor de besturingssoftware voor broncode Git in te stellen voor nieuw gedownloade Git-modules (inclusief de grote meerderheid van KDE-modules).

Specifiek, de velden voor de naam en email van de gebruiker voor elk nieuw Git repository moet u invullen bij deze optie.

De waarde moet gespecificeerd worden in de vorm Naam gebruiker <email@voorbeeld.com>.

Een ontwikkelaar genaamd Foo Barbaz met het e-mailadres foo@abc.xyz zou bijvoorbeeld gebruiken:

git-user Foo Barbaz <foo@abc.xyz>

Deze optie was geïntroduceerd in kdesrc-build 15.09.

http-proxyInstelling bij Module overschrijft de instelling bij global

Deze optie, indien ingesteld, gebruikt de gespecificeerde URL als een proxy server voor elk HTTP netwerk-communicatie (bijvoorbeeld, voor het downloaden van snapshots voor nieuwe modules, of de KDE project database).

Daarnaast zal kdesrc-build proberen om de hulpprogramma's waarvan het afhankelijk is, ook die proxy server te laten gebruiken, indien mogelijk, door de omgevingsvariabele http_proxy naar de aangegeven server te laten wijzen, als die omgevingsvariabele niet al is ingesteld.

Deze optie was geïntroduceerd in kdesrc-build 1.16.

ignore-kde-structureInstelling bij Module overschrijft de instelling bij global

Deze optie is verouderd en zal (opnieuw) verwijderd worden in een volgende release.

Gebruik in plaats daarvan de indeling-mappen, wat meer mogelijkheden voor selectie biedt.

indeling-mappenInstelling bij Module overschrijft de instelling bij global

Deze optie wordt gebruikt om de indeling die kdesrc-build zou moeten gebruiken bij het aanmaken van de broncode- en bouwmappen.

Op dit moment zijn er drie mogelijke waarden: metadata, invent en flat

De indeling flat zal alle modulen direct onder het topniveau broncode en bouwmappen groeperen. Bijvoorbeeld source/extragear/network/telepathy/ktp-text-ui zou in de indeling metadata zijn en source/ktp-text-ui in plaats daarvan in de indeling flat.

De indeling invent maakt een hiërarchie in mappen aan de de de relatieve paden van opslagruimten spiegelt op invent.kde.org. Bijvoorbeeld source/kde/applications/kate in de indeling metadata zou zijn source/utilities/kate in plaats daarvan in de indeling invent. Deze indeling heeft alleen effect op KDE projecten. Het is een goede keuze voor mensen die beginnen met kdesrc-build.

Tenslotte, de indeling metadata is hetzelfde als het oude standaard gedrag. Deze indeling organiseert KDE projecten volgens de projectpaden gespecificeerd in de projectmetadata voor deze modules. Dit is een goede keuze als u een indeling van mappen wilt die bepaalde KDE-processen volgt, maar merk op dat dit pad daarom niet altijd stabiel is. Als resultaat kan kdesrc-build een oude kopie van de opslagruimte verlaten en een nieuwe klonen voor een project vanwege wijzigingen in de projectmetadata.

Standaard zal de indeling metadata worden gebruikt, om achterwaartse compatibiliteit te behouden voor bestaande gebruikers van kdesrc-build.

ignore-modulesIs niet overschrijfbaar

De in deze optie genoemde modules, welke door kdesrc-build worden geselecteerd wegens de optie use-modules, worden echter compleet overgeslagen. Gebruik deze optie als u een complete kde-projects project wilt bouwen behalve enkel specifieke modules.

De instellingswaarde hoeft niet noodzakelijkerwijs direct de modulenaam te hebben. Alle modules waarvan het KDE projects module pad overeenkomt met een onderdeel van de optiewaarden zal overgesloten worden, zodat u op die manier meerdere modules kan overslaan.

Bijvoorbeeld, een instellingswaarde met libs zal als resultaat hebben dat zowelkde/kdegraphics/libs en playground/libs worden overgeslagen worden (maar niet kde/kdelibs omdat het complete kdelibs wordt vergeleken).

Deze optie was geïntroduceerd in kdesrc-build 1.16.

include-dependenciesInstelling bij Module overschrijft de instelling bij global

Deze optie zal, indien ingesteld op true aan kdesrc-build vragen om ook bekende afhankelijkheden van deze module tijdens het bouwen mee te nemen, zonder dat er van u verlangt word om deze afhankelijkheden te noemen (zelfs indirect).

Opmerking

Deze optie werkt alleen voor op kde-project-gebaseerde modules, en vereist dat de metadata die door KDE ontwikkelaars is ingevuld accuraat is voor de door u geselecteerde branch-group.

Deze optie is standaard ingeschakeld om het bouwen van toepassingen die recentere versies van Qt™ of Plasma™ nodig hebben dan ondersteund op gebruikelijke besturingssystemen.

install-after-buildInstelling bij Module overschrijft de instelling bij globalMet deze optie stelt u in of het pakket geïnstalleerd moet worden als de bouw succesvol is. Deze optie is standaard ingeschakeld. Als u dit wilt uitschakelen, dan moet u deze optie instellen op false in het configuratiebestand. U kunt ook op de commandoregel de parameter --no-install gebruiken.
install-environment-driverIs niet overschrijfbaar

Standaard zal kdesrc-build een shell script installeren dat u kunt gebruiken in setup scripts voor een gebruikers-profiel om makkelijk de nodige omgevingsvariabelen in te stellen om de door kdesrc-build gebouwde Plasma desktop te gebruiken.

Dit stuurprogramma zal de volgende bestanden veranderen:

  • $XDG_CONFIG_HOME/kde-env-master.sh (normaal gesproken gevonden als ~/.config/kde-env-master.sh).

  • $XDG_CONFIG_HOME/kde-env-user.sh (normaal gesproken gevonden als ~/.config/kde-env-user.sh).

Het bestand kde-env-user.sh is optioneel. Het is bedoeld voor aanpassingen door de gebruiker (zie de sectie Troubleshooting and Debugging van de KDE UserBase voor voorbeelden van aanpasbare instellingen), maar deze instellingen zijn ook door de gebruiker elders in te stellen in zijn bestaande profiel setup scripts.

U kunt deze mogelijkheid uitschakelen door deze optie in te stellen op false, en er voor zorg te dragen dat de optie install-session-driver ook is uitgeschakeld.

Deze optie was geïntroduceerd in kdesrc-build 17.08.

Tip

kdesrc-build zal niet uw bestaande bestanden (indien aanwezig) overschrijven tenzij u ook de parameter --delete-my-settings op de commandoregel meegeeft.

install-session-driverIs niet overschrijfbaar

Indien ingeschakeld, zal kdesrc-build proberen om een driver voor de grafische login manager te installeren zodat u kunt inloggen naar de door uw kdesrc-build-gebouwde KDE-desktop.

Dit stuurprogramma zal de volgende bestanden veranderen:

  • ~/.xsession

  • $XDG_CONFIG_HOME/kde-env-master.sh (normaal gesproken gevonden als ~/.config/kde-env-master.sh).

  • $XDG_CONFIG_HOME/kde-env-user.sh (normaal gesproken gevonden als ~/.config/kde-env-user.sh).

Als u uw eigen login driver wilt blijven gebruiken, dan kunt u deze instelling uitschakelen door deze optie in te stellen op false. Indien ingeschakeld, zal deze mogelijkheid ook het onderdeel install-environment-driver inschakelen.

Deze optie was geïntroduceerd in kdesrc-build 1.16.

Tip

kdesrc-build zal niet uw bestaande bestanden (indien aanwezig) overschrijven tenzij u ook de parameter --delete-my-settings op de commandoregel meegeeft.

kdedirInstelling bij Module overschrijft de instelling bij globalMet deze optie stelt u de map in waar KDE zal worden geïnstalleerd na het bouwproces. De standaardinstelling is ~/kde. Als u dit wijzigt naar een map die root-rechten nodig heeft, dan wilt u wellicht meer lezen over de optie make-install-prefix.
kde-languagesIs niet overschrijfbaar

Met deze optie kunt u ervoor kiezen om localization pakketten samen KDE te downloaden en te installeren. U wilt dit waarschijnlijk doen als u niet in de Verenigde Staten leeft en KDE in uw eigen taal vertaald wilt gebruiken.

Om deze optie te gebruiken, vult u hier een lijst in met te installeren talen gescheiden door spaties. Bij elke taal hoort een bijbehorende taalcode, die u kunt opzoeken op deze pagina: http://l10n.kde.org/teams-list.php.

Het is geen probleem als u maar een taal selecteert. Standaard wordt er geen gedownload, wat inhoud dat KDE alles in Amerikaans Engels toont.

Bijvoorbeeld, als u er voor kiest om de Franse taal te installeren, dan zou u deze optie kunnen instellen op zo iets als: kde-languages fr. U moet echter nog steeds Systeeminstellingen gebruiken om de Franse taal te selecteren.

libpathInstelling bij Module overschrijft de instelling bij globalGebruik deze optie om de omgevingsvariabele LD_LIBRARY_PATH voor gebruik tijdens het bouwen in te stellen. U kunt in een module option deze instelling niet overschrijven. De standaardinstelling is blank, maar de paden $KDEDIR/lib en $QTDIR/lib worden automatisch toegevoegd. U mag in deze optie bij elk pad dat u toevoegt de tilde (~) gebruiken.
log-dirInstelling bij Module overschrijft de instelling bij globalGebruik deze optie om de map te wijzigen waarin de door het script gegenereerde logbestanden worden opgeslagen.
make-install-prefixInstelling bij Module overschrijft de instelling bij globalVul deze variabele met een door spaties gescheiden lijst, wat zal worden geïnterpreteerd als een commando en de daarbij horende opties die de voor het installeren van modules gebruikte commando make install voorafgaan. Dit is handig bijvoorbeeld bij het met Sudo installeren van pakketten, maar wees wel voorzichtig bij het gebruik van root privileges.
make-optionsInstelling bij Module overschrijft de instelling bij global (build system optie)

Vul deze variabele met commandoregelparameters die u wilt doorgeven aan het commando make. Dit is handig bij programma's zoals distcc of bij systemen met meer dan een processor core.

Merk op dat niet alle ondersteunde bouwsystemen make gebruiken. Voor bouwsystemen die ninja voor bouwen gebruiken (zoals het Meson bouwsysteem), zie de instelling ninja-opties.

manual-buildInstelling bij Module overschrijft de instelling bij globalZet de instellingswaarde op true om te voorkomen dat het bouwproces gaat proberen om deze module te bouwen. Het blijft echter wel up-to-date bij het updating met Subversion. Deze optie is het exacte equivalent van de commandoregelparameter --no-build.
manual-updateInstelling bij Module overschrijft de instelling bij globalZet de instellingswaarde op true om te voorkomen dat het bouwproces gaat proberen om deze module up te daten (en daarop volgend, bouwen of installeren). Als u dit voor een module instelt, dan heeft u het in essentie uitgecomment.
module-base-pathInstelling bij Module overschrijft de instelling bij global

Stel deze optie in om het standaard pad van kdesrc-build naar de betreffende module te overschrijven. Dit kunt u bijvoorbeeld gebruiken, om specifieke branches of getagde versies van libraries te downloaden. De KDE Source Viewer is onmisbaar bij het zoeken naar het juiste pad.

Vergeet niet dat kdesrc-build het uiteindelijke pad samenstelt uit de volgende onderdelen: $svn-server/home/kde/$module-base-path.

De standaardwaarde is naar keuze trunk/$module of trunk/KDE/$module, afhankelijk van de module naam.

Tip

Gebruik in plaats daarvan waar mogelijk de opties branch of tag.

nicenessIs niet overschrijfbaarStel deze optie in op een getal tussen de 20 en de 0. Hoe hoger het getal is, hoe lager de prioriteit is die kdesrc-build voor zich zelf zal instellen, d.w.z. hoe hoger het getal, hoe "aardiger" het programma is. de standaardinstelling is 10.
ninja-optionsInstelling bij Module overschrijft de instelling bij global (build system optie)

Stel deze variabele in om opdrachtregelopties door te geven aan het bouwcommando ninja. Dit kan nuttig zijn om verbose uitvoer in te schakelen of om handmatig het aantal parallelle bouwjobs te verminderen die ninja zou gebruiken.

Opmerking

Merk op dat deze instelling alleen ninja bestuurt bij gebruik door kdesrc-build. De module Qt™-webengine gebruikt ninja indirect, maar ondersteunt alleen officieel het bouwen door make. In deze situatie kunt u NINJAFLAGS instellen als een manier om make de toepasselijke vlaggen door te egeven wanneer het later ninja aanroept, door make-options te gebruiken.

opties qtwebengine
    # Beperk make en ninja om niet meer dan 6 aparte compileerjobs te gebruiken
    # zelfs wanneer meer CPU's beschikbaar zijn, om een tekort aan geheugen te vermijden
    make-options -j6 NINJAFLAGS=-j6
einde opties
no-svnInstelling bij Module overschrijft de instelling bij globalAls u deze optie op true heeft gezet dan zal kdesrc-build de broncode voor de module niet automatisch updaten. Maar het zal wel proberen om de module zoals altijd te bouwen.
no-rebuild-on-fail Deze optie is verwijderd in versie 1.10, omdat dit gedrag niet meer behulpzaam is vanwege fixes in het onderliggende bouwsysteem.
aantal-kernenIs niet overschrijfbaar

Deze optie wordt gedefinieerd door kdesrc-build (bij gebruik van het hulpmiddel kdesrc-build-setup van kdesrc-build --initial-setup), ingesteld om het aantal beschikbare CPU's te zijn (zoals aangegeven door de externe toepassing nproc). Als kdesrc-build het aantal CPU's niet kan detecteren, wordt deze waarde ingesteld op 4.

Zie Voorbeeld 2.1, “Make configureren om alle beschikbare CPU's te gebruiken, met uitzonderingen” voor een voorbeeld van het gebruik van deze optie. Deze optie is toegevoegd in versie 20.07.

aantal-kernen-laag-geheugenIs niet overschrijfbaar

Deze optie is gedefinieerd door kdesrc-build (bij gebruik van het hulpmiddel kdesrc-build-setup of kdesrc-build --initial-setup), ingesteld om het aantal CPU's te zijn dat is geacht wordt veilig te zijn voor zwaargewicht of andere zeer intensieve modulen, zoals qtwebengine, om te vermijden uit geheugen te lopen tijdens het bouwen.

De typische berekening is één CPU kern voor elke 2 gigabytes (GiB) totaal geheugen. Minstens 1 kern zal gespecificeerd worden en niet meer dan aantal-kernen kernen zal gespecificeerd worden.

Hoewel deze optie bedoeld is om Qt™-modules te ondersteunen kunt u het gebruiken voor elke module op dezelfde manier waarop aantal-kernen wordt gebruikt.

Als kdesrc-build het beschikbare geheugen niet kan detecteren dan zal deze waarde ingesteld worden op 2.

Deze optie is toegevoegd in versie 20.07.

override-build-systemInstelling bij Module overschrijft de instelling bij global

Dit is een geavanceerde optie, toegevoegd in kdesrc-build 1.16.

Normaal gesproken zal kdesrc-build na een download detecteren welk bouwsysteem het moet gebruiken voor een module. Dit wordt gedaan door te controleren op de aanwezigheid van bepaalde bestanden in de map met de broncode van de module.

Sommige modules kunnen meerdere vereiste sets bestanden hebben, wat de auto-detectie in verwarring kan brengen. In een dergelijk geval kan u handmatig de correcte bouw type specificeren.

De op dit moment ondersteunde bouwtypes die u kunt instellen zijn:

KDE

Gebruikt om KDE modules te bouwen. In werkelijkheid kunt u het gebruiken om bijna elke module te bouwen dat gebruik maakt van CMake maar het is het verstandigst om niet ervan afhankelijk te zijn.

Qt

Gebruikt om de Qt™ bibliotheek zelf te bouwen.

qmake

Gebruikt om Qt™ modules te bouwen die gebruik maken van qmake-style .pro-bestanden.

generic

Gebruikt om modules te bouwen die gebruik maken van gewone Makefiles en die geen speciale configuratie nodig hebben.

autotools

Dit is de standaard configuratie hulpprogramma dat door de meeste vrije en open-source programma's die niet in een van de andere categorieën vallen gebruikt wordt.

meson

Dit is een relatief nieuw hulpmiddel die populariteit wint als een vervanging voor de autotools en kan vereist worden voor sommige niet-KDE modules.

override-urlInstelling bij Module overschrijft de instelling bij globalAls u deze optie instelt, dan zal kdesrc-build de waarde daarvan gebruiken als de URL die doorgegeven wordt aan Subversion compleet ongewijzigd. In het algemeen zal u dit willen gebruiken als u een specifieke release wilt downloaden en kdesrc-build niet kan vaststellen wat u bedoelt als u branch gebruikt.
persistent-data-fileIs niet overschrijfbaar

Gebruik deze optie om de locatie te wijzigen waar kdesrc-build zijn persistente data opslaat. De standaard is dat deze data wordt opgeslagen in een bestand genaamd .kdesrc-build-data geplaatst in de dezelfde map als waar het gebruikte configuratiebestand is. Als het globale configuratiebestand wordt gebruikt, zal het opgeslagen worden in ~/.local/state/kdesrc-build-data ($XDG_STATE_HOME/kdesrc-build-data, als $XDG_STATE_HOME is ingesteld). Als u in dezelfde map meerdere configuraties beschikbaar heeft, dan wilt u deze optie handmatig instellen zodat de verschillende configuraties niet eindigen met conflicterende persistente data.

Deze optie is toegevoegd in kdesrc-build 1.15.

prefixInstelling bij Module overschrijft de instelling bij global

Met deze optie stelt u in waar de module wordt geïnstalleerd (normaal wordt de instelling kdedir gebruikt). Door deze optie te gebruiken kunt u een module in een andere map installeren dan waar de KDE Platform libraries zijn geïnstalleerd, in het geval dat u kdesrc-build gebruikt om alleen programma's te bouwen.

U kunt ${MODULE} of $MODULE in het pad gebruiken om ze te expanderen tot de naam van de module.

purge-old-logsInstelling bij Module overschrijft de instelling bij global

Hiermee stelt u in of oude log mappen automatisch worden verwijderd. De standaardwaarde is true.

qmake-optionsInstelling bij Module overschrijft de instelling bij global

Alle hier gespecificeerde opties worden doorgegeven aan het commando qmake, bij modules die het qmake bouwsysteem gebruiken. Bijvoorbeeld, u kunt de optie PREFIX=/path/to/qt gebruiken om bij qmake te overschrijven waar het de module installeert.

Deze optie is toegevoegd in kdesrc-build 1.16.

qtdirInstelling bij Module overschrijft de instelling bij globalGebruik deze optie om de omgevingsvariabele QTDIR in te stellen voor bij het bouwen. Als u deze optie niet instelt, dan zal kdesrc-build aannemen dat Qt™ wordt geleverd door het besturingssysteem.
remove-after-installInstelling bij Module overschrijft de instelling bij global

Als u weinig harde schijfruimte heeft, dan wilt u wellicht deze optie gebruiken om automatisch de bouwmap te verwijderen (of zowel de broncode-map als de bouwmap bij eenmalige installaties) nadat de module succesvol is geïnstalleerd.

Mogelijke waarden voor deze optie zijn:

  • none - Verwijder niets (Dit is de standaard).

  • builddir - verwijder de bouwmap, maar niet de broncode.

  • all - verwijder zowel de broncode en de bouwmap.

Merk op dat het gebruik van deze optie een ongunstige impact kan hebben op zowel het gebruik van uw bandbreedte (als u all gebruikt) en op de tijd die nodig is voor het compileren van KDE software, omdat kdesrc-build geen incrementele bouw kan uitvoeren.

repositoryInstelling bij Module overschrijft de instelling bij global

Deze optie was geïntroduceerd bij versie 1.10, en kunt u gebruiken om de Git repository te specificeren waar u de broncode voor de module kunt downloaden. Qt™ (en dus ook qt) heeft de informatie uit deze optie nodig, net zoals verschillende KDE modules die in het proces van conversie naar het gebruik van Git zitten.

revisionInstelling bij Module overschrijft de instelling bij global

Als deze optie een andere waarde heeft dan 0 (nul),dan zal kdesrc-build de update van de broncode forceren met exact de opgegeven revisie, zelfs als opties zoals branch zijn ingesteld. als de module al de opgegeven revisie heeft dan zal het verder niet worden geupdate tenzij deze optie is gewijzigd of verwijderd uit de configuratie.

Opmerking

Deze optie werkte niet bij git-gebaseerde modules (inclusief kde-projects modules) tot kdesrc-build versie 1.16.

run-testsInstelling bij Module overschrijft de instelling bij global (build system optie)indien ingesteld op true, dan zal de module worden gebouwd met ondersteuning voor gebruik van zijn test suite, en zal de test suite worden uitgevoerd als onderdeel van het bouwproces. kdesrc-build zal een eenvoudig rapport met de testresultaten tonen. Dit is handig voor ontwikkelaars en diegene die zeker willen zijn dat hun systeem correct is opgezet.
set-envInstelling bij Module overschrijft de instelling bij global

Deze optie accepteert een door spaties gescheiden lijst met waarden, waar de eerste waarde de in te stellen omgevingsvariabele is, en de overige waarden is waarnaar toe u de variabele in wilt stellen. Bijvoorbeeld, om de variabele RONALD naar McDonald in te stellen, moet u in het betreffende sectie het volgende commando zetten:

set-env RONALD McDonald

Deze optie is speciaal omdat u het kan herhalen zonder dat u eerder in dezelfde sectie van het configuratiebestand ingestelde set-env instellingen overschrijft. Op deze manier kunt u meerdere omgevingsvariabelen per module (of globaal) instellen.

source-dirInstelling bij Module overschrijft de instelling bij globalDeze gebruikt u om de map op uw computer in te stellen waar de KDE-broncode uit Subversion wordt opgeslagen. Als u deze waarde niet instelt, dan wordt de standaardinstelling ~/kdesrc gebruikt. U mag bij deze optie de tilde (~) die de persoonlijke map voorstelt gebruiken.
ssh-identity-fileIs niet overschrijfbaar

Stel bij deze optie in welke private SSH key bestand wordt doorgegeven aan het commando ssh-add als kdesrc-build broncode gaat downloaden van repositories die authentificatie vereisen. zie ook: de paragraaf met de naam “SSH Agent controles”.

Deze optie is toegevoegd in versie 1.14.2.

stop-on-failureInstelling bij Module overschrijft de instelling bij globalStel de waarde van deze optie in op true om te zorgen dat de uitvoering van het script stopt als er een fout optreed tijdens het bouwproces of het installatieproces. Deze optie staat standaard op uit.
svn-serverInstelling bij Module overschrijft de instelling bij global

Deze optie gebruikt u om de server in te stellen die u gebruikt om van Subversion uit te checken. De standaardinstelling is de anonieme Subversion repository, svn://anonsvn.kde.org/

Opmerking

Als u programmeert voor KDE, gebruik dan de Subversion repository die aan u is toegewezen toen u uw developer account ontving, in plaats van de anonieme repository.

tagInstelling bij Module overschrijft de instelling bij global

Gebruik deze optie om een specifieke release van een module te downloaden.

Opmerking: De kans is groot dat u deze optie niet wilt gebruiken. KDE releases zijn in tarball vorm vanaf de KDE download site beschikbaar.

Opmerking

Deze optie is alleen ondersteund voor op git gebaseerde modulen sinds kdesrc-build 1.16.

use-clean-installInstelling bij Module overschrijft de instelling bij global (build system optie)

Stel de waarde van deze optie in op true om te zorgen dat kdesrc-build het commando make uninstall uitvoert direct voordat het make install uitvoert.

Dit kan handig zijn om te zorgen dat er geen vergeten oude library-bestanden, CMake metadata, enz. meer zijn die problemen kunnen veroorzaken in lang-levende KDE installaties. Maar dit werkt alleen bij bouwsystemen waar ook make uninstall is.

Deze optie is toegevoegd in kdesrc-build 1.12, maar bleef ongedocumenteerd tot kdesrc-build 1.16.

use-cmake Deze optie is verwijderd in kdesrc-build 1.4 omdat alle KDE 4 modulen CMake vereisen en het gebruik van CMake niet niet is toegestaan bij alle andere modules.
use-idle-io-priorityIs niet overschrijfbaarDeze optie, toegevoegd in kdesrc-build 1.12, zal een lagere prioriteit geven aan schijf en andere I/O gebruik, wat de responsiviteit van de rest van het systeem significant kan verbeteren ten koste van een beetje tragere uitvoering van kdesrc-build. Standaard is dit uitgeschakeld, voor een lagere prioriteit van de harde schijf stelt u dit in op true.
use-inactive-modulesIs niet overschrijfbaarDeze optie indien ingeschakeld staat kdesrc-build toe om ook uit opslagruimten die als inactief zijn gemarkeerd te klonen en op te halen. De standaard is om uitgeschakeld te zijn, om inactieve modulen dit op true te kunnen instellen.
use-modulesIs alleen te gebruiken in module-set

Met deze optie, toegevoegd in kdesrc-build 1.12.1, kunt u makkelijk meerdere te bouwen modules op een punt in het configuratiebestand specificeren.

Deze optie moet u gebruiken in een module-set. Elke via deze optie opgegeven identifier, is intern geconverteerd naar een kdesrc-build module, wordt met de repository optie van de module-set's repository gecombineerd met de identifier-naam om de uiteindelijke repository te krijgen waarvan gedownload wordt. Alle andere opties opgegeven in de module-set worden ongewijzigd naar de gegenereerde modules doorgegeven.

De volgorde waarin die modules in deze optie zijn gedefinieerd is belangrijk, omdat dat ook de volgorde is waarmee kdesrc-build de gegenereerde modules zal behandelen bij het updaten, bouwen en installeren. Alle modules gedefinieerd in de opgegevenmodule-set zullen worden verwerkt voordat kdesrc-build naar de volgende module gaat na deze module-set.

Als u de opties voor een gegenereerde module moet wijzigen, declareer dan de module gewoon opnieuw nadat het is gedefinieerd in de module-set, en stel uw opties in zoals gewenst. Al hoe wel u op deze manier de opties voor de module wijzigt, zal de module gewoon in de module-set in de ingestelde volgorde worden geupdate en gebouwd (d.w.z. u kunt de bouwvolgorde niet op deze manier wijzigen).

Belangrijk

De te gebruiken naam voor de module als u dit deze methode gebruikt is eenvoudig de naam die u bij use-modules heeft opgegeven, met die verstande dat elke .git wordt verwijderd.

Zie de paragraaf met de naam “Module Sets” en git-repository-base voor een beschrijving van het gebruik daarvan en een voorbeeld.

use-qt-builddir-hackInstelling bij Module overschrijft de instelling bij globalDeze optie is verwijderd vanwege verbeteringen in het Qt™ bouwsysteem.
use-stable-kdeIs niet overschrijfbaar

Deze optie is verouderd en zal (opnieuw) verwijderd worden in een volgende release.

Gebruik in plaats daarvan de branch-group, wat meer mogelijkheden voor selectie bied.