On 21/04/18 03:46, Jan Alexander Steffens (heftig) wrote:
> file 5.33 introduces a new MIME type "application/x-pie-executable",
> which is used for relocatable binaries. makepkg ignored these binaries
> and did not attempt to strip them.
> 
> Handle the new MIME type like the old "application/x-sharedlib".
> Stripping the binaries with --strip-unneeded to keep relocation
> information should be the correct thing to do.
> 
> file 5.33 also misidentifies actual libraries as PIE executables, so we
> didn't strip any shared libraries, either. We now work around this bug.
> 
> Signed-off-by: Jan Alexander Steffens (heftig) <[email protected]>
> ---


Applied with the following documentation additions:

diff --git a/doc/makepkg.conf.5.txt b/doc/makepkg.conf.5.txt
index 267dc9e9..5417aa0e 100644
--- a/doc/makepkg.conf.5.txt
+++ b/doc/makepkg.conf.5.txt
@@ -193,8 +193,8 @@ Options
        for details.

 **STRIP_SHARED=**"--strip-unneeded"::
-       Options to be used when stripping shared libraries. See
linkman:strip[1]
-       for details.
+       Options to be used when stripping shared libraries or PIE
executables.
+       See linkman:strip[1] for details.

 **STRIP_STATIC=**"--strip-debug"::
        Options to be used when stripping static libraries. See
linkman:strip[1]



>  scripts/libmakepkg/tidy/strip.sh.in | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/scripts/libmakepkg/tidy/strip.sh.in 
> b/scripts/libmakepkg/tidy/strip.sh.in
> index e20114c0..36d1b89e 100644
> --- a/scripts/libmakepkg/tidy/strip.sh.in
> +++ b/scripts/libmakepkg/tidy/strip.sh.in
> @@ -125,6 +125,8 @@ tidy_strip() {
>                                       esac;;
>                               *application/x-executable*) # Binaries
>                                       strip_flags="$STRIP_BINARIES";;
> +                             *application/x-pie-executable*)  # Relocatable 
> binaries
> +                                     strip_flags="$STRIP_SHARED";;
>                               *)
>                                       continue ;;
>                       esac
> 

Reply via email to