Compare commits

...

68 Commits

Author SHA1 Message Date
fincs
f7de61f3c9 3dsx.ld: add missing .fini section 2014-11-21 16:34:33 +01:00
Dave Murphy
e897a44640 build and install libctru for devkitARM 2014-11-21 09:47:21 +00:00
Dave Murphy
e0caf9ea02 enable CTRULIB 2014-11-21 00:39:04 +00:00
Dave Murphy
e454bd0dd7 build 3ds support stuff 2014-11-20 16:34:42 +00:00
Dave Murphy
ac53b3f62f remove old gcc patch 2014-11-20 16:33:37 +00:00
Dave Murphy
bb77177e7b add 3ds support files 2014-11-20 16:32:23 +00:00
Dave Murphy
00dfc2dbbb use gcc 4.9.2 2014-11-20 16:31:07 +00:00
Dave Murphy
98596aad6d add support for positional arguments 2014-08-20 16:51:30 +01:00
Dave Murphy
2f10349942 enable newlib c99 format io 2014-05-29 12:24:46 +01:00
Dave Murphy
ae01482942 upgrade gdb to 7.7.1 2014-05-24 00:00:32 +01:00
Dave Murphy
b8b237c88d adjust path sizes again, crashes on DS with bigger sizes 2014-05-18 17:01:01 +01:00
Dave Murphy
2ebf134e6f update patches for gcc 4.9.0 2014-04-28 21:47:26 +01:00
Dave Murphy
1689594d0a update for devkitARM release 43 2014-04-28 16:20:06 +01:00
Dave Murphy
ccae1fd3bc update readme 2014-04-28 16:14:33 +01:00
Dave Murphy
97f020d9dd CXXFLAGS needs OSX extras
Signed-off-by: Dave Murphy <wntrmute@users.sourceforge.net>
2014-04-02 22:12:51 +01:00
Dave Murphy
a9486a0343 update to binutils 2.24
Signed-off-by: Dave Murphy <wntrmute@users.sourceforge.net>
2014-04-02 22:12:51 +01:00
Dave Murphy
4abda470f2 update to gcc 4.8.2
Signed-off-by: Dave Murphy <wntrmute@users.sourceforge.net>
2014-04-02 22:12:50 +01:00
Dave Murphy
423bf8e261 update gdb for devkitPPC
Signed-off-by: Dave Murphy <wntrmute@users.sourceforge.net>
2014-04-02 22:12:50 +01:00
Dave Murphy
e012872028 changes for devkitPPC release 27
Signed-off-by: Dave Murphy <wntrmute@users.sourceforge.net>
2014-04-02 22:12:50 +01:00
Dave Murphy
695eb60d08 exclude OSX flags from target CXXFLAGS 2014-04-02 12:54:05 +01:00
Dave Murphy
98ed1540dd put OSX flags in CXXFLAGS too 2014-04-01 23:19:11 +01:00
Dave Murphy
2f624a1c28 fix newlib patch 2014-04-01 17:13:59 +01:00
Dave Murphy
f31d3ff732 update devkitARM newlib to 2.1.0 2014-04-01 15:03:28 +01:00
Dave Murphy
d6ea5c780e remove old devkitARM patches 2014-03-24 15:38:22 +00:00
Dave Murphy
2c11d43aef update patchsets for devkitARM 2014-02-16 21:58:35 +00:00
Dave Murphy
dcc84df004 fix archive name 2013-09-06 20:00:03 +01:00
Dave Murphy
496091cd3d update lib versions 2013-09-06 19:53:37 +01:00
Dave Murphy
365d7f8e70 add dstools 2013-09-06 19:37:12 +01:00
Dave Murphy
acde84974f ignore gedit backup files 2013-09-06 19:34:58 +01:00
Dave Murphy
b72392a9f1 put PKG_CONFIG_PATH in cross build shell scripts instead 2013-09-06 19:33:53 +01:00
Dave Murphy
8bb0b846dc new grit version 2013-09-06 17:46:52 +01:00
Dave Murphy
814731ce26 use proper url for devkitPro 2013-09-06 16:11:09 +01:00
Dave Murphy
2088ec214e fix libdl issue with MinGW 2013-09-04 10:32:59 +01:00
Dave Murphy
722d723f96 update gdb & stlink for devkitARM 2013-09-04 10:06:31 +01:00
Dave Murphy
0c0cf5f076 move to gcc 4.8.1 2013-07-02 01:14:05 +01:00
Dave Murphy
fc5620fcfa minor changes to allow sources on network share 2013-07-01 20:51:33 +01:00
Dave Murphy
ea2bddb2ed add patch for gdb 7.6 2013-07-01 20:50:49 +01:00
Dave Murphy
27249e6df4 patch binutils for devkitPPC 2013-03-23 05:31:50 +00:00
Dave Murphy
9eca385eea update grit & filesystem versions 2013-03-23 05:30:33 +00:00
Dave Murphy
ad8c286e3f delete obsolete patch 2013-02-02 10:09:01 +00:00
Dave Murphy
3b602dd277 simplify cross building 2013-01-30 13:56:54 +00:00
Dave Murphy
2719a32a3c add changes for cross compiling 64bit windows toolchains 2013-01-30 10:55:39 +00:00
Dave Murphy
bddbc05347 separate base tools, Snow Leopard fix & MSVC error filter from build rules 2013-01-28 21:17:28 +00:00
Jaeden Amero
31a3aebd97 .gitignore: Ignore .bz2 and .gz archives 2013-01-19 10:57:47 -06:00
Jaeden Amero
398f970194 build-devkit.sh: Allow autocompletion
Allow autocompletion of the devkitPro install path.
2013-01-19 10:57:47 -06:00
Dave Murphy
8adc6c5a3a disable scripts for push 2013-01-19 16:18:23 +00:00
Dave Murphy
9c99a85093 remove .orig from patches 2013-01-19 00:09:34 +00:00
Dave Murphy
3a50a29076 move to gcc 4.7.2 & gdb 7.5.1 2013-01-05 13:12:29 +00:00
Dave Murphy
71c4499626 update devkitPPC to gcc 4.7.1 and gdb 7.4.1 2013-01-05 13:12:29 +00:00
Dave Murphy
93040254e6 latest libfat & dswifi versions 2013-01-04 23:52:00 +00:00
Dave Murphy
6cd779bb23 disable scripts for push 2013-01-04 23:24:52 +00:00
Dave Murphy
0b27b8fd31 add newlib 2.0.0 for devkitARM r42 2013-01-03 20:59:14 +00:00
Dave Murphy
7467c56259 update patches and versions for devkitARM r42 2012-12-16 17:59:12 +00:00
mtheall
c372699fc7 fix some buildscript problems 2012-09-25 20:50:04 -05:00
Dave Murphy
4572684bf5 disable git buildscripts 2012-06-25 13:48:43 +01:00
Dave Murphy
89fa563280 final adjustments for devkitARM release 41 2012-06-25 13:43:44 +01:00
Dave Murphy
c9b0f0a993 changes for devkitARM release 41 2012-06-18 12:44:30 +01:00
Dave Murphy
def31f974b latest stlink version 2012-05-16 23:07:19 +01:00
Dave Murphy
1baf7cd020 new stlink version 2012-05-14 23:56:15 +01:00
Dave Murphy
edbd8b0249 strip dll debug info 2012-05-14 23:55:47 +01:00
Dave Murphy
471ea1e10e add i1686-w64-mingw32 pkgconfig path when cross building, copy libusb dll for windows devkitARM 2012-05-10 12:59:39 +01:00
Dave Murphy
c970193166 update devkitARM, libogc & libnds versions 2012-05-09 15:03:18 +01:00
Dave Murphy
4a41ed304e reinstate --with-gnu-as etc, bump package version 2012-05-09 15:02:23 +01:00
Dave Murphy
bf3a5359b4 add dswifi to build 2012-05-09 15:01:19 +01:00
Dave Murphy
93f3a57a16 new stlink version, builds & works on windows 2012-04-29 19:47:02 +01:00
Dave Murphy
fb92e0d43e add extra tools, next devkitARM is r39 2012-04-28 10:52:25 +01:00
Dave Murphy
98adbbcc9b fix gcc build dir 2012-04-27 13:27:34 +01:00
Dave Murphy
d98429e0fa volatiles fix 2012-04-26 15:07:14 +01:00
28 changed files with 14266 additions and 1281 deletions

3
.gitignore vendored
View File

@@ -2,3 +2,6 @@ config.sh
.devkitARM* .devkitARM*
.devkitPPC* .devkitPPC*
.devkitPSP* .devkitPSP*
*.gz
*.bz2
*~

View File

@@ -3,32 +3,25 @@ devkitPro build scripts
This readme will guide you through building devkitARM, devkitPPC or devkitPSP from source using a set of scripts. This readme will guide you through building devkitARM, devkitPPC or devkitPSP from source using a set of scripts.
To use these scripts under minsys and MinGW you will need some additional packages over and above the base install. The windows versions of the toolchains are now cross compiled on linux using mingw-w64
The minsys developer toolkit
http://prdownloads.sourceforge.net/mingw/msysDTK-1.0.1.exe?download
Bison, Flex and Wget from the gnuwin32 project
http://sourceforge.net/projects/gnuwin32/
For devkitPSP a command line subversion client is required to get the PSP SDK http://www.tigris.org
required packages for building on debian/*buntu required packages for building on debian/*buntu
sudo apt-get install build-essential autoconf automake bison flex libncurses5-dev libreadline-dev texinfo sudo apt-get install build-essential autoconf automake bison flex libncurses5-dev libreadline-dev texinfo pkg-config
for building gcc libgmp, libmpfr and libmpc are required For building gcc libgmp, libmpfr and libmpc are required - these are built as static libraries to make packaging simpler.
If you're building the tools for personal use then the versions packaged by your chosen distro should suffice.
http://gmplib.org/ http://gmplib.org/
http://www.mpfr.org/ http://www.mpfr.org/
http://www.multiprecision.org/ http://www.multiprecision.org/
Some of the tools for devkitARM and devkitPPC also require FreeImage and zlib 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.
http://freeimage.sourceforge.net/ http://freeimage.sourceforge.net/
http://www.zlib.net http://www.zlib.net
http://www.libusb.org
Downloading the source packages Downloading the source packages
------------------------------- -------------------------------

View File

@@ -1,8 +1,8 @@
#!/bin/bash #!/bin/bash
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# Build scripts for # Build scripts for
# devkitARM release 38 # devkitARM release 43
# devkitPPC release 26 # devkitPPC release 27
# devkitPSP release 17 # devkitPSP release 17
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@@ -11,8 +11,8 @@ if [ 1 -eq 1 ] ; then
echo "Please use the latest release buildscripts unless advised otherwise by devkitPro staff." echo "Please use the latest release buildscripts unless advised otherwise by devkitPro staff."
echo "http://sourceforge.net/projects/devkitpro/files/buildscripts/" echo "http://sourceforge.net/projects/devkitpro/files/buildscripts/"
echo echo
echo "The scripts in svn are quite often dependent on things which currently only exist on developer" echo "The scripts in the git repository are quite often dependent on things which currently only exist"
echo "machines. This is not a bug, use stable releases." echo "on developer machines. This is not a bug, use stable releases."
exit 1 exit 1
fi fi
@@ -24,18 +24,20 @@ 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 "https://sourceforge.net/tracker/?group_id=114505&atid=668553"
echo echo
LIBOGC_VER=1.8.10 LIBOGC_VER=1.8.12
LIBGBA_VER=20090222 LIBGBA_VER=20090222
LIBNDS_VER=1.5.5 LIBNDS_VER=1.5.8
LIBCTRU_VER=0.1.0
DEFAULT_ARM7_VER=0.5.24 DEFAULT_ARM7_VER=0.5.24
DSWIFI_VER=0.3.13 DSWIFI_VER=0.3.16
LIBMIRKO_VER=0.9.7 LIBMIRKO_VER=0.9.7
MAXMOD_VER=1.0.7 MAXMOD_VER=1.0.9
FILESYSTEM_VER=0.9.9 FILESYSTEM_VER=0.9.11
LIBFAT_VER=1.0.11 LIBFAT_VER=1.0.12
PSPSDK_VER=20120404 PSPSDK_VER=20120404
GBATOOLS_VER=1.0.0 GBATOOLS_VER=1.0.0
GRIT_VER=0.8.10 DSTOOLS_VER=1.0.0
GRIT_VER=0.8.12
NDSTOOL_VER=1.50.1 NDSTOOL_VER=1.50.1
GENERAL_TOOLS_VER=1.0.0 GENERAL_TOOLS_VER=1.0.0
DLDITOOL_VER=1.24.0 DLDITOOL_VER=1.24.0
@@ -44,6 +46,9 @@ GCDSPSUITE_VER=1.4.0
ELF2DOL_VER=1.0.0 ELF2DOL_VER=1.0.0
WIILOAD_VER=0.5.1 WIILOAD_VER=0.5.1
MMUTIL_VER=1.8.6 MMUTIL_VER=1.8.6
DFU_UTIL_VER=0.7.1
STLINK_VER=0.5.8
TOOLS3DS_VER=1.0.0
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
function extract_and_patch { function extract_and_patch {
@@ -60,7 +65,7 @@ function extract_and_patch {
echo "invalid archive type" echo "invalid archive type"
exit 1 exit 1
fi fi
tar $extractflags $SRCDIR/$1-$2$archivetype || { echo "Error extracting "$1; exit 1; } tar $extractflags "$SRCDIR/$1-$2$archivetype" || { echo "Error extracting "$1; exit 1; }
touch extracted-$1 touch extracted-$1
fi fi
if [[ ! -f patched-$1 && -f $patchdir/$1-$2.patch ]]; then if [[ ! -f patched-$1 && -f $patchdir/$1-$2.patch ]]; then
@@ -109,7 +114,7 @@ else
echo "for mingw/msys you must use <drive>:/<install path> or you will have include path problems" echo "for mingw/msys you must use <drive>:/<install path> or you will have include path problems"
echo "this is the top level directory for devkitpro, i.e. e:/devkitPro" echo "this is the top level directory for devkitpro, i.e. e:/devkitPro"
read INSTALLDIR read -e INSTALLDIR
echo echo
fi fi
@@ -154,7 +159,7 @@ fi
if [ "$BUILD_DKPRO_AUTOMATED" != "1" ] ; then if [ "$BUILD_DKPRO_AUTOMATED" != "1" ] ; then
echo echo
echo 'Ready to install '$package' in '$INSTALLDIR echo 'Ready to install '$package' in '$prefix
echo echo
echo 'press return to continue' echo 'press return to continue'
@@ -191,10 +196,11 @@ archives="binutils-${BINUTILS_VER}.tar.bz2 gcc-${GCC_VER}.tar.bz2 newlib-${NEWLI
if [ $VERSION -eq 1 ]; then if [ $VERSION -eq 1 ]; then
targetarchives="libnds-src-${LIBNDS_VER}.tar.bz2 libgba-src-${LIBGBA_VER}.tar.bz2 targetarchives="libnds-src-${LIBNDS_VER}.tar.bz2 libgba-src-${LIBGBA_VER}.tar.bz2
libmirko-src-${LIBMIRKO_VER}.tar.bz2 dswifi-src-${DSWIFI_VER}.tar.bz2 maxmod-src-${MAXMOD_VER}.tar.bz2 libmirko-src-${LIBMIRKO_VER}.tar.bz2 dswifi-src-${DSWIFI_VER}.tar.bz2 maxmod-src-${MAXMOD_VER}.tar.bz2
default-arm7-src-${DEFAULT_ARM7_VER}.tar.bz2 libfilesystem-src-${FILESYSTEM_VER}.tar.bz2 default_arm7-src-${DEFAULT_ARM7_VER}.tar.bz2 libfilesystem-src-${FILESYSTEM_VER}.tar.bz2
libfat-src-${LIBFAT_VER}.tar.bz2" libfat-src-${LIBFAT_VER}.tar.bz2 libctru-src-${LIBCTRU_VER}.tar.bz2"
hostarchives="gbatools-$GBATOOLS_VER.tar.bz2 grit-$GRIT_VER.tar.bz2 ndstool-$NDSTOOL_VER.tar.bz2 hostarchives="gbatools-$GBATOOLS_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" 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"
fi fi
if [ $VERSION -eq 2 ]; then if [ $VERSION -eq 2 ]; then
@@ -213,7 +219,7 @@ else
SRCDIR=`pwd` SRCDIR=`pwd`
fi fi
cd $SRCDIR cd "$SRCDIR"
for archive in $archives $targetarchives $hostarchives for archive in $archives $targetarchives $hostarchives
do do
echo $archive echo $archive
@@ -238,13 +244,13 @@ do
echo $destdir echo $destdir
if [ ! -d $destdir ]; then if [ ! -d $destdir ]; then
mkdir -p $destdir mkdir -p $destdir
bzip2 -cd $SRCDIR/$archive | tar -xf - -C $destdir || { echo "Error extracting "$archive; exit 1; } bzip2 -cd "$SRCDIR/$archive" | tar -xf - -C $destdir || { echo "Error extracting "$archive; exit 1; }
fi fi
done done
for archive in $hostarchives for archive in $hostarchives
do do
tar -xjf $SRCDIR/$archive tar -xjf "$SRCDIR/$archive"
done done
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@@ -254,12 +260,15 @@ if [ -f $scriptdir/build-gcc.sh ]; then . $scriptdir/build-gcc.sh || { echo "Err
if [ -f $scriptdir/build-tools.sh ]; then . $scriptdir/build-tools.sh || { echo "Error building tools"; exit 1; }; cd $BUILDSCRIPTDIR; fi if [ -f $scriptdir/build-tools.sh ]; then . $scriptdir/build-tools.sh || { echo "Error building tools"; exit 1; }; cd $BUILDSCRIPTDIR; fi
if [ -f $scriptdir/build-crtls.sh ]; then . $scriptdir/build-crtls.sh || { echo "Error building crtls"; exit 1; }; cd $BUILDSCRIPTDIR; fi if [ -f $scriptdir/build-crtls.sh ]; then . $scriptdir/build-crtls.sh || { echo "Error building crtls"; exit 1; }; cd $BUILDSCRIPTDIR; fi
if [ "$CROSSBUILD" = "i686-w64-mingw32" ]; then if [ ! -z $CROSSBUILD ]; then
if [ $VERSION -ne 3 ]; then if [ $VERSION -ne 3 ]; then
cp -v /opt/i686-w64-mingw32/mingw/lib/FreeImage.dll $prefix/bin cp -v $CROSSLIBPATH/FreeImage.dll $prefix/bin
fi fi
cp -v /opt/i686-w64-mingw32/mingw/lib/libstdc++-6.dll \ if [ $VERSION -eq 1 ]; then
/opt/i686-w64-mingw32/mingw/lib/libgcc_s_sjlj-1.dll \ cp -v $CROSSBINPATH/libusb-1.0.dll $prefix/bin
fi
cp -v $CROSSLIBPATH/libstdc++-6.dll \
$CROSSLIBPATH/libgcc_s_sjlj-1.dll \
$prefix/bin $prefix/bin
fi fi

View File

@@ -1,3 +1,7 @@
#!/bin/bash #!/bin/bash
export CROSSBUILD=i686-w64-mingw32 export CROSSBUILD=i686-w64-mingw32
export CROSSLIBPATH=/opt/i686-w64-mingw32/mingw/lib
export CROSSBINPATH=/opt/i686-w64-mingw32/mingw/bin
export PATH=/opt/i686-w64-mingw32/bin:$PATH export PATH=/opt/i686-w64-mingw32/bin:$PATH
export PKG_CONFIG_PATH=$CROSSLIBPATH/pkgconfig

View File

@@ -0,0 +1,7 @@
#!/bin/bash
export CROSSBUILD=x86_64-w64-mingw32
export CROSSLIBPATH=/opt/x86_64-mingw-w64/mingw/lib
export CROSSBINPATH=/opt/x86_64-mingw-w64/mingw/bin
export PATH=/opt/x86_64-mingw-w64/bin:$PATH
export PKG_CONFIG_PATH=$CROSSLIBPATH/pkgconfig

162
dkarm-eabi/crtls/3dsx.ld Normal file
View File

@@ -0,0 +1,162 @@
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm")
OUTPUT_ARCH(arm)
ENTRY(_start)
PHDRS
{
code PT_LOAD FLAGS(5) /* Read | Execute */;
rodata PT_LOAD FLAGS(4) /* Read */;
data PT_LOAD FLAGS(6) /* Read | Write */;
}
SECTIONS
{
/* =========== CODE section =========== */
. = 0x100000;
__start__ = . ;
.text ALIGN(0x1000) :
{
/* .init */
KEEP( *(.crt0) )
KEEP( *(.init) )
. = ALIGN(4);
/* .text */
*(.text)
*(.text.*)
*(.glue_7)
*(.glue_7t)
*(.stub)
*(.gnu.warning)
*(.gnu.linkonce.t*)
. = ALIGN(4);
/* .fini */
KEEP( *(.fini) )
. = ALIGN(4);
} : code
/* =========== RODATA section =========== */
.rodata ALIGN(0x1000) :
{
*(.rodata)
*(.roda)
*(.rodata.*)
*all.rodata*(*)
*(.gnu.linkonce.r*)
SORT(CONSTRUCTORS)
. = ALIGN(4);
} : rodata
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } : rodata
__exidx_start = .;
ARM.exidx : { *(.ARM.exidx* .gnu.linkonce.armexidx.*) } : rodata
__exidx_end = .;
/* =========== DATA section =========== */
.data ALIGN(0x1000) :
{
*(.data)
*(.data.*)
*(.gnu.linkonce.d*)
CONSTRUCTORS
. = ALIGN(4);
} : data
.preinit_array ALIGN(4) :
{
PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
PROVIDE (__preinit_array_end = .);
} : data
.init_array ALIGN(4) :
{
PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
PROVIDE (__init_array_end = .);
} : data
.fini_array ALIGN(4) :
{
PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
PROVIDE (__fini_array_end = .);
} : data
.ctors ALIGN(4) :
{
KEEP (*crtbegin.o(.ctors)) /* MUST be first -- GCC requires it */
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
} : data
.dtors ALIGN(4) :
{
KEEP (*crtbegin.o(.dtors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
} : data
__bss_start__ = .;
.bss ALIGN(4) :
{
*(.dynbss)
*(.bss)
*(.bss.*)
*(.gnu.linkonce.b*)
*(COMMON)
. = ALIGN(4);
} : data
__bss_end__ = .;
__end__ = ABSOLUTE(.) ;
/* ==================
==== Metadata ====
================== */
/* Discard sections that difficult post-processing */
/DISCARD/ : { *(.group .comment .note) }
/* 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) }
/* 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) }
}

View File

@@ -0,0 +1,8 @@
%rename link old_link
*link:
%(old_link) -T 3dsx.ld%s -d --emit-relocs --use-blx
*startfile:
3dsx_crt0%O%s crti%O%s crtbegin%O%s

View File

@@ -0,0 +1,73 @@
@---------------------------------------------------------------------------------
@ 3DS processor selection
@---------------------------------------------------------------------------------
.cpu mpcore
@---------------------------------------------------------------------------------
@---------------------------------------------------------------------------------
.section ".crt0"
.global _start, __service_ptr, __apt_appid, __heap_size, __linear_heap_size, __system_arglist, __system_runflags
@---------------------------------------------------------------------------------
.align 2
.arm
@---------------------------------------------------------------------------------
_start:
@---------------------------------------------------------------------------------
b startup
.ascii "_prm"
__service_ptr:
.word 0 @ Pointer to service handle override list -- if non-NULL it is assumed that we have been launched from a homebrew launcher
__apt_appid:
.word 0x300 @ Program APPID
__heap_size:
.word 24*1024*1024 @ Default heap size (24 MiB)
__linear_heap_size:
.word 32*1024*1024 @ Default linear heap size (32 MiB)
__system_arglist:
.word 0 @ Pointer to argument list (argc (u32) followed by that many NULL terminated strings)
__system_runflags:
.word 0 @ Flags to signal runtime restrictions to ctrulib
startup:
@ Save return address
mov r4, lr
@ Clear the BSS section
ldr r0, =__bss_start__
ldr r1, =__bss_end__
sub r1, r1, r0
bl ClearMem
@ System initialization
mov r0, r4
bl initSystem
@ Set up argc/argv arguments for main()
ldr r0, =__system_argc
ldr r1, =__system_argv
ldr r0, [r0]
ldr r1, [r1]
@ Jump to user code
ldr r3, =main
ldr lr, =__ctru_exit
bx r3
@---------------------------------------------------------------------------------
@ Clear memory to 0x00 if length != 0
@ r0 = Start Address
@ r1 = Length
@---------------------------------------------------------------------------------
ClearMem:
@---------------------------------------------------------------------------------
mov r2, #3 @ Round down to nearest word boundary
add r1, r1, r2 @ Shouldn't be needed
bics r1, r1, r2 @ Clear 2 LSB (and set Z)
bxeq lr @ Quit if copy size is 0
mov r2, #0
ClrLoop:
stmia r0!, {r2}
subs r1, r1, #4
bne ClrLoop
bx lr

View File

@@ -1,162 +0,0 @@
diff -Nbaur binutils-2.22/bfd/bfd-in2.h binutils-2.22-arm/bfd/bfd-in2.h
--- binutils-2.22/bfd/bfd-in2.h 2011-09-16 02:15:18.000000000 +0100
+++ binutils-2.22-arm/bfd/bfd-in2.h 2012-04-01 12:58:20.000000000 +0100
@@ -38,6 +38,8 @@
#include "ansidecl.h"
#include "symcat.h"
+#include <sys/stat.h>
+
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
#ifndef SABER
/* This hack is to avoid a problem with some strict ANSI C preprocessors.
@@ -308,8 +310,6 @@
&& (sec)->sec_info_type != ELF_INFO_TYPE_MERGE \
&& (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS)
-/* Forward define. */
-struct stat;
typedef enum bfd_print_symbol
{
diff -Nbaur binutils-2.22/bfd/bfd-in.h binutils-2.22-arm/bfd/bfd-in.h
--- binutils-2.22/bfd/bfd-in.h 2011-09-16 02:15:18.000000000 +0100
+++ binutils-2.22-arm/bfd/bfd-in.h 2012-04-01 12:58:20.000000000 +0100
@@ -31,6 +31,8 @@
#include "ansidecl.h"
#include "symcat.h"
+#include <sys/stat.h>
+
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
#ifndef SABER
/* This hack is to avoid a problem with some strict ANSI C preprocessors.
@@ -301,8 +303,6 @@
&& (sec)->sec_info_type != ELF_INFO_TYPE_MERGE \
&& (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS)
-/* Forward define. */
-struct stat;
typedef enum bfd_print_symbol
{
diff -Nbaur binutils-2.22/bfd/config.in binutils-2.22-arm/bfd/config.in
--- binutils-2.22/bfd/config.in 2011-05-12 08:41:40.000000000 +0100
+++ binutils-2.22-arm/bfd/config.in 2012-04-03 17:35:45.000000000 +0100
@@ -245,6 +245,9 @@
/* Define if <sys/procfs.h> has win32_pstatus_t. */
#undef HAVE_WIN32_PSTATUS_T
+/* Define to 1 if you have the <windows.h> header file. */
+#undef HAVE_WINDOWS_H
+
/* Define to 1 if you have the <zlib.h> header file. */
#undef HAVE_ZLIB_H
diff -Nbaur binutils-2.22/bfd/configure binutils-2.22-arm/bfd/configure
--- binutils-2.22/bfd/configure 2011-11-21 11:55:48.000000000 +0000
+++ binutils-2.22-arm/bfd/configure 2012-04-03 17:35:45.000000000 +0100
@@ -13508,6 +13508,22 @@
fi
+
+for ac_header in windows.h dlfcn.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+eval as_val=\$$as_ac_Header
+ if test "x$as_val" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether string.h and strings.h may both be included" >&5
$as_echo_n "checking whether string.h and strings.h may both be included... " >&6; }
if test "${gcc_cv_header_string+set}" = set; then :
diff -Nbaur binutils-2.22/bfd/configure.in binutils-2.22-arm/bfd/configure.in
--- binutils-2.22/bfd/configure.in 2011-11-21 11:55:46.000000000 +0000
+++ binutils-2.22-arm/bfd/configure.in 2012-04-03 17:35:45.000000000 +0100
@@ -190,6 +190,9 @@
GCC_HEADER_STDINT(bfd_stdint.h)
AC_HEADER_TIME
AC_HEADER_DIRENT
+
+AC_CHECK_HEADERS(windows.h dlfcn.h)
+
ACX_HEADER_STRING
AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid fileno)
AC_CHECK_FUNCS(strtoull)
diff -Nbaur binutils-2.22/bfd/plugin.c binutils-2.22-arm/bfd/plugin.c
--- binutils-2.22/bfd/plugin.c 2011-07-11 16:03:07.000000000 +0100
+++ binutils-2.22-arm/bfd/plugin.c 2012-04-03 17:35:45.000000000 +0100
@@ -25,7 +25,13 @@
#if BFD_SUPPORTS_PLUGINS
#include <assert.h>
+#ifdef HAVE_DLFCN_H
#include <dlfcn.h>
+#elif defined (HAVE_WINDOWS_H)
+#include <windows.h>
+#else
+#error Unknown how to handle dynamic-load-libraries.
+#endif
#include <stdarg.h>
#include "plugin-api.h"
#include "sysdep.h"
@@ -34,6 +40,37 @@
#include "libiberty.h"
#include <dirent.h>
+#if !defined (HAVE_DLFCN_H) && defined (HAVE_WINDOWS_H)
+
+#define RTLD_NOW 0 /* Dummy value. */
+
+static void *
+dlopen (const char *file, int mode ATTRIBUTE_UNUSED)
+{
+ return LoadLibrary (file);
+}
+
+static void *
+dlsym (void *handle, const char *name)
+{
+ return GetProcAddress (handle, name);
+}
+
+static int ATTRIBUTE_UNUSED
+dlclose (void *handle)
+{
+ FreeLibrary (handle);
+ return 0;
+}
+
+static const char *
+dlerror (void)
+{
+ return "Unable to load DLL.";
+}
+
+#endif /* !defined (HAVE_DLFCN_H) && defined (HAVE_WINDOWS_H) */
+
#define bfd_plugin_close_and_cleanup _bfd_generic_close_and_cleanup
#define bfd_plugin_bfd_free_cached_info _bfd_generic_bfd_free_cached_info
#define bfd_plugin_new_section_hook _bfd_generic_new_section_hook
diff -Nbaur binutils-2.22/include/opcode/arm.h binutils-2.22-arm/include/opcode/arm.h
--- binutils-2.22/include/opcode/arm.h 2011-05-31 15:12:55.000000000 +0100
+++ binutils-2.22-arm/include/opcode/arm.h 2012-04-01 12:58:20.000000000 +0100
@@ -109,7 +109,8 @@
#define ARM_AEXT_V6KT2 (ARM_AEXT_V6T2 | ARM_EXT_V6K)
#define ARM_AEXT_V6ZT2 (ARM_AEXT_V6T2 | ARM_EXT_SEC)
#define ARM_AEXT_V6ZKT2 (ARM_AEXT_V6T2 | ARM_EXT_V6K | ARM_EXT_SEC)
-#define ARM_AEXT_V7_ARM (ARM_AEXT_V6KT2 | ARM_EXT_V7 | ARM_EXT_BARRIER)
+#define ARM_AEXT_V7_ARM (ARM_AEXT_V6KT2 | ARM_EXT_V7 | ARM_EXT_BARRIER \
+ | ARM_EXT_OS )
#define ARM_AEXT_V7A (ARM_AEXT_V7_ARM | ARM_EXT_V7A)
#define ARM_AEXT_V7R (ARM_AEXT_V7_ARM | ARM_EXT_V7R | ARM_EXT_DIV)
#define ARM_AEXT_NOTM \

View File

@@ -0,0 +1,13 @@
diff -Nbaur binutils-2.24/include/opcode/arm.h binutils-2.24-arm/include/opcode/arm.h
--- binutils-2.24/include/opcode/arm.h 2013-11-26 11:37:33.000000000 +0000
+++ binutils-2.24-arm/include/opcode/arm.h 2014-02-16 19:32:33.000000000 +0000
@@ -114,7 +114,8 @@
#define ARM_AEXT_V6KT2 (ARM_AEXT_V6T2 | ARM_EXT_V6K)
#define ARM_AEXT_V6ZT2 (ARM_AEXT_V6T2 | ARM_EXT_SEC)
#define ARM_AEXT_V6ZKT2 (ARM_AEXT_V6T2 | ARM_EXT_V6K | ARM_EXT_SEC)
-#define ARM_AEXT_V7_ARM (ARM_AEXT_V6KT2 | ARM_EXT_V7 | ARM_EXT_BARRIER)
+#define ARM_AEXT_V7_ARM (ARM_AEXT_V6KT2 | ARM_EXT_V7 | ARM_EXT_BARRIER \
+ | ARM_EXT_OS )
#define ARM_AEXT_V7A (ARM_AEXT_V7_ARM | ARM_EXT_V7A)
#define ARM_AEXT_V7VE (ARM_AEXT_V7A | ARM_EXT_DIV | ARM_EXT_ADIV \
| ARM_EXT_VIRT | ARM_EXT_SEC | ARM_EXT_MP)

View File

@@ -1,167 +0,0 @@
diff -Nbaur gcc-4.7.0/gcc/config/arm/t-arm-elf gcc-4.7.0-arm/gcc/config/arm/t-arm-elf
--- gcc-4.7.0/gcc/config/arm/t-arm-elf 2011-11-02 15:23:48.000000000 +0000
+++ gcc-4.7.0-arm/gcc/config/arm/t-arm-elf 2012-04-05 20:36:17.000000000 +0100
@@ -26,22 +26,44 @@
#MULTILIB_DIRNAMES += fa526 fa626 fa606te fa626te fmp626 fa726te
#MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=fa526 *mthumb*/*mcpu=fa626
-#MULTILIB_OPTIONS += march=armv7
-#MULTILIB_DIRNAMES += thumb2
-#MULTILIB_EXCEPTIONS += march=armv7* marm/*march=armv7*
-#MULTILIB_MATCHES += march?armv7=march?armv7-a
-#MULTILIB_MATCHES += march?armv7=march?armv7-r
-#MULTILIB_MATCHES += march?armv7=march?armv7-m
-#MULTILIB_MATCHES += march?armv7=mcpu?cortex-a8
-#MULTILIB_MATCHES += march?armv7=mcpu?cortex-r4
-#MULTILIB_MATCHES += march?armv7=mcpu?cortex-m3
+#mfloat-abi=hard|mfpu=fpv4-sp-d16
+
+MULTILIB_OPTIONS += march=armv7/march=armv6-m/mcpu=cortex-m4
+MULTILIB_DIRNAMES += thumb2 armv6-m cortex-m4
+MULTILIB_EXCEPTIONS += march=armv7* marm/*march=armv7*
+MULTILIB_EXCEPTIONS += march=armv6-m* marm/*march=armv6-m*
+MULTILIB_EXCEPTIONS += mcpu=cortex-m4* marm/*mcpu=cortex-m4*
+MULTILIB_EXCEPTIONS += mcpu=cortex-m4* mthumb/mcpu=cortex-m4
+MULTILIB_EXCEPTIONS += mcpu=cortex-m4* mthumb/mcpu=cortex-m4/mbig-endian
+MULTILIB_MATCHES += march?armv7=march?armv7-a
+MULTILIB_MATCHES += march?armv7=march?armv7-r
+MULTILIB_MATCHES += march?armv7=march?armv7-m
+MULTILIB_MATCHES += march?armv7=mcpu?cortex-a8
+MULTILIB_MATCHES += march?armv7=mcpu?cortex-r4
+MULTILIB_MATCHES += march?armv7=mcpu?cortex-m3
+MULTILIB_MATCHES += march?armv6-m=mcpu?cortex-m0
+MULTILIB_MATCHES += march?armv6-m=mcpu?cortex-m1
+
+MULTILIB_OPTIONS += mfloat-abi=hard mfpu=fpv4-sp-d16
+MULTILIB_DIRNAMES += float-abi-hard fpuv4-sp-d16
+MULTILIB_EXCEPTIONS += mfloat* marm/mfloat*
+MULTILIB_EXCEPTIONS += mfloat* mthumb/mfloat*
+MULTILIB_EXCEPTIONS += mfloat* mthumb*march=armv6-m*mfloat*
+MULTILIB_EXCEPTIONS += mfloat* mthumb*march=armv7*mfloat*
+MULTILIB_EXCEPTIONS += mfloat* mthumb/mcpu=cortex-m4/mfloat-abi=hard
+MULTILIB_EXCEPTIONS += mfloat* mthumb/mcpu=cortex-m4/mfloat-abi=hard/mbig-endian
+MULTILIB_EXCEPTIONS += mfpu* mthumb*march=armv6-m*mfpu*
+MULTILIB_EXCEPTIONS += mfpu* mthumb*march=armv7*mfpu*
+MULTILIB_EXCEPTIONS += mfpu* mthumb/mcpu=cortex-m4/mfpu*
+MULTILIB_EXCEPTIONS += mfpu* mthumb/mfpu*
+MULTILIB_EXCEPTIONS += mfpu* marm/mfpu*
# 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
# (mcrr etc).
-MULTILIB_OPTIONS += mfloat-abi=hard
-MULTILIB_DIRNAMES += fpu
-MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard*
+#MULTILIB_OPTIONS += mfloat-abi=hard
+#MULTILIB_DIRNAMES += fpu
+#MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard*
#MULTILIB_EXCEPTIONS += *mcpu=fa526/*mfloat-abi=hard*
#MULTILIB_EXCEPTIONS += *mcpu=fa626/*mfloat-abi=hard*
@@ -49,9 +71,9 @@
# MULTILIB_DIRNAMES += ep9312
# MULTILIB_EXCEPTIONS += *mthumb/*mcpu=ep9312*
#
-# MULTILIB_OPTIONS += mlittle-endian/mbig-endian
-# MULTILIB_DIRNAMES += le be
-# MULTILIB_MATCHES += mbig-endian=mbe mlittle-endian=mle
+MULTILIB_OPTIONS += mlittle-endian/mbig-endian
+MULTILIB_DIRNAMES += le be
+MULTILIB_MATCHES += mbig-endian=mbe mlittle-endian=mle
#
# MULTILIB_OPTIONS += mfloat-abi=hard/mfloat-abi=soft
# MULTILIB_DIRNAMES += fpu soft
diff -Nbaur gcc-4.7.0/gcc/config/arm/unknown-elf.h gcc-4.7.0-arm/gcc/config/arm/unknown-elf.h
--- gcc-4.7.0/gcc/config/arm/unknown-elf.h 2011-03-31 13:13:13.000000000 +0100
+++ gcc-4.7.0-arm/gcc/config/arm/unknown-elf.h 2012-04-05 20:36:17.000000000 +0100
@@ -94,4 +94,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.7.0/gcc/gcc.c gcc-4.7.0-arm/gcc/gcc.c
--- gcc-4.7.0/gcc/gcc.c 2012-02-28 17:31:38.000000000 +0000
+++ gcc-4.7.0-arm/gcc/gcc.c 2012-04-05 20:36:17.000000000 +0100
@@ -548,6 +548,11 @@
#endif
#endif
+#ifndef LIBGLOSS_SPEC
+# define LIBGLOSS_SPEC "-lsysbase"
+#endif
+
+
/* config.h can define STARTFILE_SPEC to override the default crt0 files. */
#ifndef STARTFILE_SPEC
#define STARTFILE_SPEC \
@@ -717,6 +722,7 @@
static const char *mflib_spec = MFLIB_SPEC;
static const char *link_gomp_spec = "";
static const char *libgcc_spec = LIBGCC_SPEC;
+static const char *libgloss_spec = LIBGLOSS_SPEC;
static const char *endfile_spec = ENDFILE_SPEC;
static const char *startfile_spec = STARTFILE_SPEC;
static const char *linker_name_spec = LINKER_NAME;
@@ -1201,6 +1207,7 @@
INIT_STATIC_SPEC ("mflib", &mflib_spec),
INIT_STATIC_SPEC ("link_gomp", &link_gomp_spec),
INIT_STATIC_SPEC ("libgcc", &libgcc_spec),
+ INIT_STATIC_SPEC ("libgloss", &libgloss_spec),
INIT_STATIC_SPEC ("startfile", &startfile_spec),
INIT_STATIC_SPEC ("cross_compile", &cross_compile),
INIT_STATIC_SPEC ("version", &compiler_version),
diff -Nbaur gcc-4.7.0/libcpp/Makefile.in gcc-4.7.0-arm/libcpp/Makefile.in
--- gcc-4.7.0/libcpp/Makefile.in 2012-03-22 07:37:39.000000000 +0000
+++ gcc-4.7.0-arm/libcpp/Makefile.in 2012-04-05 20:36:17.000000000 +0100
@@ -214,8 +214,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.
-COMPILE = $(COMPILE.base) -o $@ -MT $@ -MMD -MP -MF $(DEPDIR)/$*.Tpo
-POSTCOMPILE = @mv $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+COMPILE = $(COMPILE.base) -o $@
else
COMPILE = source='$<' object='$@' libtool=no DEPDIR=$(DEPDIR) $(DEPMODE) \
$(depcomp) $(COMPILE.base)
diff -Nbaur gcc-4.7.0/libgcc/crtstuff.c gcc-4.7.0-arm/libgcc/crtstuff.c
--- gcc-4.7.0/libgcc/crtstuff.c 2011-12-06 21:35:41.000000000 +0000
+++ gcc-4.7.0-arm/libgcc/crtstuff.c 2012-04-05 20:36:50.000000000 +0100
@@ -49,7 +49,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-4.7.0/libgcc/Makefile.in gcc-4.7.0-arm/libgcc/Makefile.in
--- gcc-4.7.0/libgcc/Makefile.in 2011-11-22 03:01:02.000000000 +0000
+++ gcc-4.7.0-arm/libgcc/Makefile.in 2012-04-05 20:36:17.000000000 +0100
@@ -500,14 +500,14 @@
lib2-divmod-o = $(patsubst %,%$(objext),$(LIB2_DIVMOD_FUNCS))
$(lib2-divmod-o): %$(objext): $(srcdir)/libgcc2.c
$(gcc_compile) -DL$* -c $< \
- -fexceptions -fnon-call-exceptions $(vis_hide)
+ -fno-exceptions -fnon-call-exceptions $(vis_hide)
libgcc-objects += $(lib2-divmod-o)
ifeq ($(enable_shared),yes)
lib2-divmod-s-o = $(patsubst %,%_s$(objext),$(LIB2_DIVMOD_FUNCS))
$(lib2-divmod-s-o): %_s$(objext): $(srcdir)/libgcc2.c
$(gcc_s_compile) -DL$* -c $< \
- -fexceptions -fnon-call-exceptions
+ -fno-exceptions -fnon-call-exceptions
libgcc-s-objects += $(lib2-divmod-s-o)
endif
@@ -810,7 +810,7 @@
# libgcc_eh.a, only LIB2ADDEH matters. If we do, only LIB2ADDEHSTATIC and
# LIB2ADDEHSHARED matter. (Usually all three are identical.)
-c_flags := -fexceptions
+c_flags := -fno-exceptions
ifeq ($(enable_shared),yes)

File diff suppressed because it is too large Load Diff

View File

@@ -1,25 +1,7 @@
diff -Nbaur gdb-7.4/gdb/Makefile.in gdb-7.4-arm/gdb/Makefile.in diff -Nbaur gdb-7.7.1/gdb/Makefile.in gdb-7.7.1-arm/gdb/Makefile.in
--- gdb-7.4/gdb/Makefile.in 2012-01-06 04:43:01.000000000 +0000 --- gdb-7.7.1/gdb/Makefile.in 2014-05-05 22:51:24.000000000 +0100
+++ gdb-7.4-arm/gdb/Makefile.in 2012-02-28 03:07:12.000000000 +0000 +++ gdb-7.7.1-arm/gdb/Makefile.in 2014-05-18 17:05:16.105567001 +0100
@@ -2195,10 +2195,10 @@ @@ -2307,10 +2307,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.
-@GMAKE_TRUE@override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
-@GMAKE_TRUE@ -MF $(DEPDIR)/$(basename $(@F)).Tpo
-@GMAKE_TRUE@override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
-@GMAKE_TRUE@ $(DEPDIR)/$(basename $(@F)).Po
+#@GMAKE_TRUE@override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
+#@GMAKE_TRUE@ -MF $(DEPDIR)/$(basename $(@F)).Tpo
+#@GMAKE_TRUE@override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
+#@GMAKE_TRUE@ $(DEPDIR)/$(basename $(@F)).Po
@GMAKE_TRUE@else
@GMAKE_TRUE@override COMPILE.pre = source='$<' object='$@' libtool=no \
@GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
diff -Nbaur gdb-7.4/sim/common/Make-common.in gdb-7.4-arm/sim/common/Make-common.in
--- gdb-7.4/sim/common/Make-common.in 2012-01-06 04:54:38.000000000 +0000
+++ gdb-7.4-arm/sim/common/Make-common.in 2012-02-28 03:07:41.000000000 +0000
@@ -417,10 +417,7 @@
# Note that we put the dependencies into a .Tpo file, then move them # 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 # into place if the compile succeeds. We need this because gcc does
# not atomically write the dependency output file. # not atomically write the dependency output file.
@@ -28,6 +10,23 @@ diff -Nbaur gdb-7.4/sim/common/Make-common.in gdb-7.4-arm/sim/common/Make-common
-@GMAKE_TRUE@override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \ -@GMAKE_TRUE@override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
-@GMAKE_TRUE@ $(DEPDIR)/$(basename $(@F)).Po -@GMAKE_TRUE@ $(DEPDIR)/$(basename $(@F)).Po
+@GMAKE_TRUE@override COMPILE.post = -c -o $@ +@GMAKE_TRUE@override COMPILE.post = -c -o $@
+@GMAKE_TRUE@override POSTCOMPILE =
@GMAKE_TRUE@else
@GMAKE_TRUE@override COMPILE.pre = source='$<' object='$@' libtool=no \
@GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
diff -Nbaur gdb-7.7.1/sim/common/Make-common.in gdb-7.7.1-arm/sim/common/Make-common.in
--- gdb-7.7.1/sim/common/Make-common.in 2014-01-08 09:23:36.000000000 +0000
+++ gdb-7.7.1-arm/sim/common/Make-common.in 2014-05-18 17:05:16.105567001 +0100
@@ -415,10 +415,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.
-@GMAKE_TRUE@override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
-@GMAKE_TRUE@ -MF $(DEPDIR)/$(basename $(@F)).Tpo
-@GMAKE_TRUE@override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
-@GMAKE_TRUE@ $(DEPDIR)/$(basename $(@F)).Po
+@GMAKE_TRUE@override COMPILE.post = -c -o $@
+@GMAKE_TRUE@override POSTCOMPILE =
@GMAKE_TRUE@else @GMAKE_TRUE@else
@GMAKE_TRUE@override COMPILE.pre = source='$<' object='$@' libtool=no \ @GMAKE_TRUE@override COMPILE.pre = source='$<' object='$@' libtool=no \
@GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC) @GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)

View File

@@ -0,0 +1,39 @@
ifeq ($(strip $(DEVKITPRO)),)
$(error "Please set DEVKITPRO in your environment. export DEVKITPRO=<path to>devkitPro)
endif
include $(DEVKITARM)/base_rules
CTRULIB := $(DEVKITPRO)/libctru
ifeq ($(strip $(APP_TITLE)),)
APP_TITLE := $(notdir $(OUTPUT))
endif
ifeq ($(strip $(APP_DESCRIPTION)),)
APP_DESCRIPTION := Built with devkitARM & ctrulib
endif
ifeq ($(strip $(APP_AUTHOR)),)
APP_AUTHOR := Unspecified Author
endif
ifeq ($(strip $(APP_ICON)),)
APP_ICON := $(CTRULIB)/default_icon.png
endif
#---------------------------------------------------------------------------------
%.smdh: $(APP_ICON) $(MAKEFILE_LIST)
@smdhtool --create "$(APP_TITLE)" "$(APP_DESCRIPTION)" "$(APP_AUTHOR)" $(APP_ICON) $@
@echo built ... $(notdir $@)
#---------------------------------------------------------------------------------
%.3dsx: %.elf
@3dsxtool $< $@
@echo built ... $(notdir $@)
#---------------------------------------------------------------------------------
%.elf:
@echo linking $(notdir $@)
@$(LD) $(LDFLAGS) $(OFILES) $(LIBPATHS) $(LIBS) -o $@
@$(NM) -CSn $@ > $(notdir $*.lst)

View File

@@ -1,36 +1,11 @@
#--------------------------------------------------------------------------------- include $(DEVKITARM)/base_tools
# change shell on Snow Leopard
#---------------------------------------------------------------------------------
UNAME_S := $(shell uname -s)
UNAME_R := $(shell uname -r)
ifneq (,$(findstring Darwin,$(UNAME_S)))
ifneq (,$(findstring 10.8.0,$(UNAME_R)))
export SHELL=/bin/bash
endif
endif
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# path to tools # add portlibs path
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
export PORTLIBS := $(DEVKITPRO)/portlibs/arm export PORTLIBS := $(DEVKITPRO)/portlibs/arm
export PATH := $(DEVKITARM)/bin:$(PORTLIBS)/bin:$(PATH) export PATH := $(PORTLIBS)/bin:$(PATH)
#---------------------------------------------------------------------------------
# the prefix on the compiler executables
#---------------------------------------------------------------------------------
PREFIX := arm-eabi-
export CC := $(PREFIX)gcc
export CXX := $(PREFIX)g++
export AS := $(PREFIX)as
export AR := $(PREFIX)ar
export OBJCOPY := $(PREFIX)objcopy
ISVC=$(or $(VCBUILDHELPER_COMMAND),$(MSBUILDEXTENSIONSPATH32),$(MSBUILDEXTENSIONSPATH))
ifneq (,$(ISVC))
ERROR_FILTER := 2>&1 | sed -e 's/\(.[a-zA-Z]\+\):\([0-9]\+\):/\1(\2):/g'
endif
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
%.a: %.a:

View File

@@ -0,0 +1,34 @@
#---------------------------------------------------------------------------------
# change shell on Snow Leopard
#---------------------------------------------------------------------------------
UNAME_S := $(shell uname -s)
UNAME_R := $(shell uname -r)
ifneq (,$(findstring Darwin,$(UNAME_S)))
ifneq (,$(findstring 10.8.0,$(UNAME_R)))
export SHELL=/bin/bash
endif
endif
#---------------------------------------------------------------------------------
# path to tools
#---------------------------------------------------------------------------------
export PATH := $(DEVKITARM)/bin:$(PATH)
#---------------------------------------------------------------------------------
# the prefix on the compiler executables
#---------------------------------------------------------------------------------
PREFIX := arm-none-eabi-
export CC := $(PREFIX)gcc
export CXX := $(PREFIX)g++
export AS := $(PREFIX)as
export AR := $(PREFIX)ar
export OBJCOPY := $(PREFIX)objcopy
export STRIP := $(PREFIX)strip
export NM := $(PREFIX)nm
ISVC=$(or $(VCBUILDHELPER_COMMAND),$(MSBUILDEXTENSIONSPATH32),$(MSBUILDEXTENSIONSPATH))
ifneq (,$(ISVC))
ERROR_FILTER := 2>&1 | sed -e 's/\(.[a-zA-Z]\+\):\([0-9]\+\):/\1(\2):/g'
endif

View File

@@ -11,11 +11,11 @@ GAME_TITLE := $(notdir $(OUTPUT))
endif endif
ifeq ($(strip $(GAME_SUBTITLE1)),) ifeq ($(strip $(GAME_SUBTITLE1)),)
GAME_SUBTITLE1 := www.devkitpro.org GAME_SUBTITLE1 := built with devkitARM
endif endif
ifeq ($(strip $(GAME_SUBTITLE2)),) ifeq ($(strip $(GAME_SUBTITLE2)),)
GAME_SUBTITLE2 := www.drunkencoders.com GAME_SUBTITLE2 := http://devkitpro.org
endif endif
ifeq ($(strip $(GAME_ICON)),) ifeq ($(strip $(GAME_ICON)),)

View File

@@ -12,8 +12,8 @@ cp -v $BUILDSCRIPTDIR/dkarm-eabi/rules/* $prefix
# Install and build the gba crt # Install and build the gba crt
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
cp -v $BUILDSCRIPTDIR/dkarm-eabi/crtls/* $prefix/arm-eabi/lib/ cp -v $BUILDSCRIPTDIR/dkarm-eabi/crtls/* $prefix/$target/lib/
cd $prefix/arm-eabi/lib/ cd $prefix/$target/lib/
$MAKE CRT=gba $MAKE CRT=gba
$MAKE CRT=gp32 $MAKE CRT=gp32
$MAKE CRT=er $MAKE CRT=er
@@ -21,12 +21,25 @@ $MAKE CRT=gp32_gpsdk
$MAKE CRT=ds_arm7 $MAKE CRT=ds_arm7
$MAKE CRT=ds_arm9 $MAKE CRT=ds_arm9
$MAKE CRT=ds_cart $MAKE CRT=ds_cart
$MAKE CRT=3dsx
cd $BUILDDIR/libgba-$LIBGBA_VER
$MAKE || { echo "error building libgba"; exit 1; }
$MAKE install || { echo "error installing libgba"; exit 1; }
cd $BUILDDIR/libnds-$LIBNDS_VER cd $BUILDDIR/libnds-$LIBNDS_VER
$MAKE || { echo "error building libnds"; exit 1; } $MAKE || { echo "error building libnds"; exit 1; }
$MAKE install || { echo "error installing libnds"; exit 1; } $MAKE install || { echo "error installing libnds"; exit 1; }
cd $BUILDDIR/default-arm7-$DEFAULT_ARM7_VER cd $BUILDDIR/dswifi-$DSWIFI_VER
$MAKE || { echo "error building dswifi"; exit 1; }
$MAKE install || { echo "error installing dswifi"; exit 1; }
cd $BUILDDIR/maxmod-$MAXMOD_VER
$MAKE || { echo "error building maxmod"; exit 1; }
$MAKE install || { echo "error installing maxmod"; exit 1; }
cd $BUILDDIR/default_arm7-$DEFAULT_ARM7_VER
$MAKE || { echo "error building default arm7"; exit 1; } $MAKE || { echo "error building default arm7"; exit 1; }
$MAKE install || { echo "error installing default arm7"; exit 1; } $MAKE install || { echo "error installing default arm7"; exit 1; }
@@ -34,10 +47,6 @@ cd $BUILDDIR/libfat-$LIBFAT_VER
$MAKE nds-install || { echo "error building nds libfat"; exit 1; } $MAKE nds-install || { echo "error building nds libfat"; exit 1; }
$MAKE gba-install || { echo "error installing gba libfat"; exit 1; } $MAKE gba-install || { echo "error installing gba libfat"; exit 1; }
cd $BUILDDIR/maxmod-$MAXMOD_VER
$MAKE || { echo "error building maxmod"; exit 1; }
$MAKE install || { echo "error installing maxmod"; exit 1; }
cd $BUILDDIR/libmirko-$LIBMIRKO_VER cd $BUILDDIR/libmirko-$LIBMIRKO_VER
$MAKE || { echo "error building libmirko"; exit 1; } $MAKE || { echo "error building libmirko"; exit 1; }
$MAKE install || { echo "error installing libmirko"; exit 1; } $MAKE install || { echo "error installing libmirko"; exit 1; }
@@ -45,3 +54,8 @@ $MAKE install || { echo "error installing libmirko"; exit 1; }
cd $BUILDDIR/libfilesystem-$FILESYSTEM_VER cd $BUILDDIR/libfilesystem-$FILESYSTEM_VER
$MAKE || { echo "error building libfilesystem"; exit 1; } $MAKE || { echo "error building libfilesystem"; exit 1; }
$MAKE install || { echo "error installing libfilesystem"; exit 1; } $MAKE install || { echo "error installing libfilesystem"; exit 1; }
cd $BUILDDIR/libctru-$LIBCTRU_VER
$MAKE || { echo "error building libctru"; exit 1; }
$MAKE install || { echo "error installing libctru"; exit 1; }

11
dkarm-eabi/scripts/build-gcc.sh Normal file → Executable file
View File

@@ -34,13 +34,14 @@ cd $BUILDDIR
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# build and install just the c compiler # build and install just the c compiler
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
mkdir -p $target/gcc-stage1 mkdir -p $target/gcc
cd $target/gcc-stage1 cd $target/gcc
if [ ! -f configured-gcc ] if [ ! -f configured-gcc ]
then then
CFLAGS="$cflags" LDFLAGS="$ldflags" CFLAGS_FOR_TARGET="-O2" LDFLAGS_FOR_TARGET="" ../../gcc-$GCC_VER/configure \ CFLAGS="$cflags" CXXFLAGS="$cflags" LDFLAGS="$ldflags" CFLAGS_FOR_TARGET="-O2" CXXFLAGS_FOR_TARGET="-O2" LDFLAGS_FOR_TARGET="" ../../gcc-$GCC_VER/configure \
--enable-languages=c,c++,objc,obj-c++ \ --enable-languages=c,c++,objc,obj-c++ \
--with-gnu-as --with-gnu-ld --with-gcc \
--with-march=armv4t\ --with-march=armv4t\
--enable-poison-system-directories \ --enable-poison-system-directories \
--enable-interwork --enable-multilib \ --enable-interwork --enable-multilib \
@@ -53,7 +54,7 @@ then
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \ --with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
--prefix=$prefix \ --prefix=$prefix \
--enable-lto $plugin_ld\ --enable-lto $plugin_ld\
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 39" \ --with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 43" \
$CROSS_PARAMS \ $CROSS_PARAMS \
|| { echo "Error configuring gcc"; exit 1; } || { echo "Error configuring gcc"; exit 1; }
touch configured-gcc touch configured-gcc
@@ -87,6 +88,8 @@ then
--disable-newlib-supplied-syscalls \ --disable-newlib-supplied-syscalls \
--enable-newlib-mb \ --enable-newlib-mb \
--enable-newlib-io-long-long \ --enable-newlib-io-long-long \
--enable-newlib-io-c99-formats \
--enable-newlib-io-pos-args \
--target=$target \ --target=$target \
--prefix=$prefix \ --prefix=$prefix \
|| { echo "Error configuring newlib"; exit 1; } || { echo "Error configuring newlib"; exit 1; }

View File

@@ -1,149 +0,0 @@
diff -Nbaur binutils-2.22/bfd/bfd-in2.h binutils-2.22-ppc/bfd/bfd-in2.h
--- binutils-2.22/bfd/bfd-in2.h 2011-09-16 02:15:18.000000000 +0100
+++ binutils-2.22-ppc/bfd/bfd-in2.h 2012-04-03 15:06:10.000000000 +0100
@@ -38,6 +38,8 @@
#include "ansidecl.h"
#include "symcat.h"
+#include <sys/stat.h>
+
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
#ifndef SABER
/* This hack is to avoid a problem with some strict ANSI C preprocessors.
@@ -308,8 +310,6 @@
&& (sec)->sec_info_type != ELF_INFO_TYPE_MERGE \
&& (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS)
-/* Forward define. */
-struct stat;
typedef enum bfd_print_symbol
{
diff -Nbaur binutils-2.22/bfd/bfd-in.h binutils-2.22-ppc/bfd/bfd-in.h
--- binutils-2.22/bfd/bfd-in.h 2011-09-16 02:15:18.000000000 +0100
+++ binutils-2.22-ppc/bfd/bfd-in.h 2012-04-03 15:06:10.000000000 +0100
@@ -31,6 +31,8 @@
#include "ansidecl.h"
#include "symcat.h"
+#include <sys/stat.h>
+
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
#ifndef SABER
/* This hack is to avoid a problem with some strict ANSI C preprocessors.
@@ -301,8 +303,6 @@
&& (sec)->sec_info_type != ELF_INFO_TYPE_MERGE \
&& (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS)
-/* Forward define. */
-struct stat;
typedef enum bfd_print_symbol
{
diff -Nbaur binutils-2.22/bfd/config.in binutils-2.22-ppc/bfd/config.in
--- binutils-2.22/bfd/config.in 2011-05-12 08:41:40.000000000 +0100
+++ binutils-2.22-ppc/bfd/config.in 2012-04-03 14:50:51.000000000 +0100
@@ -245,6 +245,9 @@
/* Define if <sys/procfs.h> has win32_pstatus_t. */
#undef HAVE_WIN32_PSTATUS_T
+/* Define to 1 if you have the <windows.h> header file. */
+#undef HAVE_WINDOWS_H
+
/* Define to 1 if you have the <zlib.h> header file. */
#undef HAVE_ZLIB_H
diff -Nbaur binutils-2.22/bfd/configure binutils-2.22-ppc/bfd/configure
--- binutils-2.22/bfd/configure 2011-11-21 11:55:48.000000000 +0000
+++ binutils-2.22-ppc/bfd/configure 2012-04-03 14:50:59.000000000 +0100
@@ -13508,6 +13508,22 @@
fi
+
+for ac_header in windows.h dlfcn.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+eval as_val=\$$as_ac_Header
+ if test "x$as_val" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether string.h and strings.h may both be included" >&5
$as_echo_n "checking whether string.h and strings.h may both be included... " >&6; }
if test "${gcc_cv_header_string+set}" = set; then :
diff -Nbaur binutils-2.22/bfd/configure.in binutils-2.22-ppc/bfd/configure.in
--- binutils-2.22/bfd/configure.in 2011-11-21 11:55:46.000000000 +0000
+++ binutils-2.22-ppc/bfd/configure.in 2012-04-03 14:51:23.000000000 +0100
@@ -190,6 +190,9 @@
GCC_HEADER_STDINT(bfd_stdint.h)
AC_HEADER_TIME
AC_HEADER_DIRENT
+
+AC_CHECK_HEADERS(windows.h dlfcn.h)
+
ACX_HEADER_STRING
AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid fileno)
AC_CHECK_FUNCS(strtoull)
diff -Nbaur binutils-2.22/bfd/plugin.c binutils-2.22-ppc/bfd/plugin.c
--- binutils-2.22/bfd/plugin.c 2011-07-11 16:03:07.000000000 +0100
+++ binutils-2.22-ppc/bfd/plugin.c 2012-04-03 14:51:32.000000000 +0100
@@ -25,7 +25,13 @@
#if BFD_SUPPORTS_PLUGINS
#include <assert.h>
+#ifdef HAVE_DLFCN_H
#include <dlfcn.h>
+#elif defined (HAVE_WINDOWS_H)
+#include <windows.h>
+#else
+#error Unknown how to handle dynamic-load-libraries.
+#endif
#include <stdarg.h>
#include "plugin-api.h"
#include "sysdep.h"
@@ -34,6 +40,37 @@
#include "libiberty.h"
#include <dirent.h>
+#if !defined (HAVE_DLFCN_H) && defined (HAVE_WINDOWS_H)
+
+#define RTLD_NOW 0 /* Dummy value. */
+
+static void *
+dlopen (const char *file, int mode ATTRIBUTE_UNUSED)
+{
+ return LoadLibrary (file);
+}
+
+static void *
+dlsym (void *handle, const char *name)
+{
+ return GetProcAddress (handle, name);
+}
+
+static int ATTRIBUTE_UNUSED
+dlclose (void *handle)
+{
+ FreeLibrary (handle);
+ return 0;
+}
+
+static const char *
+dlerror (void)
+{
+ return "Unable to load DLL.";
+}
+
+#endif /* !defined (HAVE_DLFCN_H) && defined (HAVE_WINDOWS_H) */
+
#define bfd_plugin_close_and_cleanup _bfd_generic_close_and_cleanup
#define bfd_plugin_bfd_free_cached_info _bfd_generic_bfd_free_cached_info
#define bfd_plugin_new_section_hook _bfd_generic_new_section_hook

View File

@@ -0,0 +1,12 @@
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

View File

@@ -1,7 +1,7 @@
diff -Nbaur gcc-4.6.3/gcc/config/rs6000/rs6000.h gcc-4.6.3-ppc/gcc/config/rs6000/rs6000.h diff -Nbaur gcc-4.8.2/gcc/config/rs6000/rs6000.h gcc-4.8.2-ppc/gcc/config/rs6000/rs6000.h
--- gcc-4.6.3/gcc/config/rs6000/rs6000.h 2011-07-27 19:17:15.000000000 +0100 --- gcc-4.8.2/gcc/config/rs6000/rs6000.h 2013-06-19 02:18:38.000000000 +0100
+++ gcc-4.6.3-ppc/gcc/config/rs6000/rs6000.h 2012-04-21 22:54:04.000000000 +0100 +++ gcc-4.8.2-ppc/gcc/config/rs6000/rs6000.h 2014-04-01 14:13:11.000000000 +0100
@@ -200,6 +200,7 @@ @@ -195,6 +195,7 @@
{ "asm_cpu_476", ASM_CPU_476_SPEC }, \ { "asm_cpu_476", ASM_CPU_476_SPEC }, \
SUBTARGET_EXTRA_SPECS SUBTARGET_EXTRA_SPECS
@@ -9,7 +9,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/rs6000.h gcc-4.6.3-ppc/gcc/config/rs6000
/* -mcpu=native handling only makes sense with compiler running on /* -mcpu=native handling only makes sense with compiler running on
an PowerPC chip. If changing this condition, also change an PowerPC chip. If changing this condition, also change
the condition in driver-rs6000.c. */ the condition in driver-rs6000.c. */
@@ -214,6 +215,8 @@ @@ -209,6 +210,8 @@
#else #else
#define ASM_CPU_NATIVE_SPEC "%(asm_default)" #define ASM_CPU_NATIVE_SPEC "%(asm_default)"
#endif #endif
@@ -18,10 +18,10 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/rs6000.h gcc-4.6.3-ppc/gcc/config/rs6000
#ifndef CC1_CPU_SPEC #ifndef CC1_CPU_SPEC
#ifdef HAVE_LOCAL_CPU_DETECT #ifdef HAVE_LOCAL_CPU_DETECT
diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/sysv4.h diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.h gcc-4.8.2-ppc/gcc/config/rs6000/sysv4.h
--- gcc-4.6.3/gcc/config/rs6000/sysv4.h 2011-03-07 07:50:23.000000000 +0000 --- gcc-4.8.2/gcc/config/rs6000/sysv4.h 2013-06-19 02:18:38.000000000 +0100
+++ gcc-4.6.3-ppc/gcc/config/rs6000/sysv4.h 2012-04-21 22:54:04.000000000 +0100 +++ gcc-4.8.2-ppc/gcc/config/rs6000/sysv4.h 2014-04-01 14:13:11.000000000 +0100
@@ -603,7 +603,11 @@ @@ -570,7 +570,11 @@
/* Default starting address if specified. */ /* Default starting address if specified. */
#define LINK_START_SPEC "\ #define LINK_START_SPEC "\
@@ -34,7 +34,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
myellowknife : %(link_start_yellowknife) ; \ myellowknife : %(link_start_yellowknife) ; \
mmvme : %(link_start_mvme) ; \ mmvme : %(link_start_mvme) ; \
msim : %(link_start_sim) ; \ msim : %(link_start_sim) ; \
@@ -641,7 +645,8 @@ @@ -604,7 +608,8 @@
/* Any specific OS flags. */ /* Any specific OS flags. */
#define LINK_OS_SPEC "\ #define LINK_OS_SPEC "\
@@ -44,7 +44,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
myellowknife : %(link_os_yellowknife) ; \ myellowknife : %(link_os_yellowknife) ; \
mmvme : %(link_os_mvme) ; \ mmvme : %(link_os_mvme) ; \
msim : %(link_os_sim) ; \ msim : %(link_os_sim) ; \
@@ -660,7 +665,10 @@ @@ -622,7 +627,10 @@
/* Override rs6000.h definition. */ /* Override rs6000.h definition. */
#undef CPP_SPEC #undef CPP_SPEC
#define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \ #define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \
@@ -56,7 +56,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
myellowknife : %(cpp_os_yellowknife) ; \ myellowknife : %(cpp_os_yellowknife) ; \
mmvme : %(cpp_os_mvme) ; \ mmvme : %(cpp_os_mvme) ; \
msim : %(cpp_os_sim) ; \ msim : %(cpp_os_sim) ; \
@@ -675,7 +683,10 @@ @@ -636,7 +644,10 @@
#undef STARTFILE_SPEC #undef STARTFILE_SPEC
#define STARTFILE_SPEC "\ #define STARTFILE_SPEC "\
@@ -68,7 +68,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
myellowknife : %(startfile_yellowknife) ; \ myellowknife : %(startfile_yellowknife) ; \
mmvme : %(startfile_mvme) ; \ mmvme : %(startfile_mvme) ; \
msim : %(startfile_sim) ; \ msim : %(startfile_sim) ; \
@@ -686,11 +697,12 @@ @@ -646,11 +657,12 @@
mcall-openbsd: %(startfile_openbsd) ; \ mcall-openbsd: %(startfile_openbsd) ; \
: %(startfile_default) }" : %(startfile_default) }"
@@ -83,7 +83,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
myellowknife : %(lib_yellowknife) ; \ myellowknife : %(lib_yellowknife) ; \
mmvme : %(lib_mvme) ; \ mmvme : %(lib_mvme) ; \
msim : %(lib_sim) ; \ msim : %(lib_sim) ; \
@@ -701,11 +713,12 @@ @@ -660,11 +672,12 @@
mcall-openbsd: %(lib_openbsd) ; \ mcall-openbsd: %(lib_openbsd) ; \
: %(lib_default) }" : %(lib_default) }"
@@ -98,7 +98,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
myellowknife : %(endfile_yellowknife) ; \ myellowknife : %(endfile_yellowknife) ; \
mmvme : %(endfile_mvme) ; \ mmvme : %(endfile_mvme) ; \
msim : %(endfile_sim) ; \ msim : %(endfile_sim) ; \
@@ -722,16 +735,27 @@ @@ -680,16 +693,27 @@
/* Motorola ADS support. */ /* Motorola ADS support. */
#define LIB_ADS_SPEC "--start-group -lads -lc --end-group" #define LIB_ADS_SPEC "--start-group -lads -lc --end-group"
@@ -126,7 +126,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
/* Motorola Yellowknife support. */ /* Motorola Yellowknife support. */
#define LIB_YELLOWKNIFE_SPEC "--start-group -lyk -lc --end-group" #define LIB_YELLOWKNIFE_SPEC "--start-group -lyk -lc --end-group"
@@ -926,6 +950,7 @@ @@ -859,6 +883,7 @@
#undef SUBTARGET_EXTRA_SPECS #undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \ #define SUBTARGET_EXTRA_SPECS \
{ "crtsavres_default", CRTSAVRES_DEFAULT_SPEC }, \ { "crtsavres_default", CRTSAVRES_DEFAULT_SPEC }, \
@@ -134,7 +134,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
{ "lib_ads", LIB_ADS_SPEC }, \ { "lib_ads", LIB_ADS_SPEC }, \
{ "lib_yellowknife", LIB_YELLOWKNIFE_SPEC }, \ { "lib_yellowknife", LIB_YELLOWKNIFE_SPEC }, \
{ "lib_mvme", LIB_MVME_SPEC }, \ { "lib_mvme", LIB_MVME_SPEC }, \
@@ -936,6 +961,7 @@ @@ -868,6 +893,7 @@
{ "lib_netbsd", LIB_NETBSD_SPEC }, \ { "lib_netbsd", LIB_NETBSD_SPEC }, \
{ "lib_openbsd", LIB_OPENBSD_SPEC }, \ { "lib_openbsd", LIB_OPENBSD_SPEC }, \
{ "lib_default", LIB_DEFAULT_SPEC }, \ { "lib_default", LIB_DEFAULT_SPEC }, \
@@ -142,7 +142,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
{ "startfile_ads", STARTFILE_ADS_SPEC }, \ { "startfile_ads", STARTFILE_ADS_SPEC }, \
{ "startfile_yellowknife", STARTFILE_YELLOWKNIFE_SPEC }, \ { "startfile_yellowknife", STARTFILE_YELLOWKNIFE_SPEC }, \
{ "startfile_mvme", STARTFILE_MVME_SPEC }, \ { "startfile_mvme", STARTFILE_MVME_SPEC }, \
@@ -946,6 +972,7 @@ @@ -877,6 +903,7 @@
{ "startfile_netbsd", STARTFILE_NETBSD_SPEC }, \ { "startfile_netbsd", STARTFILE_NETBSD_SPEC }, \
{ "startfile_openbsd", STARTFILE_OPENBSD_SPEC }, \ { "startfile_openbsd", STARTFILE_OPENBSD_SPEC }, \
{ "startfile_default", STARTFILE_DEFAULT_SPEC }, \ { "startfile_default", STARTFILE_DEFAULT_SPEC }, \
@@ -150,7 +150,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
{ "endfile_ads", ENDFILE_ADS_SPEC }, \ { "endfile_ads", ENDFILE_ADS_SPEC }, \
{ "endfile_yellowknife", ENDFILE_YELLOWKNIFE_SPEC }, \ { "endfile_yellowknife", ENDFILE_YELLOWKNIFE_SPEC }, \
{ "endfile_mvme", ENDFILE_MVME_SPEC }, \ { "endfile_mvme", ENDFILE_MVME_SPEC }, \
@@ -959,7 +986,11 @@ @@ -889,7 +916,11 @@
{ "link_shlib", LINK_SHLIB_SPEC }, \ { "link_shlib", LINK_SHLIB_SPEC }, \
{ "link_target", LINK_TARGET_SPEC }, \ { "link_target", LINK_TARGET_SPEC }, \
{ "link_start", LINK_START_SPEC }, \ { "link_start", LINK_START_SPEC }, \
@@ -162,7 +162,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
{ "link_start_yellowknife", LINK_START_YELLOWKNIFE_SPEC }, \ { "link_start_yellowknife", LINK_START_YELLOWKNIFE_SPEC }, \
{ "link_start_mvme", LINK_START_MVME_SPEC }, \ { "link_start_mvme", LINK_START_MVME_SPEC }, \
{ "link_start_sim", LINK_START_SIM_SPEC }, \ { "link_start_sim", LINK_START_SIM_SPEC }, \
@@ -970,6 +1001,7 @@ @@ -899,6 +930,7 @@
{ "link_start_openbsd", LINK_START_OPENBSD_SPEC }, \ { "link_start_openbsd", LINK_START_OPENBSD_SPEC }, \
{ "link_start_default", LINK_START_DEFAULT_SPEC }, \ { "link_start_default", LINK_START_DEFAULT_SPEC }, \
{ "link_os", LINK_OS_SPEC }, \ { "link_os", LINK_OS_SPEC }, \
@@ -170,7 +170,7 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
{ "link_os_ads", LINK_OS_ADS_SPEC }, \ { "link_os_ads", LINK_OS_ADS_SPEC }, \
{ "link_os_yellowknife", LINK_OS_YELLOWKNIFE_SPEC }, \ { "link_os_yellowknife", LINK_OS_YELLOWKNIFE_SPEC }, \
{ "link_os_mvme", LINK_OS_MVME_SPEC }, \ { "link_os_mvme", LINK_OS_MVME_SPEC }, \
@@ -984,6 +1016,9 @@ @@ -912,6 +944,9 @@
{ "cc1_endian_little", CC1_ENDIAN_LITTLE_SPEC }, \ { "cc1_endian_little", CC1_ENDIAN_LITTLE_SPEC }, \
{ "cc1_endian_default", CC1_ENDIAN_DEFAULT_SPEC }, \ { "cc1_endian_default", CC1_ENDIAN_DEFAULT_SPEC }, \
{ "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \ { "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \
@@ -180,10 +180,10 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.h gcc-4.6.3-ppc/gcc/config/rs6000/
{ "cpp_os_ads", CPP_OS_ADS_SPEC }, \ { "cpp_os_ads", CPP_OS_ADS_SPEC }, \
{ "cpp_os_yellowknife", CPP_OS_YELLOWKNIFE_SPEC }, \ { "cpp_os_yellowknife", CPP_OS_YELLOWKNIFE_SPEC }, \
{ "cpp_os_mvme", CPP_OS_MVME_SPEC }, \ { "cpp_os_mvme", CPP_OS_MVME_SPEC }, \
diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.opt gcc-4.6.3-ppc/gcc/config/rs6000/sysv4.opt diff -Nbaur gcc-4.8.2/gcc/config/rs6000/sysv4.opt gcc-4.8.2-ppc/gcc/config/rs6000/sysv4.opt
--- gcc-4.6.3/gcc/config/rs6000/sysv4.opt 2011-01-03 20:52:22.000000000 +0000 --- gcc-4.8.2/gcc/config/rs6000/sysv4.opt 2013-01-10 20:38:27.000000000 +0000
+++ gcc-4.6.3-ppc/gcc/config/rs6000/sysv4.opt 2012-04-21 22:54:04.000000000 +0100 +++ gcc-4.8.2-ppc/gcc/config/rs6000/sysv4.opt 2014-04-01 14:13:11.000000000 +0100
@@ -108,6 +108,26 @@ @@ -120,6 +120,26 @@
Target RejectNegative Target RejectNegative
Link with libads.a, libc.a and crt0.o Link with libads.a, libc.a and crt0.o
@@ -210,22 +210,22 @@ diff -Nbaur gcc-4.6.3/gcc/config/rs6000/sysv4.opt gcc-4.6.3-ppc/gcc/config/rs600
myellowknife myellowknife
Target RejectNegative Target RejectNegative
Link with libyk.a, libc.a and crt0.o Link with libyk.a, libc.a and crt0.o
diff -Nbaur gcc-4.6.3/gcc/config.gcc gcc-4.6.3-ppc/gcc/config.gcc diff -Nbaur gcc-4.8.2/gcc/config.gcc gcc-4.8.2-ppc/gcc/config.gcc
--- gcc-4.6.3/gcc/config.gcc 2011-07-22 17:44:50.000000000 +0100 --- gcc-4.8.2/gcc/config.gcc 2013-10-03 01:47:24.000000000 +0100
+++ gcc-4.6.3-ppc/gcc/config.gcc 2012-04-21 22:54:04.000000000 +0100 +++ gcc-4.8.2-ppc/gcc/config.gcc 2014-04-01 14:13:11.000000000 +0100
@@ -2133,7 +2133,7 @@ @@ -2057,7 +2057,7 @@
use_gcc_stdint=wrap use_gcc_stdint=wrap
;; ;;
powerpc-*-eabi*) powerpc-*-eabi*)
- tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h" - tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h"
+ tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/750cl.h" + tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/750cl.h"
extra_options="${extra_options} rs6000/sysv4.opt" extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
use_gcc_stdint=wrap use_gcc_stdint=wrap
diff -Nbaur gcc-4.6.3/libcpp/Makefile.in gcc-4.6.3-ppc/libcpp/Makefile.in diff -Nbaur gcc-4.8.2/libcpp/Makefile.in gcc-4.8.2-ppc/libcpp/Makefile.in
--- gcc-4.6.3/libcpp/Makefile.in 2012-03-01 12:03:46.000000000 +0000 --- gcc-4.8.2/libcpp/Makefile.in 2013-10-16 08:27:58.000000000 +0100
+++ gcc-4.6.3-ppc/libcpp/Makefile.in 2012-04-21 22:54:04.000000000 +0100 +++ gcc-4.8.2-ppc/libcpp/Makefile.in 2014-04-01 14:13:11.000000000 +0100
@@ -212,8 +212,7 @@ @@ -207,8 +207,7 @@
# Note that we put the dependencies into a .Tpo file, then move them # 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 # into place if the compile succeeds. We need this because gcc does
# not atomically write the dependency output file. # not atomically write the dependency output file.
@@ -235,3 +235,48 @@ diff -Nbaur gcc-4.6.3/libcpp/Makefile.in gcc-4.6.3-ppc/libcpp/Makefile.in
else else
COMPILE = source='$<' object='$@' libtool=no DEPDIR=$(DEPDIR) $(DEPMODE) \ COMPILE = source='$<' object='$@' libtool=no DEPDIR=$(DEPDIR) $(DEPMODE) \
$(depcomp) $(COMPILE.base) $(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
@@ -24,7 +24,7 @@
/* On PowerPC64 Linux, these functions are provided by the linker. */
#ifndef __powerpc64__
-
+#if 0
#undef __ALTIVEC__
#define __ALTIVEC__ 1
#include "ppc-asm.h"
@@ -85,3 +85,4 @@
CFI_ENDPROC
#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 @@
/* On PowerPC64 Linux, these functions are provided by the linker. */
#ifndef __powerpc64__
+#if 0
#undef __ALTIVEC__
#define __ALTIVEC__ 1
@@ -85,3 +86,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 @@
/* 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. */

View File

@@ -1,7 +1,7 @@
diff -Nbaur gdb-7.4/gdb/Makefile.in gdb-7.4-ppc/gdb/Makefile.in diff -Nbaur gdb-7.7/gdb/Makefile.in gdb-7.7-ppc/gdb/Makefile.in
--- gdb-7.4/gdb/Makefile.in 2012-01-06 04:43:01.000000000 +0000 --- gdb-7.7/gdb/Makefile.in 2014-02-06 02:21:29.000000000 +0000
+++ gdb-7.4-ppc/gdb/Makefile.in 2012-01-28 15:56:00.000000000 +0000 +++ gdb-7.7-ppc/gdb/Makefile.in 2014-04-01 14:01:24.000000000 +0100
@@ -2195,10 +2195,10 @@ @@ -2307,10 +2307,10 @@
# Note that we put the dependencies into a .Tpo file, then move them # 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 # into place if the compile succeeds. We need this because gcc does
# not atomically write the dependency output file. # not atomically write the dependency output file.
@@ -16,10 +16,10 @@ diff -Nbaur gdb-7.4/gdb/Makefile.in gdb-7.4-ppc/gdb/Makefile.in
@GMAKE_TRUE@else @GMAKE_TRUE@else
@GMAKE_TRUE@override COMPILE.pre = source='$<' object='$@' libtool=no \ @GMAKE_TRUE@override COMPILE.pre = source='$<' object='$@' libtool=no \
@GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC) @GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
diff -Nbaur gdb-7.4/sim/ppc/Makefile.in gdb-7.4-ppc/sim/ppc/Makefile.in diff -Nbaur gdb-7.7/sim/ppc/Makefile.in gdb-7.7-ppc/sim/ppc/Makefile.in
--- gdb-7.4/sim/ppc/Makefile.in 2009-09-16 00:26:44.000000000 +0100 --- gdb-7.7/sim/ppc/Makefile.in 2013-12-08 04:55:48.000000000 +0000
+++ gdb-7.4-ppc/sim/ppc/Makefile.in 2012-02-25 13:30:02.000000000 +0000 +++ gdb-7.7-ppc/sim/ppc/Makefile.in 2014-04-01 14:01:24.000000000 +0100
@@ -551,7 +551,7 @@ @@ -552,7 +552,7 @@
PACKAGE_OBJ = @sim_pk_obj@ PACKAGE_OBJ = @sim_pk_obj@

4
dkppc/scripts/build-gcc.sh Normal file → Executable file
View File

@@ -75,7 +75,7 @@ cd $target/gcc
if [ ! -f configured-gcc ] if [ ! -f configured-gcc ]
then then
CFLAGS="$cflags" LDFLAGS="$ldflags" CFLAGS_FOR_TARGET="-O2" LDFLAGS_FOR_TARGET="" ../../gcc-$GCC_VER/configure \ CFLAGS="$cflags" CXXFLAGS="$cflags" LDFLAGS="$ldflags" CFLAGS_FOR_TARGET="-O2" CXXFLAGS_FOR_TARGET="-O2" LDFLAGS_FOR_TARGET="" ../../gcc-$GCC_VER/configure \
--enable-languages=c,c++,objc \ --enable-languages=c,c++,objc \
--enable-lto $plugin_ld \ --enable-lto $plugin_ld \
--with-cpu=750 \ --with-cpu=750 \
@@ -87,7 +87,7 @@ then
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \ --with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
--prefix=$prefix\ --prefix=$prefix\
--disable-dependency-tracking \ --disable-dependency-tracking \
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitPPC release 26" \ --with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitPPC release 27" \
$CROSS_PARAMS \ $CROSS_PARAMS \
|| { echo "Error configuring gcc stage 1"; exit 1; } || { echo "Error configuring gcc stage 1"; exit 1; }
touch configured-gcc touch configured-gcc

32
select_toolchain.sh Normal file → Executable file
View File

@@ -1,5 +1,17 @@
#!/bin/bash #!/bin/bash
VERSION=0 VERSION=0
case "$BUILD_DKPRO_PACKAGE" in
"1" )
VERSION=1
;;
"2" )
VERSION=2
;;
"3" )
VERSION=3
;;
esac
while [ $VERSION -eq 0 ] while [ $VERSION -eq 0 ]
do do
echo echo
@@ -18,20 +30,20 @@ done
case "$VERSION" in case "$VERSION" in
"1" ) "1" )
GCC_VER=4.7.0 GCC_VER=4.9.2
BINUTILS_VER=2.22 BINUTILS_VER=2.24
NEWLIB_VER=1.20.0 NEWLIB_VER=2.1.0
GDB_VER=7.4 GDB_VER=7.7.1
basedir='dkarm-eabi' basedir='dkarm-eabi'
package=devkitARM package=devkitARM
target=arm-eabi target=arm-none-eabi
toolchain=DEVKITARM toolchain=DEVKITARM
;; ;;
"2" ) "2" )
GCC_VER=4.6.3 GCC_VER=4.8.2
BINUTILS_VER=2.22 BINUTILS_VER=2.24
NEWLIB_VER=1.20.0 NEWLIB_VER=2.0.0
GDB_VER=7.4 GDB_VER=7.7
basedir='dkppc' basedir='dkppc'
package=devkitPPC package=devkitPPC
target=powerpc-eabi target=powerpc-eabi
@@ -47,4 +59,4 @@ case "$VERSION" in
target=psp target=psp
toolchain=DEVKITPSP toolchain=DEVKITPSP
;; ;;
esac esac

View File

@@ -19,6 +19,10 @@ do
then then
$HOST_STRIP $f $HOST_STRIP $f
fi fi
if [[ "$f" == *.dll ]]
then
$HOST_STRIP -d $f
fi
done done
if [ $VERSION -eq 2 ]; then if [ $VERSION -eq 2 ]; then