wget: fix host-gettext build dependency race
PATCH v2 1/1 wget: fix host-gettext build dependency race
From: "Yann E. MORIN" <[email protected]>
Currently, the gettextization of wget works by chance:
- host-gettext is added as a dependency to wget;
- gettextize is run as a post-patch hook.
But the dependencies are only guaranteed to be built and installed for the configure step, not the patch step. Because post-patch hooks are part of the patch step, we have no guarantee that the dependency to host-gettext is done by the time we gettextize wget.
This happens to work by chance, since wget sorts alphabetically after gettext, so we indeed have host-gettext built and installed by the time we need to gettextize wget.
This is prone to fail in the parallel build case, since we can no longer rely on alphabetical order in that case.
Instead, run gettextize in PRE_CONFIGURE_HOOK to avoid the race.
---
v2:
Use PRE_CONFIGURE_HOOK to make the fix independent from the rejected gettextize infrastructure; update the commit log accordingly
--- package/wget/wget.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
package/wget/wget.mk +1 -1
@@ -19,7 +19,7 @@ WGET_DEPENDENCIES += host-gettext define WGET_GETTEXTIZE cd $(@D) ; $(HOST_DIR)/usr/bin/gettextize -f endef -WGET_POST_PATCH_HOOKS += WGET_GETTEXTIZE +WGET_PRE_CONFIGURE_HOOK += WGET_GETTEXTIZE # Prefer full-blown wget over busybox ifeq ($(BR2_PACKAGE_BUSYBOX),y)
Signature · 1 line
1.9.2
PATCH v2 1/1 wget: fix host-gettext build dependency race
Hi Yann, all,
Quoted 36 lines · Baruch Siach
From: "Yann E. MORIN" <[email protected]>
Currently, the gettextization of wget works by chance:
- host-gettext is added as a dependency to wget;
- gettextize is run as a post-patch hook.But the dependencies are only guaranteed to be built and installed for the configure step, not the patch step. Because post-patch hooks are part of the patch step, we have no guarantee that the dependency to host-gettext is done by the time we gettextize wget.
This happens to work by chance, since wget sorts alphabetically after gettext, so we indeed have host-gettext built and installed by the time we need to gettextize wget.
This is prone to fail in the parallel build case, since we can no longer rely on alphabetical order in that case.
Instead, run gettextize in
PRE_CONFIGURE_HOOKto avoid the race.Signed-off-by "Yann E. MORIN" <[email protected]>[baruch: make the fix independent from the gettextize infra]Signed-off-by Baruch Siach <[email protected]>---
v2:
UsePRE_CONFIGURE_HOOKto make the fix independent from the rejected gettextize infrastructure; update the commit log accordingly--- package/wget/wget.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)package/wget/wget.mk +0
-0
package/wget/wget.mk WGET_DEPENDENCIES += host-gettext · line 22
Quoted 5 lines
package/wget/wget.mk +1
-1@@ -19,7 +19,7 @@ WGET_DEPENDENCIES += host-gettext define WGET_GETTEXTIZE cd $(@D) ; $(HOST_DIR)/usr/bin/gettextize -f endef -WGET_POST_PATCH_HOOKS += WGET_GETTEXTIZE +WGET_PRE_CONFIGURE_HOOK += WGET_GETTEXTIZE
This should be _HOOKS. Will fix shortly.
baruch
Quoted 3 lines
package/wget/wget.mk +0
-0# Prefer full-blown wget over busybox ifeq ($(BR2_PACKAGE_BUSYBOX),y)
Signature · 3 lines
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -