On Thursday, 17 September 2020 at 14:15:34 UTC, wjoe wrote:
On Wednesday, 16 September 2020 at 21:05:27 UTC, Iain Buclaw
wrote:
On Wednesday, 16 September 2020 at 12:50:57 UTC, wjoe wrote:
[...]
You should be able to get yourself down to about ~30MB. ;-)
I'll see if there's any miscellaneous tweaks you can do, but
the most obvious one is `strip --strip-debug`.
[...]
IIRC, that top line just matches Debian/Ubuntu built gcc (in
the hope that no weirdness would happen when running
testsuite).
Seems reasonable to break it out into a variable that can be
overridden by the CI.
Just looking at an old binary, the builder used
`--prefix=/home/build/share/cache/install/x86_64-unknown-linux-gnu`. Not saying that you should do the same, but the last part being the target triplet is the key.
...
It may only be a marginal gain, but I find that
--disable-libstdcxx-pch helps with speeding up incremental
builds (a long time is spent compiling headers in libstdc++).
Installation and creation of the tar ball now works as expected.
It contains a folder named after the build_target triplet and
includes the libstdcxx, libphobos headers/sources as well as
the static/shared libs, the binaries and man pages.
It took 1:54 to build and weighs 316MB but it isn't stripped
yet.
Still waiting on the results of make install-strip and with
pre-compiled headers disabled.
Once those are done I'll setup a github action to upload the
tar ball to the repository releases.
Maybe it would be a good idea to tag the directory name with a
version ID or to make a version directory there and install
into that ?
I can provide a server for you to upload to. Git tags for
versioning might be interesting for uploads, but they're not
going to be binaries that will stay around for too long.
This is a bastardized version of the git gcc-descr alias.
git describe --all --abbrev=40 --match 'basepoints/gcc-[0-9]*'
origin/master | sed -n 's,^\(tags/\)\?basepoints/gcc-,r,p'
That should get you a tag like
r11-3179-g5de41c886207a3a0ff1f44ce0a5a644e9d9a17f8