Le 03/09/2018 à 18:27, Bruno Haible a écrit :
Hi Antoine,
There seems to be a problem with the addition of the manual test in the
localcharset module, when used in a subdirectory:
make[6]: Entering directory `/home/aluong/test-gnulib/libmissing/tests'
make[6]: *** No rule to make target `../../libmissing/libmissing.a',
needed by `test-localcharset'. Stop.
Each of the tests needs to link against the libmissing.a library.
Therefore this library needs to be built before the tests are compiled
and linked.
Probably something's wrong in the Makefile regarding the build order...
The gnulib-tool command used was this one:
gnulib-tool --import --lib=libmissing --source-base=libmissing
--m4-base=libmissing/m4 --tests-base=libmissing/tests --with-tests
localcharset
Does it work when you use two directories that are siblings instead
of ancestors?
gnulib-tool --import --lib=libmissing --source-base=libmissing \
--m4-base=libmissing/m4 --tests-base=libmissing-tests --with-tests \
localcharset
Bruno
Thanks for your quick answer.
It works when using sibling directories.
Other tests do work as well, so I figured there was an issue with this
one because it is defined as noinst_PROGRAMS.
I can reproduce the issue with this minimal Makefile.am:
ACLOCAL_AMFLAGS = -I libmissing/m4
SUBDIRS = libmissing
and this configure.ac:
AC_INIT(mymodule, 1.0.0)
AC_PREREQ(2.59)
AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE([-Wall tar-pax 1.9])
AM_CONFIG_HEADER(config.h)
AM_DISABLE_STATIC
AM_MAINTAINER_MODE
AC_PROG_CC
gl_EARLY
AC_PROG_INSTALL
AC_PROG_MAKE_SET
AC_PROG_LIBTOOL
gl_INIT
AC_CONFIG_FILES([
Makefile
libmissing/Makefile
libmissing/tests/Makefile
])
AC_OUTPUT
Am I missing something?