Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Nov 2016 22:56:38 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-ports@FreeBSD.org
Subject:   [Bug 214456] lang/gcc6: -r424540: FreeBSD's WITH_DEBUG= and full bootstrap are incompatible and the build stops (powerpc 32-bit anyway)
Message-ID:  <bug-214456-543-AgMQGYYL5a@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-214456-543@https.bugs.freebsd.org/bugzilla/>
References:  <bug-214456-543@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D214456

--- Comment #4 from Mark Millard <markmi@dsl-only.net> ---
(In reply to Gerald Pfeifer from comment #3)

Below gives the evidence from the script log file. But the summary is that,
while both
stage 2 and stage 3 list -g in the powerpc xg++ command, stage 2's xg++ com=
mand
has
-gtoggle and stage 3's xg++ command does not.

-gtoggle is described in
https://gcc.gnu.org/onlinedocs/gcc/Developer-Options.html as:

-gtoggle
Turn off generation of debug info, if leaving out this option generates it,=
 or
turn it
on at level 2 otherwise. The position of this argument in the command line =
does
not
matter; it takes effect after all other options are processed, and it does =
so
only once,
no matter how many times it is given. This is mainly intended to be used wi=
th
-fcompare-debug.

I'll note that so far I've only seen the mismatched comparison on powerpc, =
not
even
powerpc64. amd64 and armv6 have not had a mismatch.


The detailed evidence using read-rtl.c and its read-rtl.o as an example . .=
 .

The first compile (stage 1) of read-rtl.o from the log (just shown for
reference):

c++ -std=3Dgnu++98 -c   -g -DIN_GCC    -fno-strict-aliasing -fno-exceptions
-fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-stri=
ngs
-Wcast-qual -Wno-format -Wmissing-format-attrib
ute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros
-Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -DGENERATOR_FILE -fno-=
PIE
-I. -Ibuild -I/usr/obj/portswork/usr/ports/lang/gc
c6/work/gcc-6.2.0/gcc
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/build
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/../include=20
-I/usr/obj/portswork/usr/ports/lang/gcc6
/work/gcc-6.2.0/gcc/../libcpp/include -DLIBICONV_PLUG \
        -o build/read-rtl.o
/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/read-rtl.c
c++: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is
deprecated

The 2nd stage (the first compile by xg++):
(formatted to isolate the later difference with the 3rd as single option on=
 its
own line)

/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/./prev-gcc/xg++
-B/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/./prev-gcc/
-B/usr/local/powerpc-portbld-freebsd12.0/bin/ -nostdinc++ -B/usr/obj
/portswork/usr/ports/lang/gcc6/work/.build/prev-powerpc-portbld-freebsd12.0=
/libstdc++-v3/src/.libs
-B/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/prev-powerpc-portbld-f=
reebsd12.0/libstdc++-v3/li
bsupc++/.libs  -isystem
/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/prev-powerpc-portbld-fre=
ebsd12.0/libstdc++-v3/include/powerpc-portbld-freebsd12.0
 -isystem /usr/obj/portswork/usr/ports/lang
/gcc6/work/.build/prev-powerpc-portbld-freebsd12.0/libstdc++-v3/include=20
-isystem
/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/libstdc++-v3/libsupc++
-L/usr/obj/portswork/usr/ports/lang/gcc6/
work/.build/prev-powerpc-portbld-freebsd12.0/libstdc++-v3/src/.libs
-L/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/prev-powerpc-portbld-f=
reebsd12.0/libstdc++-v3/libsupc++/.libs
-c   -g -O2
-gtoggle
-DIN_GCC     -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall
-Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute
-Woverloaded-virtual -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings   -DHAVE_CONFIG_H -DGENERATOR_=
FILE
-fno-PIE -I. -Ibuild
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/build
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/../include
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/../libcpp/inclu=
de
-DLIBICONV_PLUG \
        -o build/read-rtl.o
/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/read-rtl.c



The 3rd stage (the 2nd compile by xg++) does not have -gtoggle:
(blank line for the lack of the -gtoggle)

/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/./prev-gcc/xg++
-B/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/./prev-gcc/
-B/usr/local/powerpc-portbld-freebsd12.0/bin/ -nostdinc++ -B/usr/obj
/portswork/usr/ports/lang/gcc6/work/.build/prev-powerpc-portbld-freebsd12.0=
/libstdc++-v3/src/.libs
-B/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/prev-powerpc-portbld-f=
reebsd12.0/libstdc++-v3/li
bsupc++/.libs  -isystem
/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/prev-powerpc-portbld-fre=
ebsd12.0/libstdc++-v3/include/powerpc-portbld-freebsd12.0
 -isystem /usr/obj/portswork/usr/ports/lang
/gcc6/work/.build/prev-powerpc-portbld-freebsd12.0/libstdc++-v3/include=20
-isystem
/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/libstdc++-v3/libsupc++
-L/usr/obj/portswork/usr/ports/lang/gcc6/
work/.build/prev-powerpc-portbld-freebsd12.0/libstdc++-v3/src/.libs
-L/usr/obj/portswork/usr/ports/lang/gcc6/work/.build/prev-powerpc-portbld-f=
reebsd12.0/libstdc++-v3/libsupc++/.libs
-c   -g -O2

-DIN_GCC     -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall
-Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute
-Woverloaded-virtual -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings   -DHAVE_CONFIG_H -DGENERATOR_=
FILE
-fno-PIE -I. -Ibuild
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/build
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/../include
-I/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/../libcpp/inclu=
de
-DLIBICONV_PLUG \
        -o build/read-rtl.o
/usr/obj/portswork/usr/ports/lang/gcc6/work/gcc-6.2.0/gcc/read-rtl.c

-gtoggle is the only difference that I find between the commands.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-214456-543-AgMQGYYL5a>