Bug 230199

Summary: devel/arm-none-eabi-gcc: Fails to package without IPFILTER (netinet/ip_*.h:No such file or directory)
Product: Ports & Packages Reporter: rozhuk.im
Component: Individual Port(s)Assignee: Emmanuel Vadot <manu>
Status: Closed FIXED    
Severity: Affects Some People CC: 0mp, bsd, jhb, kan, lwhsu, rakuco, rozhuk.im
Priority: --- Keywords: needs-patch, needs-qa
Version: LatestFlags: koobs: maintainer-feedback+
rozhuk.im: maintainer-feedback-
koobs: merge-quarterly?
Hardware: Any   
OS: Any   
Attachments:
Description Flags
update plist
rozhuk.im: maintainer-approval?
src.conf none

Description rozhuk.im 2018-07-30 21:09:53 UTC
Created attachment 195657 [details]
update plist

There is no more lib/gcc/%%GCC_TARGET%%/%%GCC_VERSION%%/include-fixed/netinet/ dir with files.
Comment 1 Rene Ladan freebsd_committer 2019-04-07 10:18:07 UTC
Maintainer reset.
Comment 2 Raphael Kubo da Costa freebsd_committer 2019-11-04 09:36:44 UTC
Is this still necessary? I've just tried building the port with "poudriere bulk -t" and everything passed.
Comment 3 rozhuk.im 2019-11-04 09:59:40 UTC
(In reply to Raphael Kubo da Costa from comment #2)
Yes, for me
make package
...
====> Compressing man pages (compress-man)
===>  Building package for arm-none-eabi-gcc-6.4.0_7
pkg-static: Unable to access file /tmp/ports/usr/ports/devel/arm-none-eabi-gcc/work/stage/usr/local/lib/gcc/arm-none-eabi/6.4.0/include-fixed/netinet/ip_fil.h:No such file or directory
pkg-static: Unable to access file /tmp/ports/usr/ports/devel/arm-none-eabi-gcc/work/stage/usr/local/lib/gcc/arm-none-eabi/6.4.0/include-fixed/netinet/ip_lookup.h:No such file or directory
pkg-static: Unable to access file /tmp/ports/usr/ports/devel/arm-none-eabi-gcc/work/stage/usr/local/lib/gcc/arm-none-eabi/6.4.0/include-fixed/netinet/ip_nat.h:No such file or directory
pkg-static: Unable to access file /tmp/ports/usr/ports/devel/arm-none-eabi-gcc/work/stage/usr/local/lib/gcc/arm-none-eabi/6.4.0/include-fixed/netinet/ip_proxy.h:No such file or directory
pkg-static: Unable to access file /tmp/ports/usr/ports/devel/arm-none-eabi-gcc/work/stage/usr/local/lib/gcc/arm-none-eabi/6.4.0/include-fixed/netinet/ip_scan.h:No such file or directory
pkg-static: Unable to access file /tmp/ports/usr/ports/devel/arm-none-eabi-gcc/work/stage/usr/local/lib/gcc/arm-none-eabi/6.4.0/include-fixed/netinet/ip_state.h:No such file or directory
*** Error code 1
Comment 4 Raphael Kubo da Costa freebsd_committer 2019-11-04 10:22:25 UTC
Is the machine/jail you're building this port on built without ipfilter support?
Comment 5 rozhuk.im 2019-11-04 16:51:17 UTC
Yes, I remove many things: http://www.netlab.linkpc.net/download/software/os_cfg/FBSD/12.0/base/etc/src.conf
Comment 6 Raphael Kubo da Costa freebsd_committer 2019-11-04 16:55:40 UTC
OK, that explains it, as those headers are retrieved from the system building the port.

+jhb who did some work on these ports recently for input.
Comment 7 John Baldwin freebsd_committer freebsd_triage 2019-11-04 17:06:33 UTC
I'm really trying to only focus on the GCC ports for an external base system toolchain (and those ports rm -rf include-fixed which sidesteps this issue).  Someone could fix this by checking for these headers in /usr/include and setting a PLIST_SUB.  Supporting all the various WITHOUT_* options might be a bit much though.  I wonder if lang/gcc* suffer from the same issue?  If they just rm -rf all of include-fixed as well, perhaps these two ports (the aarch64 one as well) should just be doing that.
Comment 8 Alexander Kabaev freebsd_committer 2019-12-16 00:30:22 UTC
I am not the ports committer anymore and eabi was never on the list of port I supported. being dependent on xtoolchain port does not make me the ports maintainer. Chances are this has been fixed since anyway.
Comment 9 Kubilay Kocak freebsd_committer freebsd_triage 2019-12-16 00:40:36 UTC
Does this patch pass QA on systems *with* IPFILTER?

This patch (plist entries) appears to need to be scoped/limited to systems without IPFILTER (comment 7)

@Rozhuk Could you please include src.conf from comment 5 as an attachment please

@All This port has no maintainer, so this issue needs an Assignee to progress

^Triage: 

- (Ex) maintainer *feedback* (not approval) was provided -> +
- Affects some people: Appears to be scoped to users without pfilter support
Comment 10 rozhuk.im 2019-12-16 03:47:41 UTC
Created attachment 209987 [details]
src.conf
Comment 11 rozhuk.im 2020-04-16 07:59:00 UTC
maintainer timeout
Comment 12 bsd 2020-04-16 08:39:26 UTC
Just a side note - devel/aarch64-none-elf-gcc port requires exactly the same patch in order to work under the same circumstances. This issue is long lasting, I did minimum three updates on this port (and aarch64 one as well) with proposed patch.
Comment 13 Li-Wen Hsu freebsd_committer 2020-06-16 22:03:55 UTC
Over to maintainer.
Comment 14 Emmanuel Vadot freebsd_committer 2020-06-19 14:32:35 UTC
The patch isn't good for me.
We would need to check in the Makefile which options are in src.conf and do some PLIST_SUB magic.
1/ I don't know how to do that
2/ Not sure that this is something that we want to do for every port and every possible options
Comment 15 Emmanuel Vadot freebsd_committer 2020-06-19 15:28:49 UTC
So it seems that it's only used for building newlib (but I'm not 100% sure about that).
I'll commit a patch that do that the base/gcc port do, a simple rm -rf include-fixed and we'll see if anyone complain.
Comment 16 commit-hook freebsd_committer 2020-06-27 14:39:42 UTC
A commit references this bug:

Author: manu
Date: Sat Jun 27 14:39:14 UTC 2020
New revision: 540609
URL: https://svnweb.freebsd.org/changeset/ports/540609

Log:
  aarch64-none-elf-gcc: Remove the include-fixed directory

  Those includes are, afaict, useless and cause problems if one build from a
  custom FreeBSD without IPFILTER.
  Do what the other gcc packages do and simply remove them.

  PR:		230199 239210

Changes:
  head/devel/aarch64-none-elf-gcc/Makefile
  head/devel/aarch64-none-elf-gcc/pkg-plist
  head/devel/arm-none-eabi-gcc/pkg-plist
  head/devel/riscv32-unknown-elf-gcc/pkg-plist
  head/devel/riscv64-none-elf-gcc/pkg-plist