On Mon, Oct 15, 2018 at 3:53 PM Ed Maste <ema...@freebsd.org> wrote: > On Mon, 15 Oct 2018 at 07:13, Ed Maste <ema...@freebsd.org> wrote: > > Hi Antoine, did you bisect to this rev or does it just look like the > > most probable candidate? Can you copy a pair of differing .o files > > (say, gcc/cc1plus-checksum.o) from the work dir to freefall? > > Antoine provided a tarball of the work dir to me, and pointed out that > the *-checksum.o files are not interesting - they are warnings only > and are present prior to the identified change. > > Comparing one of the other differing files, e.g. > stage{2,3}-gcc/expmed.o, demonstrates the problem. Gcc's build > machinery is reasonably obfuscated so I'm not sure of the exact set of > operations, but I can infer that the stage2/stage3 comparison is > running strip on the object files and then comparing the result. Gcc > is encountering this part of my strip/objcopy change: > > > Stripping binaries with relocations > > referencing removed symbols was already broken, and after this change > > may still be broken in a different way. > > Stripping symbols and relocations from an object file is not a > particularly useful operation, since the object then can't be linked > or otherwise used. But it seems Gcc's stage comparison relies on this. > I did try running "strip --strip-debug" on stage{2,3}-gcc/expmed.o (a > reasonable operation on object files) and that produced identical > output. > > It may well be that a further change to ELF Tool Chain's strip is > warranted, but I suspect the most straightforward and reliable fix > here will be to just have gcc use GNU strip.
The attached patch for the gcc ports fixes the failures for me. Antoine
Index: lang/gcc48/Makefile =================================================================== --- lang/gcc48/Makefile (revision 482165) +++ lang/gcc48/Makefile (working copy) @@ -33,6 +33,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).([0-9]+).*/\1\2/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:bzip2 USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes Index: lang/gcc49/Makefile =================================================================== --- lang/gcc49/Makefile (revision 482165) +++ lang/gcc49/Makefile (working copy) @@ -33,6 +33,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).([0-9]+).*/\1\2/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:bzip2 USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes Index: lang/gcc5/Makefile =================================================================== --- lang/gcc5/Makefile (revision 482165) +++ lang/gcc5/Makefile (working copy) @@ -34,6 +34,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes Index: lang/gcc6/Makefile =================================================================== --- lang/gcc6/Makefile (revision 482165) +++ lang/gcc6/Makefile (working copy) @@ -35,6 +35,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes CFLAGS:= ${CFLAGS:N-mretpoline} Index: lang/gcc6-devel/Makefile =================================================================== --- lang/gcc6-devel/Makefile (revision 482165) +++ lang/gcc6-devel/Makefile (working copy) @@ -40,6 +40,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes Index: lang/gcc7/Makefile =================================================================== --- lang/gcc7/Makefile (revision 482165) +++ lang/gcc7/Makefile (working copy) @@ -34,6 +34,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes CFLAGS:= ${CFLAGS:N-mretpoline} Index: lang/gcc7-devel/Makefile =================================================================== --- lang/gcc7-devel/Makefile (revision 482165) +++ lang/gcc7-devel/Makefile (working copy) @@ -40,6 +40,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes Index: lang/gcc8/Makefile =================================================================== --- lang/gcc8/Makefile (revision 482165) +++ lang/gcc8/Makefile (working copy) @@ -34,6 +34,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes CFLAGS:= ${CFLAGS:N-mretpoline} Index: lang/gcc8-devel/Makefile =================================================================== --- lang/gcc8-devel/Makefile (revision 482165) +++ lang/gcc8-devel/Makefile (working copy) @@ -40,6 +40,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes Index: lang/gcc9-devel/Makefile =================================================================== --- lang/gcc9-devel/Makefile (revision 482165) +++ lang/gcc9-devel/Makefile (working copy) @@ -38,6 +38,7 @@ SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes +BINARY_ALIAS= strip=${LOCALBASE}/bin/strip USE_PERL5= build SSP_UNSAFE= yes
_______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"