Compare commits

...

21 Commits

Author SHA1 Message Date
Dave Murphy
8731b42b20 use latest libctru version 2017-03-03 20:09:18 +00:00
Dave Murphy
f49dee7361 update notes for OSX 2017-03-03 19:49:53 +00:00
Dave Murphy
d16584234d no longer distributing devkitPSP 2017-03-03 19:41:40 +00:00
Dave Murphy
34eca34dcf increase bracket depth if compiling with clang 2017-03-03 16:13:25 +00:00
Dave Murphy
c42584594b build just c & c++ compilers 2017-03-03 15:34:10 +00:00
Dave Murphy
9ea6924b39 use github to download sources 2017-03-03 00:46:25 +00:00
Dave Murphy
3af916aa90 Allow easier switching and external setting of OSX SDK 2017-03-03 00:45:15 +00:00
Dave Murphy
5148cb347c update stlink & libnds 2017-02-06 19:01:45 +00:00
Dave Murphy
9e8a149558 parallel make breaks newlib install 2017-02-02 01:50:57 +00:00
Dave Murphy
c9109d8681 update gp32 tools 2017-02-02 01:12:34 +00:00
Dave Murphy
45b120b6e3 add to flags from environment 2017-02-02 01:12:06 +00:00
Dave Murphy
ce5d8243d4 move jobs configuration to config.sh 2017-02-01 21:16:35 +00:00
Dave Murphy
590464b4e5 use latest libnds, enable scripts for release 2017-01-26 09:23:48 +00:00
Dave Murphy
c852d90043 fix malloc lock/unlock stubs 2017-01-25 16:52:00 +00:00
Dave Murphy
be5546a122 add dead code elimination options 2017-01-25 16:52:00 +00:00
Dave Murphy
0ccd646fec update devkitPPC version 2017-01-25 16:52:00 +00:00
Dave Murphy
d1891441af update newlib patch
Properly default to UTF-8, expose (f)truncate, remove old malloc lock/unlock stubs
2017-01-25 16:52:00 +00:00
Dave Murphy
a53e338a21 remove old newlib patch 2017-01-25 16:52:00 +00:00
Dave Murphy
973ae4bdb7 Change the dldi size to match libnds updates 2017-01-20 22:51:14 +00:00
ichfly
bf6f1d0454 Update dldi.ld
changed the size according to new libnds updates
2017-01-20 23:36:40 +01:00
Dave Murphy
c34990450a disable git buildscripts 2017-01-19 12:12:59 +00:00
8 changed files with 753 additions and 7871 deletions

View File

@@ -26,19 +26,26 @@ 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.
expat, 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://www.zlib.net
http://www.libusb.org
http://expat.sourceforge.net/
sudo apt-get install libfreeimage-dev zlib1g-dev libusb-dev libexpat1-dev
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
For building the OSX versions we install the Xcode commandline tools and build
pkg-config from source as well as static versions of the libraries listed above.
This helps keep the dependencies to a minimum so end users can use the tools
with only Xcode command line tools to obtain make.
To avoid having to manually answer prompts during the build the script will
read variables from config.sh if it exists. Copy config.sh.sample to config.sh
and set the variables as appropriate for your build.
@@ -85,16 +92,6 @@ to use the built in crt0 and linkscript use powerpc-eabi-gcc to link your projec
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, -mwup for wii u.
Using devkitPSP
---------------
All you need to do now to use devkitPSP is make sure that your freshly built tools
are in your PATH, something like this;
export PATH=$PATH:<path to devkitPSP>/bin
(Obviously replace <path to devkitPSP> with the full path to the devkitPSP
installation directory)
Getting started
---------------

View File

@@ -1,7 +1,7 @@
#!/bin/bash
#---------------------------------------------------------------------------------
# devkitARM release 46
# devkitPPC release 29
# devkitPPC release 29-1
#---------------------------------------------------------------------------------
if [ 0 -eq 1 ] ; then
@@ -28,7 +28,7 @@ GENERAL_TOOLS_VER=1.0.0
LIBGBA_VER=0.5.0
GBATOOLS_VER=1.0.0
LIBNDS_VER=1.6.0
LIBNDS_VER=1.6.2
DEFAULT_ARM7_VER=0.7.0
DSWIFI_VER=0.4.0
MAXMOD_VER=1.0.10
@@ -41,21 +41,24 @@ DLDITOOL_VER=1.24.0
MMUTIL_VER=1.8.6
DFU_UTIL_VER=0.9.1
STLINK_VER=1.2.1
STLINK_VER=1.2.2
GAMECUBE_TOOLS_VER=1.0.1
LIBOGC_VER=1.8.16
WIILOAD_VER=0.5.1
LIBCTRU_VER=1.2.0
LIBCTRU_VER=1.2.1
CITRO3D_VER=1.2.0
TOOLS3DS_VER=1.1.4
LINK3DS_VER=0.5.1
PICASSO_VER=2.5.0
GP32_TOOLS_VER=1.0.1
GP32_TOOLS_VER=1.0.2
LIBMIRKO_VER=0.9.7
OSXMIN=${OSXMIN:-10.5}
OSXSDKPATH=${OSXSDKPATH:-/Developer/SDKs/MacOSX10.5.sdk}
#---------------------------------------------------------------------------------
function extract_and_patch {
#---------------------------------------------------------------------------------
@@ -165,8 +168,12 @@ PLATFORM=`uname -s`
case $PLATFORM in
Darwin )
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"
cflags="-mmacosx-version-min=${OSXMIN} -isysroot ${OSXSDKPATH} -I/usr/local/include"
ldflags="-mmacosx-version-min=${OSXMIN} -Wl,-syslibroot,${OSXSDKPATH} -L/usr/local/lib"
TESTCC=`cc -v 2>&1 | grep clang`
if [ "x${TESTCC}x" != "xx" ]; then
cflags="$cflags -fbracket-depth=512"
fi
;;
MINGW32* )
cflags="-D__USE_MINGW_ACCESS"
@@ -180,7 +187,6 @@ BUILDDIR=$(pwd)/.$package
if [ ! -z $CROSSBUILD ]; then
BUILDDIR=$BUILDDIR-$CROSSBUILD
fi
DEVKITPRO_URL="http://downloads.sourceforge.net/devkitpro"
patchdir=$(pwd)/$basedir/patches
scriptdir=$(pwd)/$basedir/scripts
@@ -222,7 +228,7 @@ for archive in $archives $targetarchives $hostarchives
do
echo $archive
if [ ! -f $archive ]; then
$FETCH http://downloads.sf.net/devkitpro/$archive || { echo "Error: Failed to download $archive"; exit 1; }
$FETCH https://github.com/devkitPro/buildscripts/releases/download/sources/$archive || { echo "Error: Failed to download $archive"; exit 1; }
fi
done

View File

@@ -24,6 +24,12 @@ BUILD_DKPRO_PACKAGE=0
#---------------------------------------------------------------------------------
#BUILD_DKPRO_SRCDIR=/d/projects/archives
#---------------------------------------------------------------------------------
# MAKEFLAGS for building - use number of processors for jobs
#---------------------------------------------------------------------------------
#numcores=`getconf _NPROCESSORS_ONLN`
#export MAKEFLAGS="$MAKEFLAGS -j${numcores}"
#---------------------------------------------------------------------------------
# Automated script execution
#---------------------------------------------------------------------------------
@@ -31,3 +37,4 @@ BUILD_DKPRO_PACKAGE=0
# 1: Use defaults, don't pause for answers
#---------------------------------------------------------------------------------
BUILD_DKPRO_AUTOMATED=0

View File

@@ -8,7 +8,7 @@ MEMORY {
the patcher / linker to find all shifted addresses within each section.
Changed sections are: glue_7, got
*/
ddmem : ORIGIN = 0xBF800000, LENGTH = 32K
ddmem : ORIGIN = 0xBF800000, LENGTH = 16K
}

View File

@@ -1,10 +1,6 @@
#!/bin/sh
#---------------------------------------------------------------------------------
numcores=`getconf _NPROCESSORS_ONLN`
numjobs=$(($numcores * 2 + 1))
#---------------------------------------------------------------------------------
# build and install binutils
#---------------------------------------------------------------------------------
@@ -24,7 +20,7 @@ fi
if [ ! -f built-binutils ]
then
$MAKE -j$numjobs || { echo "Error building binutils"; exit 1; }
$MAKE || { echo "Error building binutils"; exit 1; }
touch built-binutils
fi
@@ -50,7 +46,7 @@ then
CXXFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
LDFLAGS_FOR_TARGET="" \
../../gcc-$GCC_VER/configure \
--enable-languages=c,c++,objc,obj-c++ \
--enable-languages=c,c++ \
--with-gnu-as --with-gnu-ld --with-gcc \
--with-march=armv4t\
--enable-cxx-flags='-ffunction-sections' \
@@ -74,7 +70,7 @@ fi
if [ ! -f built-gcc ]
then
$MAKE all-gcc -j$numjobs || { echo "Error building gcc stage1"; exit 1; }
$MAKE all-gcc || { echo "Error building gcc stage1"; exit 1; }
touch built-gcc
fi
@@ -109,14 +105,14 @@ fi
if [ ! -f built-newlib ]
then
$MAKE -j$numjobs || { echo "Error building newlib"; exit 1; }
$MAKE || { echo "Error building newlib"; exit 1; }
touch built-newlib
fi
if [ ! -f installed-newlib ]
then
$MAKE install || { echo "Error installing newlib"; exit 1; }
$MAKE install -j1 || { echo "Error installing newlib"; exit 1; }
touch installed-newlib
fi
@@ -130,7 +126,7 @@ cd $target/gcc
if [ ! -f built-stage2 ]
then
$MAKE all -j$numjobs || { echo "Error building gcc stage2"; exit 1; }
$MAKE all || { echo "Error building gcc stage2"; exit 1; }
touch built-stage2
fi
@@ -166,7 +162,7 @@ fi
if [ ! -f built-gdb ]
then
$MAKE -j$numjobs || { echo "Error building gdb"; exit 1; }
$MAKE || { echo "Error building gdb"; exit 1; }
touch built-gdb
fi

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -75,7 +75,13 @@ cd $target/gcc
if [ ! -f configured-gcc ]
then
CFLAGS="$cflags" CXXFLAGS="$cflags" LDFLAGS="$ldflags" CFLAGS_FOR_TARGET="-O2" CXXFLAGS_FOR_TARGET="-O2" LDFLAGS_FOR_TARGET="" ../../gcc-$GCC_VER/configure \
CFLAGS="$cflags" \
CXXFLAGS="$cflags" \
LDFLAGS="$ldflags" \
CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
CXXFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
LDFLAGS_FOR_TARGET="" \
../../gcc-$GCC_VER/configure \
--enable-languages=c,c++,objc \
--enable-lto $plugin_ld \
--with-cpu=750 \
@@ -89,7 +95,7 @@ then
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
--prefix=$prefix\
--with-system-zlib\
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitPPC release 29" \
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitPPC release 29-1" \
$CROSS_PARAMS \
|| { echo "Error configuring gcc stage 1"; exit 1; }
touch configured-gcc
@@ -119,6 +125,7 @@ unset LDFLAGS
if [ ! -f configured-newlib ]
then
CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
../../newlib-$NEWLIB_VER/configure \
--target=$target \
--prefix=$prefix \
@@ -135,7 +142,7 @@ then
fi
if [ ! -f installed-newlib ]
then
$MAKE install || { echo "Error installing newlib"; exit 1; }
$MAKE install -j1 || { echo "Error installing newlib"; exit 1; }
touch installed-newlib
fi