python-pypcap: explicitly call pyrexc using python2 to fix too long shebang
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 14 Oct 2015 13:09:11 +0000 (15:09 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 14 Oct 2015 14:52:53 +0000 (16:52 +0200)
python-pypcap calls thez pyrexc Python script directly. This script is
generated by the pyrexc installation with a shebang line that has a
full path to our host-python interpreter. Unfortunately, since Linux
cuts the shebang line at 128 characters, it means that if you have an
output directory with a very very long name, the pyrexc script does
not run.

To solve that, we explicitly invoke pyrexc with the python2
interpreter.

Note that invoking the python2 interpreter directly is safe because
python-pypcap is only available for Python 2.x, so we are just that
$(HOST_DIR)/usr/bin/python2 is available.

Fixes #8281.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/python-pypcap/python-pypcap.mk

index bff9d8f1156c8db581baab6c0840bbccddc3e5fd..97d07f8658ae5948c233614ca8776f0ab02d5a3b 100644 (file)
@@ -12,7 +12,7 @@ PYTHON_PYPCAP_SETUP_TYPE = distutils
 PYTHON_PYPCAP_DEPENDENCIES = host-python-pyrex libpcap
 
 define PYTHON_PYPCAP_CONFIGURE_CMDS
-       $(HOST_DIR)/usr/bin/pyrexc $(@D)/pcap.pyx
+       $(HOST_DIR)/usr/bin/python2 $(HOST_DIR)/usr/bin/pyrexc $(@D)/pcap.pyx
        (cd $(@D); \
                $(HOST_DIR)/usr/bin/python setup.py \
                config --with-pcap=$(STAGING_DIR)/usr)