Capítulo 4. Configurar o kdesrc-build

Introdução à configuração do kdesrc-build

Para usar o programa, deverá ter um ficheiro na sua pasta pessoal .kdesrc-buildrc, que descreve os módulos que deseja obter e compilar, assim como todas as opções ou parâmetros de configuração a usar para esses módulos.

Formato do ficheiro de configuração

Configuração global

O ficheiro de configuração começa com as opções globais, indicadas da seguinte forma:

global
nome-opção valor-opção
[...]
end global

Configuração do módulo

Segue-se então uma ou mais secções dos módulos, organizadas de uma das duas formas seguintes:

  • module nome-módulo
    nome-opção valor-opção
    [...]
    end module
    
  • module-set nome-conjunto-módulos
      repository kde-projects ou git://maquina.org/local/do/repositório.git
      use-modules nomes-módulos
    
    # Também poderá definir outras opções
    nome-opção valor-opção
    [...]
    end module-set
    

Importante

Lembre-se que a segunda forma, os conjuntos de módulos, só funciona para os módulos baseados no Git.

Para os módulos do Subversion, o nome-módulo deverá ser um módulo do repositório de Subversion do KDE (por exemplo, o 'kdeartwork' ou o 'kde-wallpapers'), ainda que seja possível contornar isto, caso indique manualmente o URL do Subversion.

Para os módulos do Git, o nome do módulo poderá ser o que desejar, desde que não seja um duplicado de outro nome de módulo qualquer na configuração. Lembre-se que a disposição das pastas de código e da compilação serão baseadas no nome d módulo, caso não use a opção dest-dir.

Contudo, para os conjuntos de módulos do Git, os nomes-módulos deverão corresponder aos módulos actuais do Git no repository escolhido. Veja as opções git-repository-base ou use-modules para mais informações.

Módulos de options

Existe um tipo final de elemento do ficheiro de configuração, os grupos de options, que podem ser indicados sempre que um module ou module-set possa ser usado.

options nome-módulo
nome-opção valor-opção
[...]
end options

Um grupo de options pode ter opções definidas para ele, como na declaração de um módulo, estando associado a um módulo existente. Todas as opções definidas desta forma serão usadas para substituir as opções definidas para o módulo associado.

Importante

O nome do módulo associado deve corresponder ao nome indicado na declaração options. Tenha cuidado com os erros na escrita do nome.

Isto é útil para permitir declarar um module-set inteiro composto por vários módulos, todos com as mesmas opções, usando então os grupos de options para fazer alterações individuais.

Os grupos options também se podem aplicar aos conjuntos de módulos com nome. Isto permite aos utilizadores mais experientes usarem um ficheiro de configuração comum (que inclui as declarações module-set) como referência de base, podendo então fazer as alterações às opções usadas por esses conjuntos de módulos nos ficheiros de configuração que usam o comando include para referenciar a configuração de base.

Exemplo 4.1. Exemplo de utilização do 'options'

Neste exemplo optámos por compilar todos os módulos do grupo de aplicações multimédia do KDE. Contudo, queremos usar uma versão diferente da aplicação KMix (talvez para testar uma correcção de erros). Isto funciona da seguinte forma:

module-set kde-multimedia-set
  repository kde-projects
  use-modules kde/kdemultimedia
  branch master
end module-set

# o kmix é uma parte do grupo kde/kdemultimedia, ainda que nunca tenhamos
# nomeado o 'kmix' anteriormente, o kdesrc-build irá perceber a alteração.
options kmix
  branch KDE/4.12
end options

Agora quando executar o kdesrc-build, todos os programas multimédia do KDE serão compilados a partir da ramificação master do repositório de código, mas o KMix será compilado a partir da ramificação mais antiga KDE/4.12. Ao usar o options, não teve de listar individualmente todos os outros programas multimédia do KDE para lhes dar a opção de ramificação correcta.


Nota

De notar que esta funcionalidade só está disponível a partir da versão 1.16 do kdesrc-build ou da versão em desenvolvimento do kdesrc-build após a data de 2014-01-12.

Incluir outros ficheiros de configuração

Dentro do ficheiro de configuração, poderá referenciar outros ficheiros, usando a instrução include com um ficheiro, o qual irá funcionar como se o ficheiro referenciado tivesse sido introduzido no ficheiro de configuração nesse ponto.

Por exemplo, poderá fazer algo do género:

global
    include ~/opções-comuns-kdesrc-build
    # Indique as opções específicas aqui.
end global

Nota

Se não indicar a localização completa do ficheiro a incluir, então o ficheiro será pesquisado a começar na pasta que contém o ficheiro de origem. Isto funciona também de forma recursiva.

Opções de configuração mais usadas

Segue-se uma lista ordenada alfabeticamente das opções que poderá usar. Carregue na opção para descobrir mais sobre ela. Para ver a lista de opções completa, veja em “Tabela com as opções de configuração disponíveis”.

  • cmake-options para definir as opções com que um módulo poderá ser configurado com o CMake.

  • branch, para obter uma dada ramificação, em vez da '/trunk' (para o Subversion) ou do master (para o Git).

  • configure-flags para definir as opções com que será configurado o Qt™.

  • kdedir, para indicar a pasta onde o KDE será instalado.

  • make-options, para passar opções ao programa Make (como o número de CPU's a usar).

  • qtdir, para definir a localização do Qt™.

  • source-dir, para mudar o local onde colocar o código transferido.