11#! /bin/bash
22# ---------------------------------------------------------------------------------
3- # Build scripts for
4- # devkitARM release 48
5- # devkitPPC release 30
6- # devkitA64 release 9
3+ # devkitARM release 49
4+ # devkitPPC release 32
5+ # devkitA64 release 12
76# devkitSH4 release 2
87# ---------------------------------------------------------------------------------
98
10- if [ " scripts " != " scripts " ] ; then
9+ if [ 0 -eq 1 ] ; then
1110 echo " Please use the latest release buildscripts unless advised otherwise by devkitPro staff."
12- echo " https://github.com/devkitPro/buildscripts/releases"
11+ echo " https://github.com/devkitPro/buildscripts/releases/latest "
1312 echo
1413 echo " The scripts in the git repository may be dependent on things which currently only exist"
1514 echo " on developer machines. This is not a bug, use stable releases."
2625
2726GENERAL_TOOLS_VER=1.0.2
2827
29- LIBGBA_VER=0.5.0
28+ LIBGBA_VER=0.5.1
3029GBATOOLS_VER=1.1.0
3130
32- LIBNDS_VER=1.7.1
33- DEFAULT_ARM7_VER=0.7.3
31+ LIBNDS_VER=1.7.2
32+ DEFAULT_ARM7_VER=0.7.4
3433DSWIFI_VER=0.4.2
3534MAXMOD_VER=1.0.11
36- FILESYSTEM_VER=0.9.13-1
37- LIBFAT_VER=1.1.2
35+ FILESYSTEM_VER=0.9.14
36+ LIBFAT_VER=1.1.3
3837DSTOOLS_VER=1.2.1
3938GRIT_VER=0.8.15
4039NDSTOOL_VER=2.1.1
@@ -44,7 +43,7 @@ DFU_UTIL_VER=0.9.1
4443STLINK_VER=1.2.3
4544
4645GAMECUBE_TOOLS_VER=1.0.2
47- LIBOGC_VER=1.8.17
46+ LIBOGC_VER=1.8.20
4847WIILOAD_VER=0.5.1
4948
5049LIBCTRU_VER=1.5.0
@@ -56,12 +55,12 @@ PICASSO_VER=2.7.0
5655TEX3DS_VER=1.0.0
5756
5857GP32_TOOLS_VER=1.0.3
59- LIBMIRKO_VER=0.9.7
58+ LIBMIRKO_VER=0.9.8
6059
61- SWITCH_TOOLS_VER=1.2.0
62- LIBNX_VER=1.0 .0
60+ SWITCH_TOOLS_VER=1.4.1
61+ LIBNX_VER=1.3 .0
6362
64- ELF2D01_VER=1.0.0
63+ ELF2D01_VER=master
6564LIBDATAPLUS_VER=master
6665
6766OSXMIN=${OSXMIN:- 10.9}
@@ -167,10 +166,13 @@ TOOLPATH=$(echo $INSTALLDIR | sed -e 's/^\([a-zA-Z]\):/\/\1/')
167166export PATH=$PATH :$TOOLPATH /$package /bin
168167
169168if [ ! -z $CROSSBUILD ]; then
169+ toolsprefix=$INSTALLDIR /$CROSSBUILD /tools
170170 prefix=$INSTALLDIR /$CROSSBUILD /$package
171+ toolsprefix=$INSTALLDIR /$CROSSBUILD /tools
171172 CROSS_PARAMS=" --build=` ./config.guess` --host=$CROSSBUILD "
172173 CROSS_GCC_PARAMS=" --with-gmp=$CROSSPATH --with-mpfr=$CROSSPATH --with-mpc=$CROSSPATH "
173174else
175+ toolsprefix=$INSTALLDIR /tools
174176 prefix=$INSTALLDIR /$package
175177fi
176178
@@ -187,24 +189,26 @@ PLATFORM=`uname -s`
187189
188190case $PLATFORM in
189191 Darwin )
190- cflags =" -mmacosx-version-min=${OSXMIN} -I/usr/local/include"
192+ cppflags =" -mmacosx-version-min=${OSXMIN} -I/usr/local/include"
191193 ldflags=" -mmacosx-version-min=${OSXMIN} -L/usr/local/lib"
192194 if [ " x${OSXSDKPATH} x" != " xx" ]; then
193- cflags =" $cflags -isysroot ${OSXSDKPATH} "
195+ cppflags =" $cppflags -isysroot ${OSXSDKPATH} "
194196 ldflags=" $ldflags -Wl,-syslibroot,${OSXSDKPATH} "
195197 fi
196198 TESTCC=` cc -v 2>&1 | grep clang`
197199 if [ " x${TESTCC} x" != " xx" ]; then
198- cflags =" $cflags -fbracket-depth=512"
200+ cppflags =" $cppflags -fbracket-depth=512"
199201 fi
200202 ;;
201203 MINGW32* )
202- cflags=" -D__USE_MINGW_ACCESS"
203- # horrid hack to get -flto to work on windows
204- plugin_ld=" --with-plugin-ld=ld"
204+ cppflags=" -D__USE_MINGW_ACCESS"
205205 ;;
206206esac
207207
208+ if [ ! -z $CROSSBUILD ] && grep -q " mingw" <<< " $CROSSBUILD" ; then
209+ cppflags=" -D__USE_MINGW_ACCESS -D__USE_MINGW_ANSI_STDIO=1"
210+ fi
211+
208212
209213BUILDSCRIPTDIR=$( pwd)
210214BUILDDIR=$( pwd) /.$package
@@ -218,17 +222,17 @@ DATAPLUS_URL="https://github.com/downloads/brijohn/"
218222patchdir=$( pwd) /$basedir /patches
219223scriptdir=$( pwd) /$basedir /scripts
220224
221- archives=" binutils-${BINUTILS_VER} .tar.bz2 gcc-${GCC_VER} .tar.xz newlib-${NEWLIB_VER} .tar.gz gdb-${GDB_VER} .tar.xz"
225+ archives=" binutils-${BINUTILS_VER} .tar.xz gcc-${GCC_VER} .tar.xz newlib-${NEWLIB_VER} .tar.gz gdb-${GDB_VER} .tar.xz"
222226
223227if [ $VERSION -eq 1 ]; then
224228
225229 targetarchives=" libnds-src-${LIBNDS_VER} .tar.bz2 libgba-src-${LIBGBA_VER} .tar.bz2
226230 libmirko-src-${LIBMIRKO_VER} .tar.bz2 dswifi-src-${DSWIFI_VER} .tar.bz2 maxmod-src-${MAXMOD_VER} .tar.bz2
227- default_arm7 -src-${DEFAULT_ARM7_VER} .tar.bz2 libfilesystem-src-${FILESYSTEM_VER} .tar.bz2
231+ default-arm7 -src-${DEFAULT_ARM7_VER} .tar.bz2 libfilesystem-src-${FILESYSTEM_VER} .tar.bz2
228232 libfat-src-${LIBFAT_VER} .tar.bz2 libctru-src-${LIBCTRU_VER} .tar.bz2 citro3d-src-${CITRO3D_VER} .tar.bz2
229233 citro2d-src-${CITRO2D_VER} .tar.bz2"
230234
231- hostarchives=" gbatools- $GBATOOLS_VER .tar.bz2 gp32tools -$GP32_TOOLS_VER .tar.bz2
235+ hostarchives=" gba-tools- $GBATOOLS_VER .tar.bz2 gp32-tools -$GP32_TOOLS_VER .tar.bz2
232236 dstools-$DSTOOLS_VER .tar.bz2 grit-$GRIT_VER .tar.bz2 ndstool-$NDSTOOL_VER .tar.bz2
233237 general-tools-$GENERAL_TOOLS_VER .tar.bz2 mmutil-$MMUTIL_VER .tar.bz2
234238 dfu-util-$DFU_UTIL_VER .tar.bz2 stlink-$STLINK_VER .tar.bz2 3dstools-$TOOLS3DS_VER .tar.bz2
246250
247251if [ $VERSION -eq 3 ]; then
248252
253+ targetarchives=" libnx-src-${LIBNX_VER} .tar.bz2"
254+
249255 hostarchives=" general-tools-$GENERAL_TOOLS_VER .tar.bz2 switch-tools-$SWITCH_TOOLS_VER .tar.bz2"
250256
251257fi
252258
253259if [ $VERSION -eq 4 ]; then
254- gitrepos=" git://github.com/brijohn/libdataplus.git:$LIBDATAPLUS_VER "
255- hostarchives=" general-tools-$GENERAL_TOOLS_VER .tar.bz2 ${DATAPLUS_URL} buildscripts/elf2d01- $ELF2D01_VER .tar.bz2 "
260+ gitrepos=" git://github.com/brijohn/libdataplus.git:$LIBDATAPLUS_VER git://github.com/brijohn/elf2d01.git: $ELF2D01_VER "
261+ hostarchives=" general-tools-$GENERAL_TOOLS_VER .tar.bz2"
256262fi
257263
258264if [ ! -z " $BUILD_DKPRO_SRCDIR " ] ; then
264270cd " $SRCDIR "
265271for archive in $archives $targetarchives $hostarchives
266272do
267- if [ " ` dirname $archive ` " = " ." ]; then
268- archive=" ${DEVKITPRO_URL}${archive} "
269- fi
270- echo ` basename $archive `
271- if [ ! -f ` basename $archive ` ]; then
272- $FETCH $archive || { echo " Error: Failed to download ` basename $archive ` " ; exit 1; }
273+ echo $archive
274+ if [ ! -f $archive ]; then
275+ $FETCH https://downloads.devkitpro.org/$archive || { echo " Error: Failed to download $archive " ; exit 1; }
273276 fi
274277done
275278
284287 git_clone_project $url $branch
285288done
286289
287- extract_and_patch binutils $BINUTILS_VER bz2
290+ extract_and_patch binutils $BINUTILS_VER xz
288291extract_and_patch gcc $GCC_VER xz
289292extract_and_patch newlib $NEWLIB_VER gz
290293extract_and_patch gdb $GDB_VER xz
355358
356359
357360echo
358- echo " note: Add the following to your environment; DEVKITPRO=$TOOLPATH $toolchain =$TOOLPATH /$package "
361+ echo " note: Add the following to your environment;"
362+ echo
363+ echo " DEVKITPRO=$TOOLPATH "
364+ if [ " $toolchain " != " DEVKITA64" ]; then
365+ echo " $toolchain =$TOOLPATH /$package "
366+ fi
367+ echo
368+ echo " add $TOOLPATH /tools/bin to your PATH"
369+ echo
359370echo
0 commit comments