[Bug 224217] [patch] Fix cross build of base/ ports
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sat Dec 9 22:56:43 UTC 2017
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224217
Bug ID: 224217
Summary: [patch] Fix cross build of base/ ports
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Keywords: patch
Severity: Affects Only Me
Priority: ---
Component: Ports Framework
Assignee: portmgr at FreeBSD.org
Reporter: nwhitehorn at FreeBSD.org
CC: freebsd-ports-bugs at FreeBSD.org
Keywords: patch
Created attachment 188675
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=188675&action=edit
Fixes
The attached patch fixes the build of the base/ ports and ports-mgmt/pkg via
cross-build on systems without QEMU userland support.
It does the following:
- Set C*_FOR_BUILD variables that various GNU tools need for their native
compiler in autoconf.
- Set CPPFLAGS to include the sysroot flags so that code using the preprocessor
by itself also gets the right headers. This fixes GCC's autoconf checks that
override autoconf's AC_GET_HEADER macros to use cpp directly rather than the
compiler.
- Have a cross-built pkg(8) use the native system pkg to package itself rather
than the new cross-built pkg, which of course is not executable.
- Upgrade GCC to 6.3 from 5.4
- Change the vendor tag on base/gcc from portbld to unknown to fix some
brokenness in its internal build system and match the cross-compiler installed
by e.g. powerpc64-gcc.
- Repair GCC's build system to pass CPPFLAGS around correctly and avoid
conflation of host and build CPPFLAGS, which we require as a result of GCC's
broken non-inclusion of -isystem =/usr/include by default unless a cross root
is present when building the cross-compiler.
- Repair GCC's build system to set proper C*FLAGS for native tool builds.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the freebsd-ports-bugs
mailing list