Date: Thu, 28 Apr 2016 15:58:12 -0700 From: Mark Millard <markmi@dsl-only.net> To: Steve Wills <swills@FreeBSD.org> Cc: FreeBSD PowerPC ML <freebsd-ppc@freebsd.org> Subject: Re: port's svn commit: r413746 - in head "many ports: mark broken on powerpc64": for what toolchains? Message-ID: <92808382-E164-479D-BF9E-16B59192B7BA@dsl-only.net> In-Reply-To: <572280F5.7020202@FreeBSD.org> References: <34C0599F-044B-46ED-AF60-0F0E98876E2F@dsl-only.net> <571C0297.3050801@FreeBSD.org> <28FDFFB4-02CC-40CB-ACAC-828BA8E71A37@dsl-only.net> <00621189-D577-4E3F-8BAB-4B315B690209@dsl-only.net> <571CC2F2.2060601@FreeBSD.org> <F7E6ED93-A73D-406D-A7BF-B1B80C61871F@dsl-only.net> <571D0146.5060200@FreeBSD.org> <572216FD.9030700@FreeBSD.org> <1ABC33D7-86DB-4CA7-BA48-A995AB6DEA7C@dsl-only.net> <423516E1-02AA-49DE-AE30-6DF7418C50C4@dsl-only.net> <572280F5.7020202@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Now that I can look at your log (gcc6-devel-6.0.0.s20160320.log) we have = a WITH_LIB32=3D vs. WITHOUT_LIB32=3D difference (potential differences = was one of the reasons I early on included my src.conf content such = such): In your gcc6-devel-6.0.0.s20160320.log .libs/close.o without -m32 (so 64 = bit) built fine but with -m32 did not. Would disabling lib32 support for powerpc64 be better than the = completely-BROKEN classification? Background notes for why I omit lib32 support: My buildworld's and builds of gcc*'s do not include lib32 because, while = a devel/powerpc64-gcc (xtoolchain) based buildworld for WITH_LIB32=3D = produces a lib32, the lib32 context does not work when used. This is due = to crtbeginS code problems related to R30 use (bad address in R30 = dereferenced). (Native builds and cross builds from amd64 both produce = the bad code.) I have not figured out why the crtbeginS code produced by = devel\powerpc64-gcc is as it is --or how to control that code to be what = FreeBSD needs for lib32 use. Until I figure that out I normally use WITHOUT_LIB32=3D in my src.conf = and I always build powerpc64 lang/gcc*'s without lib32 support. Your lib32 context seems to have trouble finding = declarations/definitions from headers, such as for strdup and free. = Quoting the .libs/close.o related error messages for when -m32 is = involved: > ../../.././../gcc-6-20160320/libgfortran/io/close.c: In function = 'st_close': > ../../.././../gcc-6-20160320/libgfortran/io/close.c:75:11: error: = implicit declaration of function 'strdup' = [-Werror=3Dimplicit-function-declaration] > path =3D strdup (u->filename); > ^~~~~~ > ../../.././../gcc-6-20160320/libgfortran/io/close.c:75:11: warning: = incompatible implicit declaration of built-in function 'strdup' > ../../.././../gcc-6-20160320/libgfortran/io/close.c:85:15: warning: = incompatible implicit declaration of built-in function 'strdup' > path =3D strdup (u->filename); > ^~~~~~ > ../../.././../gcc-6-20160320/libgfortran/io/close.c:96:4: error: = implicit declaration of function 'free' = [-Werror=3Dimplicit-function-declaration] > free (path); > ^~~~ > ../../.././../gcc-6-20160320/libgfortran/io/close.c:96:4: warning: = incompatible implicit declaration of built-in function 'free' > ../../.././../gcc-6-20160320/libgfortran/io/close.c:96:4: note: = include '<stdlib.h>' or provide a declaration of 'free' > cc1: some warnings being treated as errors =3D=3D=3D Mark Millard markmi at dsl-only.net On 2016-Apr-28, at 2:30 PM, Steve Wills <swills@FreeBSD.org> wrote: On 04/28/16 01:52 PM, Mark Millard wrote: >=20 > Just FYI in case gcc49 is also of a different vintage vs. what I used: >=20 >> # pkg info 'gcc*' >> gcc49-4.9.4.s20160406 >> gcc6-devel-6.0.1.s20160421 >=20 > (I still have no access to the log file via the URL.) >=20 The gcc49 is gcc49-4.9.4.s20160210, though I think the version of gcc6-devel is more relevant. Host is back up now. Steve
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?92808382-E164-479D-BF9E-16B59192B7BA>