A macro AC_PROG_MKDIR_P
é uma macro de teste de recurso. Ele expande para o código shell que testa o melhor comando mkdir -p
-capable disponível. Ele usa MKDIR_P
e ac_cv_path_mkdir
(uma "variável de cache") para descobrir qual comando usar.
Você pode definir o valor de MKDIR_P
para o comando que você deseja usar para criar diretórios. O comando que você usa deve ser capaz de criar não apenas um único diretório, mas também os diretórios-pai, caso estes ainda não existam (assim como mkdir -p
).
Normal:
$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p
checking for gawk... gawk
...
Com MKDIR_P
definido:
$ ./configure MKDIR_P='install -d -m 0755'
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... install -d -m 0755
checking for gawk... gawk
...
De acordo com a documentação , a pessoa deve poder para tornar isso "permanente" definindo a variável de cache ac_cv_path_mkdir
para o comando desejado. Essa variável pode ser definida diretamente no script configure
(feio) ou modificando o arquivo config.cache
criado depois de executar configure
com a opção -C
uma vez. No entanto , descobri que configure
adiciona uma opção -p
ao valor desse comando que pode não ser desejado (o significado dessa opção é diferente entre mkdir
e install
).
Se você estiver satisfeito em gerar novamente o script configure
de sua configure.ac
source, poderá definir MKDIR_P
como um valor logo após a chamada para AC_INIT
. Em seguida, execute autoconf
(ou autoreconf
) para recriar configure
.
A maneira mais flexível seria definir a variável de ambiente MKDIR_P
na sessão de shell atual com export MKDIR_P='install -d'
(ou o que você precisa). Isso não exigiria a modificação de nenhum arquivo, mas afetaria todos os scripts configure
executados nessa sessão do shell.