mirror of
https://github.com/devkitPro/buildscripts.git
synced 2026-08-21 01:44:16 -05:00
Compare commits
70 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bc708a543c | ||
|
|
9e5843b414 | ||
|
|
811c6a45b4 | ||
|
|
b1e0b0abd8 | ||
|
|
be6c50e32e | ||
|
|
3ef75548cf | ||
|
|
cb663299d1 | ||
|
|
3ba03b29f2 | ||
|
|
64492fe29c | ||
|
|
0026b3450c | ||
|
|
7f9fa7a161 | ||
|
|
cd8a1b3c85 | ||
|
|
ca40deb9ee | ||
|
|
3a2688063a | ||
|
|
4c47502632 | ||
|
|
eb23f198ad | ||
|
|
a1221bad50 | ||
|
|
1b65df77a3 | ||
|
|
e48ba38ce5 | ||
|
|
1d6cd5b344 | ||
|
|
e2d1ec8882 | ||
|
|
25e4deb095 | ||
|
|
ff9b2dd329 | ||
|
|
b6511b156c | ||
|
|
ca6443a27c | ||
|
|
5b1d0458dc | ||
|
|
116ad3bfc4 | ||
|
|
d8e737b988 | ||
|
|
b033aa91b2 | ||
|
|
3f149af10d | ||
|
|
dc93157478 | ||
|
|
a62a3f6379 | ||
|
|
6698343534 | ||
|
|
c8d5125ac3 | ||
|
|
e257f22430 | ||
|
|
3b8d9c702d | ||
|
|
f9dd6655ec | ||
|
|
3fcebd74b2 | ||
|
|
ac39e253ff | ||
|
|
ca6674a81d | ||
|
|
cf2e5124ce | ||
|
|
c4a55871e4 | ||
|
|
67f27e6455 | ||
|
|
ff6e2b58c6 | ||
|
|
50514b3c7f | ||
|
|
5e86d85526 | ||
|
|
f8998e03ce | ||
|
|
af4c3ff66a | ||
|
|
0ca5bf65c0 | ||
|
|
564fa0e0af | ||
|
|
47ddd93e55 | ||
|
|
fea87e834c | ||
|
|
bb1c5bba94 | ||
|
|
0e404ac683 | ||
|
|
dd0500e539 | ||
|
|
46989bb607 | ||
|
|
827f20a398 | ||
|
|
e4270dc3d2 | ||
|
|
ac72c96c00 | ||
|
|
83fb7448d8 | ||
|
|
6e94598966 | ||
|
|
14359b772f | ||
|
|
1f4243ead0 | ||
|
|
207d78ae00 | ||
|
|
9362ca7bac | ||
|
|
f6d47b4005 | ||
|
|
c384a5097c | ||
|
|
074ceec36c | ||
|
|
e0c31cded7 | ||
|
|
fdc132d773 |
@@ -23,6 +23,8 @@ http://gmplib.org/
|
||||
http://www.mpfr.org/
|
||||
http://www.multiprecision.org/
|
||||
|
||||
sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev
|
||||
|
||||
Some of the tools for devkitARM and devkitPPC also require FreeImage, zlib,
|
||||
and libusb. Again these are built as static libraries for ease of packaging
|
||||
but you can probably use the versions supplied by your distro.
|
||||
@@ -31,7 +33,10 @@ http://freeimage.sourceforge.net/
|
||||
http://www.zlib.net
|
||||
http://www.libusb.org
|
||||
|
||||
sudo apt-get install libfreeimage-dev zlib1g-dev libusb-dev
|
||||
|
||||
Building gxtexconv for cube/wii needs GL/gl.h which can be obtained with
|
||||
|
||||
sudo apt-get install mesa-common-dev
|
||||
|
||||
To avoid having to manually answer prompts during the build the script will
|
||||
@@ -78,7 +83,7 @@ Using devkitPPC
|
||||
|
||||
to use the built in crt0 and linkscript use powerpc-eabi-gcc to link your project,
|
||||
using the command line switch -mgcn for a bare bones system, -mogc to use libogc and
|
||||
the multi-threaded microkernel for gamecube, -mrvl for wii.
|
||||
the multi-threaded microkernel for gamecube, -mrvl for wii, -mwup for wii u.
|
||||
|
||||
Using devkitPSP
|
||||
---------------
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
#!/bin/bash
|
||||
#---------------------------------------------------------------------------------
|
||||
# Build scripts for
|
||||
# devkitARM release 44
|
||||
# devkitPPC release 27
|
||||
# devkitARM release 45
|
||||
# devkitPPC release 28
|
||||
# devkitPSP release 17
|
||||
#---------------------------------------------------------------------------------
|
||||
|
||||
@@ -24,11 +23,11 @@ echo "Patches and improvements are of course welcome, please send these to the p
|
||||
echo "https://sourceforge.net/tracker/?group_id=114505&atid=668553"
|
||||
echo
|
||||
|
||||
LIBOGC_VER=1.8.12
|
||||
LIBOGC_VER=1.8.15
|
||||
LIBGBA_VER=20150106
|
||||
LIBNDS_VER=1.5.10
|
||||
LIBCTRU_VER=0.4.0
|
||||
DEFAULT_ARM7_VER=0.5.27
|
||||
LIBNDS_VER=1.5.12
|
||||
LIBCTRU_VER=0.6.0
|
||||
DEFAULT_ARM7_VER=0.6.0
|
||||
DSWIFI_VER=0.3.17
|
||||
LIBMIRKO_VER=0.9.7
|
||||
MAXMOD_VER=1.0.9
|
||||
@@ -38,34 +37,25 @@ PSPSDK_VER=20120404
|
||||
GBATOOLS_VER=1.0.0
|
||||
DSTOOLS_VER=1.0.2
|
||||
GP32_TOOLS_VER=1.0.1
|
||||
GRIT_VER=0.8.12
|
||||
GRIT_VER=0.8.13
|
||||
NDSTOOL_VER=1.50.3
|
||||
GENERAL_TOOLS_VER=1.0.0
|
||||
DLDITOOL_VER=1.24.0
|
||||
GAMECUBE_TOOLS_VER=1.0.0
|
||||
GAMECUBE_TOOLS_VER=1.0.1
|
||||
WIILOAD_VER=0.5.1
|
||||
MMUTIL_VER=1.8.6
|
||||
DFU_UTIL_VER=0.8.1
|
||||
STLINK_VER=0.5.8
|
||||
TOOLS3DS_VER=1.0.3
|
||||
LINK3DS_VER=0.5.0
|
||||
TOOLS3DS_VER=1.1.1
|
||||
LINK3DS_VER=0.5.1
|
||||
PICASSO_VER=2.1.0
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
function extract_and_patch {
|
||||
#---------------------------------------------------------------------------------
|
||||
if [ ! -f extracted-$1 ]; then
|
||||
echo "extracting $1"
|
||||
if [ $3 == "bz2" ]; then
|
||||
extractflags="-xjf"
|
||||
archivetype=".tar.bz2"
|
||||
elif [ $3 == "gz" ]; then
|
||||
extractflags="-xzf"
|
||||
archivetype=".tar.gz"
|
||||
else
|
||||
echo "invalid archive type"
|
||||
exit 1
|
||||
fi
|
||||
tar $extractflags "$SRCDIR/$1-$2$archivetype" || { echo "Error extracting "$1; exit 1; }
|
||||
tar -xf "$SRCDIR/$1-$2.tar.$3" || { echo "Error extracting "$1; exit 1; }
|
||||
touch extracted-$1
|
||||
fi
|
||||
if [[ ! -f patched-$1 && -f $patchdir/$1-$2.patch ]]; then
|
||||
@@ -169,10 +159,8 @@ PLATFORM=`uname -s`
|
||||
|
||||
case $PLATFORM in
|
||||
Darwin )
|
||||
cflags="-mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc"
|
||||
ldflags="-mmacosx-version-min=10.4 -arch i386 -arch ppc -Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk"
|
||||
export CC=gcc-4.0
|
||||
export CXX=g++-4.0
|
||||
cflags="-mmacosx-version-min=10.5 -isysroot /Developer/SDKs/MacOSX10.5.sdk -I/usr/local/include"
|
||||
ldflags="-mmacosx-version-min=10.5 -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk -L/usr/local/lib"
|
||||
;;
|
||||
MINGW32* )
|
||||
cflags="-D__USE_MINGW_ACCESS"
|
||||
@@ -203,7 +191,8 @@ if [ $VERSION -eq 1 ]; then
|
||||
hostarchives="gbatools-$GBATOOLS_VER.tar.bz2 gp32tools-$GP32_TOOLS_VER.tar.bz2
|
||||
dstools-$DSTOOLS_VER.tar.bz2 grit-$GRIT_VER.tar.bz2 ndstool-$NDSTOOL_VER.tar.bz2
|
||||
general-tools-$GENERAL_TOOLS_VER.tar.bz2 dlditool-$DLDITOOL_VER.tar.bz2 mmutil-$MMUTIL_VER.tar.bz2
|
||||
dfu-util-$DFU_UTIL_VER.tar.bz2 stlink-$STLINK_VER.tar.bz2 3dstools-$TOOLS3DS_VER.tar.bz2 3dslink-$LINK3DS_VER.tar.bz2"
|
||||
dfu-util-$DFU_UTIL_VER.tar.bz2 stlink-$STLINK_VER.tar.bz2 3dstools-$TOOLS3DS_VER.tar.bz2
|
||||
picasso-$PICASSO_VER.tar.bz2 3dslink-$LINK3DS_VER.tar.bz2"
|
||||
fi
|
||||
|
||||
if [ $VERSION -eq 2 ]; then
|
||||
@@ -271,7 +260,7 @@ if [ -f $scriptdir/build-crtls.sh ]; then . $scriptdir/build-crtls.sh || { echo
|
||||
|
||||
if [ ! -z $CROSSBUILD ]; then
|
||||
if [ $VERSION -ne 3 ]; then
|
||||
cp -v $CROSSLIBPATH/FreeImage.dll $prefix/bin
|
||||
cp -v $CROSSBINPATH/FreeImage.dll $prefix/bin
|
||||
fi
|
||||
if [ $VERSION -eq 1 ]; then
|
||||
cp -v $CROSSBINPATH/libusb-1.0.dll $prefix/bin
|
||||
|
||||
@@ -13,8 +13,8 @@ SECTIONS
|
||||
{
|
||||
/* =========== CODE section =========== */
|
||||
|
||||
. = 0x100000;
|
||||
__start__ = . ;
|
||||
PROVIDE(__start__ = 0x100000);
|
||||
. = __start__;
|
||||
|
||||
.text ALIGN(0x1000) :
|
||||
{
|
||||
@@ -67,6 +67,25 @@ SECTIONS
|
||||
. = ALIGN(4);
|
||||
} : data
|
||||
|
||||
.tdata ALIGN(4) :
|
||||
{
|
||||
__tdata_lma = .;
|
||||
*(.tdata)
|
||||
*(.tdata.*)
|
||||
*(.gnu.linkonce.td.*)
|
||||
. = ALIGN(4);
|
||||
__tdata_lma_end = .;
|
||||
} : data
|
||||
|
||||
.tbss ALIGN(4) :
|
||||
{
|
||||
*(.tbss)
|
||||
*(.tbss.*)
|
||||
*(.gnu.linkonce.tb.*)
|
||||
*(.tcommon)
|
||||
. = ALIGN(4);
|
||||
} : data
|
||||
|
||||
.preinit_array ALIGN(4) :
|
||||
{
|
||||
PROVIDE (__preinit_array_start = .);
|
||||
@@ -115,6 +134,11 @@ SECTIONS
|
||||
*(.gnu.linkonce.b*)
|
||||
*(COMMON)
|
||||
. = ALIGN(4);
|
||||
|
||||
/* Reserve space for the TLS segment of the main thread */
|
||||
__tls_start = .;
|
||||
. += + SIZEOF(.tdata) + SIZEOF(.tbss);
|
||||
__tls_end = .;
|
||||
} : data
|
||||
__bss_end__ = .;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
%(old_link) -T 3dsx.ld%s -d --emit-relocs --use-blx
|
||||
%(old_link) -T 3dsx.ld%s -d --emit-relocs --use-blx --gc-sections
|
||||
|
||||
*startfile:
|
||||
3dsx_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
%(old_link) -T ds_arm7.ld%s
|
||||
%(old_link) -T ds_arm7.ld%s --gc-sections
|
||||
|
||||
*startfile:
|
||||
ds_arm7_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
%(old_link) -T ds_arm9.mem%s -T ds_arm9.ld%s
|
||||
%(old_link) -T ds_arm9.mem%s -T ds_arm9.ld%s --gc-sections
|
||||
|
||||
*startfile:
|
||||
ds_arm9_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
%(old_link) -T ds_cart.ld%s
|
||||
%(old_link) -T ds_cart.ld%s --gc-sections
|
||||
|
||||
*startfile:
|
||||
ds_cart_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
%(old_link) -T dsi_arm9.mem%s -T ds_arm9.ld%s
|
||||
%(old_link) -T dsi_arm9.mem%s -T ds_arm9.ld%s --gc-sections
|
||||
|
||||
*startfile:
|
||||
ds_arm9_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
%(old_link) -T gba_cart.ld%s
|
||||
%(old_link) -T gba_cart.ld%s --gc-sections
|
||||
|
||||
*startfile:
|
||||
gba_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
%rename endfile old_endfile
|
||||
|
||||
*link:
|
||||
-T gba_er.ld%s %(old_link)
|
||||
-T gba_er.ld%s %(old_link) --gc-sections
|
||||
|
||||
*startfile:
|
||||
er_crt0%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
-T gba_mb.ld%s %(old_link)
|
||||
-T gba_mb.ld%s %(old_link) --gc-sections
|
||||
|
||||
*startfile:
|
||||
gba_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
%(old_link) -T gp32.ld%s
|
||||
%(old_link) -T gp32.ld%s --gc-sections
|
||||
|
||||
*startfile:
|
||||
gp32_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%rename link old_link
|
||||
|
||||
*link:
|
||||
%(old_link) -T gp32_gpsdk.ld%s
|
||||
%(old_link) -T gp32_gpsdk.ld%s --gc-sections
|
||||
|
||||
*startfile:
|
||||
gp32_gpsdk_crt0%O%s crti%O%s crtbegin%O%s
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
diff -NBaur gcc-4.9.2/gcc/config/arm/t-arm-elf gcc-4.9.2-arm/gcc/config/arm/t-arm-elf
|
||||
--- gcc-4.9.2/gcc/config/arm/t-arm-elf 2014-01-02 22:23:26.000000000 +0000
|
||||
+++ gcc-4.9.2-arm/gcc/config/arm/t-arm-elf 2015-02-14 19:27:06.598220000 +0000
|
||||
@@ -16,10 +16,18 @@
|
||||
diff -Nbaur gcc-5.2.0/gcc/config/arm/t-arm-elf gcc-5.2.0-arm/gcc/config/arm/t-arm-elf
|
||||
--- gcc-5.2.0/gcc/config/arm/t-arm-elf 2015-01-05 12:33:28.000000000 +0000
|
||||
+++ gcc-5.2.0-arm/gcc/config/arm/t-arm-elf 2015-11-23 20:16:26.736000000 +0000
|
||||
@@ -16,11 +16,19 @@
|
||||
# along with GCC; see the file COPYING3. If not see
|
||||
# <http://www.gnu.org/licenses/>.
|
||||
|
||||
@@ -11,7 +11,7 @@ diff -NBaur gcc-4.9.2/gcc/config/arm/t-arm-elf gcc-4.9.2-arm/gcc/config/arm/t-ar
|
||||
+MULTILIB_DIRNAMES = thumb armv6k fpu
|
||||
MULTILIB_EXCEPTIONS =
|
||||
MULTILIB_MATCHES =
|
||||
+
|
||||
|
||||
+MULTILIB_REQUIRED = mthumb march=armv6k/mfloat-abi=hard
|
||||
+
|
||||
+
|
||||
@@ -19,9 +19,10 @@ diff -NBaur gcc-4.9.2/gcc/config/arm/t-arm-elf gcc-4.9.2-arm/gcc/config/arm/t-ar
|
||||
+MULTILIB_MATCHES += march?armv6k=mcpu?mpcore
|
||||
+
|
||||
+
|
||||
|
||||
+
|
||||
#MULTILIB_OPTIONS += mcpu=fa526/mcpu=fa626/mcpu=fa606te/mcpu=fa626te/mcpu=fmp626/mcpu=fa726te
|
||||
#MULTILIB_DIRNAMES += fa526 fa626 fa606te fa626te fmp626 fa726te
|
||||
#MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=fa526 *mthumb*/*mcpu=fa626
|
||||
@@ -38,9 +46,9 @@
|
||||
# Not quite true. We can support hard-vfp calling in Thumb2, but how do we
|
||||
# express that here? Also, we really need architecture v5e or later
|
||||
@@ -35,19 +36,28 @@ diff -NBaur gcc-4.9.2/gcc/config/arm/t-arm-elf gcc-4.9.2-arm/gcc/config/arm/t-ar
|
||||
#MULTILIB_EXCEPTIONS += *mcpu=fa526/*mfloat-abi=hard*
|
||||
#MULTILIB_EXCEPTIONS += *mcpu=fa626/*mfloat-abi=hard*
|
||||
|
||||
diff -NBaur gcc-4.9.2/gcc/config/arm/unknown-elf.h gcc-4.9.2-arm/gcc/config/arm/unknown-elf.h
|
||||
--- gcc-4.9.2/gcc/config/arm/unknown-elf.h 2014-01-02 22:23:26.000000000 +0000
|
||||
+++ gcc-4.9.2-arm/gcc/config/arm/unknown-elf.h 2015-02-14 19:27:06.598220000 +0000
|
||||
diff -Nbaur gcc-5.2.0/gcc/config/arm/unknown-elf.h gcc-5.2.0-arm/gcc/config/arm/unknown-elf.h
|
||||
--- gcc-5.2.0/gcc/config/arm/unknown-elf.h 2015-11-28 18:13:20.576000000 +0000
|
||||
+++ gcc-5.2.0-arm/gcc/config/arm/unknown-elf.h 2015-11-28 18:14:06.328000000 +0000
|
||||
@@ -29,7 +29,7 @@
|
||||
#endif
|
||||
|
||||
/* Now we define the strings used to build the spec file. */
|
||||
-#define UNKNOWN_ELF_STARTFILE_SPEC " crti%O%s crtbegin%O%s crt0%O%s"
|
||||
+#define UNKNOWN_ELF_STARTFILE_SPEC " crti%O%s crtbegin%O%s"
|
||||
|
||||
#undef STARTFILE_SPEC
|
||||
#define STARTFILE_SPEC UNKNOWN_ELF_STARTFILE_SPEC
|
||||
@@ -93,4 +93,4 @@
|
||||
udivmoddi4, which will depend on the exception unwind routines,
|
||||
which will depend on abort, which is defined in libc. */
|
||||
#undef LINK_GCC_C_SEQUENCE_SPEC
|
||||
-#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L --end-group"
|
||||
+#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L %(libgloss) --end-group"
|
||||
diff -NBaur gcc-4.9.2/gcc/gcc.c gcc-4.9.2-arm/gcc/gcc.c
|
||||
--- gcc-4.9.2/gcc/gcc.c 2014-10-22 22:42:48.000000000 +0100
|
||||
+++ gcc-4.9.2-arm/gcc/gcc.c 2015-02-14 19:27:06.606220000 +0000
|
||||
@@ -616,6 +616,11 @@
|
||||
diff -Nbaur gcc-5.2.0/gcc/gcc.c gcc-5.2.0-arm/gcc/gcc.c
|
||||
--- gcc-5.2.0/gcc/gcc.c 2015-03-10 09:37:41.000000000 +0000
|
||||
+++ gcc-5.2.0-arm/gcc/gcc.c 2015-11-23 20:16:26.740000000 +0000
|
||||
@@ -647,6 +647,11 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -59,7 +69,7 @@ diff -NBaur gcc-4.9.2/gcc/gcc.c gcc-4.9.2-arm/gcc/gcc.c
|
||||
/* config.h can define STARTFILE_SPEC to override the default crt0 files. */
|
||||
#ifndef STARTFILE_SPEC
|
||||
#define STARTFILE_SPEC \
|
||||
@@ -813,6 +818,7 @@
|
||||
@@ -879,6 +884,7 @@
|
||||
static const char *lib_spec = LIB_SPEC;
|
||||
static const char *link_gomp_spec = "";
|
||||
static const char *libgcc_spec = LIBGCC_SPEC;
|
||||
@@ -67,7 +77,7 @@ diff -NBaur gcc-4.9.2/gcc/gcc.c gcc-4.9.2-arm/gcc/gcc.c
|
||||
static const char *endfile_spec = ENDFILE_SPEC;
|
||||
static const char *startfile_spec = STARTFILE_SPEC;
|
||||
static const char *linker_name_spec = LINKER_NAME;
|
||||
@@ -1303,6 +1309,7 @@
|
||||
@@ -1374,6 +1380,7 @@
|
||||
INIT_STATIC_SPEC ("lib", &lib_spec),
|
||||
INIT_STATIC_SPEC ("link_gomp", &link_gomp_spec),
|
||||
INIT_STATIC_SPEC ("libgcc", &libgcc_spec),
|
||||
@@ -75,10 +85,10 @@ diff -NBaur gcc-4.9.2/gcc/gcc.c gcc-4.9.2-arm/gcc/gcc.c
|
||||
INIT_STATIC_SPEC ("startfile", &startfile_spec),
|
||||
INIT_STATIC_SPEC ("cross_compile", &cross_compile),
|
||||
INIT_STATIC_SPEC ("version", &compiler_version),
|
||||
diff -NBaur gcc-4.9.2/gcc/Makefile.in gcc-4.9.2-arm/gcc/Makefile.in
|
||||
--- gcc-4.9.2/gcc/Makefile.in 2014-10-16 14:50:42.000000000 +0100
|
||||
+++ gcc-4.9.2-arm/gcc/Makefile.in 2015-02-14 21:02:09.598220000 +0000
|
||||
@@ -1046,8 +1046,8 @@
|
||||
diff -Nbaur gcc-5.2.0/gcc/Makefile.in gcc-5.2.0-arm/gcc/Makefile.in
|
||||
--- gcc-5.2.0/gcc/Makefile.in 2015-05-04 11:46:32.000000000 +0100
|
||||
+++ gcc-5.2.0-arm/gcc/Makefile.in 2015-11-23 20:16:26.744000000 +0000
|
||||
@@ -1053,8 +1053,8 @@
|
||||
# things like the go/%.o rule work properly; but we use $(*F) for the
|
||||
# file part, as we just want the file part of the stem, not the entire
|
||||
# file name.
|
||||
@@ -89,9 +99,9 @@ diff -NBaur gcc-4.9.2/gcc/Makefile.in gcc-4.9.2-arm/gcc/Makefile.in
|
||||
else
|
||||
COMPILE = source='$<' object='$@' libtool=no \
|
||||
DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) $(COMPILE.base)
|
||||
diff -NBaur gcc-4.9.2/libcpp/Makefile.in gcc-4.9.2-arm/libcpp/Makefile.in
|
||||
--- gcc-4.9.2/libcpp/Makefile.in 2014-10-30 08:28:58.000000000 +0000
|
||||
+++ gcc-4.9.2-arm/libcpp/Makefile.in 2015-02-14 19:27:06.606220000 +0000
|
||||
diff -Nbaur gcc-5.2.0/libcpp/Makefile.in gcc-5.2.0-arm/libcpp/Makefile.in
|
||||
--- gcc-5.2.0/libcpp/Makefile.in 2015-07-16 10:16:25.000000000 +0100
|
||||
+++ gcc-5.2.0-arm/libcpp/Makefile.in 2015-11-23 20:16:26.744000000 +0000
|
||||
@@ -208,8 +208,7 @@
|
||||
# Note that we put the dependencies into a .Tpo file, then move them
|
||||
# into place if the compile succeeds. We need this because gcc does
|
||||
@@ -102,18 +112,18 @@ diff -NBaur gcc-4.9.2/libcpp/Makefile.in gcc-4.9.2-arm/libcpp/Makefile.in
|
||||
else
|
||||
COMPILE = source='$<' object='$@' libtool=no DEPDIR=$(DEPDIR) $(DEPMODE) \
|
||||
$(depcomp) $(COMPILE.base)
|
||||
diff -NBaur gcc-4.9.2/libgcc/config/arm/t-bpabi gcc-4.9.2-arm/libgcc/config/arm/t-bpabi
|
||||
--- gcc-4.9.2/libgcc/config/arm/t-bpabi 2012-08-17 16:06:06.000000000 +0100
|
||||
+++ gcc-4.9.2-arm/libgcc/config/arm/t-bpabi 2015-02-14 19:27:06.610220000 +0000
|
||||
diff -Nbaur gcc-5.2.0/libgcc/config/arm/t-bpabi gcc-5.2.0-arm/libgcc/config/arm/t-bpabi
|
||||
--- gcc-5.2.0/libgcc/config/arm/t-bpabi 2012-08-17 16:06:06.000000000 +0100
|
||||
+++ gcc-5.2.0-arm/libgcc/config/arm/t-bpabi 2015-11-23 20:16:26.744000000 +0000
|
||||
@@ -17,4 +17,4 @@
|
||||
# On ARM, specifying -fnon-call-exceptions will needlessly pull in
|
||||
# the unwinder in simple programs which use 64-bit division. Omitting
|
||||
# the option is safe.
|
||||
-LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions
|
||||
+LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions
|
||||
diff -NBaur gcc-4.9.2/libgcc/crtstuff.c gcc-4.9.2-arm/libgcc/crtstuff.c
|
||||
--- gcc-4.9.2/libgcc/crtstuff.c 2014-03-10 18:31:20.000000000 +0000
|
||||
+++ gcc-4.9.2-arm/libgcc/crtstuff.c 2015-02-14 19:27:06.610220000 +0000
|
||||
diff -Nbaur gcc-5.2.0/libgcc/crtstuff.c gcc-5.2.0-arm/libgcc/crtstuff.c
|
||||
--- gcc-5.2.0/libgcc/crtstuff.c 2015-01-05 12:33:28.000000000 +0000
|
||||
+++ gcc-5.2.0-arm/libgcc/crtstuff.c 2015-11-23 20:16:26.744000000 +0000
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||
/* Target machine header files require this define. */
|
||||
@@ -123,10 +133,10 @@ diff -NBaur gcc-4.9.2/libgcc/crtstuff.c gcc-4.9.2-arm/libgcc/crtstuff.c
|
||||
/* FIXME: Including auto-host is incorrect, but until we have
|
||||
identified the set of defines that need to go into auto-target.h,
|
||||
this will have to do. */
|
||||
diff -NBaur gcc-4.9.2/libgcc/Makefile.in gcc-4.9.2-arm/libgcc/Makefile.in
|
||||
--- gcc-4.9.2/libgcc/Makefile.in 2014-01-08 16:37:08.000000000 +0000
|
||||
+++ gcc-4.9.2-arm/libgcc/Makefile.in 2015-02-14 19:27:06.610220000 +0000
|
||||
@@ -816,7 +816,7 @@
|
||||
diff -Nbaur gcc-5.2.0/libgcc/Makefile.in gcc-5.2.0-arm/libgcc/Makefile.in
|
||||
--- gcc-5.2.0/libgcc/Makefile.in 2015-01-29 08:03:56.000000000 +0000
|
||||
+++ gcc-5.2.0-arm/libgcc/Makefile.in 2015-11-23 20:16:26.744000000 +0000
|
||||
@@ -819,7 +819,7 @@
|
||||
# libgcc_eh.a, only LIB2ADDEH matters. If we do, only LIB2ADDEHSTATIC and
|
||||
# LIB2ADDEHSHARED matter. (Usually all three are identical.)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
diff -NBaur gdb-7.8.2/gdb/Makefile.in gdb-7.8.2-arm/gdb/Makefile.in
|
||||
--- gdb-7.8.2/gdb/Makefile.in 2015-01-15 10:58:12.000000000 +0000
|
||||
+++ gdb-7.8.2-arm/gdb/Makefile.in 2015-01-21 17:13:14.155896000 +0000
|
||||
@@ -2516,10 +2516,8 @@
|
||||
diff -NBaur gdb-7.10/gdb/Makefile.in gdb-7.10-arm/gdb/Makefile.in
|
||||
--- gdb-7.10/gdb/Makefile.in 2015-08-28 22:22:07.000000000 +0100
|
||||
+++ gdb-7.10-arm/gdb/Makefile.in 2015-10-21 08:54:36.492597858 +0100
|
||||
@@ -2676,10 +2676,8 @@
|
||||
# Note that we put the dependencies into a .Tpo file, then move them
|
||||
# into place if the compile succeeds. We need this because gcc does
|
||||
# not atomically write the dependency output file.
|
||||
@@ -14,10 +14,10 @@ diff -NBaur gdb-7.8.2/gdb/Makefile.in gdb-7.8.2-arm/gdb/Makefile.in
|
||||
@GMAKE_TRUE@else
|
||||
@GMAKE_TRUE@override COMPILE.pre = source='$<' object='$@' libtool=no \
|
||||
@GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
|
||||
diff -NBaur gdb-7.8.2/sim/common/Make-common.in gdb-7.8.2-arm/sim/common/Make-common.in
|
||||
--- gdb-7.8.2/sim/common/Make-common.in 2015-01-15 10:58:12.000000000 +0000
|
||||
+++ gdb-7.8.2-arm/sim/common/Make-common.in 2015-01-21 17:13:14.155896000 +0000
|
||||
@@ -415,10 +415,8 @@
|
||||
diff -NBaur gdb-7.10/sim/common/Make-common.in gdb-7.10-arm/sim/common/Make-common.in
|
||||
--- gdb-7.10/sim/common/Make-common.in 2015-07-06 20:57:46.000000000 +0100
|
||||
+++ gdb-7.10-arm/sim/common/Make-common.in 2015-10-21 08:54:36.492597858 +0100
|
||||
@@ -421,10 +421,8 @@
|
||||
# Note that we put the dependencies into a .Tpo file, then move them
|
||||
# into place if the compile succeeds. We need this because gcc does
|
||||
# not atomically write the dependency output file.
|
||||
@@ -648,15 +648,16 @@ index 0000000..79d2006
|
||||
+}
|
||||
diff --git a/libgloss/libsysbase/chdir.c b/libgloss/libsysbase/chdir.c
|
||||
new file mode 100644
|
||||
index 0000000..c850f27
|
||||
index 0000000..ae3a099
|
||||
--- /dev/null
|
||||
+++ b/libgloss/libsysbase/chdir.c
|
||||
@@ -0,0 +1,192 @@
|
||||
@@ -0,0 +1,199 @@
|
||||
+#include <unistd.h>
|
||||
+#include <limits.h>
|
||||
+#include <reent.h>
|
||||
+#include <string.h>
|
||||
+#include <errno.h>
|
||||
+#include <stdlib.h>
|
||||
+#include <sys/iosupport.h>
|
||||
+#include <sys/param.h>
|
||||
+
|
||||
@@ -779,7 +780,13 @@ index 0000000..c850f27
|
||||
+ strncpy (temp_cwd, _current_working_directory, PATH_MAX);
|
||||
+ }
|
||||
+
|
||||
+ pathPosition = strchr (temp_cwd , ':') + 1;
|
||||
+ pathPosition = strchr (temp_cwd , ':');
|
||||
+
|
||||
+ if (pathPosition == NULL) {
|
||||
+ pathPosition = temp_cwd;
|
||||
+ } else {
|
||||
+ pathPosition++;
|
||||
+ }
|
||||
+
|
||||
+ /* Make sure the path starts in the root directory */
|
||||
+ if (pathPosition[0] != DIRECTORY_SEPARATOR_CHAR) {
|
||||
@@ -880,7 +887,7 @@ index 0000000..f3959bf
|
||||
+
|
||||
diff --git a/libgloss/libsysbase/close.c b/libgloss/libsysbase/close.c
|
||||
new file mode 100644
|
||||
index 0000000..6470054
|
||||
index 0000000..c69a817
|
||||
--- /dev/null
|
||||
+++ b/libgloss/libsysbase/close.c
|
||||
@@ -0,0 +1,49 @@
|
||||
@@ -907,7 +914,7 @@ index 0000000..6470054
|
||||
+#endif
|
||||
+ int ret = -1;
|
||||
+ unsigned int dev = 0;
|
||||
+ unsigned int fd = -1;
|
||||
+ int fd = -1;
|
||||
+
|
||||
+ if(fileDesc!=-1) {
|
||||
+
|
||||
@@ -917,7 +924,7 @@ index 0000000..6470054
|
||||
+ dev = handle->device;
|
||||
+ handle->refcount--;
|
||||
+ if (handle->refcount == 0 ) {
|
||||
+ fd = (unsigned int)handle->fileStruct;
|
||||
+ fd = (int)handle->fileStruct;
|
||||
+
|
||||
+ if(devoptab_list[dev]->close_r)
|
||||
+ ret = devoptab_list[dev]->close_r(ptr,fd);
|
||||
@@ -5758,7 +5765,7 @@ index 0000000..712b13e
|
||||
+}
|
||||
diff --git a/libgloss/libsysbase/fstat.c b/libgloss/libsysbase/fstat.c
|
||||
new file mode 100644
|
||||
index 0000000..c0d80dd
|
||||
index 0000000..9881601
|
||||
--- /dev/null
|
||||
+++ b/libgloss/libsysbase/fstat.c
|
||||
@@ -0,0 +1,45 @@
|
||||
@@ -5787,7 +5794,7 @@ index 0000000..c0d80dd
|
||||
+#endif
|
||||
+ int ret = -1;
|
||||
+ unsigned int dev = 0;
|
||||
+ unsigned int fd = -1;
|
||||
+ int fd = -1;
|
||||
+
|
||||
+ __handle * handle = NULL;
|
||||
+
|
||||
@@ -6152,12 +6159,13 @@ index 0000000..9714c10
|
||||
+}
|
||||
diff --git a/libgloss/libsysbase/iosupport.c b/libgloss/libsysbase/iosupport.c
|
||||
new file mode 100644
|
||||
index 0000000..ae816a8
|
||||
index 0000000..c08699d
|
||||
--- /dev/null
|
||||
+++ b/libgloss/libsysbase/iosupport.c
|
||||
@@ -0,0 +1,126 @@
|
||||
@@ -0,0 +1,133 @@
|
||||
+#include <stdlib.h>
|
||||
+#include <string.h>
|
||||
+#include <ctype.h>
|
||||
+#include <sys/iosupport.h>
|
||||
+
|
||||
+static int defaultDevice = -1;
|
||||
@@ -6171,13 +6179,19 @@ index 0000000..ae816a8
|
||||
+}
|
||||
+
|
||||
+//---------------------------------------------------------------------------------
|
||||
+static ssize_t null_write(struct _reent *r,int fd,const char *ptr, size_t len) {
|
||||
+//---------------------------------------------------------------------------------
|
||||
+ return len;
|
||||
+}
|
||||
+
|
||||
+//---------------------------------------------------------------------------------
|
||||
+const devoptab_t dotab_stdnull = {
|
||||
+//---------------------------------------------------------------------------------
|
||||
+ "stdnull", // device name
|
||||
+ 0, // size of file structure
|
||||
+ NULL, // device open
|
||||
+ NULL, // device close
|
||||
+ NULL, // device write
|
||||
+ null_write, // device write
|
||||
+ NULL, // device read
|
||||
+ NULL, // device seek
|
||||
+ NULL, // device fstat
|
||||
@@ -6382,7 +6396,7 @@ index 0000000..c1698dd
|
||||
+
|
||||
diff --git a/libgloss/libsysbase/lseek.c b/libgloss/libsysbase/lseek.c
|
||||
new file mode 100644
|
||||
index 0000000..aa232e0
|
||||
index 0000000..20a7da1
|
||||
--- /dev/null
|
||||
+++ b/libgloss/libsysbase/lseek.c
|
||||
@@ -0,0 +1,53 @@
|
||||
@@ -6417,7 +6431,7 @@ index 0000000..aa232e0
|
||||
+//---------------------------------------------------------------------------------
|
||||
+ _off_t ret = -1;
|
||||
+ unsigned int dev = 0;
|
||||
+ unsigned int fd = -1;
|
||||
+ int fd = -1;
|
||||
+
|
||||
+ __handle * handle;
|
||||
+
|
||||
@@ -6539,7 +6553,7 @@ index 0000000..7a3953c
|
||||
+}
|
||||
diff --git a/libgloss/libsysbase/read.c b/libgloss/libsysbase/read.c
|
||||
new file mode 100644
|
||||
index 0000000..c7eaafe
|
||||
index 0000000..5fa5919
|
||||
--- /dev/null
|
||||
+++ b/libgloss/libsysbase/read.c
|
||||
@@ -0,0 +1,47 @@
|
||||
@@ -6570,7 +6584,7 @@ index 0000000..c7eaafe
|
||||
+#endif
|
||||
+ int ret = -1;
|
||||
+ unsigned int dev = 0;
|
||||
+ unsigned int fd = -1;
|
||||
+ int fd = -1;
|
||||
+
|
||||
+ __handle * handle = NULL;
|
||||
+
|
||||
@@ -7132,7 +7146,7 @@ index 0000000..2c29982
|
||||
+#endif /* __WARNING_H__ */
|
||||
diff --git a/libgloss/libsysbase/write.c b/libgloss/libsysbase/write.c
|
||||
new file mode 100644
|
||||
index 0000000..263eb69
|
||||
index 0000000..9422f52
|
||||
--- /dev/null
|
||||
+++ b/libgloss/libsysbase/write.c
|
||||
@@ -0,0 +1,46 @@
|
||||
@@ -7163,7 +7177,7 @@ index 0000000..263eb69
|
||||
+#endif
|
||||
+ int ret = -1;
|
||||
+ unsigned int dev = 0;
|
||||
+ unsigned int fd = -1;
|
||||
+ int fd = -1;
|
||||
+
|
||||
+ __handle * handle = NULL;
|
||||
+
|
||||
@@ -7183,7 +7197,7 @@ index 0000000..263eb69
|
||||
+ return ret;
|
||||
+}
|
||||
diff --git a/newlib/configure.host b/newlib/configure.host
|
||||
index c4773d9..4f1f5a2 100644
|
||||
index c4773d9..e55f330 100644
|
||||
--- a/newlib/configure.host
|
||||
+++ b/newlib/configure.host
|
||||
@@ -602,6 +602,14 @@ case "${host}" in
|
||||
@@ -7194,7 +7208,7 @@ index c4773d9..4f1f5a2 100644
|
||||
+ default_newlib_io_c99_formats="yes"
|
||||
+ default_newlib_io_long_long="yes"
|
||||
+ default_newlib_io_pos_args="yes"
|
||||
+ newlib_cflags="${newlib_cflags} -DREENTRANT_SYSCALLS_PROVIDED -D__DEFAULT_UTF8__"
|
||||
+ newlib_cflags="${newlib_cflags} -D__DYNAMIC_REENT__ -DREENTRANT_SYSCALLS_PROVIDED -D__DEFAULT_UTF8__"
|
||||
+ newlib_cflags="${newlib_cflags} -ffunction-sections -fdata-sections"
|
||||
+ syscall_dir=syscalls
|
||||
+ ;;
|
||||
@@ -7290,10 +7304,10 @@ index a3fb5c0..1ead46b 100644
|
||||
+#endif // _dirent_h_
|
||||
diff --git a/newlib/libc/include/sys/iosupport.h b/newlib/libc/include/sys/iosupport.h
|
||||
new file mode 100644
|
||||
index 0000000..1cd3b62
|
||||
index 0000000..2b5fc6e
|
||||
--- /dev/null
|
||||
+++ b/newlib/libc/include/sys/iosupport.h
|
||||
@@ -0,0 +1,107 @@
|
||||
@@ -0,0 +1,105 @@
|
||||
+//---------------------------------------------------------------------------------
|
||||
+#ifndef __iosupp_h__
|
||||
+#define __iosupp_h__
|
||||
@@ -7367,8 +7381,6 @@ index 0000000..1cd3b62
|
||||
+ void *(*sbrk_r) (struct _reent *ptr, ptrdiff_t incr);
|
||||
+ void (*exit) ( int rc );
|
||||
+ int (*gettod_r) (struct _reent *ptr, struct timeval *tp, struct timezone *tz);
|
||||
+ void (*malloc_lock) (struct _reent *ptr);
|
||||
+ void (*malloc_unlock) (struct _reent *ptr);
|
||||
+ void (*lock_init) (_LOCK_T *lock);
|
||||
+ void (*lock_acquire) (_LOCK_T *lock);
|
||||
+ int (*lock_try_acquire) (_LOCK_T *lock);
|
||||
@@ -7444,10 +7456,10 @@ index 0000000..380329d
|
||||
+#endif // _SYS_STATVFS_H
|
||||
\ No newline at end of file
|
||||
diff --git a/newlib/libc/include/sys/syslimits.h b/newlib/libc/include/sys/syslimits.h
|
||||
index ba9dbd6..8bc19ff 100644
|
||||
index ba9dbd6..51d99ec 100644
|
||||
--- a/newlib/libc/include/sys/syslimits.h
|
||||
+++ b/newlib/libc/include/sys/syslimits.h
|
||||
@@ -44,12 +44,12 @@
|
||||
@@ -44,7 +44,7 @@
|
||||
#define LINK_MAX 32767 /* max file link count */
|
||||
#define MAX_CANON 255 /* max bytes in term canon input line */
|
||||
#define MAX_INPUT 255 /* max bytes in terminal input */
|
||||
@@ -7456,12 +7468,6 @@ index ba9dbd6..8bc19ff 100644
|
||||
#define NGROUPS_MAX 16 /* max supplemental group id's */
|
||||
#ifndef OPEN_MAX
|
||||
#define OPEN_MAX 64 /* max open files per process */
|
||||
#endif
|
||||
-#define PATH_MAX 1024 /* max bytes in pathname */
|
||||
+#define PATH_MAX 4096 /* max bytes in pathname */
|
||||
#define PIPE_BUF 512 /* max bytes for atomic pipe writes */
|
||||
#define IOV_MAX 1024 /* max elements in i/o vector */
|
||||
|
||||
diff --git a/newlib/libc/include/sys/types.h b/newlib/libc/include/sys/types.h
|
||||
index ed33e0a..79f73ac 100644
|
||||
--- a/newlib/libc/include/sys/types.h
|
||||
@@ -7725,8 +7731,80 @@ index 13e1e4c..ba71516 100644
|
||||
/* Cygwin starts up in UTF-8 mode. */
|
||||
= __utf8_wctomb;
|
||||
#else
|
||||
diff --git a/newlib/libc/sys/arm/sys/lock.h b/newlib/libc/sys/arm/sys/lock.h
|
||||
new file mode 100644
|
||||
index 0000000..567fed5
|
||||
--- /dev/null
|
||||
+++ b/newlib/libc/sys/arm/sys/lock.h
|
||||
@@ -0,0 +1,66 @@
|
||||
+#ifndef __SYS_LOCK_H__
|
||||
+#define __SYS_LOCK_H__
|
||||
+
|
||||
+#include <_ansi.h>
|
||||
+#include <stdint.h>
|
||||
+
|
||||
+typedef int32_t _LOCK_T;
|
||||
+
|
||||
+struct __lock_t {
|
||||
+ _LOCK_T lock;
|
||||
+ uint32_t thread_tag;
|
||||
+ uint32_t counter;
|
||||
+};
|
||||
+
|
||||
+typedef struct __lock_t _LOCK_RECURSIVE_T;
|
||||
+
|
||||
+extern void __libc_lock_init(_LOCK_T *lock);
|
||||
+extern void __libc_lock_init_recursive(_LOCK_RECURSIVE_T *lock);
|
||||
+extern void __libc_lock_close(_LOCK_T *lock);
|
||||
+extern void __libc_lock_close_recursive(_LOCK_RECURSIVE_T *lock);
|
||||
+extern void __libc_lock_acquire(_LOCK_T *lock);
|
||||
+extern void __libc_lock_acquire_recursive(_LOCK_RECURSIVE_T *lock);
|
||||
+extern void __libc_lock_release(_LOCK_T *lock);
|
||||
+extern void __libc_lock_release_recursive(_LOCK_RECURSIVE_T *lock);
|
||||
+
|
||||
+/* Returns 0 for success and non-zero for failure */
|
||||
+extern int __libc_lock_try_acquire(_LOCK_T *lock);
|
||||
+extern int __libc_lock_try_acquire_recursive(_LOCK_RECURSIVE_T *lock);
|
||||
+
|
||||
+#define __LOCK_INIT(CLASS,NAME) \
|
||||
+CLASS _LOCK_T NAME = 1;
|
||||
+
|
||||
+#define __LOCK_INIT_RECURSIVE(CLASS,NAME) \
|
||||
+CLASS _LOCK_RECURSIVE_T NAME = {1,0,0};
|
||||
+
|
||||
+#define __lock_init(NAME) \
|
||||
+ __libc_lock_init(&(NAME))
|
||||
+
|
||||
+#define __lock_init_recursive(NAME) \
|
||||
+ __libc_lock_init_recursive(&(NAME))
|
||||
+
|
||||
+#define __lock_close(NAME) \
|
||||
+ __libc_lock_close(&(NAME))
|
||||
+
|
||||
+#define __lock_close_recursive(NAME) \
|
||||
+ __libc_lock_close_recursive(&(NAME))
|
||||
+
|
||||
+#define __lock_acquire(NAME) \
|
||||
+ __libc_lock_acquire(&(NAME))
|
||||
+
|
||||
+#define __lock_acquire_recursive(NAME) \
|
||||
+ __libc_lock_acquire_recursive(&(NAME))
|
||||
+
|
||||
+#define __lock_try_acquire(NAME) \
|
||||
+ __libc_lock_try_acquire(&(NAME))
|
||||
+
|
||||
+#define __lock_try_acquire_recursive(NAME) \
|
||||
+ __libc_lock_try_acquire_recursive(&(NAME))
|
||||
+
|
||||
+#define __lock_release(NAME) \
|
||||
+ __libc_lock_release(&(NAME))
|
||||
+
|
||||
+#define __lock_release_recursive(NAME) \
|
||||
+ __libc_lock_release_recursive(&(NAME))
|
||||
+
|
||||
+#endif // __SYS_LOCK_H__
|
||||
diff --git a/newlib/libc/sys/arm/sys/param.h b/newlib/libc/sys/arm/sys/param.h
|
||||
index adc066e..4bf7ad5 100644
|
||||
index adc066e..836f80f 100644
|
||||
--- a/newlib/libc/sys/arm/sys/param.h
|
||||
+++ b/newlib/libc/sys/arm/sys/param.h
|
||||
@@ -3,10 +3,17 @@
|
||||
@@ -7739,13 +7817,12 @@ index adc066e..4bf7ad5 100644
|
||||
+#endif
|
||||
+#ifndef NOFILE
|
||||
# define NOFILE (60)
|
||||
-# define PATHSIZE (1024)
|
||||
+#endif
|
||||
+#ifndef PATHSIZE
|
||||
+# define PATHSIZE (4096)
|
||||
# define PATHSIZE (1024)
|
||||
+#endif
|
||||
|
||||
+#define MAXPATHLEN 4096
|
||||
+#define MAXPATHLEN PATHSIZE
|
||||
#define BIG_ENDIAN 4321
|
||||
#define LITTLE_ENDIAN 1234
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ include $(DEVKITARM)/base_rules
|
||||
|
||||
PORTLIBS := $(PORTLIBS_PATH)/armv6k $(PORTLIBS_PATH)/3ds
|
||||
|
||||
CTRULIB := $(DEVKITPRO)/libctru
|
||||
CTRULIB ?= $(DEVKITPRO)/libctru
|
||||
|
||||
ifeq ($(strip $(APP_TITLE)),)
|
||||
APP_TITLE := $(notdir $(OUTPUT))
|
||||
|
||||
@@ -20,10 +20,11 @@ PREFIX := arm-none-eabi-
|
||||
export CC := $(PREFIX)gcc
|
||||
export CXX := $(PREFIX)g++
|
||||
export AS := $(PREFIX)as
|
||||
export AR := $(PREFIX)ar
|
||||
export AR := $(PREFIX)gcc-ar
|
||||
export OBJCOPY := $(PREFIX)objcopy
|
||||
export STRIP := $(PREFIX)strip
|
||||
export NM := $(PREFIX)nm
|
||||
export NM := $(PREFIX)gcc-nm
|
||||
export RANLIB := $(PREFIX)gcc-ranlib
|
||||
|
||||
ISVC=$(or $(VCBUILDHELPER_COMMAND),$(MSBUILDEXTENSIONSPATH32),$(MSBUILDEXTENSIONSPATH))
|
||||
|
||||
|
||||
@@ -43,6 +43,8 @@ then
|
||||
--enable-languages=c,c++,objc,obj-c++ \
|
||||
--with-gnu-as --with-gnu-ld --with-gcc \
|
||||
--with-march=armv4t\
|
||||
--enable-cxx-flags='-ffunction-sections' \
|
||||
--disable-libstdcxx-verbose \
|
||||
--enable-poison-system-directories \
|
||||
--enable-interwork --enable-multilib \
|
||||
--disable-dependency-tracking \
|
||||
@@ -54,7 +56,7 @@ then
|
||||
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
|
||||
--prefix=$prefix \
|
||||
--enable-lto $plugin_ld\
|
||||
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 44" \
|
||||
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 45" \
|
||||
$CROSS_PARAMS \
|
||||
|| { echo "Error configuring gcc"; exit 1; }
|
||||
touch configured-gcc
|
||||
|
||||
257
dkppc/crtls/wup.ld
Normal file
257
dkppc/crtls/wup.ld
Normal file
@@ -0,0 +1,257 @@
|
||||
/*
|
||||
* Linkscript for Wii U
|
||||
*/
|
||||
|
||||
OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc", "elf32-powerpc");
|
||||
OUTPUT_ARCH(powerpc:common);
|
||||
EXTERN(_start);
|
||||
ENTRY(_start);
|
||||
|
||||
PHDRS
|
||||
{
|
||||
stub PT_LOAD FLAGS(5);
|
||||
text PT_LOAD FLAGS(5);
|
||||
data PT_LOAD FLAGS(6);
|
||||
bss1 PT_LOAD;
|
||||
bss2 PT_LOAD;
|
||||
}
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
/* default base address */
|
||||
/* use -Wl,--section-start,.init=0xADDRESS to change */
|
||||
. = 0x00802000;
|
||||
|
||||
/* Program */
|
||||
.init :
|
||||
{
|
||||
KEEP (*crt0.o(*.init))
|
||||
KEEP (*(.init))
|
||||
} :text = 0
|
||||
.plt : { *(.plt) }
|
||||
.interp : { *(.interp) }
|
||||
.hash : { *(.hash) }
|
||||
.dynsym : { *(.dynsym) }
|
||||
.dynstr : { *(.dynstr) }
|
||||
.gnu.version : { *(.gnu.version) }
|
||||
.gnu.version_d : { *(.gnu.version_d) }
|
||||
.gnu.version_r : { *(.gnu.version_r) }
|
||||
.rel.init : { *(.rel.init) }
|
||||
.rela.init : { *(.rela.init) }
|
||||
.rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
|
||||
.rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
|
||||
.rel.fini : { *(.rel.fini) }
|
||||
.rela.fini : { *(.rela.fini) }
|
||||
.rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) }
|
||||
.rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) }
|
||||
.rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
|
||||
.rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
|
||||
.rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
|
||||
.rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
|
||||
.rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
|
||||
.rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
|
||||
.rel.ctors : { *(.rel.ctors) }
|
||||
.rela.ctors : { *(.rela.ctors) }
|
||||
.rel.dtors : { *(.rel.dtors) }
|
||||
.rela.dtors : { *(.rela.dtors) }
|
||||
.rel.got : { *(.rel.got) }
|
||||
.rela.got : { *(.rela.got) }
|
||||
.rela.got1 : { *(.rela.got1) }
|
||||
.rela.got2 : { *(.rela.got2) }
|
||||
.rel.sdata : { *(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*) }
|
||||
.rela.sdata : { *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*) }
|
||||
.rel.sbss : { *(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*) }
|
||||
.rela.sbss : { *(.rela.sbss .rela.sbss.* .rel.gnu.linkonce.sb.*) }
|
||||
.rel.sdata2 : { *(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*) }
|
||||
.rela.sdata2 : { *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*) }
|
||||
.rel.sbss2 : { *(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*) }
|
||||
.rela.sbss2 : { *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*) }
|
||||
.rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) }
|
||||
.rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
|
||||
.rel.plt : { *(.rel.plt) }
|
||||
.rela.plt : { *(.rela.plt) }
|
||||
|
||||
.text :
|
||||
{
|
||||
*(.text)
|
||||
*(.text.*)
|
||||
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||
*(.gnu.warning)
|
||||
*(.gnu.linkonce.t.*)
|
||||
. = ALIGN(32); /* REQUIRED. LD is flaky without it. */
|
||||
} = 0
|
||||
|
||||
.fini :
|
||||
{
|
||||
KEEP (*(.fini))
|
||||
. = ALIGN(32); /* REQUIRED. LD is flaky without it. */
|
||||
} = 0
|
||||
|
||||
PROVIDE (__etext = .);
|
||||
PROVIDE (_etext = .);
|
||||
PROVIDE (etext = .);
|
||||
|
||||
.rodata : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r.*) } :data
|
||||
.rodata1 : { *(.rodata1) }
|
||||
.sdata2 : { *(.sdata2) *(.sdata2.*) *(.gnu.linkonce.s2.*) }
|
||||
.sbss2 : { *(.sbss2) *(.sbss2.*) *(.gnu.linkonce.sb2.*) }
|
||||
/* Adjust the address for the data segment. We want to adjust up to
|
||||
the same address within the page on the next page up. */
|
||||
/* Ensure the __preinit_array_start label is properly aligned. We
|
||||
could instead move the label definition inside the section, but
|
||||
the linker would then create the section even if it turns out to
|
||||
be empty, which isn't pretty. */
|
||||
. = ALIGN(32 / 8);
|
||||
PROVIDE (__preinit_array_start = .);
|
||||
.preinit_array : { *(.preinit_array) }
|
||||
PROVIDE (__preinit_array_end = .);
|
||||
PROVIDE (__init_array_start = .);
|
||||
.init_array : { *(.init_array) }
|
||||
PROVIDE (__init_array_end = .);
|
||||
PROVIDE (__fini_array_start = .);
|
||||
.fini_array : { *(.fini_array) }
|
||||
PROVIDE (__fini_array_end = .);
|
||||
.data :
|
||||
{
|
||||
*(.data)
|
||||
*(.data.*)
|
||||
*(.gnu.linkonce.d.*)
|
||||
SORT(CONSTRUCTORS)
|
||||
. = ALIGN(32); /* REQUIRED. LD is flaky without it. */
|
||||
}
|
||||
|
||||
.data1 : { *(.data1) }
|
||||
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
|
||||
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
|
||||
.eh_frame : { KEEP (*(.eh_frame)) }
|
||||
.gcc_except_table : { *(.gcc_except_table) }
|
||||
.fixup : { *(.fixup) }
|
||||
.got1 : { *(.got1) }
|
||||
.got2 : { *(.got2) }
|
||||
.dynamic : { *(.dynamic) }
|
||||
|
||||
.ctors :
|
||||
{
|
||||
/* gcc uses crtbegin.o to find the start of
|
||||
the constructors, so we make sure it is
|
||||
first. Because this is a wildcard, it
|
||||
doesn't matter if the user does not
|
||||
actually link against crtbegin.o; the
|
||||
linker won't look for a file to match a
|
||||
wildcard. The wildcard also means that it
|
||||
doesn't matter which directory crtbegin.o
|
||||
is in. */
|
||||
|
||||
KEEP (*crtbegin.o(.ctors))
|
||||
|
||||
/* We don't want to include the .ctor section from
|
||||
from the crtend.o file until after the sorted ctors.
|
||||
The .ctor section from the crtend file contains the
|
||||
end of ctors marker and it must be last */
|
||||
|
||||
KEEP (*(EXCLUDE_FILE (*crtend.o ) .ctors))
|
||||
KEEP (*(SORT(.ctors.*)))
|
||||
KEEP (*(.ctors))
|
||||
. = ALIGN(32); /* REQUIRED. LD is flaky without it. */
|
||||
}
|
||||
|
||||
.dtors :
|
||||
{
|
||||
KEEP (*crtbegin.o(.dtors))
|
||||
KEEP (*(EXCLUDE_FILE (*crtend.o ) .dtors))
|
||||
KEEP (*(SORT(.dtors.*)))
|
||||
KEEP (*(.dtors))
|
||||
. = ALIGN(32); /* REQUIRED. LD is flaky without it. */
|
||||
}
|
||||
|
||||
.jcr : { KEEP (*(.jcr)) }
|
||||
.got : { *(.got.plt) *(.got) }
|
||||
|
||||
|
||||
/* We want the small data sections together, so single-instruction offsets
|
||||
can access them all, and initialized data all before uninitialized, so
|
||||
we can shorten the on-disk segment size. */
|
||||
|
||||
.sdata :
|
||||
{
|
||||
*(.sdata)
|
||||
*(.sdata.*)
|
||||
*(.gnu.linkonce.s.*)
|
||||
. = ALIGN(32); /* REQUIRED. LD is flaky without it. */
|
||||
}
|
||||
|
||||
_edata = .;
|
||||
PROVIDE (edata = .);
|
||||
|
||||
.sbss :
|
||||
{
|
||||
__sbss_start = .;
|
||||
PROVIDE (__sbss_start = .);
|
||||
PROVIDE (___sbss_start = .);
|
||||
*(.dynsbss)
|
||||
*(.sbss)
|
||||
*(.sbss.*)
|
||||
*(.gnu.linkonce.sb.*)
|
||||
*(.scommon)
|
||||
PROVIDE (__sbss_end = .);
|
||||
PROVIDE (___sbss_end = .);
|
||||
. = ALIGN(32); /* REQUIRED. LD is flaky without it. */
|
||||
__sbss_end = .;
|
||||
} :bss1
|
||||
|
||||
.bss :
|
||||
{
|
||||
__bss_start = .;
|
||||
PROVIDE (__bss_start = .);
|
||||
*(.dynbss)
|
||||
*(.bss)
|
||||
*(.bss.*)
|
||||
*(.gnu.linkonce.b.*)
|
||||
*(COMMON)
|
||||
/* Align here to ensure that the .bss section occupies space up to
|
||||
_end. Align after .bss to ensure correct alignment even if the
|
||||
.bss section disappears because there are no input sections. */
|
||||
|
||||
. = ALIGN(32);
|
||||
|
||||
PROVIDE (__bss_end = .);
|
||||
__bss_end = .;
|
||||
} :bss2
|
||||
|
||||
_end = .;
|
||||
PROVIDE(end = .);
|
||||
/* Stabs debugging sections. */
|
||||
.stab 0 : { *(.stab) }
|
||||
.stabstr 0 : { *(.stabstr) }
|
||||
.stab.excl 0 : { *(.stab.excl) }
|
||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||
.stab.index 0 : { *(.stab.index) }
|
||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||
.comment 0 : { *(.comment) }
|
||||
/* DWARF debug sections.
|
||||
Symbols in the DWARF debugging sections are relative to the beginning
|
||||
of the section so we begin them at 0. */
|
||||
/* DWARF 1 */
|
||||
.debug 0 : { *(.debug) }
|
||||
.line 0 : { *(.line) }
|
||||
/* GNU DWARF 1 extensions */
|
||||
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||
/* DWARF 1.1 and DWARF 2 */
|
||||
.debug_aranges 0 : { *(.debug_aranges) }
|
||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||
/* DWARF 2 */
|
||||
.debug_info 0 : { *(.debug_info) }
|
||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||
.debug_line 0 : { *(.debug_line) }
|
||||
.debug_frame 0 : { *(.debug_frame) }
|
||||
.debug_str 0 : { *(.debug_str) }
|
||||
.debug_loc 0 : { *(.debug_loc) }
|
||||
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||
/* SGI/MIPS DWARF 2 extensions */
|
||||
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||
.debug_typenames 0 : { *(.debug_typenames) }
|
||||
.debug_varnames 0 : { *(.debug_varnames) }
|
||||
/* These must appear regardless of . */
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
diff -Nbaur binutils-2.24/opcodes/ppc-opc.c binutils-2.24-ppc/opcodes/ppc-opc.c
|
||||
--- binutils-2.24/opcodes/ppc-opc.c 2013-11-04 15:33:40.000000000 +0000
|
||||
+++ binutils-2.24-ppc/opcodes/ppc-opc.c 2014-04-01 14:22:06.000000000 +0100
|
||||
@@ -2735,7 +2735,7 @@
|
||||
#define MFDEC1 PPC_OPCODE_POWER
|
||||
#define MFDEC2 PPC_OPCODE_PPC | PPC_OPCODE_601 | PPC_OPCODE_BOOKE | PPC_OPCODE_TITAN
|
||||
#define BOOKE PPC_OPCODE_BOOKE
|
||||
-#define NO371 PPC_OPCODE_BOOKE | PPC_OPCODE_PPCPS | PPC_OPCODE_EFS | PPC_OPCODE_VLE
|
||||
+#define NO371 PPC_OPCODE_BOOKE | PPC_OPCODE_EFS | PPC_OPCODE_VLE
|
||||
#define PPCE300 PPC_OPCODE_E300
|
||||
#define PPCSPE PPC_OPCODE_SPE | PPC_OPCODE_VLE
|
||||
#define PPCISEL PPC_OPCODE_ISEL | PPC_OPCODE_VLE
|
||||
12
dkppc/patches/binutils-2.27.patch
Normal file
12
dkppc/patches/binutils-2.27.patch
Normal file
@@ -0,0 +1,12 @@
|
||||
diff -Nbaur binutils-2.27/opcodes/ppc-opc.c binutils-2.27-ppc/opcodes/ppc-opc.c
|
||||
--- binutils-2.27/opcodes/ppc-opc.c 2016-08-03 08:36:54.000000000 +0100
|
||||
+++ binutils-2.27-ppc/opcodes/ppc-opc.c 2016-11-08 21:37:45.360000000 +0000
|
||||
@@ -3037,7 +3037,7 @@
|
||||
#define MFDEC1 PPC_OPCODE_POWER
|
||||
#define MFDEC2 PPC_OPCODE_PPC | PPC_OPCODE_601 | PPC_OPCODE_BOOKE | PPC_OPCODE_TITAN
|
||||
#define BOOKE PPC_OPCODE_BOOKE
|
||||
-#define NO371 PPC_OPCODE_BOOKE | PPC_OPCODE_PPCPS | PPC_OPCODE_EFS
|
||||
+#define NO371 PPC_OPCODE_BOOKE | PPC_OPCODE_EFS
|
||||
#define PPCE300 PPC_OPCODE_E300
|
||||
#define PPCSPE PPC_OPCODE_SPE
|
||||
#define PPCISEL PPC_OPCODE_ISEL
|
||||
@@ -1,7 +1,7 @@
|
||||
diff -Nbaur gcc-4.8.2/gcc/config/rs6000/rs6000.h gcc-4.8.2-ppc/gcc/config/rs6000/rs6000.h
|
||||
--- gcc-4.8.2/gcc/config/rs6000/rs6000.h 2013-06-19 02:18:38.000000000 +0100
|
||||
+++ gcc-4.8.2-ppc/gcc/config/rs6000/rs6000.h 2014-04-01 14:13:11.000000000 +0100
|
||||
@@ -195,6 +195,7 @@
|
||||
diff -NBaur gcc-6.1.0/gcc/config/rs6000/rs6000.h gcc-6.1.0-ppc/gcc/config/rs6000/rs6000.h
|
||||
--- gcc-6.1.0/gcc/config/rs6000/rs6000.h 2016-01-20 20:30:24.000000000 +0000
|
||||
+++ gcc-6.1.0-ppc/gcc/config/rs6000/rs6000.h 2016-05-20 12:10:24.645019640 +0100
|
||||
@@ -205,6 +205,7 @@
|
||||
{ "asm_cpu_476", ASM_CPU_476_SPEC }, \
|
||||
SUBTARGET_EXTRA_SPECS
|
||||
|
||||
@@ -9,42 +9,44 @@ diff -Nbaur gcc-4.8.2/gcc/config/rs6000/rs6000.h gcc-4.8.2-ppc/gcc/config/rs6000
|
||||
/* -mcpu=native handling only makes sense with compiler running on
|
||||
an PowerPC chip. If changing this condition, also change
|
||||
the condition in driver-rs6000.c. */
|
||||
@@ -209,6 +210,8 @@
|
||||
@@ -219,6 +220,8 @@
|
||||
#else
|
||||
#define ASM_CPU_NATIVE_SPEC "%(asm_default)"
|
||||
#endif
|
||||
+#endif
|
||||
+#endif
|
||||
+#define ASM_CPU_NATIVE_SPEC "%(asm_default)"
|
||||
|
||||
#ifndef CC1_CPU_SPEC
|
||||
#ifdef HAVE_LOCAL_CPU_DETECT
|
||||
diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.h gcc-4.8.2-ppc/gcc/config/rs6000/sysv4.h
|
||||
--- gcc-4.8.2/gcc/config/rs6000/sysv4.h 2013-06-19 02:18:38.000000000 +0100
|
||||
+++ gcc-4.8.2-ppc/gcc/config/rs6000/sysv4.h 2014-04-01 14:13:11.000000000 +0100
|
||||
@@ -570,7 +570,11 @@
|
||||
diff -NBaur gcc-6.1.0/gcc/config/rs6000/sysv4.h gcc-6.1.0-ppc/gcc/config/rs6000/sysv4.h
|
||||
--- gcc-6.1.0/gcc/config/rs6000/sysv4.h 2016-01-04 14:30:50.000000000 +0000
|
||||
+++ gcc-6.1.0-ppc/gcc/config/rs6000/sysv4.h 2016-05-20 12:12:27.073019640 +0100
|
||||
@@ -559,7 +559,12 @@
|
||||
|
||||
/* Default starting address if specified. */
|
||||
#define LINK_START_SPEC "\
|
||||
-%{mads : %(link_start_ads) ; \
|
||||
+%{mgcn|mogc : %(link_start_ogc) ; \
|
||||
+%{mgcn|mogc : %(link_start_ogc) ; \
|
||||
+ mvgc : %(link_start_vgc) ; \
|
||||
+ mgcbios : %(link_start_gcb) ; \
|
||||
+ mgcbios : %(link_start_gcb) ; \
|
||||
+ mrvl : %(link_start_rvl) ; \
|
||||
+ mwup : %(link_start_wup) ; \
|
||||
+ mads : %(link_start_ads) ; \
|
||||
myellowknife : %(link_start_yellowknife) ; \
|
||||
mmvme : %(link_start_mvme) ; \
|
||||
msim : %(link_start_sim) ; \
|
||||
@@ -604,7 +608,8 @@
|
||||
@@ -590,7 +594,9 @@
|
||||
|
||||
/* Any specific OS flags. */
|
||||
#define LINK_OS_SPEC "\
|
||||
-%{mads : %(link_os_ads) ; \
|
||||
+%{mgcn|mogc|mvgc|mgcbios|mrvl : %(link_os_ogc) ; \
|
||||
+ mwup : %(link_os_wup) ; \
|
||||
+ mads : %(link_os_ads) ; \
|
||||
myellowknife : %(link_os_yellowknife) ; \
|
||||
mmvme : %(link_os_mvme) ; \
|
||||
msim : %(link_os_sim) ; \
|
||||
@@ -622,7 +627,10 @@
|
||||
@@ -608,7 +613,11 @@
|
||||
/* Override rs6000.h definition. */
|
||||
#undef CPP_SPEC
|
||||
#define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \
|
||||
@@ -52,11 +54,12 @@ diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.h gcc-4.8.2-ppc/gcc/config/rs6000/
|
||||
+%{mgcn : %(cpp_os_gcn) ; \
|
||||
+ mogc|mvgc|mgcbios : %(cpp_os_ogc) ; \
|
||||
+ mrvl : %(cpp_os_rvl) ; \
|
||||
+ mwup : %(cpp_os_wup) ; \
|
||||
+ mads : %(cpp_os_ads) ; \
|
||||
myellowknife : %(cpp_os_yellowknife) ; \
|
||||
mmvme : %(cpp_os_mvme) ; \
|
||||
msim : %(cpp_os_sim) ; \
|
||||
@@ -636,7 +644,10 @@
|
||||
@@ -622,7 +630,11 @@
|
||||
|
||||
#undef STARTFILE_SPEC
|
||||
#define STARTFILE_SPEC "\
|
||||
@@ -64,11 +67,12 @@ diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.h gcc-4.8.2-ppc/gcc/config/rs6000/
|
||||
+%{mgcn : %(startfile_gcn) ; \
|
||||
+ mogc|mvgc|mgcbios : %(startfile_ogc) ; \
|
||||
+ mrvl : %(startfile_ogc) ; \
|
||||
+ mwup : %(startfile_wup) ; \
|
||||
+ mads : %(startfile_ads) ; \
|
||||
myellowknife : %(startfile_yellowknife) ; \
|
||||
mmvme : %(startfile_mvme) ; \
|
||||
msim : %(startfile_sim) ; \
|
||||
@@ -646,11 +657,12 @@
|
||||
@@ -632,11 +643,13 @@
|
||||
mcall-openbsd: %(startfile_openbsd) ; \
|
||||
: %(startfile_default) }"
|
||||
|
||||
@@ -79,11 +83,12 @@ diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.h gcc-4.8.2-ppc/gcc/config/rs6000/
|
||||
#define LIB_SPEC "\
|
||||
-%{mads : %(lib_ads) ; \
|
||||
+%{mgcn|mogc|mvgc|mgcbios|mrvl : %(lib_ogc) ; \
|
||||
+ mwup : %(lib_wup) ; \
|
||||
+ mads : %(lib_ads) ; \
|
||||
myellowknife : %(lib_yellowknife) ; \
|
||||
mmvme : %(lib_mvme) ; \
|
||||
msim : %(lib_sim) ; \
|
||||
@@ -660,11 +672,12 @@
|
||||
@@ -646,11 +658,13 @@
|
||||
mcall-openbsd: %(lib_openbsd) ; \
|
||||
: %(lib_default) }"
|
||||
|
||||
@@ -94,98 +99,111 @@ diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.h gcc-4.8.2-ppc/gcc/config/rs6000/
|
||||
#define ENDFILE_SPEC "\
|
||||
-%{mads : %(endfile_ads) ; \
|
||||
+%{mgcn|mogc|mvgc|mgcbios|mrvl : %(endfile_ogc) ; \
|
||||
+ mwup : %(endfile_wup) ; \
|
||||
+ mads : %(endfile_ads) ; \
|
||||
myellowknife : %(endfile_yellowknife) ; \
|
||||
mmvme : %(endfile_mvme) ; \
|
||||
msim : %(endfile_sim) ; \
|
||||
@@ -680,16 +693,27 @@
|
||||
@@ -666,16 +679,33 @@
|
||||
|
||||
/* Motorola ADS support. */
|
||||
#define LIB_ADS_SPEC "--start-group -lads -lc --end-group"
|
||||
+#define LIB_OGC_SPEC "--start-group -lsysbase -lc --end-group"
|
||||
+#define LIB_WUP_SPEC "--start-group -lsysbase -lc --end-group"
|
||||
|
||||
#define STARTFILE_ADS_SPEC "ecrti.o%s crt0.o%s crtbegin.o%s"
|
||||
+#define STARTFILE_OGC_SPEC "ecrti.o%s crtbegin.o%s crtmain.o%s"
|
||||
+#define STARTFILE_WUP_SPEC "ecrti.o%s crtbegin.o%s crtmain.o%s"
|
||||
|
||||
#define ENDFILE_ADS_SPEC "crtend.o%s ecrtn.o%s"
|
||||
+#define ENDFILE_OGC_SPEC "crtend.o%s ecrtn.o%s"
|
||||
+#define ENDFILE_WUP_SPEC "crtend.o%s ecrtn.o%s"
|
||||
|
||||
#define LINK_START_ADS_SPEC "-T ads.ld%s"
|
||||
+#define LINK_START_OGC_SPEC "-T ogc.ld%s"
|
||||
+#define LINK_START_RVL_SPEC "-T rvl.ld%s"
|
||||
+#define LINK_START_WUP_SPEC "-T wup.ld%s"
|
||||
+#define LINK_START_VGC_SPEC "-T vgcogc.ld%s"
|
||||
+#define LINK_START_GCB_SPEC "-T gcbogc.ld%s"
|
||||
|
||||
#define LINK_OS_ADS_SPEC ""
|
||||
+#define LINK_OS_OGC_SPEC "--gc-sections"
|
||||
+#define LINK_OS_WUP_SPEC "--gc-sections"
|
||||
|
||||
#define CPP_OS_ADS_SPEC ""
|
||||
+#define CPP_OS_GCN_SPEC "-D__gamecube__ -ffunction-sections -fdata-sections"
|
||||
+#define CPP_OS_OGC_SPEC "-D__gamecube__ -DHW_DOL -ffunction-sections -fdata-sections"
|
||||
+#define CPP_OS_RVL_SPEC "-D__wii__ -DHW_RVL -ffunction-sections -fdata-sections"
|
||||
+#define CPP_OS_WUP_SPEC "-D__wiiu__ -DHW_WUP -ffunction-sections -fdata-sections"
|
||||
|
||||
/* Motorola Yellowknife support. */
|
||||
#define LIB_YELLOWKNIFE_SPEC "--start-group -lyk -lc --end-group"
|
||||
@@ -859,6 +883,7 @@
|
||||
@@ -855,6 +879,8 @@
|
||||
#undef SUBTARGET_EXTRA_SPECS
|
||||
#define SUBTARGET_EXTRA_SPECS \
|
||||
{ "crtsavres_default", CRTSAVRES_DEFAULT_SPEC }, \
|
||||
+ { "lib_ogc", LIB_OGC_SPEC }, \
|
||||
+ { "lib_wup", LIB_WUP_SPEC }, \
|
||||
{ "lib_ads", LIB_ADS_SPEC }, \
|
||||
{ "lib_yellowknife", LIB_YELLOWKNIFE_SPEC }, \
|
||||
{ "lib_mvme", LIB_MVME_SPEC }, \
|
||||
@@ -868,6 +893,7 @@
|
||||
@@ -864,6 +889,8 @@
|
||||
{ "lib_netbsd", LIB_NETBSD_SPEC }, \
|
||||
{ "lib_openbsd", LIB_OPENBSD_SPEC }, \
|
||||
{ "lib_default", LIB_DEFAULT_SPEC }, \
|
||||
+ { "startfile_ogc", STARTFILE_OGC_SPEC }, \
|
||||
+ { "startfile_wup", STARTFILE_WUP_SPEC }, \
|
||||
{ "startfile_ads", STARTFILE_ADS_SPEC }, \
|
||||
{ "startfile_yellowknife", STARTFILE_YELLOWKNIFE_SPEC }, \
|
||||
{ "startfile_mvme", STARTFILE_MVME_SPEC }, \
|
||||
@@ -877,6 +903,7 @@
|
||||
@@ -873,6 +899,8 @@
|
||||
{ "startfile_netbsd", STARTFILE_NETBSD_SPEC }, \
|
||||
{ "startfile_openbsd", STARTFILE_OPENBSD_SPEC }, \
|
||||
{ "startfile_default", STARTFILE_DEFAULT_SPEC }, \
|
||||
+ { "endfile_ogc", ENDFILE_OGC_SPEC }, \
|
||||
+ { "endfile_wup", ENDFILE_WUP_SPEC }, \
|
||||
{ "endfile_ads", ENDFILE_ADS_SPEC }, \
|
||||
{ "endfile_yellowknife", ENDFILE_YELLOWKNIFE_SPEC }, \
|
||||
{ "endfile_mvme", ENDFILE_MVME_SPEC }, \
|
||||
@@ -889,7 +916,11 @@
|
||||
@@ -884,7 +911,12 @@
|
||||
{ "endfile_default", ENDFILE_DEFAULT_SPEC }, \
|
||||
{ "link_shlib", LINK_SHLIB_SPEC }, \
|
||||
{ "link_target", LINK_TARGET_SPEC }, \
|
||||
{ "link_start", LINK_START_SPEC }, \
|
||||
+ { "link_start_vgc", LINK_START_VGC_SPEC }, \
|
||||
+ { "link_start_gcb", LINK_START_GCB_SPEC }, \
|
||||
+ { "link_start_rvl", LINK_START_RVL_SPEC }, \
|
||||
+ { "link_start_wup", LINK_START_WUP_SPEC }, \
|
||||
{ "link_start_ads", LINK_START_ADS_SPEC }, \
|
||||
+ { "link_start_ogc", LINK_START_OGC_SPEC }, \
|
||||
{ "link_start_yellowknife", LINK_START_YELLOWKNIFE_SPEC }, \
|
||||
{ "link_start_mvme", LINK_START_MVME_SPEC }, \
|
||||
{ "link_start_sim", LINK_START_SIM_SPEC }, \
|
||||
@@ -899,6 +930,7 @@
|
||||
@@ -894,6 +925,8 @@
|
||||
{ "link_start_openbsd", LINK_START_OPENBSD_SPEC }, \
|
||||
{ "link_start_default", LINK_START_DEFAULT_SPEC }, \
|
||||
{ "link_os", LINK_OS_SPEC }, \
|
||||
+ { "link_os_ogc", LINK_OS_OGC_SPEC }, \
|
||||
+ { "link_os_wup", LINK_OS_WUP_SPEC }, \
|
||||
{ "link_os_ads", LINK_OS_ADS_SPEC }, \
|
||||
{ "link_os_yellowknife", LINK_OS_YELLOWKNIFE_SPEC }, \
|
||||
{ "link_os_mvme", LINK_OS_MVME_SPEC }, \
|
||||
@@ -912,6 +944,9 @@
|
||||
{ "cc1_endian_little", CC1_ENDIAN_LITTLE_SPEC }, \
|
||||
{ "cc1_endian_default", CC1_ENDIAN_DEFAULT_SPEC }, \
|
||||
@@ -905,6 +937,10 @@
|
||||
{ "link_os_default", LINK_OS_DEFAULT_SPEC }, \
|
||||
{ "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \
|
||||
{ "link_secure_plt", LINK_SECURE_PLT_SPEC }, \
|
||||
+ { "cpp_os_gcn", CPP_OS_GCN_SPEC }, \
|
||||
+ { "cpp_os_ogc", CPP_OS_OGC_SPEC }, \
|
||||
+ { "cpp_os_rvl", CPP_OS_RVL_SPEC }, \
|
||||
+ { "cpp_os_wup", CPP_OS_WUP_SPEC }, \
|
||||
{ "cpp_os_ads", CPP_OS_ADS_SPEC }, \
|
||||
{ "cpp_os_yellowknife", CPP_OS_YELLOWKNIFE_SPEC }, \
|
||||
{ "cpp_os_mvme", CPP_OS_MVME_SPEC }, \
|
||||
diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.opt gcc-4.8.2-ppc/gcc/config/rs6000/sysv4.opt
|
||||
--- gcc-4.8.2/gcc/config/rs6000/sysv4.opt 2013-01-10 20:38:27.000000000 +0000
|
||||
+++ gcc-4.8.2-ppc/gcc/config/rs6000/sysv4.opt 2014-04-01 14:13:11.000000000 +0100
|
||||
@@ -120,6 +120,26 @@
|
||||
diff -NBaur gcc-6.1.0/gcc/config/rs6000/sysv4.opt gcc-6.1.0-ppc/gcc/config/rs6000/sysv4.opt
|
||||
--- gcc-6.1.0/gcc/config/rs6000/sysv4.opt 2016-01-04 14:30:50.000000000 +0000
|
||||
+++ gcc-6.1.0-ppc/gcc/config/rs6000/sysv4.opt 2016-05-20 12:10:24.649019640 +0100
|
||||
@@ -120,6 +120,30 @@
|
||||
Target RejectNegative
|
||||
Link with libads.a, libc.a and crt0.o
|
||||
Link with libads.a, libc.a and crt0.o.
|
||||
|
||||
+mgcn
|
||||
+Target RejectNegative
|
||||
@@ -206,14 +224,18 @@ diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.opt gcc-4.8.2-ppc/gcc/config/rs600
|
||||
+mrvl
|
||||
+Target RejectNegative
|
||||
+Link with libsysbase.a and libc.a, use rvl linker script
|
||||
+
|
||||
+mwup
|
||||
+Target RejectNegative
|
||||
+Link with libsysbase.a and libc.a, use wup linker script
|
||||
+
|
||||
myellowknife
|
||||
Target RejectNegative
|
||||
Link with libyk.a, libc.a and crt0.o
|
||||
diff -Nbaur gcc-4.8.2/gcc/config.gcc gcc-4.8.2-ppc/gcc/config.gcc
|
||||
--- gcc-4.8.2/gcc/config.gcc 2013-10-03 01:47:24.000000000 +0100
|
||||
+++ gcc-4.8.2-ppc/gcc/config.gcc 2014-04-01 14:13:11.000000000 +0100
|
||||
@@ -2057,7 +2057,7 @@
|
||||
Link with libyk.a, libc.a and crt0.o.
|
||||
diff -NBaur gcc-6.1.0/gcc/config.gcc gcc-6.1.0-ppc/gcc/config.gcc
|
||||
--- gcc-6.1.0/gcc/config.gcc 2016-04-11 11:14:59.000000000 +0100
|
||||
+++ gcc-6.1.0-ppc/gcc/config.gcc 2016-05-20 12:10:24.661019640 +0100
|
||||
@@ -2381,7 +2381,7 @@
|
||||
use_gcc_stdint=wrap
|
||||
;;
|
||||
powerpc-*-eabi*)
|
||||
@@ -222,10 +244,24 @@ diff -Nbaur gcc-4.8.2/gcc/config.gcc gcc-4.8.2-ppc/gcc/config.gcc
|
||||
extra_options="${extra_options} rs6000/sysv4.opt"
|
||||
tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
|
||||
use_gcc_stdint=wrap
|
||||
diff -Nbaur gcc-4.8.2/libcpp/Makefile.in gcc-4.8.2-ppc/libcpp/Makefile.in
|
||||
--- gcc-4.8.2/libcpp/Makefile.in 2013-10-16 08:27:58.000000000 +0100
|
||||
+++ gcc-4.8.2-ppc/libcpp/Makefile.in 2014-04-01 14:13:11.000000000 +0100
|
||||
@@ -207,8 +207,7 @@
|
||||
diff -NBaur gcc-6.1.0/gcc/Makefile.in gcc-6.1.0-ppc/gcc/Makefile.in
|
||||
--- gcc-6.1.0/gcc/Makefile.in 2016-04-15 12:49:39.000000000 +0100
|
||||
+++ gcc-6.1.0-ppc/gcc/Makefile.in 2016-05-20 12:10:24.641019640 +0100
|
||||
@@ -1073,8 +1073,8 @@
|
||||
# things like the go/%.o rule work properly; but we use $(*F) for the
|
||||
# file part, as we just want the file part of the stem, not the entire
|
||||
# file name.
|
||||
-COMPILE = $(COMPILE.base) -MT $@ -MMD -MP -MF $(@D)/$(DEPDIR)/$(*F).TPo
|
||||
-POSTCOMPILE = @mv $(@D)/$(DEPDIR)/$(*F).TPo $(@D)/$(DEPDIR)/$(*F).Po
|
||||
+COMPILE = $(COMPILE.base)
|
||||
+POSTCOMPILE =
|
||||
else
|
||||
COMPILE = source='$<' object='$@' libtool=no \
|
||||
DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) $(COMPILE.base)
|
||||
diff -NBaur gcc-6.1.0/libcpp/Makefile.in gcc-6.1.0-ppc/libcpp/Makefile.in
|
||||
--- gcc-6.1.0/libcpp/Makefile.in 2016-04-27 09:22:11.000000000 +0100
|
||||
+++ gcc-6.1.0-ppc/libcpp/Makefile.in 2016-05-20 12:10:24.661019640 +0100
|
||||
@@ -208,8 +208,7 @@
|
||||
# Note that we put the dependencies into a .Tpo file, then move them
|
||||
# into place if the compile succeeds. We need this because gcc does
|
||||
# not atomically write the dependency output file.
|
||||
@@ -235,9 +271,9 @@ diff -Nbaur gcc-4.8.2/libcpp/Makefile.in gcc-4.8.2-ppc/libcpp/Makefile.in
|
||||
else
|
||||
COMPILE = source='$<' object='$@' libtool=no DEPDIR=$(DEPDIR) $(DEPMODE) \
|
||||
$(depcomp) $(COMPILE.base)
|
||||
diff -Nbaur gcc-4.8.2/libgcc/config/rs6000/crtrestvr.S gcc-4.8.2-ppc/libgcc/config/rs6000/crtrestvr.S
|
||||
--- gcc-4.8.2/libgcc/config/rs6000/crtrestvr.S 2013-02-04 19:06:20.000000000 +0000
|
||||
+++ gcc-4.8.2-ppc/libgcc/config/rs6000/crtrestvr.S 2014-04-01 14:13:11.000000000 +0100
|
||||
diff -NBaur gcc-6.1.0/libgcc/config/rs6000/crtrestvr.S gcc-6.1.0-ppc/libgcc/config/rs6000/crtrestvr.S
|
||||
--- gcc-6.1.0/libgcc/config/rs6000/crtrestvr.S 2016-01-04 14:30:50.000000000 +0000
|
||||
+++ gcc-6.1.0-ppc/libgcc/config/rs6000/crtrestvr.S 2016-05-20 12:10:24.665019640 +0100
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
/* On PowerPC64 Linux, these functions are provided by the linker. */
|
||||
@@ -252,31 +288,43 @@ diff -Nbaur gcc-4.8.2/libgcc/config/rs6000/crtrestvr.S gcc-4.8.2-ppc/libgcc/conf
|
||||
|
||||
#endif
|
||||
+#endif
|
||||
diff -Nbaur gcc-4.8.2/libgcc/config/rs6000/crtsavevr.S gcc-4.8.2-ppc/libgcc/config/rs6000/crtsavevr.S
|
||||
--- gcc-4.8.2/libgcc/config/rs6000/crtsavevr.S 2013-02-04 19:06:20.000000000 +0000
|
||||
+++ gcc-4.8.2-ppc/libgcc/config/rs6000/crtsavevr.S 2014-04-01 14:13:11.000000000 +0100
|
||||
@@ -24,6 +24,7 @@
|
||||
diff -NBaur gcc-6.1.0/libgcc/config/rs6000/crtsavevr.S gcc-6.1.0-ppc/libgcc/config/rs6000/crtsavevr.S
|
||||
--- gcc-6.1.0/libgcc/config/rs6000/crtsavevr.S 2016-01-04 14:30:50.000000000 +0000
|
||||
+++ gcc-6.1.0-ppc/libgcc/config/rs6000/crtsavevr.S 2016-05-20 12:10:24.665019640 +0100
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
/* On PowerPC64 Linux, these functions are provided by the linker. */
|
||||
#ifndef __powerpc64__
|
||||
-
|
||||
+#if 0
|
||||
|
||||
#undef __ALTIVEC__
|
||||
#define __ALTIVEC__ 1
|
||||
@@ -85,3 +86,4 @@
|
||||
#include "ppc-asm.h"
|
||||
@@ -85,3 +85,4 @@
|
||||
CFI_ENDPROC
|
||||
|
||||
#endif
|
||||
+#endif
|
||||
diff -Nbaur gcc-4.8.2/libgcc/crtstuff.c gcc-4.8.2-ppc/libgcc/crtstuff.c
|
||||
--- gcc-4.8.2/libgcc/crtstuff.c 2013-02-04 19:06:20.000000000 +0000
|
||||
+++ gcc-4.8.2-ppc/libgcc/crtstuff.c 2014-04-01 14:13:11.000000000 +0100
|
||||
@@ -47,7 +47,7 @@
|
||||
diff -NBaur gcc-6.1.0/libgcc/crtstuff.c gcc-6.1.0-ppc/libgcc/crtstuff.c
|
||||
--- gcc-6.1.0/libgcc/crtstuff.c 2016-01-04 14:30:50.000000000 +0000
|
||||
+++ gcc-6.1.0-ppc/libgcc/crtstuff.c 2016-05-20 12:10:24.669019640 +0100
|
||||
@@ -47,6 +47,7 @@
|
||||
|
||||
/* Target machine header files require this define. */
|
||||
#define IN_LIBGCC2
|
||||
-
|
||||
+#define USED_FOR_TARGET
|
||||
|
||||
/* FIXME: Including auto-host is incorrect, but until we have
|
||||
identified the set of defines that need to go into auto-target.h,
|
||||
this will have to do. */
|
||||
diff -NBaur gcc-6.1.0/libstdc++-v3/include/std/type_traits gcc-6.1.0-ppc/libstdc++-v3/include/std/type_traits
|
||||
--- gcc-6.1.0/libstdc++-v3/include/std/type_traits 2016-01-12 21:19:58.000000000 +0000
|
||||
+++ gcc-6.1.0-ppc/libstdc++-v3/include/std/type_traits 2016-05-20 12:10:24.669019640 +0100
|
||||
@@ -38,7 +38,7 @@
|
||||
#include <bits/c++config.h>
|
||||
|
||||
#ifdef _GLIBCXX_USE_C99_STDINT_TR1
|
||||
-# if defined (__UINT_LEAST16_TYPE__) && defined(__UINT_LEAST32_TYPE__)
|
||||
+# if defined (__UINT_LEAST16_TYPE__) && defined(__UINT_LEAST32_TYPE__) && 0
|
||||
namespace std
|
||||
{
|
||||
typedef __UINT_LEAST16_TYPE__ uint_least16_t;
|
||||
@@ -1,7 +1,7 @@
|
||||
diff -Nbaur gdb-7.7/gdb/Makefile.in gdb-7.7-ppc/gdb/Makefile.in
|
||||
--- gdb-7.7/gdb/Makefile.in 2014-02-06 02:21:29.000000000 +0000
|
||||
+++ gdb-7.7-ppc/gdb/Makefile.in 2014-04-01 14:01:24.000000000 +0100
|
||||
@@ -2307,10 +2307,10 @@
|
||||
diff -NBaur gdb-7.10/gdb/Makefile.in gdb-7.10-ppc/gdb/Makefile.in
|
||||
--- gdb-7.10/gdb/Makefile.in 2015-08-28 22:22:07.000000000 +0100
|
||||
+++ gdb-7.10-ppc/gdb/Makefile.in 2015-11-09 09:21:13.228003995 +0000
|
||||
@@ -2676,10 +2676,10 @@
|
||||
# Note that we put the dependencies into a .Tpo file, then move them
|
||||
# into place if the compile succeeds. We need this because gcc does
|
||||
# not atomically write the dependency output file.
|
||||
@@ -16,15 +16,3 @@ diff -Nbaur gdb-7.7/gdb/Makefile.in gdb-7.7-ppc/gdb/Makefile.in
|
||||
@GMAKE_TRUE@else
|
||||
@GMAKE_TRUE@override COMPILE.pre = source='$<' object='$@' libtool=no \
|
||||
@GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
|
||||
diff -Nbaur gdb-7.7/sim/ppc/Makefile.in gdb-7.7-ppc/sim/ppc/Makefile.in
|
||||
--- gdb-7.7/sim/ppc/Makefile.in 2013-12-08 04:55:48.000000000 +0000
|
||||
+++ gdb-7.7-ppc/sim/ppc/Makefile.in 2014-04-01 14:01:24.000000000 +0100
|
||||
@@ -552,7 +552,7 @@
|
||||
PACKAGE_OBJ = @sim_pk_obj@
|
||||
|
||||
|
||||
-psim: $(TARGETLIB) main.o $(LIBIBERTY_LIB) $(BFD_LIB) $(LIBS) $(LIBINTL_DEP)
|
||||
+psim: $(TARGETLIB) main.o $(LIBIBERTY_LIB) $(BFD_LIB) $(LIBINTL_DEP)
|
||||
$(CC) $(CFLAGS) $(SIM_CFLAGS) $(LDFLAGS) -o psim$(EXEEXT) main.o $(TARGETLIB) $(BFD_LIB) $(LIBINTL) $(LIBIBERTY_LIB) $(LIBS)
|
||||
|
||||
run: psim
|
||||
@@ -6630,29 +6630,6 @@ diff -Nbaur newlib-2.0.0/newlib/libc/include/pthread.h newlib-2.0.0-ppc/newlib/l
|
||||
-
|
||||
-#endif
|
||||
-/* end of include file */
|
||||
diff -Nbaur newlib-2.0.0/newlib/libc/include/stdint.h newlib-2.0.0-ppc/newlib/libc/include/stdint.h
|
||||
--- newlib-2.0.0/newlib/libc/include/stdint.h 2012-10-16 19:45:23.000000000 +0100
|
||||
+++ newlib-2.0.0-ppc/newlib/libc/include/stdint.h 2013-09-06 22:13:38.000000000 +0100
|
||||
@@ -75,14 +75,14 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
-#if __have_long32
|
||||
-typedef signed long int32_t;
|
||||
-typedef unsigned long uint32_t;
|
||||
-#define __int32_t_defined 1
|
||||
-#elif __STDINT_EXP(INT_MAX) == 0x7fffffffL
|
||||
+#if __STDINT_EXP(INT_MAX) == 0x7fffffffL
|
||||
typedef signed int int32_t;
|
||||
typedef unsigned int uint32_t;
|
||||
#define __int32_t_defined 1
|
||||
+#elif __have_long32
|
||||
+typedef signed long int32_t;
|
||||
+typedef unsigned long uint32_t;
|
||||
+#define __int32_t_defined 1
|
||||
#elif __STDINT_EXP(SHRT_MAX) == 0x7fffffffL
|
||||
typedef signed short int32_t;
|
||||
typedef unsigned short uint32_t;
|
||||
diff -Nbaur newlib-2.0.0/newlib/libc/include/stdio.h newlib-2.0.0-ppc/newlib/libc/include/stdio.h
|
||||
--- newlib-2.0.0/newlib/libc/include/stdio.h 2012-11-01 11:51:11.000000000 +0000
|
||||
+++ newlib-2.0.0-ppc/newlib/libc/include/stdio.h 2013-09-06 22:13:38.000000000 +0100
|
||||
|
||||
12
dkppc/rules/wiiu_rules
Normal file
12
dkppc/rules/wiiu_rules
Normal file
@@ -0,0 +1,12 @@
|
||||
ifeq ($(strip $(DEVKITPPC)),)
|
||||
$(error "Please set DEVKITPPC in your environment. export DEVKITPPC=<path to>devkitPro/devkitPPC)
|
||||
endif
|
||||
|
||||
MACHDEP = -DESPRESSO -mwup -mcpu=750 -meabi -mhard-float
|
||||
|
||||
include $(DEVKITPPC)/base_rules
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
%.elf:
|
||||
@echo linking ... $(notdir $@)
|
||||
@$(LD) $^ $(LDFLAGS) $(LIBPATHS) $(LIBS) -o $@
|
||||
@@ -16,7 +16,7 @@ then
|
||||
--prefix=$prefix --target=$target --disable-nls --disable-shared --disable-debug \
|
||||
--disable-werror \
|
||||
--enable-poison-system-directories \
|
||||
--enable-plugins --enable-lto --disable-dependency-tracking \
|
||||
--enable-plugins --enable-lto \
|
||||
--disable-werror $CROSS_PARAMS \
|
||||
|| { echo "Error configuing ppc binutils"; exit 1; }
|
||||
touch configured-binutils
|
||||
@@ -47,7 +47,6 @@ if [ ! -f configured-binutils ]
|
||||
then
|
||||
CFLAGS=$cflags LDFLAGS=$ldflags ../../binutils-$BINUTILS_VER/configure \
|
||||
--prefix=$prefix --target=mn10200 --disable-nls --disable-debug \
|
||||
--disable-dependency-tracking \
|
||||
--disable-werror $CROSS_PARAMS \
|
||||
|| { echo "Error configuing mn10200 binutils"; exit 1; }
|
||||
touch configured-binutils
|
||||
@@ -82,12 +81,13 @@ then
|
||||
--disable-nls --disable-shared --enable-threads --disable-multilib \
|
||||
--disable-win32-registry \
|
||||
--disable-libstdcxx-pch \
|
||||
--disable-libstdcxx-verbose \
|
||||
--enable-cxx-flags='-ffunction-sections -fdata-sections' \
|
||||
--target=$target \
|
||||
--with-newlib \
|
||||
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
|
||||
--prefix=$prefix\
|
||||
--disable-dependency-tracking \
|
||||
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitPPC release 27" \
|
||||
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitPPC release 28" \
|
||||
$CROSS_PARAMS \
|
||||
|| { echo "Error configuring gcc stage 1"; exit 1; }
|
||||
touch configured-gcc
|
||||
@@ -170,7 +170,7 @@ cd $target/gdb
|
||||
if [ ! -f configured-gdb ]
|
||||
then
|
||||
CFLAGS="$cflags" LDFLAGS="$ldflags" ../../gdb-$GDB_VER/configure \
|
||||
--disable-nls --prefix=$prefix --target=$target --disable-werror --disable-dependency-tracking\
|
||||
--disable-nls --prefix=$prefix --target=$target --disable-werror \
|
||||
$CROSS_PARAMS || { echo "Error configuring gdb"; exit 1; }
|
||||
touch configured-gdb
|
||||
fi
|
||||
|
||||
@@ -30,20 +30,20 @@ done
|
||||
|
||||
case "$VERSION" in
|
||||
"1" )
|
||||
GCC_VER=4.9.2
|
||||
BINUTILS_VER=2.25
|
||||
GCC_VER=5.3.0
|
||||
BINUTILS_VER=2.25.1
|
||||
NEWLIB_VER=2.2.0
|
||||
GDB_VER=7.8.2
|
||||
GDB_VER=7.10
|
||||
basedir='dkarm-eabi'
|
||||
package=devkitARM
|
||||
target=arm-none-eabi
|
||||
toolchain=DEVKITARM
|
||||
;;
|
||||
"2" )
|
||||
GCC_VER=4.8.2
|
||||
BINUTILS_VER=2.24
|
||||
GCC_VER=6.2.0
|
||||
BINUTILS_VER=2.27
|
||||
NEWLIB_VER=2.0.0
|
||||
GDB_VER=7.7
|
||||
GDB_VER=7.11
|
||||
basedir='dkppc'
|
||||
package=devkitPPC
|
||||
target=powerpc-eabi
|
||||
|
||||
Reference in New Issue
Block a user