While here, make the port autonomuous (not a slave port of devel/binutils
anymore)
The only dependency this port is keeping with devel/binutils is sharing the
patch directory to avoid duplication.
- Don't require CROSS_TOOLCHAIN and CROSS_SYSROOT for base/binutils.
- Fix some places in devel/binutils to test the PREFIX instead of
CROSS_TOOLCHAIN to determine if base/binutils is being built.
- When base/binutils is built natively, the binaries are installed
with the target name prefix already.
Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D19128
Simplify some ports where DragonFlyBSD no longer needs to be special-cased.
Submitted by: rene
Reviewed by: bapt, jbeich
Differential Revision: https://reviews.freebsd.org/D17724
- Use BUREMOVE to strip binutils tools not installed by the base/binutils
package.
- Update BUREMOVE logic in devel/binutils to cope with the base package
which installs tools without a BUTARGET- prefix.
- Use MANPREFIX for BUREMOVE to handle the PREFIX=/usr case used by
base/binutils.
- Remove binutils headers and libraries explicitly from the staging area
for base/binutils.
- Add missing plist entries for binutils binaries installed under a
BUTARGET subdirectory.
- Drop plist entries from devel/binutils that are now properly removed.
Previously the binaries for Windows tools like dlltool were removed
from the staging area but the manpages were still left in the package.
- Bump PORTREVISION.
This is a recommit of r476186 but with the update to the pkg-plist of
devel/binutils and PORTREVISION bump.
PR: 230278
Reviewed by: antoine
Differential Revision: https://reviews.freebsd.org/D16582
- Use BUREMOVE to strip binutils tools not installed by the base/binutils
package.
- Update BUREMOVE logic in devel/binutils to cope with the base package
which installs tools without a BUTARGET- prefix.
- Use MANPREFIX for BUREMOVE to handle the PREFIX=/usr case used by
base/binutils.
- Remove binutils headers and libraries explicitly from the staging area
for base/binutils.
- Add missing plist entries for binutils binaries installed under a
BUTARGET subdirectory.
Approved by: bapt (implicit for base/*)
Differential Revision: https://reviews.freebsd.org/D16464
- To support amd64, map amd64 to x86_64 when generating the --host argument
to configure in bsd.port.mk and when generating --target arguments in port
Makefiles.
- Add entries to the plists for i386 and amd64. amd64 generally includes both
amd64-specific entries as well as i386 entries.
- Don't include the builtin float.h for i386 and amd64.
Reviewed by: bapt
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D16250
Create a single pkg-plist that uses arch-specific PLIST_SUBs to control
arch-specific linker scripts but is otherwise machine-independent.
- Only include objcopy for OS versions older than 11.0 (11.0 uses the
elftoolchain elfcopy as objcopy in the base system)
- Use %%BUTARGET%% throughout. This probably fixes the sparc64 pkg-plist
which was not updated when BUTARGET started including OSREL. This also
avoids hardcoding an OSREL of 12.0 for powerpc64.
- Enable MIPS ldscripts for all MIPS architectures which probably fixes
this port on mips64 and mipsn32.
- Enable PowerPC ldscripts for all PowerPC architectures which probably
fixes this port on powerpc.
Reviewed by: bapt, bdrewery
- When cross-building packages, set ARCH to the target arch instead of
the arch of the build host. This fixes bsd.ssp.mk on MIPS which was
trying to enable SSP on MIPS cross-built packages because the host
ARCH was amd64. A new HOST_ARCH variable is added to set the
--build triple for configure scripts, but I believe most other uses of
ARCH in ports are really about the target, not the build host so this
is the more correct general direction.
- Some updates to base/binutils and base/gcc to use ARCH as the target
architecture.
- Drop the extra arguments to GCC to set include and library paths and
only set --sysroot.
- Move the --sysroot flags into CC, CXX, CPP (which is now set to XCPP)
and LD instead of passing it in CFLAGS, etc. The base/gcc build uses
ends up using the CFLAGS when building native binaries for the build
host which fails when tripping over the --sysroot. I think this might
have accidentally worked before because the powerpc64 headers in
/usr/include/machine were "close enough" to the amd64 headers, but with
32-bit MIPS this failed hard.
- Add the GCC MIPS patch from devel/powerpc64-gcc to base/gcc to add
MIPS support to base/gcc.
- Add a MIPS plist for base/binutils.
- Set helper variables for the base/gcc plist to tag architecture-specific
headers (e.g. for intrinsincs) and use these to tag powerpc and MIPS
specific headers.
- Drop the include-fixed headers from base/gcc.
- Strip /usr/local/include from the default list of include paths for
base/gcc.
- Use libc++'s include path for C++ for base/gcc.
Reviewed by: bapt
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D15267
This is a follow up to r461057 and fixes base/binutils and base/gcc in my
testing.
PR: 224217
Submitted by: nwhitehorn (partially, I made additional changes)
Reviewed by: bapt
Add a cross buildable binutils package.
The new category is not linked to the regular ports tree to avoid make install,
poudriere and others to catch it automagically
instead of ending with a very complex file removal in the stage, prefer to use
specific plist per arch.
For now only sparc64 tested and added. This version of binutils is stipped down
only the components that are not supported by elftoolchain