Compare commits

...

13 Commits

Author SHA1 Message Date
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
8 changed files with 85 additions and 67 deletions

View File

@@ -1,18 +1,18 @@
#!/bin/bash
#---------------------------------------------------------------------------------
# Build scripts for
# devkitARM release 38
# devkitARM release 41
# devkitPPC release 26
# devkitPSP release 17
#---------------------------------------------------------------------------------
if [ 1 -eq 1 ] ; then
if [ 0 -eq 1 ] ; then
echo "Currently in release cycle, proceed with caution, do not report problems, do not ask for support."
echo "Please use the latest release buildscripts unless advised otherwise by devkitPro staff."
echo "http://sourceforge.net/projects/devkitpro/files/buildscripts/"
echo
echo "The scripts in svn are quite often dependent on things which currently only exist on developer"
echo "machines. This is not a bug, use stable releases."
echo "The scripts in the git repository are quite often dependent on things which currently only exist"
echo "on developer machines. This is not a bug, use stable releases."
exit 1
fi
@@ -24,9 +24,9 @@ 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
LIBOGC_VER=1.8.10
LIBOGC_VER=1.8.11
LIBGBA_VER=20090222
LIBNDS_VER=1.5.5
LIBNDS_VER=1.5.7
DEFAULT_ARM7_VER=0.5.24
DSWIFI_VER=0.3.13
LIBMIRKO_VER=0.9.7
@@ -44,6 +44,8 @@ GCDSPSUITE_VER=1.4.0
ELF2DOL_VER=1.0.0
WIILOAD_VER=0.5.1
MMUTIL_VER=1.8.6
DFU_UTIL_VER=0.6
STLINK_VER=0.5.4
#---------------------------------------------------------------------------------
function extract_and_patch {
@@ -151,6 +153,10 @@ else
prefix=$INSTALLDIR/$package
fi
if [ "$CROSSBUILD" = "i686-w64-mingw32" ]; then
export PKG_CONFIG_PATH=/opt/i686-w64-mingw32/mingw/lib/pkgconfig
fi
if [ "$BUILD_DKPRO_AUTOMATED" != "1" ] ; then
echo
@@ -194,7 +200,8 @@ if [ $VERSION -eq 1 ]; then
default-arm7-src-${DEFAULT_ARM7_VER}.tar.bz2 libfilesystem-src-${FILESYSTEM_VER}.tar.bz2
libfat-src-${LIBFAT_VER}.tar.bz2"
hostarchives="gbatools-$GBATOOLS_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"
fi
if [ $VERSION -eq 2 ]; then
@@ -258,6 +265,9 @@ if [ "$CROSSBUILD" = "i686-w64-mingw32" ]; then
if [ $VERSION -ne 3 ]; then
cp -v /opt/i686-w64-mingw32/mingw/lib/FreeImage.dll $prefix/bin
fi
if [ $VERSION -eq 1 ]; then
cp -v /opt/i686-w64-mingw32/i686-w64-mingw32/bin/libusb-1.0.dll $prefix/bin
fi
cp -v /opt/i686-w64-mingw32/mingw/lib/libstdc++-6.dll \
/opt/i686-w64-mingw32/mingw/lib/libgcc_s_sjlj-1.dll \
$prefix/bin

View File

@@ -1,6 +1,6 @@
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
diff -Nbaur gcc-4.7.1/gcc/config/arm/t-arm-elf gcc-4.7.1-arm/gcc/config/arm/t-arm-elf
--- gcc-4.7.1/gcc/config/arm/t-arm-elf 2011-11-02 15:23:48.000000000 +0000
+++ gcc-4.7.1-arm/gcc/config/arm/t-arm-elf 2012-06-15 19:36:09.000000000 +0100
@@ -26,22 +26,44 @@
#MULTILIB_DIRNAMES += fa526 fa626 fa606te fa626te fmp626 fa726te
#MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=fa526 *mthumb*/*mcpu=fa626
@@ -71,18 +71,18 @@ diff -Nbaur gcc-4.7.0/gcc/config/arm/t-arm-elf gcc-4.7.0-arm/gcc/config/arm/t-ar
#
# 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
diff -Nbaur gcc-4.7.1/gcc/config/arm/unknown-elf.h gcc-4.7.1-arm/gcc/config/arm/unknown-elf.h
--- gcc-4.7.1/gcc/config/arm/unknown-elf.h 2011-03-31 13:13:13.000000000 +0100
+++ gcc-4.7.1-arm/gcc/config/arm/unknown-elf.h 2012-06-15 19:36:09.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
diff -Nbaur gcc-4.7.1/gcc/gcc.c gcc-4.7.1-arm/gcc/gcc.c
--- gcc-4.7.1/gcc/gcc.c 2012-02-28 17:31:38.000000000 +0000
+++ gcc-4.7.1-arm/gcc/gcc.c 2012-06-15 19:36:09.000000000 +0100
@@ -548,6 +548,11 @@
#endif
#endif
@@ -111,9 +111,9 @@ diff -Nbaur gcc-4.7.0/gcc/gcc.c gcc-4.7.0-arm/gcc/gcc.c
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
diff -Nbaur gcc-4.7.1/libcpp/Makefile.in gcc-4.7.1-arm/libcpp/Makefile.in
--- gcc-4.7.1/libcpp/Makefile.in 2012-06-14 09:48:08.000000000 +0100
+++ gcc-4.7.1-arm/libcpp/Makefile.in 2012-06-15 19:36:11.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
@@ -124,27 +124,15 @@ diff -Nbaur gcc-4.7.0/libcpp/Makefile.in gcc-4.7.0-arm/libcpp/Makefile.in
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
diff -Nbaur gcc-4.7.1/libgcc/Makefile.in gcc-4.7.1-arm/libgcc/Makefile.in
--- gcc-4.7.1/libgcc/Makefile.in 2012-05-24 15:59:38.000000000 +0100
+++ gcc-4.7.1-arm/libgcc/Makefile.in 2012-06-16 13:58:38.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)
+ -fno-exceptions -fno-non-call-exceptions $(vis_hide)
libgcc-objects += $(lib2-divmod-o)
ifeq ($(enable_shared),yes)
@@ -152,7 +140,7 @@ diff -Nbaur gcc-4.7.0/libgcc/Makefile.in gcc-4.7.0-arm/libgcc/Makefile.in
$(lib2-divmod-s-o): %_s$(objext): $(srcdir)/libgcc2.c
$(gcc_s_compile) -DL$* -c $< \
- -fexceptions -fnon-call-exceptions
+ -fno-exceptions -fnon-call-exceptions
+ -fno-exceptions -fno-non-call-exceptions
libgcc-s-objects += $(lib2-divmod-s-o)
endif
@@ -165,3 +153,15 @@ diff -Nbaur gcc-4.7.0/libgcc/Makefile.in gcc-4.7.0-arm/libgcc/Makefile.in
ifeq ($(enable_shared),yes)
diff -Nbaur gcc-4.7.1/libgcc/crtstuff.c gcc-4.7.1-arm/libgcc/crtstuff.c
--- gcc-4.7.1/libgcc/crtstuff.c 2011-12-06 21:35:41.000000000 +0000
+++ gcc-4.7.1-arm/libgcc/crtstuff.c 2012-06-15 19:36:11.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. */

View File

@@ -1,25 +1,7 @@
diff -Nbaur gdb-7.4/gdb/Makefile.in gdb-7.4-arm/gdb/Makefile.in
--- gdb-7.4/gdb/Makefile.in 2012-01-06 04:43:01.000000000 +0000
+++ gdb-7.4-arm/gdb/Makefile.in 2012-02-28 03:07:12.000000000 +0000
@@ -2195,10 +2195,10 @@
# 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 @@
diff -Nbaur gdb-7.4.1/gdb/Makefile.in gdb-7.4.1-arm/gdb/Makefile.in
--- gdb-7.4.1/gdb/Makefile.in 2012-01-06 04:43:01.000000000 +0000
+++ gdb-7.4.1-arm/gdb/Makefile.in 2012-06-18 11:40:57.000000000 +0100
@@ -2195,10 +2195,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.
@@ -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@ $(DEPDIR)/$(basename $(@F)).Po
+@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.4.1/sim/common/Make-common.in gdb-7.4.1-arm/sim/common/Make-common.in
--- gdb-7.4.1/sim/common/Make-common.in 2012-01-06 04:54:38.000000000 +0000
+++ gdb-7.4.1-arm/sim/common/Make-common.in 2012-06-18 11:25:26.000000000 +0100
@@ -417,10 +417,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@override COMPILE.pre = source='$<' object='$@' libtool=no \
@GMAKE_TRUE@ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)

View File

@@ -18,7 +18,7 @@ export PATH := $(DEVKITARM)/bin:$(PORTLIBS)/bin:$(PATH)
#---------------------------------------------------------------------------------
# the prefix on the compiler executables
#---------------------------------------------------------------------------------
PREFIX := arm-eabi-
PREFIX := arm-none-eabi-
export CC := $(PREFIX)gcc
export CXX := $(PREFIX)g++

View File

@@ -12,8 +12,8 @@ cp -v $BUILDSCRIPTDIR/dkarm-eabi/rules/* $prefix
# Install and build the gba crt
#---------------------------------------------------------------------------------
cp -v $BUILDSCRIPTDIR/dkarm-eabi/crtls/* $prefix/arm-eabi/lib/
cd $prefix/arm-eabi/lib/
cp -v $BUILDSCRIPTDIR/dkarm-eabi/crtls/* $prefix/$target/lib/
cd $prefix/$target/lib/
$MAKE CRT=gba
$MAKE CRT=gp32
$MAKE CRT=er
@@ -26,6 +26,10 @@ cd $BUILDDIR/libnds-$LIBNDS_VER
$MAKE || { echo "error building libnds"; exit 1; }
$MAKE install || { echo "error installing libnds"; exit 1; }
cd $BUILDDIR/dswifi-$DSWIFI_VER
$MAKE || { echo "error building dswifi"; exit 1; }
$MAKE install || { echo "error installing dswifi"; exit 1; }
cd $BUILDDIR/default-arm7-$DEFAULT_ARM7_VER
$MAKE || { echo "error building default arm7"; exit 1; }
$MAKE install || { echo "error installing default arm7"; exit 1; }

View File

@@ -34,13 +34,14 @@ cd $BUILDDIR
#---------------------------------------------------------------------------------
# build and install just the c compiler
#---------------------------------------------------------------------------------
mkdir -p $target/gcc-stage1
cd $target/gcc-stage1
mkdir -p $target/gcc
cd $target/gcc
if [ ! -f configured-gcc ]
then
CFLAGS="$cflags" LDFLAGS="$ldflags" CFLAGS_FOR_TARGET="-O2" LDFLAGS_FOR_TARGET="" ../../gcc-$GCC_VER/configure \
--enable-languages=c,c++,objc,obj-c++ \
--with-gnu-as --with-gnu-ld --with-gcc \
--with-march=armv4t\
--enable-poison-system-directories \
--enable-interwork --enable-multilib \
@@ -53,7 +54,7 @@ then
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
--prefix=$prefix \
--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 41" \
$CROSS_PARAMS \
|| { echo "Error configuring gcc"; exit 1; }
touch configured-gcc

View File

@@ -18,13 +18,13 @@ done
case "$VERSION" in
"1" )
GCC_VER=4.7.0
GCC_VER=4.7.1
BINUTILS_VER=2.22
NEWLIB_VER=1.20.0
GDB_VER=7.4
GDB_VER=7.4.1
basedir='dkarm-eabi'
package=devkitARM
target=arm-eabi
target=arm-none-eabi
toolchain=DEVKITARM
;;
"2" )

View File

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