El KDE agrupa el seu programari en «mòduls» de diverses mides. Inicialment, aquesta era una agrupació flexible d'alguns mòduls grans, però amb la introducció dels repositoris de codi font basats en Git, aquests mòduls grans es van dividir encara més en molts mòduls més petits.
El kdesrc-build també utilitza aquest concepte de mòdul. En essència, un «mòdul» és una agrupació de codi que es pot descarregar, construir, provar i instal·lar.
És fàcil establir el kdesrc-build per a construir un mòdul únic. La llista següent és un exemple de com es veuria una declaració per a un mòdul basat en Git al fitxer de configuració.
modulekdefoo
end module
cmake-options -DCMAKE_BUILD_TYPE=Debug
Suggeriment
Aquest és un mòdul basat en Git, ja que no utilitza una opció repository. A més, l'opció cmake-options
només es llista com un exemple, no és obligatòria.
Ara, la majoria dels mòduls de codi font del KDE estan basats en Git, i normalment es combinen en grups de mòduls.
Per tant, el kdesrc-build també admet grups de mòduls, utilitzant conjunts de mòduls («module-set»). Un exemple:
module-setmòduls_base
repository
kde-projectsuse-modules
kde-runtime kde-workspace kde-baseapps
end module-set
Suggeriment
Si voleu, podeu deixar el nom del conjunt de mòduls (mòduls_base
) buit. Aquesta opció repository
li diu al kdesrc-build des d'on descarregar el codi font, però també podeu utilitzar un URL git://.
Una característica especial del «repository
kde-projects
» és que el kdesrc-build inclourà automàticament qualsevol mòdul de Git que s'agrupi sota els mòduls que llisteu (a la base de dades del Projecte KDE).
Portant el concepte d'un branch-group més enllà, els desenvolupadors del KDE finalment van descobrir que sincronitzar els noms de les branques a Git en un gran nombre de repositoris s'estava tornant difícil, especialment durant l'impuls de desenvolupament per als nous Frameworks del KDE per a les Qt™ 5.
Per tant, es va desenvolupar el concepte dels «branch-group», per a permetre als usuaris i desenvolupadors seleccionar només uns quants grups, i permetre que l'script seleccioni automàticament la branca Git adequada.
El kdesrc-build admet aquesta característica a partir de la versió 1.16-pre2, a través de l'opció branch-group.
Exemple A.1. Exemple d'ús de «branch-group»
«branch-group» es pot utilitzar al fitxer de configuració de la següent manera:
global # Selecciona els Frameworks 5 del KDE i altres aplicacions basades en les Qt5branch-group
kf5-qt5
# Les altres opcions globals van aquí... end global module-set # «branch-group» només funciona per a «kde-projects»repository
kde-projects # «branch-group» s'hereta del conjunt global, però es pot especificar # aquí.use-modules
kdelibs kde-workspace
end module-set # La branca del kdelibs serà «frameworks» # La branca del kde-workspace serà «master» (l'agost de 2013)
En aquest cas, el mateix branch-group
proporciona diferents noms de branca per a cada mòdul Git.
Aquesta característica requereix algunes dades mantingudes pels desenvolupadors del KDE en un repositori de Git anomenat kde-build-metadata
, però aquest mòdul serà inclòs automàticament pel kdesrc-build (encara que veureu que apareix a la sortida de l'script).
Suggeriment
Els mòduls del KDE que no tenen establert un nom de branca per al grup de branques que trieu, tindran el nom de la branca adequada, com si no haguéssiu especificat cap branch-group
.