libglib2: Avoid absolute path to python in shebang
authorDavid Owens <david.owens@rockwellcollins.com>
Thu, 12 Jul 2018 16:37:34 +0000 (11:37 -0500)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Wed, 18 Jul 2018 15:18:12 +0000 (17:18 +0200)
commit3ab5dfb548a840debe6e4e767ea2ea10e9c6e93a
tree2791ebbba1b3c53388cd658f0ffc142323d730d9
parent080d3f793f3f5273a882de1334508e0c1668caf4
libglib2: Avoid absolute path to python in shebang

When the output directory is nested under a long path name, calling the
gdbus-codegen, glib-genmarshal, or glib-mkenums scripts throws the
error:

> '/usr/bin/env: /...: No such file or directory'

This is because libglib2 uses the absolute path to the python
interpreter for its shebang statements, and shebangs have a max length
of 127 chars[1]. A long absolute path will be cut off and appear as a
missing file.

Since the host Python is present in the $PATH passed to all packages, we
can copy the workaround from Yocto and just use the python interpreter
in $PATH[2]. However, 'python' is used instead of 'python3' as the
scripts are compatible with both.

[1] https://linux.die.net/man/2/execve
[2] http://cgit.openembedded.org/openembedded-core/commit/?id=eef7883587acc933d6f34b559ec03ff84d18573b

Signed-off-by: Brandon Maier <brandon.maier@rockwellcollins.com>
Signed-off-by: David Owens <david.owens@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/libglib2/0004-Do-not-hardcode-python-path-into-various-tools.patch [new file with mode: 0644]