Compare commits

..

12 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
5 changed files with 39 additions and 33 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

@@ -28,7 +28,7 @@ GENERAL_TOOLS_VER=1.0.0
LIBGBA_VER=0.5.0
GBATOOLS_VER=1.0.0
LIBNDS_VER=1.6.1
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

@@ -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

View File

@@ -142,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