I didn't/don't plan on touching binutils. Binutils is okay. I made new patches 
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 Aarch64 system and is a prereq for a bunch of sysutils arm ports. At worst 
we 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 can 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 different 
headers depending on the platform so the PLIST TARGETARCH regex doesn't really 
affect all that much. There are some clang flags dependent on TARGETARCH but 
whoever wrote the aarch64-none-elf-gcc port must have known it wasn't working 
in the master because the check is in the bare metal port as well. 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 sure you can see how 
that's a problem when there's multiple hyphens.

- James Shuriff

-----Original Message-----
From: Mark Millard <mark...@yahoo.com>
Sent: Sunday, May 19, 2019 1:33 AM
To: James Shuriff <ja...@opentech.cc>; ports-list freebsd 
<freebsd-ports@freebsd.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-gcc, mips64-gcc, and sparc64-gcc) are very old and use buggy makefiles. 
> I would 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 makefiles and made new plists with a newer version of gcc.

Be aware that:

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

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

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

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

The maintainer is listed as: b...@freebsd.org but the activity tends to be 
j...@freebsd.org . There are other, more overall FreeBSD toolchain efforts that 
these various ports are tied to. That may constrain what can be done when. You 
would probably need to consult with these folks about any changes.

I use these ports for doing alternate toolchain buildworld buildkernel 
activities, 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.

===
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 use 
of the recipient and may contain confidential information. If you have received 
this message in error please delete it and promptly notify the sender, James 
Shuriff (ja...@opentech.cc<mailto:ja...@opentech.cc>).
_______________________________________________
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to