buildroot/support
Yann E. MORIN c1cfee290e support/check-rpath: recognise PIE
We sanity-check the host executables that they have a correct RPATH
pointing to the host libraries.

This is currently done by looking for all files in $(HOST_DIR) that
match the 'ELF executable' pattern (a bit more complex, but that's
idea).

However, when an executable is built with -fPIE of -fpie, it no longer
appears to be an 'ELF executable', but it rather looks like an 'ELF
sheard object' (like if it were an library.

So, we miss those files.

It turns out that the problem is a real one, because quite a few
mainline distros, expecially those based on Debian for example, have
already switched to generating PIE code by default, and thus we miss on
a whole class of systems..

We fix that by simply looking if we can find an ELF interpreter in each
file. If we there is one, this is an ELF executable; if not, it may be
anything else: we don't care (not even about ELF libraries).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-09-27 00:13:55 +02:00
..
config-fragments support/config-fragments/autobuild: fix ARM internal fragment 2017-07-29 15:41:57 +02:00
dependencies Globally replace $(HOST_DIR)/usr/bin with $(HOST_DIR)/bin 2017-07-05 15:19:29 +02:00
docker support: add Dockerfile for CI 2017-07-02 23:45:24 +02:00
download support/download: fix check_one_hash description 2017-09-19 22:11:30 +02:00
gnuconfig support/gnuconfig: bump version to 2016-05-15 2016-06-05 22:26:57 +02:00
kconfig merge_config.sh: create temporary files in /tmp 2016-01-31 09:09:52 +01:00
legal-info legal-info: add hash for our own license file 2017-07-05 16:31:40 +02:00
libtool support/libtool: add patch for newer versions 2014-12-21 13:21:56 +01:00
misc Update for 2017.08 2017-09-02 01:17:43 +02:00
scripts support/check-rpath: recognise PIE 2017-09-27 00:13:55 +02:00
testing boot/grub: remove 2017-09-23 20:29:37 +02:00