[Buildroot] [PATCH v2, 1/1] package/pkg-utils.mk: fix per-package build

Yann E. MORIN yann.morin.1998 at free.fr
Sun Aug 29 19:45:56 UTC 2021


Fabrice, All,

+Hervé, +Thomas, +Arnout, +Romain

On 2021-08-29 21:18 +0200, Fabrice Fontaine spake thusly:
[--SNIP--]
> It should be noted that the same kind of issue is raised with libxcrypt.
> Indeed, without the --update parameter, crypt.h provided by libxcrypt
> will be overriden by crypt.h provided by the toolchain resulting in the
> following build failure with linux-pam:

Ouch... When we could say that the ncurses issue was due to a non-pure
toolchain, this case of libxcrypt is reallt problematic, because it
wants to override a file from the tolchain, on purpose...

This is going to be tricky...

I've marked this patch rejected, because it is not the proper solution
(as explained in the previous iteration).

Regards,
Yann E. MORIN.

> >>> linux-pam 1.5.1 Configuring
> mkdir -p /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/flex/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/flex/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-autoconf/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-autoconf/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-automake/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-automake/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-flex/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-flex/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-libtool/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-libtool/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-pkgconf/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-pkgconf/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-skeleton/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/host-skeleton/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/libxcrypt/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/libxcrypt/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/skeleton/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/skeleton/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> rsync -a --link-dest=/home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/toolchain/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/toolchain/host/ /home/giuliobenetti/autobuild/run/instance-2/output-1/per-package/linux-pam/host
> 
> [...]
> 
> opasswd.c: In function 'compare_password':
> opasswd.c:131:21: error: storage size of 'output' isn't known
>   131 |   struct crypt_data output;
>       |                     ^~~~~~
> 
> Fixes:
>  - http://autobuild.buildroot.org/results/8c0d13e3cc3ddd2a21f99477cad4e39522e9deec
>  - http://autobuild.buildroot.org/results/d2f18ccad6a0330d78e97d70c810ac89b84d2261
>  - http://autobuild.buildroot.org/results/24038989d4ab962c9abea5cf061345f17a57c688
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
> ---
> Changes v1 -> v2:
>  - Update commit log with libxcrypt
> 
>  package/pkg-utils.mk | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/package/pkg-utils.mk b/package/pkg-utils.mk
> index ae3c7f9da9..5af34d4ee0 100644
> --- a/package/pkg-utils.mk
> +++ b/package/pkg-utils.mk
> @@ -184,7 +184,7 @@ ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),y)
>  define per-package-rsync
>  	mkdir -p $(3)
>  	$(foreach pkg,$(1),\
> -		rsync -a --link-dest=$(PER_PACKAGE_DIR)/$(pkg)/$(2)/ \
> +		rsync -au --link-dest=$(PER_PACKAGE_DIR)/$(pkg)/$(2)/ \
>  		$(PER_PACKAGE_DIR)/$(pkg)/$(2)/ \
>  		$(3)$(sep))
>  endef
> -- 
> 2.32.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'


More information about the buildroot mailing list