Capítulo 4. Configurando o kdesrc-build

Visão geral da configuração do kdesrc-build

Para usar o script, você deverá ter um arquivo na sua pasta pessoal chamado .kdesrc-buildrc, que descreve os módulos que deseja baixar e compilar, assim como todas as opções ou parâmetros de configuração a serem usados para esses módulos.

Layout do arquivo de configuração

Configuração global

O arquivo 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 seções dos módulos, especificadas em uma das duas formas a seguir:

  • module nome-módulo
    nome-opção valor-opção
    [...]
    end module
    
  • module-set nome-conjunto-módulos
      repository kde-projects or git://host.org/path/to/repo.git
      use-modules nomes-módulos
    
    # Outras opções podem também ser definidas
    nome-opção valor-opção
    [...]
    end module-set
    

Importante

Note que a segunda forma, com conjuntos de módulos, só funciona para módulos baseados no Git.

Para módulos do Subversion, nome-módulo deverá ser um módulo do repositório de Subversion do KDE (por exemplo, o kdeartwork ou o kde-wallpapers), apesar de ser possível contornar isto se especificar manualmente a URL do repositório Subversion.

Para módulos do Git, o nome do módulo pode ser essencialmente o que desejar, desde que ele não duplique qualquer outro nome de módulo na configuração. Tenha em mente que o layout do diretório de código e de compilação será baseado no nome do módulo se você não usar a opção dest-dir.

No entanto, para os conjuntos de módulos do Git o nomes-módulos devem corresponder com os módulos atuais do git no repository escolhido. Veja git-repository-base ou use-modules para mais informações.

Módulos de options

Existe um tipo final de item do arquivo de configuração, os grupos options, que podem ser indicados sempre que um module ou module-set puder 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 dessa 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 grafia do nome.

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

Exemplo 4.1. Exemplo de uso do 'options'

Neste exemplo optamos por compilar todos os módulos do grupo de aplicativos multimídia do KDE. Contudo, queremos usar uma versão diferente do aplicativo KMix (talvez para testar uma correção de erro). Isto funciona da seguinte forma:

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

# kmix é uma parte do grupo kde/kdemultimedia, ainda que nunca tenhamos
# citado 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, você não deve listar individualmente todos os outros programas multimídia do KDE para lhes dar a opção de ramificação correta.


Nota

Lembre-se de que essa funcionalidade só está disponível a partir da versão 1.16 do kdesrc-build ou da sua versão em desenvolvimento após o dia 12/01/2014.

Incluindo outros arquivos de configuração

Dentro do arquivo de configuração, você pode referenciar outros arquivos usando a chave include com um arquivo, que funcionará como se o arquivo referenciado tivesse sido inserido no arquivo de configuração naquele ponto.

Por exemplo, você poderá fazer algo como isto:

global
    include ~/common-kdesrc-build-options

    # Insira opções específicas aqui.

end global

Nota

Se você não indicar o caminho completo do arquivo a incluir, então o arquivo será pesquisado a partir da pasta que contém o arquivo de origem. Isso funciona também de forma recursiva.

Opções de configuração comumente usadas

Segue-se uma lista das opções normalmente usadas. Clique na opção para descobrir mais sobre ela. Para visualizar a lista completa de opções, veja em “Tabela das 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 determinada ramificação, em vez da '/trunk' (para o Subversion) ou master (para o Git).

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

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

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

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

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