depot/extract: make: execvp: bash: Argument list too long

Roman Iten roman.iten at gapfruit.com
Wed Jun 9 14:14:27 CEST 2021


Hello Christian

> On Mon, Jun 07, 2021 at 21:48:31 CEST, Roman Iten wrote:
>> The arguments for the `make`-command assembled by the rule
>> `checked_ports_exists` can get quite long for many archives even though
>> it doesn't contain any duplicates.

More precisely, the culprit is the generation of `gen_missing_ports.mk`,
see [1].

On 08.06.21 09:29, Christian Helmuth wrote:
> I did not encounter this issue before despite I use meta pkgs
> sometimes. Does this happen only with PREPARE_PORTS=1?

No, it happens in both cases. As far as I understand, the check for
missing ports doesn't depend on this variable - which is good because
otherwise, I guess there will be hard to decipher error messages if a
required port isn't prepared.

> In my opinion a proper fix that prevents exceeding command line
> arguments is much appreciated and could serve as valuable blueprint in
> other places too. It sounds like the issue needs a mechanism similar
> to the xargs tool.

I'm not very experienced with make, and writing makefiles using make is
way out of my "comfort zone" ;) Although conceptually it suffers from
the same flaw, this workaround [2] works for our use case for now.

Thanks for everyone's advice,
Roman


[1]
https://github.com/genodelabs/genode/blob/c0150f97e524bdb90ad455ac0837c400e864e508/tool/depot/mk/extract_post_dependencies.inc#L86

[2]
https://github.com/rite/genode/commit/1753574d3d0484520688872b84f4e241b2965cca

-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <http://lists.genode.org/pipermail/users/attachments/20210609/cfd321a2/attachment.sig>


More information about the users mailing list