Expand hackery in post-install target to
make sure that we always end up with same set of
$GCC_TARGET-prefixed files no matter if port is
built for cross target or for native target to be
used as external toolchain.
Details
- Reviewers
bapt linimon emaste imp markmi_dsl-only.net - Group Reviewers
arm64 - Commits
- rP441822: Make sure <arch-gcc> come with consistent content
poudriere testport
Diff Detail
- Repository
- rP FreeBSD ports repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
devel/powerpc64-gcc/Makefile | ||
---|---|---|
70 ↗ | (On Diff #27830) | Err, I'll remove these two |
I built examples based on patching:
$ svnlite info /usr/ports/ | grep "Re[plv]"
Relative URL: ^/head
Repository Root: svn://svn.freebsd.org/ports
Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
Revision: 439263
Last Changed Rev: 439263
with all the builds being from head -r317015 . . .
amd64: built amd64-gcc powerpc64-gcc aarch64-gcc
powerpc64: built powerpc64-gcc
aarch64: built aarch64-gcc
So a mix of self-hosted/native builds and cross builds.
In all cases the builds completed and:
find /usr/local/ -name "*-unknown-freebsd12.0*" -print | sort
looked good for the devel/*-gcc (s) involved.
FYI: prior to this change a self-hosted/native build of
devel/aarch64-gcc or devel/powerpc64-gcc would
fail for not finding 6 files listed in pkg-plist .
devel/arm64-gcc did not list the 6 files there and so
did not install them but the self-hosted/native build
would complete.
I should note that when devel/*-binutils went to
2.28 which failed I reverted to devel/*binutils
-r436731 (2.27) in order for things to work. I still
have that configuration and it was used in the
test builds that I did.
Modern devel/*-binutils might explain some
of -r439595 and the change in this review
might address the packaging issues noted
in -r439959 since it does list the host
doing self-hosted builds for things like
aarch64.
Here are the results from armv6:
[05:51:00] ====>> Built ports: devel/arm-none-eabi-binutils devel/sparc64-binutils devel/aarch64-binutils devel/powerpc64-binutils devel/aarch64-none-elf-binutils devel/mips64-binutils devel/mips-binutils devel/riscv64-binutils devel/aarch64-gcc devel/aarch64-xtoolchain-gcc devel/arm-none-eabi-gcc492 devel/aarch64-none-elf-gcc devel/sparc64-gcc devel/sparc64-xtoolchain-gcc devel/riscv64-gcc devel/riscv64-xtoolchain-gcc devel/mips64-gcc devel/mips-gcc devel/mips64-xtoolchain-gcc devel/mips-xtoolchain-gcc devel/arm-none-eabi-gcc devel/powerpc64-gcc devel/powerpc64-xtoolchain-gcc
[05:51:00] ====>> Failed ports: devel/amd64-gcc:build
[05:51:00] ====>> Skipped ports: devel/amd64-xtoolchain-gcc
The devel/amd64-gcc failure is:
In file included from /wrkdirs/usr/ports/devel/amd64-gcc/work/gcc-6.3.0/gcc/config/i386/driver-i386.c:28:
/wrkdirs/usr/ports/devel/amd64-gcc/work/gcc-6.3.0/gcc/config/i386/cpuid.h:223:3: error: invalid output constraint '=a' in asm
__cpuid (__ext, __eax, __ebx, __ecx, __edx); ^
This is still a lot better than what we have so far.
I am continuing tests on other archs.