All toolchain dependencies are circa the GCC 10.5.0 release:
GCC 10.5.0, binutils 2.40, gmp 6.2.1, mpfr 4.1.1, mpc 1.3.1, isl 0.24
Native:
* arm - mini2g, nano2g works
- ipod6g hangs at logo display
* mips - xduoox3 works
* m68k - binaries untested
Hosted:
* arm - samsungypr0 works
* mips - xduoox3ii works
* Android NDK - unchanged at GCC 4.9.4
Change-Id: Ic157255d76030e66325719e64331f553cb7c4363
All toolchain dependencies are circa the GCC 10.5.0 release:
GCC 10.5.0, binutils 2.40, gmp 6.2.1, mpfr 4.1.1, mpc 1.3.1, isl 0.24
Native:
* arm - mini2g, nano2g works
- ipod6g hangs at logo display
* mips - xduoox3 works
* m68k - binaries untested
Hosted:
* arm - samsungypr0 works
* mips - xduoox3ii works
* Android NDK - unchanged at GCC 4.9.4
Change-Id: Ic9c4ad487927d2ad4247c140f1a7db2740e5f316
The zlib version used by GCC 4.9.4 and binutils 2.26.1
is incompatible with clang 17 from the latest Xcode
command line tools, resulting in fdopen being defined
as NULL.
Remove the define for MacOS, as in zlib 1.31:
4bd9a71f35
Change-Id: Ic7f3108dc4fcaca4ae9a571f2bdb9039be095f36
All toolchain dependencies are circa the GCC 9.5.0 release:
GCC 9.5.0, binutils 2.38, gmp 6.2.1, mpfr 4.1.1, mpc 1.2.1, isl 0.18
Native:
* arm - mini2g, nano2g seems to work
- ipod6g boot hang on 9.5.0 (possibly leading to disk corruption)
* mips - xduoox3 seems stable so far
* m68k - binaries untested
Hosted:
* arm - binaries untested
* mips - erosq seems stable so far
* Android NDK - unchanged at GCC 4.9.4
Change-Id: I4ca00edd49e1936b32f68f1e7b34df38e1d1d76e
* binutils (mips) uses its own 'static_assert'
* linux (mips) uses constexpr when generating headers
With these patches, all toolchains build successfully under GCC15
(These patches are still needed with the pending GCC9.5 bump)
Change-Id: Id2f8cca414d2907b6aa29612ae4fb0e8b5f79f79
This reverts commit 573ba5472e.
Reason for revert: Accidentally pushed to master, Maintainer will be put in timeout.
Change-Id: Iaa5c6eb18ae40dd64c13db75c0c3f6f519922d4a
All toolchain dependencies are circa the GCC 9.5.0 release:
GCC 9.5.0, binutils 2.38, gmp 6.2.1, mpfr 4.1.1, mpc 1.2.1, isl 0.18
Native:
* arm - mini2g, nano2g seems to work
- ipod6g boot hang on 9.5.0 (possibly leading to disk corruption)
* mips - xduoox3 seems stable so far
* m68k - binaries untested
Hosted:
* arm - binaries untested
* mips - erosq seems stable so far
* Android NDK - unchanged at GCC 4.9.4
Change-Id: I614f1b198643bfa8c45f68e4d8e15307a4998618
When building on MacOS:
* greadlink instead of readlink
* gsed instead of sed
* $TMPDIR instead of a hardcoded /tmp
* apply a macos-specific patch
* additional option to GCC
Additionally, don't rely on the system 'isl' stuff; always have binutils
build its own.
The forum post also says that bumping mpfr 3.1.x to 4.1.x, and mpc
from 1.0.x to 1.2.x is needed, but I do not want to do that due to the
possibility of unknown codegen changes.
Change-Id: I18084d392fa927318cc2a1183da7eb2ffa0d5884
Three separate problems:
1) Make 4.4 defaults to a named pipe for jobserver control, this
was incompatible with how glibc did recursive makes
2) Make 4.4 passed long arguments ( --foo ) into MAKEFLAGS and this
broke stuff that wasn't expecting it
3) Circular dependency in a header generation due do make 4.4 being
stricter/more consistent in how it orders rules vs which makefiles
they came from. This one was the real !@#!@ to deal with.
This patch set fixes the hosted arm (glibc 2.19) and mips (glibc 2.25)
toolchains.
Change-Id: Ie6d6a0ab7e1b36f24c43e524fee4afc0bd3a14d6
GCC 4.9.4 was already used for MIPS and all hosted targets; this enables
it across the board for everything (ie m68k and arm native)
Other changes:
* Use '-Os' as the default optiomization for all targets
(was only disabled for arm native)
* Enable -funit-at-a-time and -Wextra
* Drop all obsolete toolchain patches
* Update ARM multilib/exception patch
* Bump toolchain libs (gmp, mpfr, mpc) to recommended versions, and
add 'isl' to enable better optimization & vectorization opportunities.
(Will revisit optimization for the codecs and plugins at a later date)
Confirmed working:
* armv4t (ipodmini2g and many other PP502x targets)
* arm >= v5 (sansaclipplus, ipod6g, ipodnano2g, sansafuzeplus)
* m68k (ihp100)
Change-Id: If9ed405ae0f289d9adea46d4cf46bfefc2f4250d
This frees us from having to keep the web site in sync.
Note that only currently-referenced patches were kept.
Change-Id: I50da1b75baeac214cf142c8b76a05a8c56b4c1d4