HomeFreeBSD

Make sure what we install is stripped (i.e., debug info is removed).

Description

Make sure what we install is stripped (i.e., debug info is removed).

The straightforward way is setting INSTALL_TARGET to install-strip,
which is supported by the upstream GCC build machinery.

Unfortunately this fails when running as regular user (non-root)
since strip requires write permission to the files in question,
and we install binaries as r-xr-xr-x by default. To work around
that we need to set BINMODE to allow for write access by the user,
something that's common on GNU/Linux (which is why this probably
has not been noticed there). This is not necessary when running
as root.

(A different approach suggested was to set STRIP=true, alas that
leads to many files actually not being stripped. This is due to
GCC using its own script install-sh that in turn uses cp, chmod,
strip,... instead of our own install-* tools in many cases.)

According to tests by sobomax@ and me installs of lang/gcc6 went
down by about a fourth.

Reported by: Ports QA Framework, miwi, sobomax
Discussed with: tijl, miwi
Tested by: sobomax
Differential Revision: https://reviews.freebsd.org/D10357

Details

Provenance
geraldAuthored on
Differential Revision
D10357: lang/gcc fix build with poudriere bulk -t /testport
Parents
rP454176: Fix wrong ranges of affected PHP versions
Branches
Unknown
Tags
Unknown