Bug 252281

Summary: devel/aarch64-none-elf-binutils: duplicates devel/binutils' origin when using portupgrade
Product: Ports & Packages Reporter: pcc <pcc>
Component: Individual Port(s)Assignee: Dmitry Marakasov <amdmi3>
Status: Closed Not A Bug    
Severity: Affects Only Me    
Priority: ---    
Version: Latest   
Hardware: amd64   
OS: Any   

Description pcc 2020-12-30 07:50:33 UTC
G'day, folks,

As-is, and since a good while back (months? ever?), devel/aarch64-none-elf-binutils duplicates the origin of devel/binutils so that e. g. portupgrade complains just that. I. e., with portupgrade, build and install work exactly once but never thereafter until I remove devel/aarch64-none-elf-binutils to start anew.
I gather, though, that multiple *binutils ports should be present if one wanted to cross-build for another architecture (as I did for my RPI48GB. Btw., thanks for that!).

Without too much recent knowledge of ports, I naively tried to move the build directory to have a distinct orgin ...

8c8
< MMASTERDIR=   ${.CURDIR}/../binutils
---
> MASTERDIR=    ${.CURDIR}/../binutils
10c10
< .include "${MMASTERDIR}/Makefile"
---
> .include "${MASTERDIR}/Makefile"

... and symlinked some of the ports files to see what happens ...

( cd /usr/ports/devel/aarch64-none-elf-binutils/ && ln -s ../binutils/pkg-descr . )
( cd /usr/ports/devel/aarch64-none-elf-binutils/ && ln -s ../binutils/distinfo . )

... (hoping for the pkg-plist present in devel/aarch64-none-elf-binutils to be the correct one) but this eventually fails creating a package.

Comparing with other ports (www/nginx*, to be more specific), I currently guess that the MASTERDIR mechanism was inherited with _alternative_ ports in mind (or changed such at some stage) which would be different here -- but the Ports Makefile magic beats me today.

So, until I learn more, here's my request to The Knowing for a glance, some help, and maybe a fix.

Thanks a lot, and

All the best,

Peter.

---

[1] Possibly related (???): https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=250035
Comment 1 pcc 2020-12-30 14:33:24 UTC
G'day,

Amending platform info, just in case:

FreeBSD walkabout 12.2-STABLE FreeBSD 12.2-STABLE r368123 GENERIC  amd64

And selected options:

# This file is auto-generated by 'make config'.
# Options for aarch64-none-elf-binutils-2.33.1_4,1
_OPTIONS_READ=aarch64-none-elf-binutils-2.33.1_4,1
_FILE_COMPLETE_OPTIONS_LIST=NLS RELRO STATIC
OPTIONS_FILE_SET+=NLS
OPTIONS_FILE_UNSET+=RELRO
OPTIONS_FILE_UNSET+=STATIC

Cheers,

Peter.
Comment 2 Dmitry Marakasov freebsd_committer 2021-03-09 15:45:24 UTC
There's no devel/aarch64-none-elf-binutils since 2019:

https://svnweb.freebsd.org/ports?view=revision&revision=517642