[Buildroot] [PATCH 2/3] package/automake: also include autoconf-archive in search paths
Michael Walle
michael at walle.cc
Mon Feb 10 13:09:54 UTC 2020
Am 2020-02-10 14:06, schrieb Michael Walle:
> Hi Yann,
>
> Am 2020-02-09 16:24, schrieb Yann E. MORIN:
>> All,
>>
>> On 2020-02-09 16:12 +0100, Yann E. MORIN spake thusly:
>>> Since d255b67972 (autotools: do not overwrite first include path),
>>> the
>>> ordering of include paths has changed: the system directories are
>>> specified with explicit options passed to autoreconf, which means
>>> that
>>> any directory specified in the package _AUTORECONF_OPTS are no longer
>>> first:
>>>
>>> - in package/autoconf/autoconf.mk, we define AUTORECONF as:
>>> AUTOCONF = $(HOST_DIR)/bin/autoconf -I "$(ACLOCAL_DIR)" -I
>>> "$(ACLOCAL_HOST_DIR)"
>>>
>>> - in package/pkg-autotools.mk, we call AUTORECONF with:
>>> $($(PKG)_AUTORECONF_ENV) $(AUTORECONF) $($(PKG)_AUTORECONF_OPTS)
>>>
>>> For a package that needs autoconf-archive, this means that it has to
>>> provide a custom include directive, in its own _AUTORECONF_OPTS. This
>>> in
>>> turn means that this directory becomes the first, and goes directly
>>> opposite to what d255b67972 was supposed to accomplish.
>>>
>>> However, the path to the autoconf archive macro directory is mnot
>>> searched by default either, so a package has no way to add such an
>>> aclocal include directive.
>>>
>>> We can only add it in the global search directory, and we do so only
>>> for
>>> those packages that have autoconf-archive in their dependencies.
>>>
>>> Signed-off-by: Yann E. MORIN <yann.morin.1998 at free.fr>
>>> Cc: Michael Walle <michael at walle.cc>
>>> Cc: Heiko Thiery <heiko.thiery at gmail.com>
>>> Cc: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
>>> Cc: Arnout Vandecappelle <arnout at mind.be>
>>> Cc: Peter Korsgaard <peter at korsgaard.com>
>>> ---
>>> package/automake/automake.mk | 8 +++++++-
>>> 1 file changed, 7 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/package/automake/automake.mk
>>> b/package/automake/automake.mk
>>> index 89dcaa1293..238116cb94 100644
>>> --- a/package/automake/automake.mk
>>> +++ b/package/automake/automake.mk
>>> @@ -33,5 +33,11 @@ $(eval $(host-autotools-package))
>>> AUTOMAKE = $(HOST_DIR)/bin/automake
>>> ACLOCAL_DIR = $(STAGING_DIR)/usr/share/aclocal
>>> ACLOCAL = $(HOST_DIR)/bin/aclocal
>>> -ACLOCAL_PATH = $(ACLOCAL_DIR):$(ACLOCAL_HOST_DIR)
>>> +ACLOCAL_PATH = $(subst $(space),:,$(strip \
>>> + $(ACLOCAL_DIR) \
>>> + $(ACLOCAL_HOST_DIR) \
>>> + $(if $(filter
>>> host-autoconf-archive,$($(PKG)_FINAL_ALL_DEPENDENCIES)),\
>>> + $(HOST_DIR)/share/autoconf-archive \
>>> + ) \
>>> +))
>>
>> This makes check-package whine because it is not indented. Sigh...
>> Indenting with a TAB fixes the check-package error, and is still a
>> working fix.
>
> This makes me wonder why these are installed into
> share/autoconf-archive
> instead of $(ACLOCAL_HOST_DIR) in the first place. Eg. on my debian
> system
> all the macros of autoconf-archive are installed to /usr/share/aclocal.
Ok, to answer this myself:
https://git.buildroot.net/buildroot/commit/?id=2c490f00c8d8a7d34ed6da9130cef8a5e97cef56
Still, maybe this has changed over time and there is no such bug
anymore?
-michael
More information about the buildroot
mailing list