'pkglibexecdir' não é um diretório legítimo

1

Estou seguindo algumas instruções desatualizadas na tentativa de compilar alguns códigos legados proprietários, de código fechado e sem suporte. Aqui está como uma sessão típica de shell se parece:

$ autoreconf -fi

src/Makefile.am:7: error: 'pkglibexecdir' is not a legitimate directory for 'PYTHON'
autoreconf: automake failed with exit status: 1


$ cat src/Makefile.am

pkglibexecdir = $(libexecdir)/packagename

nobase_pkglibexec_PYTHON = \
        python_module_1.py
        python_module_2.py
        [...]

MAINTAINERCLEANFILES = Makefile.in
BUILT_SOURCES = some_source

some_source:
    ln -s ../lib/python/some_source some_source

Estou usando o GNU Autoconf versão 2.69. Eu também estou tendo problemas semelhantes com outros pacotes no mesmo projeto. Estou assumindo que há uma solução rápida para esse problema, mas não estou muito confortável com o autotools e a maior parte do que encontrei pelo google não fez muito sentido para mim.

    
por igal 29.07.2015 / 23:07

1 resposta

1

Você precisa usar um truque para contornar o policiamento de automake . Consulte o link :

This feature can also be used to override the sanity checks Automake performs to diagnose suspicious directory/primary couples (in the unlikely case these checks are undesirable, and you really know what you’re doing). For example, Automake would error out on this input:

# Forbidden directory combinations, automake will error out on this.
pkglib_PROGRAMS = foo
doc_LIBRARIES = libquux.a

but it will succeed with this:

# Work around forbidden directory combinations.  Do not use this
# without a very good reason!
my_execbindir = $(pkglibdir)
my_doclibdir = $(docdir)

my_execbin_PROGRAMS = foo
my_doclib_LIBRARIES = libquux.a
    
por 30.07.2015 / 10:52