Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 19 May 2019 14:40:39 +0000
From:      James Shuriff <james@opentech.cc>
To:        Mark Millard <marklmi@yahoo.com>
Cc:        ports-list freebsd <freebsd-ports@freebsd.org>, "bapt@FreeBSD.org" <bapt@FreeBSD.org>, "jhb@FreeBSD.org" <jhb@FreeBSD.org>
Subject:   RE: maintenance of gcc cross ports
Message-ID:  <BN7PR06MB518758AEC18571D655453F05AA050@BN7PR06MB5187.namprd06.prod.outlook.com>
In-Reply-To: <0BDF4BD8-EF07-4226-A2BA-4ACE476CD6FC@yahoo.com>
References:  <0BDF4BD8-EF07-4226-A2BA-4ACE476CD6FC@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I didn't/don't plan on touching binutils. Binutils is okay. I made new patc=
hes as well. What I'm really concerned with bringing up to date is aarch64-=
none-elf-gcc. The GNU toolchain is unfortunately required for building an A=
arch64 system and is a prereq for a bunch of sysutils arm ports. At worst w=
e can do something like what's done with the lang ports gcc6, gcc7, gcc8. I=
've CC'd the maintainers so hopefully they can give us some input and we ca=
n come up with a solution.

As for Makefile issues, this is only an issue for the arm-none-eabi-gcc and=
 aarch64-none-elf-gcc ports because they have multiple hyphens. It's mostly=
 a cosmetic issue. Each port has its own plist because gcc generates differ=
ent headers depending on the platform so the PLIST TARGETARCH regex doesn't=
 really affect all that much. There are some clang flags dependent on TARGE=
TARCH but whoever wrote the aarch64-none-elf-gcc port must have known it wa=
sn't working in the master because the check is in the bare metal port as w=
ell. The stripping out of all hyphens causes things like "gcc version 6.4.0=
 (FreeBSD Ports Collection for aarch64noneelf)". I use ${PKGNAMEPREFIX:C/-$=
//} for the comment and version and ${PKGNAMEPREFIX:C/-.*//} for TARGETARCH=
. The original regex for all of those is ${PKGNAMEPREFIX:C/-//g} and I'm su=
re you can see how that's a problem when there's multiple hyphens.

- James Shuriff

-----Original Message-----
From: Mark Millard <marklmi@yahoo.com>
Sent: Sunday, May 19, 2019 1:33 AM
To: James Shuriff <james@opentech.cc>; ports-list freebsd <freebsd-ports@fr=
eebsd.org>
Subject: Re: maintenance of gcc cross ports

James Shuriff james at opentech.cc wrote on Sat May 18 12:29:22 UTC 2019 :

> The powerpc64-gcc port and all the ports that use it as a master (aarch64=
-gcc, aarch64-none-elf-gcc, amd64-gcc, arm-none-eabi-gcc, i386-gcc, mips-gc=
c, mips64-gcc, and sparc64-gcc) are very old and use buggy makefiles. I wou=
ld like to take over maintenance of these ports. Powerpc64-gcc uses an old =
version of gcc and the makefile is buggy. Certain variables use bad regular=
 expressions thus don't do what they're supposed to do. I've fixed up the m=
akefiles and made new plists with a newer version of gcc.

Be aware that:

/[ports]/head/base/binutils depends on devel/binutils via:

MASTERDIR=3D${.CURDIR}/../../devel/binutils

/[ports]/head/base/gcc depends on devel/powerpc64-gcc via:

EXTRA_PATCHES+=3D ${.CURDIR}/../../devel/powerpc64-gcc/files/freebsd-format=
-extensions
EXTRA_PATCHES+=3D ${.CURDIR}/../../devel/powerpc64-gcc/files/freebsd-libdir
EXTRA_PATCHES+=3D ${.CURDIR}/../../devel/powerpc64-gcc/files/patch-gcc-free=
bsd-mips

The maintainer is listed as: bapt@FreeBSD.org but the activity tends to be =
jhb@FreeBSD.org . There are other, more overall FreeBSD toolchain efforts t=
hat these various ports are tied to. That may constrain what can be done wh=
en. You would probably need to consult with these folks about any changes.

I use these ports for doing alternate toolchain buildworld buildkernel acti=
vities, including using, say, devel/powerpc64-gcc on a powerpc64 machine to=
 self host with more modern tools than gcc 4.2.1 based ones.
As I understand, being in devel/ instead of lang/ for gcc tools is tied to =
being constructed for the system-building activities instead of for general=
 use.

You might want to show your Makefile updates so that that the problems are =
fully explicit.

=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)

________________________________
 DISCLAIMER: This message and any attachments are intended solely for the u=
se of the recipient and may contain confidential information. If you have r=
eceived this message in error please delete it and promptly notify the send=
er, James Shuriff (james@opentech.cc<mailto:james@opentech.cc>).



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