Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 18 Mar 2015 14:32:21 +0000
From:      Brooks Davis <brooks@freebsd.org>
To:        Mark Millard <markmi@dsl-only.net>
Cc:        freebsd-toolchain@freebsd.org, freebsd-ports@freebsd.org, FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>
Subject:   Re: powerpc64 11.0-CURRENT portmaster lang/clang36 gets error: llvm-build: error: invalid native target: 'powerpc64' (not in project)
Message-ID:  <20150318143221.GB52442@spindle.one-eyed-alien.net>
In-Reply-To: <1E76AC30-BCB1-4FEE-8FA5-5EECF1F757E8@dsl-only.net>
References:  <9682273F-8B85-4351-AB2B-011240D40327@dsl-only.net> <160E2B60-047A-4E5B-A258-334155CDEC0B@dsl-only.net> <1E76AC30-BCB1-4FEE-8FA5-5EECF1F757E8@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--WIyZ46R2i8wDzkSu
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

It appears that I added powerpc64 (and several others) to the
devel/llvm* ports version of this patch, but didn't do it for
lang/clang*.  I'll sync them up.

-- Brooks

On Tue, Mar 17, 2015 at 08:02:47PM -0700, Mark Millard wrote:
> patch-utils_llvm-build_llvmbuild_main.py is missing a powerpc64 entry, su=
ch as illustrated below.
>=20
> $ svnlite diff /usr/ports/lang/clang36
> Index: /usr/ports/lang/clang36/files/patch-utils_llvm-build_llvmbuild_mai=
n.py
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> --- /usr/ports/lang/clang36/files/patch-utils_llvm-build_llvmbuild_main.p=
y	(revision 381120)
> +++ /usr/ports/lang/clang36/files/patch-utils_llvm-build_llvmbuild_main.p=
y	(working copy)
> @@ -3,7 +3,7 @@
> =20
>  --- utils/llvm-build/llvmbuild/main.py.orig
>  +++ utils/llvm-build/llvmbuild/main.py
> -@@ -633,7 +633,13 @@
> +@@ -633,7 +633,14 @@
>  =20
>       # We handle a few special cases of target names here for historical
>       # reasons, as these are the names configure currently comes up with.
> @@ -13,6 +13,7 @@
>  +			   'i386' : 'X86',
>  +			   'mips' : 'Mips',
>  +			   'powerpc' : 'PowerPC',
> ++			   'powerpc64' : 'PowerPC',
>  +			   'sparc64' : 'Sparc',
>  +                           'x86' : 'X86',
>                              'x86_64' : 'X86',
>=20
>=20
> =3D=3D=3D
> Mark Millard
> markmi at dsl-only.net
>=20
> On 2015-Mar-16, at 11:00 PM, Mark Millard <markmi at dsl-only.net> wrote:
>=20
> The 2 powerpc (non-64) build attempts for clang 3.6 did not get this prob=
lem.
>=20
> So this specific problem is powerpc64 specific.
>=20
> Bootstrapping powerpc (non-64) clang 3.6 via gcc 4.8.4 (the current lang/=
gcc) works fine. (In absence of any c++ port lang/clang36 automatically ins=
talled lang/gcc (currently gcc 4.8.4) in order to bootstrap itself.)
>=20
> Bootstrapping powerpc (non-64) clang 3.6 via gcc5 (by having lang/gcc5 al=
ready installed first) still reports an error for not declaring ::sscanf, j=
ust like powerpc64 based on gcc5 for bootstrapping did.
>=20
> (This might be llvm/clang making use of only <cstdio> where an include of=
 <stdio.h> would be required to be involved in order to guarantee the :: (g=
lobal) declaration/definition. The way the C++ standard (all vintages) is w=
ritten gcc 4.8.4 and gcc5 could be this different and both be valid/conform=
ing.)
>=20
>=20
> =3D=3D=3D
> Mark Millard
> markmi at dsl-only.net
>=20
> On 2015-Mar-16, at 05:04 PM, Mark Millard <markmi at dsl-only.net> wrote:
>=20
> Basic context (more context details listed later):
>=20
> # freebsd-version -ku; uname -ap
> 11.0-CURRENT
> 11.0-CURRENT
> FreeBSD FBSDG5C0 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r279514M: Wed Mar 1=
1 19:23:14 PDT 2015     root@FBSDG4C0:/usr/obj/powerpc.powerpc64/usr/srcC/s=
ys/GENERIC64vtsc-NODEBUG  powerpc powerpc64
>=20
>=20
> The problem:
>=20
> portmaster -tDK --no-confirm lang/clang36 is how I started the build.
>=20
> The error report was after it reported entering the directory:
>=20
> /usr/obj/portswork/usr/ports/lang/clang36/work/llvm-3.6.0.src/tools/clang=
/lib/Driver/
>=20
> The report was:
>=20
> llvm-build: error: invalid native target: 'powerpc64' (not in project)
>=20
>=20
> I'd be surprised if 11.0-CURRENT vs. 10.1-STABLE matters. But powerpc64 l=
ikely does. I've not yet tried from a powerpc (non-64) FreeBSD build.
>=20
> I'll note that with top -PaSCHopid I watched it compile the PowerPc code =
generator software: it shoudl be able to handle PowerPCs fine.
>=20
> My guess is a conversion of naming conventions is required someplace:
>=20
> FreeBSD using powerpc64 vs. clang using ppc64. (Big endian context.)
>=20
> This likely would matter for little endian naming as well (ppc64le on the=
 clang end of things I expect).=20
>=20
>=20
>=20
>=20
> Context details:
>=20
> # svnlite info /usr/ports/lang/clang36
> Path: lang/clang36
> Working Copy Root Path: /usr/ports
> URL: https://svn0.us-west.freebsd.org/ports/head/lang/clang36
> Relative URL: ^/head/lang/clang36
> Repository Root: https://svn0.us-west.freebsd.org/ports
> Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
> Revision: 381120
> Node Kind: directory
> Schedule: normal
> Last Changed Author: brooks
> Last Changed Rev: 380295
> Last Changed Date: 2015-03-02 12:21:38 -0800 (Mon, 02 Mar 2015)
>=20
> It used gcc5 to bootstrap as there was no clang present and that is the o=
nly gcc port installed:
>=20
> # svnlite info /usr/ports/lang/gcc5
> Path: lang/gcc5
> Working Copy Root Path: /usr/ports
> URL: https://svn0.us-west.freebsd.org/ports/head/lang/gcc5
> Relative URL: ^/head/lang/gcc5
> Repository Root: https://svn0.us-west.freebsd.org/ports
> Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
> Revision: 381120
> Node Kind: directory
> Schedule: normal
> Last Changed Author: gerald
> Last Changed Rev: 380943
> Last Changed Date: 2015-03-10 10:00:25 -0700 (Tue, 10 Mar 2015)
>=20
> # more /etc/make.conf
> #CPP=3Dclang-cpp
> #CC=3Dclang
> #CXX=3Dclang++
> WRKDIRPREFIX=3D/usr/obj/portswork
> #WITH_DEBUG=3D
> MALLOC_PRODUCTION=3D
>=20
>=20
> =3D=3D=3D
> Mark Millard
> markmi at dsl-only.net
>=20
>=20
>=20
> _______________________________________________
> freebsd-toolchain@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
> To unsubscribe, send any mail to "freebsd-toolchain-unsubscribe@freebsd.o=
rg"
>=20

--WIyZ46R2i8wDzkSu
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iEYEARECAAYFAlUJjHQACgkQXY6L6fI4GtSBuwCgsvPnavBdg0zrxEjKlle3mLjw
qJMAoMAG5rw0I1GC/NbyzA7D23VR17Ju
=fGr3
-----END PGP SIGNATURE-----

--WIyZ46R2i8wDzkSu--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150318143221.GB52442>