#
d0b2dbfa |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: one-line sh pattern Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
|
#
bca92be6 |
|
04-Feb-2022 |
John Baldwin <jhb@FreeBSD.org> |
Remove more quotes around Makefile .error/.warn/.info strings. Reviewed by: imp, emaste Differential Revision: https://reviews.freebsd.org/D34175
|
#
81ec547f |
|
04-Jan-2022 |
Warner Losh <imp@FreeBSD.org> |
bsd.endian.mk: Allow for the cross building case We need to include bsd.endian.mk from bsd.compiler.mk to enable compressed symbols only on FreeBSD little endian targets. However, since we include bsd.compiler.mk from Makefile.inc1 and from the build tools makefiles, it has to work on Linux and osx. Make the error condition only when we're building natively (so that we are forced to add a new architecture to the list). Otherwise, define bogus, poisoned values and leave TARGET_ENDIANNESS undefined. Since we don't actually use TARGET_ENDIANNESS for anything in the cross building phase, these values are a failsafe agianst their use. The one place in the build phase that detects endian is appropriately protected. Sponsored by: Netflix Reviewed by: jrtc27 Differential Revision: https://reviews.freebsd.org/D33742
|
#
d373e61e |
|
04-Jan-2022 |
Warner Losh <imp@FreeBSD.org> |
bsd.endian.mk: Sort architecture list Sort arm alphabetically. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D33744 Sponsored by: Netflix
|
#
ad0a6546 |
|
01-Jan-2022 |
Warner Losh <imp@FreeBSD.org> |
bsd.endian.mk: Remove arm big endian Remove vestiges of arm big endian support. Also use the more proper MACHINE_CPUARCH instead of MACHINE to test for that here. This leaves powerpc as the only big endian arch. Sponsored by: Netflix
|
#
57707553 |
|
01-Jan-2022 |
Warner Losh <imp@FreeBSD.org> |
bsd.endian.mk: Remove mips Remove the enumeration of the big vs little endian platform names. Sponsored by: Netflix
|
#
b75abea4 |
|
22-Sep-2020 |
Brandon Bergren <bdragon@FreeBSD.org> |
[PowerPC64LE] Set up powerpc.powerpc64le architecture This is the initial set up for PowerPC64LE. The current plan is for this arch to remain experimental for FreeBSD 13. This started as a weekend learning project for me and kinda snowballed from there. (More to follow momentarily.) Reviewed by: imp (earlier version), emaste Sponsored by: Tag1 Consulting, Inc. Differential Revision: https://reviews.freebsd.org/D26399
|
#
2a6803de |
|
14-Sep-2020 |
Andrew Turner <andrew@FreeBSD.org> |
Use MACHINE_CPUARCH when checking for arm64 Use MACHINE_CPUARCH with arm64 (aarch64) when we build code that could run on any 64-bit Arm instruction set. This will simplify checks in downstream consumers targeting prototype instruction sets. The only place we check for MACHINE_ARCH == aarch64 is when building the device tree blobs. As these are targeting current generation ISAs. Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D26370
|
#
47e9f42e |
|
26-Feb-2020 |
Warner Losh <imp@FreeBSD.org> |
Remove sparc64 specific buid-system hacks Remove all the sparc64 hacks and tweaks to the build system. We don't need them anymore.
|
#
4644f9be |
|
20-Oct-2018 |
Yuri Pankov <yuripv@FreeBSD.org> |
Add -b/-l options to localedef(1) to specify output endianness and use it appropriately when building share/ctypedef and share/colldef. This makes the resulting locale data in EL->EB (amd64->powerpc64) cross build and in the native EB build match. Revert the changes done to libc in r308170 as they are no longer needed. PR: 231965 Reviewed by: bapt, emaste, sbruno, 0mp Approved by: kib (mentor) Differential Revision: https://reviews.freebsd.org/D17603
|
#
f59e5352 |
|
28-Jun-2018 |
Brad Davis <brd@FreeBSD.org> |
Simplify using bsd.endian.mk and have it provide CAP_MKDB_ENDIAN, since it is the most common usage. Approved by: bapt (mentor)
|
#
5bca2215 |
|
31-Oct-2016 |
Ruslan Bukin <br@FreeBSD.org> |
Add full softfloat and hardfloat support for MIPS. This adds new target architectures for hardfloat: mipselhf mipshf mips64elhf mips64hf. Tested in QEMU only. Sponsored by: DARPA, AFRL Sponsored by: HEIF5 Differential Revision: https://reviews.freebsd.org/D8376
|
#
dc9b124d |
|
21-Oct-2016 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Create a new MACHINE_ARCH for Freescale PowerPC e500v2 Summary: The Freescale e500v2 PowerPC core does not use a standard FPU. Instead, it uses a Signal Processing Engine (SPE)--a DSP-style vector processor unit, which doubles as a FPU. The PowerPC SPE ABI is incompatible with the stock powerpc ABI, so a new MACHINE_ARCH was created to deal with this. Additionaly, the SPE opcodes overlap with Altivec, so these are mutually exclusive. Taking advantage of this fact, a new file, powerpc/booke/spe.c, was created with the same function set as in powerpc/powerpc/altivec.c, so it becomes effectively a drop-in replacement. setjmp/longjmp were modified to save the upper 32-bits of the now-64-bit GPRs (upper 32-bits are only accessible by the SPE). Note: This does _not_ support the SPE in the e500v1, as the e500v1 SPE does not support double-precision floating point. Also, without a new MACHINE_ARCH it would be impossible to provide binary packages which utilize the SPE. Additionally, no work has been done to support ports, work is needed for this. This also means no newer gcc can yet be used. However, gcc's powerpc support has been refactored which would make adding a powerpcspe-freebsd target very easy. Test Plan: This was lightly tested on a RouterBoard RB800 and an AmigaOne A1222 (P1022-based) board, compiled against the new ABI. Base system utilities (/bin/sh, /bin/ls, etc) still function appropriately, the system is able to boot multiuser. Reviewed By: bdrewery, imp Relnotes: yes Differential Revision: https://reviews.freebsd.org/D5683
|
#
1fdcc5e5 |
|
11-Dec-2015 |
Ruslan Bukin <br@FreeBSD.org> |
Start support for the RISC-V 64-bit architecture developed by UC Berkeley. RISC-V is a new ISA designed to support computer research and education, and is now become a standard open architecture for industry implementations. This is a minimal set of changes required to run 'make kernel-toolchain' using external (GNU) toolchain. The FreeBSD/RISC-V project home: https://wiki.freebsd.org/riscv. Reviewed by: andrew, bdrewery, emaste, imp Sponsored by: DARPA, AFRL Sponsored by: HEIF5 Differential Revision: https://reviews.freebsd.org/D4445
|
#
8daa8167 |
|
19-Mar-2015 |
Andrew Turner <andrew@FreeBSD.org> |
Start to import support for the AArch64 architecture from ARM. This change only adds support for kernel-toolchain, however it is expected further changes to add kernel and userland support will be committed as they are reviewed. As our copy of binutils is too old the devel/aarch64-binutils port needs to be installed to pull in a linker. To build either TARGET needs to be set to arm64, or TARGET_ARCH set to aarch64. The latter is set so uname -p will return aarch64 as existing third party software expects this. Differential Revision: https://reviews.freebsd.org/D2005 Relnotes: Yes Sponsored by: The FreeBSD Foundation
|
#
66c5f84b |
|
01-Oct-2014 |
Andrew Turner <andrew@FreeBSD.org> |
Clean up detection of big-endian ARM. In all cases we follow the pattern arm*eb*. Check we are building for arm and if MACHINE_ARCH follows this pattern.
|
#
e7d939bd |
|
06-Jul-2014 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Remove ia64. This includes: o All directories named *ia64* o All files named *ia64* o All ia64-specific code guarded by __ia64__ o All ia64-specific makefile logic o Mention of ia64 in comments and documentation This excludes: o Everything under contrib/ o Everything under crypto/ o sys/xen/interface o sys/sys/elf_common.h Discussed at: BSDcan
|
#
73279d41 |
|
22-Mar-2014 |
Andrew Turner <andrew@FreeBSD.org> |
Add a new ARM TARGET_ARCH, armv6hf. This is considered experimental. This targets the existing ARMv6 and ARMv7 SoCs that contain a VFP unit. This is an optional coprocessors may not be present in all devices, however it appears to be in all current SoCs we support. armv6hf targets the VFP variant of the ARM EABI and our copy of gcc is too old to support this. Because of this there are a number of WITH/WITHOUT options that are unsupported and must be left as the default value. The options and their required value are: * WITH_ARM_EABI * WITHOUT_GCC * WITHOUT_GNUCXX In addition, without an external toolchain, the following need to be left as their default: * WITH_CLANG * WITH_CLANG_IS_CC As there is a different method of passing float and double values to functions the ABI is incompatible with existing armv6 binaries. To use this a full rebuild of world is required. Because no floating point values are passed into the kernel an armv6 kernel with VFP enabled will work with an armv6hf userland and vice versa.
|
#
4da573d9 |
|
14-Aug-2012 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
Merging of projects/armv6, part 3 r238211: Support TARGET_ARCH=armv6 and TARGET_ARCH=armv6eb This adds a new TARGET_ARCH for building on ARM processors that support the ARMv6K multiprocessor extensions. In particular, these processors have better support for TLS and mutex operations. This mostly touches a lot of Makefiles to extend existing patterns for inferring CPUARCH from ARCH. It also configures: * GCC to default to arm1176jz-s * GCC to predefine __FreeBSD_ARCH_armv6__ * gas to default to ARM_ARCH_V6K * uname -p to return 'armv6' * make so that MACHINE_ARCH defaults to 'armv6' It also changes a number of headers to use the compiler __ARM_ARCH_XXX__ macros to configure processor-specific support routines. Submitted by: Tim Kientzle <kientzle@freebsd.org>
|
#
84db023e |
|
28-Mar-2012 |
Juli Mallett <jmallett@FreeBSD.org> |
Assume a big-endian default on MIPS and drop the "eb" suffix from MACHINE_ARCH. This makes our naming scheme more closely match other systems and the expectations of much third-party software. MIPS builds which are little-endian should require and exhibit no changes. Big-endian TARGET_ARCHes must be changed: From: To: mipseb mips mipsn32eb mipsn32 mips64eb mips64 An entry has been added to UPDATING and some foot-shooting protection (complete with warnings which should become errors in the near future) to the top-level base system Makefile.
|
#
cd2ae253 |
|
07-Jan-2011 |
Warner Losh <imp@FreeBSD.org> |
Retire TARGET_ABI. Implement MACHINE_ARCH=mips64e[lb] to build N64 images. This replaces MACHINE_ARCH=mipse[lb] TARGET_ABI=n64. MACHINE_ARCH=mipsn32e[lb] has been added, but currently requires WITHOUT_CDDL due to atomic issues in libzfs. I've not investigated this much, but implemented this to preserve as much of the TARGET_ABI functionality that I could. Since its presence doesn't affect the working cases, I've kept it in for now. Added mips64e[lb] to make universe, so more kernels build. And I think this (finally) closes the curtain on the tbemd tree.
|
#
e8dce5b9 |
|
09-Nov-2010 |
Warner Losh <imp@FreeBSD.org> |
Complete the integration of tbemd branch into head. TARGET_BIG_ENDIAN is now completely dead, except where it was originally supposed to be used (internally in the toolchain building). TARGET_ARCH has changed in three cases: (1) Little endian mips has changed to mipsel. (2) Big endian mips has changed to mipseb. (3) Big endian arm has changed to armeb. Some additional changes are needed to make 'make universe' work on arm and mips after this change, so those are commented out for now. UPDATING information will be forthcoming. Any remaining rough edges will be hammered out in -current.
|
#
a7d5f7eb |
|
19-Oct-2010 |
Jamie Gritton <jamie@FreeBSD.org> |
A new jail(8) with a configuration file, to replace the work currently done by /etc/rc.d/jail.
|
#
13109bdf |
|
09-Jul-2010 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Minor modifications to know what to do with powerpc64.
|
#
fe0506d7 |
|
09-Mar-2010 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Create the altix project branch. The altix project will add support for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting is a two-module system, consisting of a base compute module and a CPU expansion module. SGI's NUMAFlex architecture can be an excellent platform to test CPU affinity and NUMA-aware features in FreeBSD.
|
#
d7f03759 |
|
19-Oct-2008 |
Ulf Lilleengen <lulf@FreeBSD.org> |
- Import the HEAD csup code which is the basis for the cvsmode work.
|
#
04e109f0 |
|
28-Apr-2008 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
Handle endianness for mips Approved by: cognet (mentor)
|
#
507a594e |
|
05-Nov-2006 |
Olivier Houchard <cognet@FreeBSD.org> |
Change one more ARM_BIG_ENDIAN to TARGET_BIG_ENDIAN.
|
#
2b46c64c |
|
22-Aug-2006 |
Ruslan Ermilov <ru@FreeBSD.org> |
Remove alpha left-overs.
|
#
755259e2 |
|
24-Feb-2005 |
Olivier Houchard <cognet@FreeBSD.org> |
Handle endianness for arm.
|
#
6fe37d13 |
|
22-Feb-2005 |
Ruslan Ermilov <ru@FreeBSD.org> |
Add endianness support to cap_mkdb(1), useful for cross builds.
|