mirror of
https://github.com/devkitPro/buildscripts.git
synced 2026-08-21 09:54:03 -05:00
Compare commits
12 Commits
v20170126
...
devkitARM_
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8731b42b20 | ||
|
|
f49dee7361 | ||
|
|
d16584234d | ||
|
|
34eca34dcf | ||
|
|
c42584594b | ||
|
|
9ea6924b39 | ||
|
|
3af916aa90 | ||
|
|
5148cb347c | ||
|
|
9e8a149558 | ||
|
|
c9109d8681 | ||
|
|
45b120b6e3 | ||
|
|
ce5d8243d4 |
23
README.TXT
23
README.TXT
@@ -26,19 +26,26 @@ http://www.multiprecision.org/
|
|||||||
sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev
|
sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev
|
||||||
|
|
||||||
Some of the tools for devkitARM and devkitPPC also require FreeImage, 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
|
expat, and libusb. Again these are built as static libraries for ease of
|
||||||
but you can probably use the versions supplied by your distro.
|
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
|
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
|
Building gxtexconv for cube/wii needs GL/gl.h which can be obtained with
|
||||||
|
|
||||||
sudo apt-get install mesa-common-dev
|
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
|
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
|
read variables from config.sh if it exists. Copy config.sh.sample to config.sh
|
||||||
and set the variables as appropriate for your build.
|
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
|
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.
|
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
|
Getting started
|
||||||
---------------
|
---------------
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ GENERAL_TOOLS_VER=1.0.0
|
|||||||
LIBGBA_VER=0.5.0
|
LIBGBA_VER=0.5.0
|
||||||
GBATOOLS_VER=1.0.0
|
GBATOOLS_VER=1.0.0
|
||||||
|
|
||||||
LIBNDS_VER=1.6.1
|
LIBNDS_VER=1.6.2
|
||||||
DEFAULT_ARM7_VER=0.7.0
|
DEFAULT_ARM7_VER=0.7.0
|
||||||
DSWIFI_VER=0.4.0
|
DSWIFI_VER=0.4.0
|
||||||
MAXMOD_VER=1.0.10
|
MAXMOD_VER=1.0.10
|
||||||
@@ -41,21 +41,24 @@ DLDITOOL_VER=1.24.0
|
|||||||
MMUTIL_VER=1.8.6
|
MMUTIL_VER=1.8.6
|
||||||
|
|
||||||
DFU_UTIL_VER=0.9.1
|
DFU_UTIL_VER=0.9.1
|
||||||
STLINK_VER=1.2.1
|
STLINK_VER=1.2.2
|
||||||
|
|
||||||
GAMECUBE_TOOLS_VER=1.0.1
|
GAMECUBE_TOOLS_VER=1.0.1
|
||||||
LIBOGC_VER=1.8.16
|
LIBOGC_VER=1.8.16
|
||||||
WIILOAD_VER=0.5.1
|
WIILOAD_VER=0.5.1
|
||||||
|
|
||||||
LIBCTRU_VER=1.2.0
|
LIBCTRU_VER=1.2.1
|
||||||
CITRO3D_VER=1.2.0
|
CITRO3D_VER=1.2.0
|
||||||
TOOLS3DS_VER=1.1.4
|
TOOLS3DS_VER=1.1.4
|
||||||
LINK3DS_VER=0.5.1
|
LINK3DS_VER=0.5.1
|
||||||
PICASSO_VER=2.5.0
|
PICASSO_VER=2.5.0
|
||||||
|
|
||||||
GP32_TOOLS_VER=1.0.1
|
GP32_TOOLS_VER=1.0.2
|
||||||
LIBMIRKO_VER=0.9.7
|
LIBMIRKO_VER=0.9.7
|
||||||
|
|
||||||
|
OSXMIN=${OSXMIN:-10.5}
|
||||||
|
OSXSDKPATH=${OSXSDKPATH:-/Developer/SDKs/MacOSX10.5.sdk}
|
||||||
|
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
function extract_and_patch {
|
function extract_and_patch {
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
@@ -165,8 +168,12 @@ PLATFORM=`uname -s`
|
|||||||
|
|
||||||
case $PLATFORM in
|
case $PLATFORM in
|
||||||
Darwin )
|
Darwin )
|
||||||
cflags="-mmacosx-version-min=10.5 -isysroot /Developer/SDKs/MacOSX10.5.sdk -I/usr/local/include"
|
cflags="-mmacosx-version-min=${OSXMIN} -isysroot ${OSXSDKPATH} -I/usr/local/include"
|
||||||
ldflags="-mmacosx-version-min=10.5 -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk -L/usr/local/lib"
|
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* )
|
MINGW32* )
|
||||||
cflags="-D__USE_MINGW_ACCESS"
|
cflags="-D__USE_MINGW_ACCESS"
|
||||||
@@ -180,7 +187,6 @@ BUILDDIR=$(pwd)/.$package
|
|||||||
if [ ! -z $CROSSBUILD ]; then
|
if [ ! -z $CROSSBUILD ]; then
|
||||||
BUILDDIR=$BUILDDIR-$CROSSBUILD
|
BUILDDIR=$BUILDDIR-$CROSSBUILD
|
||||||
fi
|
fi
|
||||||
DEVKITPRO_URL="http://downloads.sourceforge.net/devkitpro"
|
|
||||||
|
|
||||||
patchdir=$(pwd)/$basedir/patches
|
patchdir=$(pwd)/$basedir/patches
|
||||||
scriptdir=$(pwd)/$basedir/scripts
|
scriptdir=$(pwd)/$basedir/scripts
|
||||||
@@ -222,7 +228,7 @@ for archive in $archives $targetarchives $hostarchives
|
|||||||
do
|
do
|
||||||
echo $archive
|
echo $archive
|
||||||
if [ ! -f $archive ]; then
|
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
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,12 @@ BUILD_DKPRO_PACKAGE=0
|
|||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
#BUILD_DKPRO_SRCDIR=/d/projects/archives
|
#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
|
# Automated script execution
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
@@ -31,3 +37,4 @@ BUILD_DKPRO_PACKAGE=0
|
|||||||
# 1: Use defaults, don't pause for answers
|
# 1: Use defaults, don't pause for answers
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
BUILD_DKPRO_AUTOMATED=0
|
BUILD_DKPRO_AUTOMATED=0
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,6 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
|
|
||||||
numcores=`getconf _NPROCESSORS_ONLN`
|
|
||||||
|
|
||||||
numjobs=$(($numcores * 2 + 1))
|
|
||||||
|
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
# build and install binutils
|
# build and install binutils
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
@@ -24,7 +20,7 @@ fi
|
|||||||
|
|
||||||
if [ ! -f built-binutils ]
|
if [ ! -f built-binutils ]
|
||||||
then
|
then
|
||||||
$MAKE -j$numjobs || { echo "Error building binutils"; exit 1; }
|
$MAKE || { echo "Error building binutils"; exit 1; }
|
||||||
touch built-binutils
|
touch built-binutils
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -50,7 +46,7 @@ then
|
|||||||
CXXFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
|
CXXFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
|
||||||
LDFLAGS_FOR_TARGET="" \
|
LDFLAGS_FOR_TARGET="" \
|
||||||
../../gcc-$GCC_VER/configure \
|
../../gcc-$GCC_VER/configure \
|
||||||
--enable-languages=c,c++,objc,obj-c++ \
|
--enable-languages=c,c++ \
|
||||||
--with-gnu-as --with-gnu-ld --with-gcc \
|
--with-gnu-as --with-gnu-ld --with-gcc \
|
||||||
--with-march=armv4t\
|
--with-march=armv4t\
|
||||||
--enable-cxx-flags='-ffunction-sections' \
|
--enable-cxx-flags='-ffunction-sections' \
|
||||||
@@ -74,7 +70,7 @@ fi
|
|||||||
|
|
||||||
if [ ! -f built-gcc ]
|
if [ ! -f built-gcc ]
|
||||||
then
|
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
|
touch built-gcc
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -109,14 +105,14 @@ fi
|
|||||||
|
|
||||||
if [ ! -f built-newlib ]
|
if [ ! -f built-newlib ]
|
||||||
then
|
then
|
||||||
$MAKE -j$numjobs || { echo "Error building newlib"; exit 1; }
|
$MAKE || { echo "Error building newlib"; exit 1; }
|
||||||
touch built-newlib
|
touch built-newlib
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ ! -f installed-newlib ]
|
if [ ! -f installed-newlib ]
|
||||||
then
|
then
|
||||||
$MAKE install || { echo "Error installing newlib"; exit 1; }
|
$MAKE install -j1 || { echo "Error installing newlib"; exit 1; }
|
||||||
touch installed-newlib
|
touch installed-newlib
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -130,7 +126,7 @@ cd $target/gcc
|
|||||||
|
|
||||||
if [ ! -f built-stage2 ]
|
if [ ! -f built-stage2 ]
|
||||||
then
|
then
|
||||||
$MAKE all -j$numjobs || { echo "Error building gcc stage2"; exit 1; }
|
$MAKE all || { echo "Error building gcc stage2"; exit 1; }
|
||||||
touch built-stage2
|
touch built-stage2
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -166,7 +162,7 @@ fi
|
|||||||
|
|
||||||
if [ ! -f built-gdb ]
|
if [ ! -f built-gdb ]
|
||||||
then
|
then
|
||||||
$MAKE -j$numjobs || { echo "Error building gdb"; exit 1; }
|
$MAKE || { echo "Error building gdb"; exit 1; }
|
||||||
touch built-gdb
|
touch built-gdb
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -142,7 +142,7 @@ then
|
|||||||
fi
|
fi
|
||||||
if [ ! -f installed-newlib ]
|
if [ ! -f installed-newlib ]
|
||||||
then
|
then
|
||||||
$MAKE install || { echo "Error installing newlib"; exit 1; }
|
$MAKE install -j1 || { echo "Error installing newlib"; exit 1; }
|
||||||
touch installed-newlib
|
touch installed-newlib
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user