Como executar o make paralelo com o debuild?

17

Estou tentando fazer um pacote de um software que eu (co) escrevi. estou a usar

debuild -i -us -uc -b 

E, em princípio, isso funciona bem. Para diminuir o tempo de compilação, eu gostaria de reconstruir para executar o make em paralelo (como normalmente faço executando make -j4, por exemplo). Encontrei alguns locais na web que sugerem o seguinte:

debuild -eDEB_BUILD_OPTIONS="parallel=4" -us -uc -b
debuild -j4 -us -uc -b

Outro site sugeriu adicionar algum código ao debian/rulesarquivo que basicamente define

MAKEFLAGS += -j4

No entanto, nada disso parece funcionar. Perdi alguma coisa? ou devo alterar algo nas configurações de autoconf / automake da fonte?

ph0t0nix
fonte

Respostas:

16

Ele deve ser ativado no debian / rules. Se o pacote usa dh, há uma linha como esta no debian / rules:

dh $@

Mude isso para

dh $@ --parallel

Então seus comandos funcionarão, pelo menos DEB_BUILD_OPTIONS = "parallel = 4"

gggf
fonte
4
Lembre-se de exportar DEB_BUILD_OPTIONSpara deixar todas as ferramentas felizes.
Rbrito
A --parallelopção não é mais necessária, basta definir a variável de ambiente.
gps
8

Com o debhelper 10, você não precisa mais fornecer a --parallelopção debian/rules; agora ele executa compilações paralelas por padrão. Veja as notas de versão

A resposta, é, portanto, apenas para definir o conteúdo debian/compatde 10e para atualizar a debhelperversão para >=10nos debian/control.

Alex Valavanis
fonte
5

Eu recomendo usar a DEB_BUILD_OPTIONSvariável de ambiente, conforme descrito na seção 4.9.1 do Manual de Políticas Debian.

DEB_BUILD_OPTIONS='parallel=4' debuild -i -us -uc -b
Manuel
fonte