Compare commits

..

21 Commits

Author SHA1 Message Date
Dave Murphy
afe1a727bc Enable scripts for release 2018-06-12 13:44:52 +01:00
Dave Murphy
0c2e648a04 add lto to languages 2018-06-11 13:27:09 +01:00
Dave Murphy
f0c6240d85 add scandir 2018-06-11 11:06:42 +01:00
Dave Murphy
b40a9147a5 restore poison system directories 2018-06-11 11:06:21 +01:00
Dave Murphy
5fcb44fb8f use CPPFLAGS for extra macros 2018-06-08 16:44:08 +00:00
Dave Murphy
e95e74c5bb enable libstdc++fs & clock functions 2018-06-08 16:42:25 +00:00
Dave Murphy
789ec8cf00 add aligned_alloc & scandir 2018-06-08 11:56:42 +01:00
Dave Murphy
ae6c2c125a use right tools prefix for cross builds 2018-06-08 11:56:42 +01:00
Dave Murphy
6cd9b70762 enable std::filesystem 2018-06-08 11:56:41 +01:00
Dave Murphy
caad8fafae build libraries when enabled 2018-06-06 03:03:26 +01:00
Dave Murphy
49d8b5dc46 use right prefix for tools 2018-06-06 03:00:46 +01:00
Dave Murphy
c021bf4c57 disable git scripts 2018-05-22 18:15:50 +01:00
Dave Murphy
ae79a8de3a enable scripts for release 2018-05-22 16:34:09 +00:00
Dave Murphy
3a3efdafd4 build libnx 2018-05-22 16:33:37 +00:00
Dave Murphy
ab8de4361a remove lto hack 2018-05-22 16:32:29 +00:00
Dave Murphy
26cc59f4f6 use latest versions 2018-05-22 16:30:18 +00:00
Dave Murphy
b8b26124cb put tools in /opt/devkitpro/tools/bin 2018-05-22 16:25:53 +00:00
Dave Murphy
108127de46 update switch tools & libs 2018-05-22 16:25:12 +00:00
Dave Murphy
a3ae2e737d update download links 2018-05-22 16:24:18 +00:00
Dave Murphy
09627572b9 fix newlib cross build 2018-05-22 09:04:39 +01:00
Dave Murphy
5bb8680c27 disable git scripts 2018-05-14 12:30:58 +01:00
10 changed files with 871 additions and 273 deletions

View File

@@ -1,16 +1,15 @@
#!/bin/bash #!/bin/bash
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# devkitARM release 48 # devkitARM release 49
# devkitPPC release 30 # devkitPPC release 30
# devkitA64 release 9 # devkitA64 release 10
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
if [ 0 -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 "Please use the latest release buildscripts unless advised otherwise by devkitPro staff."
echo "https://github.com/devkitPro/buildscripts/releases" echo "https://github.com/devkitPro/buildscripts/releases/latest"
echo echo
echo "The scripts in the git repository are quite often dependent on things which currently only exist" echo "The scripts in the git repository may be dependent on things which currently only exist"
echo "on developer machines. This is not a bug, use stable releases." echo "on developer machines. This is not a bug, use stable releases."
exit 1 exit 1
fi fi
@@ -26,15 +25,15 @@ echo
GENERAL_TOOLS_VER=1.0.2 GENERAL_TOOLS_VER=1.0.2
LIBGBA_VER=0.5.0 LIBGBA_VER=0.5.1
GBATOOLS_VER=1.1.0 GBATOOLS_VER=1.1.0
LIBNDS_VER=1.7.1 LIBNDS_VER=1.7.2
DEFAULT_ARM7_VER=0.7.3 DEFAULT_ARM7_VER=0.7.4
DSWIFI_VER=0.4.2 DSWIFI_VER=0.4.2
MAXMOD_VER=1.0.11 MAXMOD_VER=1.0.11
FILESYSTEM_VER=0.9.13-1 FILESYSTEM_VER=0.9.14
LIBFAT_VER=1.1.2 LIBFAT_VER=1.1.3
DSTOOLS_VER=1.2.1 DSTOOLS_VER=1.2.1
GRIT_VER=0.8.15 GRIT_VER=0.8.15
NDSTOOL_VER=2.1.1 NDSTOOL_VER=2.1.1
@@ -56,10 +55,10 @@ PICASSO_VER=2.7.0
TEX3DS_VER=1.0.0 TEX3DS_VER=1.0.0
GP32_TOOLS_VER=1.0.3 GP32_TOOLS_VER=1.0.3
LIBMIRKO_VER=0.9.7 LIBMIRKO_VER=0.9.8
SWITCH_TOOLS_VER=1.2.0 SWITCH_TOOLS_VER=1.4.0
LIBNX_VER=1.0.0 LIBNX_VER=1.2.1
OSXMIN=${OSXMIN:-10.9} OSXMIN=${OSXMIN:-10.9}
@@ -153,10 +152,13 @@ TOOLPATH=$(echo $INSTALLDIR | sed -e 's/^\([a-zA-Z]\):/\/\1/')
export PATH=$PATH:$TOOLPATH/$package/bin export PATH=$PATH:$TOOLPATH/$package/bin
if [ ! -z $CROSSBUILD ]; then if [ ! -z $CROSSBUILD ]; then
toolsprefix=$INSTALLDIR/$CROSSBUILD/tools
prefix=$INSTALLDIR/$CROSSBUILD/$package prefix=$INSTALLDIR/$CROSSBUILD/$package
toolsprefix=$INSTALLDIR/$CROSSBUILD/tools
CROSS_PARAMS="--build=`./config.guess` --host=$CROSSBUILD" CROSS_PARAMS="--build=`./config.guess` --host=$CROSSBUILD"
CROSS_GCC_PARAMS="--with-gmp=$CROSSPATH --with-mpfr=$CROSSPATH --with-mpc=$CROSSPATH" CROSS_GCC_PARAMS="--with-gmp=$CROSSPATH --with-mpfr=$CROSSPATH --with-mpc=$CROSSPATH"
else else
toolsprefix=$INSTALLDIR/tools
prefix=$INSTALLDIR/$package prefix=$INSTALLDIR/$package
fi fi
@@ -173,24 +175,26 @@ PLATFORM=`uname -s`
case $PLATFORM in case $PLATFORM in
Darwin ) Darwin )
cflags="-mmacosx-version-min=${OSXMIN} -I/usr/local/include" cppflags="-mmacosx-version-min=${OSXMIN} -I/usr/local/include"
ldflags="-mmacosx-version-min=${OSXMIN} -L/usr/local/lib" ldflags="-mmacosx-version-min=${OSXMIN} -L/usr/local/lib"
if [ "x${OSXSDKPATH}x" != "xx" ]; then if [ "x${OSXSDKPATH}x" != "xx" ]; then
cflags="$cflags -isysroot ${OSXSDKPATH}" cppflags="$cppflags -isysroot ${OSXSDKPATH}"
ldflags="$ldflags -Wl,-syslibroot,${OSXSDKPATH}" ldflags="$ldflags -Wl,-syslibroot,${OSXSDKPATH}"
fi fi
TESTCC=`cc -v 2>&1 | grep clang` TESTCC=`cc -v 2>&1 | grep clang`
if [ "x${TESTCC}x" != "xx" ]; then if [ "x${TESTCC}x" != "xx" ]; then
cflags="$cflags -fbracket-depth=512" cppflags="$cppflags -fbracket-depth=512"
fi fi
;; ;;
MINGW32* ) MINGW32* )
cflags="-D__USE_MINGW_ACCESS" cppflags="-D__USE_MINGW_ACCESS"
# horrid hack to get -flto to work on windows
plugin_ld="--with-plugin-ld=ld"
;; ;;
esac esac
if [ ! -z $CROSSBUILD ] && grep -q "mingw" <<<"$CROSSBUILD" ; then
cppflags="-D__USE_MINGW_ACCESS -D__USE_MINGW_ANSI_STDIO=1"
fi
BUILDSCRIPTDIR=$(pwd) BUILDSCRIPTDIR=$(pwd)
BUILDDIR=$(pwd)/.$package BUILDDIR=$(pwd)/.$package
@@ -208,11 +212,11 @@ if [ $VERSION -eq 1 ]; then
targetarchives="libnds-src-${LIBNDS_VER}.tar.bz2 libgba-src-${LIBGBA_VER}.tar.bz2 targetarchives="libnds-src-${LIBNDS_VER}.tar.bz2 libgba-src-${LIBGBA_VER}.tar.bz2
libmirko-src-${LIBMIRKO_VER}.tar.bz2 dswifi-src-${DSWIFI_VER}.tar.bz2 maxmod-src-${MAXMOD_VER}.tar.bz2 libmirko-src-${LIBMIRKO_VER}.tar.bz2 dswifi-src-${DSWIFI_VER}.tar.bz2 maxmod-src-${MAXMOD_VER}.tar.bz2
default_arm7-src-${DEFAULT_ARM7_VER}.tar.bz2 libfilesystem-src-${FILESYSTEM_VER}.tar.bz2 default-arm7-src-${DEFAULT_ARM7_VER}.tar.bz2 libfilesystem-src-${FILESYSTEM_VER}.tar.bz2
libfat-src-${LIBFAT_VER}.tar.bz2 libctru-src-${LIBCTRU_VER}.tar.bz2 citro3d-src-${CITRO3D_VER}.tar.bz2 libfat-src-${LIBFAT_VER}.tar.bz2 libctru-src-${LIBCTRU_VER}.tar.bz2 citro3d-src-${CITRO3D_VER}.tar.bz2
citro2d-src-${CITRO2D_VER}.tar.bz2" citro2d-src-${CITRO2D_VER}.tar.bz2"
hostarchives="gbatools-$GBATOOLS_VER.tar.bz2 gp32tools-$GP32_TOOLS_VER.tar.bz2 hostarchives="gba-tools-$GBATOOLS_VER.tar.bz2 gp32-tools-$GP32_TOOLS_VER.tar.bz2
dstools-$DSTOOLS_VER.tar.bz2 grit-$GRIT_VER.tar.bz2 ndstool-$NDSTOOL_VER.tar.bz2 dstools-$DSTOOLS_VER.tar.bz2 grit-$GRIT_VER.tar.bz2 ndstool-$NDSTOOL_VER.tar.bz2
general-tools-$GENERAL_TOOLS_VER.tar.bz2 mmutil-$MMUTIL_VER.tar.bz2 general-tools-$GENERAL_TOOLS_VER.tar.bz2 mmutil-$MMUTIL_VER.tar.bz2
dfu-util-$DFU_UTIL_VER.tar.bz2 stlink-$STLINK_VER.tar.bz2 3dstools-$TOOLS3DS_VER.tar.bz2 dfu-util-$DFU_UTIL_VER.tar.bz2 stlink-$STLINK_VER.tar.bz2 3dstools-$TOOLS3DS_VER.tar.bz2
@@ -230,6 +234,8 @@ fi
if [ $VERSION -eq 3 ]; then if [ $VERSION -eq 3 ]; then
targetarchives=" libnx-src-${LIBNX_VER}.tar.bz2"
hostarchives="general-tools-$GENERAL_TOOLS_VER.tar.bz2 switch-tools-$SWITCH_TOOLS_VER.tar.bz2" hostarchives="general-tools-$GENERAL_TOOLS_VER.tar.bz2 switch-tools-$SWITCH_TOOLS_VER.tar.bz2"
fi fi
@@ -246,7 +252,7 @@ for archive in $archives $targetarchives $hostarchives
do do
echo $archive echo $archive
if [ ! -f $archive ]; then if [ ! -f $archive ]; then
$FETCH https://github.com/devkitPro/buildscripts/releases/download/sources/$archive || { echo "Error: Failed to download $archive"; exit 1; } $FETCH https://downloads.devkitpro.org/$archive || { echo "Error: Failed to download $archive"; exit 1; }
fi fi
done done
@@ -323,5 +329,13 @@ fi
echo echo
echo "note: Add the following to your environment; DEVKITPRO=$TOOLPATH $toolchain=$TOOLPATH/$package" echo "note: Add the following to your environment;"
echo
echo " DEVKITPRO=$TOOLPATH"
if [ "$toolchain" != "DEVKITA64" ]; then
echo " $toolchain=$TOOLPATH/$package"
fi
echo
echo "add $TOOLPATH/tools/bin to your PATH"
echo
echo echo

File diff suppressed because it is too large Load Diff

View File

@@ -46,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++ \ --enable-languages=c,c++,lto \
--with-gnu-as --with-gnu-ld --with-gcc \ --with-gnu-as --with-gnu-ld --with-gcc \
--with-march=armv8\ --with-march=armv8\
--enable-cxx-flags='-ffunction-sections' \ --enable-cxx-flags='-ffunction-sections' \
@@ -57,13 +57,14 @@ then
--disable-libmudflap --disable-libssp --disable-libgomp \ --disable-libmudflap --disable-libssp --disable-libgomp \
--disable-libstdcxx-pch \ --disable-libstdcxx-pch \
--enable-libstdcxx-time \ --enable-libstdcxx-time \
--enable-libstdcxx-filesystem-ts \
--target=$target \ --target=$target \
--with-newlib \ --with-newlib \
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \ --with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
--prefix=$prefix \ --prefix=$prefix \
--enable-lto $plugin_ld\ --enable-lto $plugin_ld\
--with-system-zlib \ --with-system-zlib \
--with-bugurl="https://github.com/devkitPro/buildscripts/issues" --with-pkgversion="devkitA64 release 9" \ --with-bugurl="https://github.com/devkitPro/buildscripts/issues" --with-pkgversion="devkitA64 release 10" \
$CROSS_PARAMS \ $CROSS_PARAMS \
$CROSS_GCC_PARAMS \ $CROSS_GCC_PARAMS \
|| { echo "Error configuring gcc"; exit 1; } || { echo "Error configuring gcc"; exit 1; }
@@ -86,6 +87,11 @@ fi
unset CFLAGS unset CFLAGS
cd $BUILDDIR cd $BUILDDIR
OLD_CC=$CC
OLDCXX=$CXX
unset CC
unset CXX
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# build and install newlib # build and install newlib
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@@ -118,6 +124,9 @@ then
touch installed-newlib touch installed-newlib
fi fi
export CC=$OLD_CC
export CXX=$OLD_CXX
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# build and install the final compiler # build and install the final compiler
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------

View File

@@ -0,0 +1,7 @@
#!/bin/sh
export DEVKITPRO=$TOOLPATH
cd $BUILDDIR/libnx-$LIBNX_VER
$MAKE || { echo "error building libnx"; exit 1; }
$MAKE install || { echo "error installing libnx"; exit 1; }

View File

@@ -6,7 +6,7 @@ do
dir=$(echo $archive | sed -e 's/\(.*\)\.tar\.bz2/\1/' ) dir=$(echo $archive | sed -e 's/\(.*\)\.tar\.bz2/\1/' )
cd $BUILDDIR/$dir cd $BUILDDIR/$dir
if [ ! -f configured ]; then if [ ! -f configured ]; then
CXXFLAGS=$cflags CFLAGS=$cflags LDFLAGS=$ldflags ./configure --prefix=/opt/devkitpro/tools $CROSS_PARAMS || { echo "error configuring $archive"; exit 1; } CXXFLAGS=$cflags CFLAGS=$cflags LDFLAGS=$ldflags ./configure --prefix=$toolsprefix $CROSS_PARAMS || { echo "error configuring $archive"; exit 1; }
touch configured touch configured
fi fi
if [ ! -f built ]; then if [ ! -f built ]; then

View File

@@ -33,7 +33,7 @@ index 6da164352..f18f17447 100644
AS=${AS-as} AS=${AS-as}
diff --git a/libgloss/libsysbase/Makefile.in b/libgloss/libsysbase/Makefile.in diff --git a/libgloss/libsysbase/Makefile.in b/libgloss/libsysbase/Makefile.in
new file mode 100644 new file mode 100644
index 000000000..7fd7357de index 000000000..0d2be31c6
--- /dev/null --- /dev/null
+++ b/libgloss/libsysbase/Makefile.in +++ b/libgloss/libsysbase/Makefile.in
@@ -0,0 +1,148 @@ @@ -0,0 +1,148 @@
@@ -104,12 +104,12 @@ index 000000000..7fd7357de
+ else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi` + else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
+ +
+# object files needed +# object files needed
+OBJS = abort.o iosupport.o close.o environ.o execve.o fork.o fstat.o getpid.o gettod.o \ +OBJS = abort.o iosupport.o clocks.o close.o environ.o execve.o fork.o fstat.o getpid.o gettod.o \
+ isatty.o kill.o link.o lseek.o open.o read.o sbrk.o stat.o times.o \ + isatty.o kill.o link.o lseek.o lstat.o nanosleep.o open.o read.o sbrk.o sleep.o stat.o usleep.o times.o \
+ unlink.o wait.o write.o _exit.o malloc_vars.o \ + unlink.o wait.o write.o _exit.o malloc_vars.o \
+ chdir.o mkdir.o rename.o build_argv.o statvfs.o \ + chdir.o mkdir.o rename.o build_argv.o statvfs.o \
+ flock.o syscall_support.o handle_manager.o truncate.o ftruncate.o dirent.o fsync.o \ + flock.o syscall_support.o handle_manager.o truncate.o ftruncate.o dirent.o fsync.o \
+ fchmod.o chmod.o getreent.o rmdir.o + fchmod.o chmod.o getreent.o rmdir.o utime.o scandir.o
+ +
+# Object files specific to particular targets. +# Object files specific to particular targets.
+EVALOBJS = ${OBJS} +EVALOBJS = ${OBJS}
@@ -887,6 +887,46 @@ index 000000000..3668b5801
+ return ret; + return ret;
+} +}
+ +
diff --git a/libgloss/libsysbase/clocks.c b/libgloss/libsysbase/clocks.c
new file mode 100644
index 000000000..01cfee469
--- /dev/null
+++ b/libgloss/libsysbase/clocks.c
@@ -0,0 +1,34 @@
+#include <errno.h>
+#include <time.h>
+#include <sys/iosupport.h>
+
+int clock_gettime(clockid_t clock_id, struct timespec *tp)
+{
+ if ( __syscalls.clock_gettime ) {
+ return __syscalls.clock_gettime(clock_id, tp);
+ } else {
+ errno = ENOSYS;
+ return -1;
+ }
+}
+
+int clock_settime(clockid_t clock_id, const struct timespec *tp)
+{
+ if ( __syscalls.clock_settime ) {
+ return __syscalls.clock_settime(clock_id, tp);
+ } else {
+ errno = ENOSYS;
+ return -1;
+ }
+}
+
+int clock_getres (clockid_t clock_id, struct timespec *res)
+{
+ if ( __syscalls.clock_getres ) {
+ return __syscalls.clock_getres(clock_id, res);
+ } else {
+ errno = ENOSYS;
+ return -1;
+ }
+}
+
diff --git a/libgloss/libsysbase/close.c b/libgloss/libsysbase/close.c diff --git a/libgloss/libsysbase/close.c b/libgloss/libsysbase/close.c
new file mode 100644 new file mode 100644
index 000000000..931ad07b1 index 000000000..931ad07b1
@@ -6140,10 +6180,10 @@ index 000000000..f3fcc88f7
+} +}
diff --git a/libgloss/libsysbase/iosupport.c b/libgloss/libsysbase/iosupport.c diff --git a/libgloss/libsysbase/iosupport.c b/libgloss/libsysbase/iosupport.c
new file mode 100644 new file mode 100644
index 000000000..4f131275e index 000000000..948c6ef93
--- /dev/null --- /dev/null
+++ b/libgloss/libsysbase/iosupport.c +++ b/libgloss/libsysbase/iosupport.c
@@ -0,0 +1,138 @@ @@ -0,0 +1,140 @@
+#include <stdlib.h> +#include <stdlib.h>
+#include <string.h> +#include <string.h>
+#include <ctype.h> +#include <ctype.h>
@@ -6194,6 +6234,8 @@ index 000000000..4f131275e
+ NULL, // chmod_r + NULL, // chmod_r
+ NULL, // fchmod_r + NULL, // fchmod_r
+ NULL, // rmdir_r + NULL, // rmdir_r
+ NULL, // lstat_r
+ NULL, // utimes_r
+}; +};
+ +
+//--------------------------------------------------------------------------------- +//---------------------------------------------------------------------------------
@@ -6422,6 +6464,43 @@ index 000000000..eb232c86b
+ return ret; + return ret;
+ +
+} +}
diff --git a/libgloss/libsysbase/lstat.c b/libgloss/libsysbase/lstat.c
new file mode 100644
index 000000000..fc393430b
--- /dev/null
+++ b/libgloss/libsysbase/lstat.c
@@ -0,0 +1,31 @@
+#include "config.h"
+#include <_ansi.h>
+#include <_syslist.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/iosupport.h>
+#include <errno.h>
+
+
+//---------------------------------------------------------------------------------
+int lstat (const char *__restrict __path, struct stat *__restrict __buf ) {
+//---------------------------------------------------------------------------------
+ struct _reent *r = _REENT;
+ int dev,ret;
+
+ dev = FindDevice(__path);
+
+ if(dev!=-1) {
+ if (devoptab_list[dev]->lstat_r) {
+ r->deviceData = devoptab_list[dev]->deviceData;
+ ret = devoptab_list[dev]->lstat_r(r,__path,__buf);
+ } else {
+ r->_errno=ENOSYS;
+ }
+ } else {
+ ret = -1;
+ r->_errno = ENODEV;
+ }
+ return ret;
+}
+
diff --git a/libgloss/libsysbase/malloc_vars.c b/libgloss/libsysbase/malloc_vars.c diff --git a/libgloss/libsysbase/malloc_vars.c b/libgloss/libsysbase/malloc_vars.c
new file mode 100644 new file mode 100644
index 000000000..456590956 index 000000000..456590956
@@ -6455,6 +6534,26 @@ index 000000000..b4fcbd3d7
+ +
+ return ret; + return ret;
+} +}
diff --git a/libgloss/libsysbase/nanosleep.c b/libgloss/libsysbase/nanosleep.c
new file mode 100644
index 000000000..3c96fc61b
--- /dev/null
+++ b/libgloss/libsysbase/nanosleep.c
@@ -0,0 +1,14 @@
+#include <errno.h>
+#include <time.h>
+#include <sys/iosupport.h>
+
+int nanosleep(const struct timespec *req, struct timespec *rem)
+{
+ if ( __syscalls.nanosleep ) {
+ return __syscalls.nanosleep(req, rem);
+ } else {
+ *rem = *req;
+ errno = ENOSYS;
+ return -1;
+ }
+}
diff --git a/libgloss/libsysbase/open.c b/libgloss/libsysbase/open.c diff --git a/libgloss/libsysbase/open.c b/libgloss/libsysbase/open.c
new file mode 100644 new file mode 100644
index 000000000..f8d98fd3b index 000000000..f8d98fd3b
@@ -6696,6 +6795,110 @@ index 000000000..5dd550c5c
+ heap_start += incr; + heap_start += incr;
+ return (caddr_t) prev_heap_start; + return (caddr_t) prev_heap_start;
+} +}
diff --git a/libgloss/libsysbase/scandir.c b/libgloss/libsysbase/scandir.c
new file mode 100644
index 000000000..1333df4b2
--- /dev/null
+++ b/libgloss/libsysbase/scandir.c
@@ -0,0 +1,74 @@
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <stddef.h>
+#include <dirent.h>
+#include <stdlib.h>
+#include <string.h>
+#include <errno.h>
+
+/*
+ * The DIRSIZ macro gives the minimum record length which will hold
+ * the directory entry. This requires the amount of space in struct dirent
+ * without the d_name field, plus enough space for the name with a terminating
+ * null byte (dp->d_namlen+1), rounded up to a 4 byte boundary.
+ */
+#undef DIRSIZ
+#ifdef _DIRENT_HAVE_D_NAMLEN
+#define DIRSIZ(dp) \
+ (offsetof (struct dirent, d_name) + (((dp)->d_namlen+1 + 3) &~ 3))
+#else
+#define DIRSIZ(dp) \
+ (offsetof (struct dirent, d_name) + ((strlen((dp)->d_name)+1 + 3) &~ 3))
+#endif
+
+int
+scandir (const char *dirname,
+ struct dirent ***namelist,
+ int (*filter) __P((const struct dirent *)),
+ int (*compar) __P((const struct dirent **, const struct dirent **)))
+{
+ DIR *d = opendir(dirname);
+
+ if (!d) return -1;
+
+ struct dirent *de, **names = NULL, **tmp;
+ size_t cnt = 0, len = 0;
+
+ while (de = readdir(d)) {
+ if (filter && ! filter(de)) continue;
+ if (cnt >= len) {
+ len = 2*len+1;
+ if (len > SIZE_MAX/sizeof(*names)) break;
+ tmp = realloc(names, len * sizeof(*names));
+ if (!tmp) break;
+ names = tmp;
+ }
+ names[cnt] = malloc(DIRSIZ(de));
+ if (!names[cnt]) break;
+ memcpy(names[cnt++], de, DIRSIZ(de));
+ }
+
+ closedir(d);
+
+ if(errno) {
+ if (names) while(cnt-- > 0) free(names[cnt]);
+ free(names);
+ return -1;
+ }
+
+ if (compar) qsort(names, cnt, sizeof(*names), (int (*)(const void *, const void *))compar);
+
+ *namelist = names;
+ return cnt;
+}
+
+/*
+ * Alphabetic order comparison routine for those who want it.
+ */
+int
+alphasort (const struct dirent **d1,
+ const struct dirent **d2)
+{
+ return(strcmp((*d1)->d_name, (*d2)->d_name));
+}
+
diff --git a/libgloss/libsysbase/sleep.c b/libgloss/libsysbase/sleep.c
new file mode 100644
index 000000000..f3aa97954
--- /dev/null
+++ b/libgloss/libsysbase/sleep.c
@@ -0,0 +1,18 @@
+/* Copied from libc/posix/sleep.c, removed the check for HAVE_NANOSLEEP */
+
+/* Written 2000 by Werner Almesberger */
+
+#include <errno.h>
+#include <time.h>
+#include <unistd.h>
+
+unsigned sleep(unsigned seconds)
+{
+ struct timespec ts;
+
+ ts.tv_sec = seconds;
+ ts.tv_nsec = 0;
+ if (!nanosleep(&ts,&ts)) return 0;
+ if (errno == EINTR) return ts.tv_sec;
+ return -1;
+}
diff --git a/libgloss/libsysbase/stat.c b/libgloss/libsysbase/stat.c diff --git a/libgloss/libsysbase/stat.c b/libgloss/libsysbase/stat.c
new file mode 100644 new file mode 100644
index 000000000..d0ad00202 index 000000000..d0ad00202
@@ -6772,10 +6975,10 @@ index 000000000..84e221340
+} +}
diff --git a/libgloss/libsysbase/syscall_support.c b/libgloss/libsysbase/syscall_support.c diff --git a/libgloss/libsysbase/syscall_support.c b/libgloss/libsysbase/syscall_support.c
new file mode 100644 new file mode 100644
index 000000000..044f12d16 index 000000000..53fead72a
--- /dev/null --- /dev/null
+++ b/libgloss/libsysbase/syscall_support.c +++ b/libgloss/libsysbase/syscall_support.c
@@ -0,0 +1,99 @@ @@ -0,0 +1,103 @@
+#include <sys/iosupport.h> +#include <sys/iosupport.h>
+ +
+//--------------------------------------------------------------------------------- +//---------------------------------------------------------------------------------
@@ -6795,6 +6998,10 @@ index 000000000..044f12d16
+ NULL, // lock_release_recursive + NULL, // lock_release_recursive
+ NULL, // lock_close_recursive + NULL, // lock_close_recursive
+ NULL, // __getreent + NULL, // __getreent
+ NULL, // clock_gettime
+ NULL, // clock_settime
+ NULL, // clock_getres
+ NULL, // nanosleep
+}; +};
+ +
+void __libc_lock_init(_LOCK_T *lock) { +void __libc_lock_init(_LOCK_T *lock) {
@@ -6998,6 +7205,81 @@ index 000000000..7920b79ac
+ return ret; + return ret;
+} +}
+ +
diff --git a/libgloss/libsysbase/usleep.c b/libgloss/libsysbase/usleep.c
new file mode 100644
index 000000000..b54714775
--- /dev/null
+++ b/libgloss/libsysbase/usleep.c
@@ -0,0 +1,18 @@
+/* Copied from libc/posix/sleep.c, removed the check for HAVE_NANOSLEEP */
+
+/* Written 2000 by Werner Almesberger */
+
+#include <errno.h>
+#include <time.h>
+#include <unistd.h>
+
+int usleep(useconds_t useconds)
+{
+ struct timespec ts;
+
+ ts.tv_sec = (long int)useconds / 1000000;
+ ts.tv_nsec = ((long int)useconds % 1000000) * 1000;
+ if (!nanosleep(&ts,&ts)) return 0;
+ if (errno == EINTR) return ts.tv_sec;
+ return -1;
+}
diff --git a/libgloss/libsysbase/utime.c b/libgloss/libsysbase/utime.c
new file mode 100644
index 000000000..f72bf9fc6
--- /dev/null
+++ b/libgloss/libsysbase/utime.c
@@ -0,0 +1,45 @@
+#include "config.h"
+
+#include <errno.h>
+#include <stdio.h>
+#include <time.h>
+#include <utime.h>
+#include <sys/iosupport.h>
+
+int utimes(const char *filename, const struct timeval times[2])
+{
+ struct _reent *r = _REENT;
+ int dev,ret;
+
+ dev = FindDevice(filename);
+
+ if(dev!=-1) {
+ if (devoptab_list[dev]->utimes_r) {
+ r->deviceData = devoptab_list[dev]->deviceData;
+ ret = devoptab_list[dev]->utimes_r(r,filename,times);
+ } else {
+ r->_errno=ENOSYS;
+ }
+ } else {
+ ret = -1;
+ r->_errno = ENODEV;
+ }
+ return ret;
+
+
+
+}
+
+
+int utime(const char *filename, const struct utimbuf *times)
+{
+ struct timeval t[2];
+ if (times) {
+ t[0].tv_sec = times->actime;
+ t[0].tv_usec = 0;
+ t[1].tv_sec = times->modtime;
+ t[1].tv_usec = 0;
+ }
+
+ return utimes(filename, t);
+}
diff --git a/libgloss/libsysbase/wait.c b/libgloss/libsysbase/wait.c diff --git a/libgloss/libsysbase/wait.c b/libgloss/libsysbase/wait.c
new file mode 100644 new file mode 100644
index 000000000..247486e42 index 000000000..247486e42
@@ -7141,37 +7423,18 @@ index eb645868b..9cb69fde9 100644
syscall_dir=syscalls syscall_dir=syscalls
;; ;;
diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h
index cbc0fa989..5de5d1b81 100644 index cbc0fa989..10960f912 100644
--- a/newlib/libc/include/stdio.h --- a/newlib/libc/include/stdio.h
+++ b/newlib/libc/include/stdio.h +++ b/newlib/libc/include/stdio.h
@@ -227,13 +227,13 @@ int fgetpos (FILE *, _fpos_t *); @@ -233,7 +233,7 @@ int fsetpos (FILE *, const _fpos_t *);
#else
int fgetpos (FILE *__restrict, fpos_t *__restrict);
#endif
-int fseek (FILE *, long, int);
+int fseek (FILE *, off_t, int);
#ifdef _COMPILING_NEWLIB
int fsetpos (FILE *, const _fpos_t *);
#else #else
int fsetpos (FILE *, const fpos_t *); int fsetpos (FILE *, const fpos_t *);
#endif #endif
-long ftell ( FILE *); -long ftell ( FILE *);
+off_t ftell ( FILE *); +long ftell ( FILE *);
void rewind (FILE *); void rewind (FILE *);
void clearerr (FILE *); void clearerr (FILE *);
int feof (FILE *); int feof (FILE *);
@@ -438,9 +438,9 @@ size_t _fread_r (struct _reent *, void *__restrict, size_t _size, size_t _n, FIL
size_t _fread_unlocked_r (struct _reent *, void *__restrict, size_t _size, size_t _n, FILE *__restrict);
int _fscanf_r (struct _reent *, FILE *__restrict, const char *__restrict, ...)
_ATTRIBUTE ((__format__ (__scanf__, 3, 4)));
-int _fseek_r (struct _reent *, FILE *, long, int);
+int _fseek_r (struct _reent *, FILE *, off_t, int);
int _fseeko_r (struct _reent *, FILE *, _off_t, int);
-long _ftell_r (struct _reent *, FILE *);
+off_t _ftell_r (struct _reent *, FILE *);
_off_t _ftello_r (struct _reent *, FILE *);
void _rewind_r (struct _reent *, FILE *);
size_t _fwrite_r (struct _reent *, const void *__restrict, size_t _size, size_t _n, FILE *__restrict);
diff --git a/newlib/libc/include/sys/config.h b/newlib/libc/include/sys/config.h diff --git a/newlib/libc/include/sys/config.h b/newlib/libc/include/sys/config.h
index 2082dfdb1..e535f189b 100644 index 2082dfdb1..e535f189b 100644
--- a/newlib/libc/include/sys/config.h --- a/newlib/libc/include/sys/config.h
@@ -7187,10 +7450,10 @@ index 2082dfdb1..e535f189b 100644
#define MALLOC_ALIGNMENT 16 #define MALLOC_ALIGNMENT 16
#endif #endif
diff --git a/newlib/libc/include/sys/dirent.h b/newlib/libc/include/sys/dirent.h diff --git a/newlib/libc/include/sys/dirent.h b/newlib/libc/include/sys/dirent.h
index a3fb5c02c..1ead46ba0 100644 index a3fb5c02c..5debd1525 100644
--- a/newlib/libc/include/sys/dirent.h --- a/newlib/libc/include/sys/dirent.h
+++ b/newlib/libc/include/sys/dirent.h +++ b/newlib/libc/include/sys/dirent.h
@@ -1,13 +1,52 @@ @@ -1,13 +1,58 @@
/* <dirent.h> includes <sys/dirent.h>, which is this file. On a /* <dirent.h> includes <sys/dirent.h>, which is this file. On a
system which supports <dirent.h>, this file is overridden by system which supports <dirent.h>, this file is overridden by
dirent.h in the libc/sys/.../sys directory. On a system which does dirent.h in the libc/sys/.../sys directory. On a system which does
@@ -7240,18 +7503,38 @@ index a3fb5c02c..1ead46ba0 100644
+ void rewinddir(DIR *dirp); + void rewinddir(DIR *dirp);
+ void seekdir(DIR *dirp, long int loc); + void seekdir(DIR *dirp, long int loc);
+ long int telldir(DIR *dirp); + long int telldir(DIR *dirp);
+
+ int scandir(const char *dirp, struct dirent ***namelist,
+ int (*filter)(const struct dirent *),
+ int (*compar)(const struct dirent **, const struct dirent **));
+
+ int alphasort(const struct dirent **a, const struct dirent **b);
+ +
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
+ +
+#endif // _dirent_h_ +#endif // _dirent_h_
diff --git a/newlib/libc/include/sys/features.h b/newlib/libc/include/sys/features.h
index 2900b332f..6efb54eb3 100644
--- a/newlib/libc/include/sys/features.h
+++ b/newlib/libc/include/sys/features.h
@@ -330,6 +330,9 @@ extern "C" {
# define __SSP_FORTIFY_LEVEL 0
#endif
+#define _POSIX_MONOTONIC_CLOCK 200112L
+#define _POSIX_TIMERS 1
+
/* RTEMS adheres to POSIX -- 1003.1b with some features from annexes. */
#ifdef __rtems__
diff --git a/newlib/libc/include/sys/iosupport.h b/newlib/libc/include/sys/iosupport.h diff --git a/newlib/libc/include/sys/iosupport.h b/newlib/libc/include/sys/iosupport.h
new file mode 100644 new file mode 100644
index 000000000..10a6a716d index 000000000..ee14d2610
--- /dev/null --- /dev/null
+++ b/newlib/libc/include/sys/iosupport.h +++ b/newlib/libc/include/sys/iosupport.h
@@ -0,0 +1,105 @@ @@ -0,0 +1,112 @@
+//--------------------------------------------------------------------------------- +//---------------------------------------------------------------------------------
+#ifndef __iosupp_h__ +#ifndef __iosupp_h__
+#define __iosupp_h__ +#define __iosupp_h__
@@ -7264,6 +7547,7 @@ index 000000000..10a6a716d
+#include <reent.h> +#include <reent.h>
+#include <sys/stat.h> +#include <sys/stat.h>
+#include <sys/statvfs.h> +#include <sys/statvfs.h>
+#include <time.h>
+ +
+enum { +enum {
+ STD_IN, + STD_IN,
@@ -7316,6 +7600,8 @@ index 000000000..10a6a716d
+ int (*chmod_r)(struct _reent *r, const char *path, mode_t mode); + int (*chmod_r)(struct _reent *r, const char *path, mode_t mode);
+ int (*fchmod_r)(struct _reent *r, void *fd, mode_t mode); + int (*fchmod_r)(struct _reent *r, void *fd, mode_t mode);
+ int (*rmdir_r)(struct _reent *r, const char *name); + int (*rmdir_r)(struct _reent *r, const char *name);
+ int (*lstat_r)(struct _reent *r, const char *file, struct stat *st);
+ int (*utimes_r)(struct _reent *r, const char *filename, const struct timeval times[2]);
+ +
+} devoptab_t; +} devoptab_t;
+ +
@@ -7336,6 +7622,10 @@ index 000000000..10a6a716d
+ void (*lock_release_recursive) (_LOCK_RECURSIVE_T *lock); + void (*lock_release_recursive) (_LOCK_RECURSIVE_T *lock);
+ void (*lock_close_recursive) (_LOCK_RECURSIVE_T *lock); + void (*lock_close_recursive) (_LOCK_RECURSIVE_T *lock);
+ struct _reent *(*getreent) (); + struct _reent *(*getreent) ();
+ int (*clock_gettime)(clockid_t clock_id, struct timespec *tp);
+ int (*clock_settime)(clockid_t clock_id, const struct timespec *tp);
+ int (*clock_getres)(clockid_t clock_id, struct timespec *res);
+ int (*nanosleep)(const struct timespec *req, struct timespec *rem);
+} __syscalls_t; +} __syscalls_t;
+ +
+extern __syscalls_t __syscalls; +extern __syscalls_t __syscalls;
@@ -7378,6 +7668,21 @@ index 1ef226194..ce3721a14 100644
}; };
#ifdef _REENT_GLOBAL_STDIO_STREAMS #ifdef _REENT_GLOBAL_STDIO_STREAMS
diff --git a/newlib/libc/include/sys/stat.h b/newlib/libc/include/sys/stat.h
index eee98db64..aed9c1746 100644
--- a/newlib/libc/include/sys/stat.h
+++ b/newlib/libc/include/sys/stat.h
@@ -152,8 +152,9 @@ int mkfifo (const char *__path, mode_t __mode );
int stat (const char *__restrict __path, struct stat *__restrict __sbuf );
mode_t umask (mode_t __mask );
-#if defined (__SPU__) || defined(__rtems__) || defined(__CYGWIN__) && !defined(__INSIDE_CYGWIN__)
int lstat (const char *__restrict __path, struct stat *__restrict __buf );
+
+#if defined (__SPU__) || defined(__rtems__) || defined(__CYGWIN__) && !defined(__INSIDE_CYGWIN__)
int mknod (const char *__path, mode_t __mode, dev_t __dev );
#endif
diff --git a/newlib/libc/include/sys/statvfs.h b/newlib/libc/include/sys/statvfs.h diff --git a/newlib/libc/include/sys/statvfs.h b/newlib/libc/include/sys/statvfs.h
new file mode 100644 new file mode 100644
index 000000000..380329d34 index 000000000..380329d34
@@ -7420,6 +7725,32 @@ index 000000000..380329d34
+ +
+#endif // _SYS_STATVFS_H +#endif // _SYS_STATVFS_H
\ No newline at end of file \ No newline at end of file
diff --git a/newlib/libc/include/sys/utime.h b/newlib/libc/include/sys/utime.h
index 5e937f103..635a7a6b8 100644
--- a/newlib/libc/include/sys/utime.h
+++ b/newlib/libc/include/sys/utime.h
@@ -9,12 +9,19 @@
extern "C" {
#endif
-struct utimbuf
+struct utimbuf
{
time_t actime;
- time_t modtime;
+ time_t modtime;
};
+/* Functions */
+
+int utime(
+ const char *path,
+ const struct utimbuf *times
+);
+
#ifdef __cplusplus
};
#endif
diff --git a/newlib/libc/locale/locale.c b/newlib/libc/locale/locale.c diff --git a/newlib/libc/locale/locale.c b/newlib/libc/locale/locale.c
index baa5451a6..a11f89473 100644 index baa5451a6..a11f89473 100644
--- a/newlib/libc/locale/locale.c --- a/newlib/libc/locale/locale.c
@@ -7730,50 +8061,6 @@ index b358d2b4a..29cec0229 100644
{ {
/* no more input: return partial result */ /* no more input: return partial result */
#ifdef __SCLE #ifdef __SCLE
diff --git a/newlib/libc/stdio/fseek.c b/newlib/libc/stdio/fseek.c
index 9b3ea986c..7c633e11f 100644
--- a/newlib/libc/stdio/fseek.c
+++ b/newlib/libc/stdio/fseek.c
@@ -83,7 +83,7 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
int
_fseek_r (struct _reent *ptr,
register FILE *fp,
- long offset,
+ off_t offset,
int whence)
{
return _fseeko_r (ptr, fp, offset, whence);
@@ -93,7 +93,7 @@ _fseek_r (struct _reent *ptr,
int
fseek (register FILE *fp,
- long offset,
+ off_t offset,
int whence)
{
return _fseek_r (_REENT, fp, offset, whence);
diff --git a/newlib/libc/stdio/ftell.c b/newlib/libc/stdio/ftell.c
index e4a246199..f73baab68 100644
--- a/newlib/libc/stdio/ftell.c
+++ b/newlib/libc/stdio/ftell.c
@@ -82,7 +82,7 @@ static char sccsid[] = "%W% (Berkeley) %G%";
#include <errno.h>
#include "local.h"
-long
+off_t
_ftell_r (struct _reent *ptr,
register FILE * fp)
{
@@ -99,7 +99,7 @@ _ftell_r (struct _reent *ptr,
#ifndef _REENT_ONLY
-long
+off_t
ftell (register FILE * fp)
{
return _ftell_r (_REENT, fp);
diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c
index c4bf2dbe3..d756df37d 100644 index c4bf2dbe3..d756df37d 100644
--- a/newlib/libc/stdio/vfprintf.c --- a/newlib/libc/stdio/vfprintf.c
@@ -7846,6 +8133,38 @@ index c3470a15c..626f13723 100644
#include <_ansi.h> #include <_ansi.h>
#include <reent.h> #include <reent.h>
#include <newlib.h> #include <newlib.h>
diff --git a/newlib/libc/stdlib/aligned_alloc.c b/newlib/libc/stdlib/aligned_alloc.c
index 88413ce86..24029a6f7 100644
--- a/newlib/libc/stdlib/aligned_alloc.c
+++ b/newlib/libc/stdlib/aligned_alloc.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2015 embedded brains GmbH
+ * Copyright (c) 2018 Dave Murphy
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -25,14 +25,15 @@
*/
#include <stdlib.h>
+#include <malloc.h>
+#include <errno.h>
void *
aligned_alloc(size_t alignment, size_t size)
{
- void *p;
- int error;
+ if ((alignment !=0) && !(alignment & (alignment - 1 )) && !(size & (alignment - 1)))
+ return memalign(alignment,size);
- error = posix_memalign(&p, alignment, size);
-
- return (error == 0 ? p : NULL);
+ errno = EINVAL;
+ return (void*)NULL;
}
diff --git a/newlib/libc/stdlib/mbtowc_r.c b/newlib/libc/stdlib/mbtowc_r.c diff --git a/newlib/libc/stdlib/mbtowc_r.c b/newlib/libc/stdlib/mbtowc_r.c
index 920a7ea3c..ba5ee7652 100644 index 920a7ea3c..ba5ee7652 100644
--- a/newlib/libc/stdlib/mbtowc_r.c --- a/newlib/libc/stdlib/mbtowc_r.c

View File

@@ -10,9 +10,10 @@ cd $target/binutils
if [ ! -f configured-binutils ] if [ ! -f configured-binutils ]
then then
CFLAGS=$cflags LDFLAGS=$ldflags ../../binutils-$BINUTILS_VER/configure \ CPPFLAGS="$cppflags $CPPFLAGS" LDFLAGS=$ldflags ../../binutils-$BINUTILS_VER/configure \
--prefix=$prefix --target=$target --disable-nls --disable-werror \ --prefix=$prefix --target=$target --disable-nls --disable-werror \
--enable-lto --enable-plugins --enable-poison-system-directories \ --enable-lto --enable-plugins --enable-gold \
--enable-poison-system-directories \
$CROSS_PARAMS \ $CROSS_PARAMS \
|| { echo "Error configuring binutils"; exit 1; } || { echo "Error configuring binutils"; exit 1; }
touch configured-binutils touch configured-binutils
@@ -39,14 +40,13 @@ cd $target/gcc
if [ ! -f configured-gcc ] if [ ! -f configured-gcc ]
then then
CFLAGS="$cflags" \ CPPFLAGS="$cppflags $CPPFLAGS" \
CXXFLAGS="$cflags" \
LDFLAGS="$ldflags" \ LDFLAGS="$ldflags" \
CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \ CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
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++ \ --enable-languages=c,c++,lto \
--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' \
@@ -56,13 +56,15 @@ then
--enable-threads --disable-win32-registry --disable-nls --disable-debug\ --enable-threads --disable-win32-registry --disable-nls --disable-debug\
--disable-libmudflap --disable-libssp --disable-libgomp \ --disable-libmudflap --disable-libssp --disable-libgomp \
--disable-libstdcxx-pch \ --disable-libstdcxx-pch \
--enable-libstdcxx-time=yes \
--enable-libstdcxx-filesystem-ts \
--target=$target \ --target=$target \
--with-newlib \ --with-newlib \
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \ --with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
--prefix=$prefix \ --prefix=$prefix \
--enable-lto $plugin_ld\ --enable-lto\
--with-system-zlib \ --with-system-zlib \
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 48" \ --with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 49" \
$CROSS_PARAMS \ $CROSS_PARAMS \
$CROSS_GCC_PARAMS \ $CROSS_GCC_PARAMS \
|| { echo "Error configuring gcc"; exit 1; } || { echo "Error configuring gcc"; exit 1; }
@@ -192,8 +194,7 @@ PLATFORM=`uname -s`
if [ ! -f configured-gdb ] if [ ! -f configured-gdb ]
then then
CFLAGS="$cflags" \ CPPFLAGS="$cppflags $CPPFLAGS" \
CXXFLAGS="$cflags" \
LDFLAGS="$ldflags" \ LDFLAGS="$ldflags" \
../../gdb-$GDB_VER/configure \ ../../gdb-$GDB_VER/configure \
--disable-nls --prefix=$prefix --target=$target --disable-werror \ --disable-nls --prefix=$prefix --target=$target --disable-werror \

View File

@@ -6,7 +6,7 @@ do
dir=$(echo $archive | sed -e 's/\(.*\)\.tar\.bz2/\1/' ) dir=$(echo $archive | sed -e 's/\(.*\)\.tar\.bz2/\1/' )
cd $BUILDDIR/$dir cd $BUILDDIR/$dir
if [ ! -f configured ]; then if [ ! -f configured ]; then
CXXFLAGS=$cflags CFLAGS=$cflags LDFLAGS=$ldflags ./configure --prefix=$prefix $CROSS_PARAMS || { echo "error configuring $archive"; exit 1; } CPPFLAGS="$cppflags $CPPFLAGS" ./configure --prefix=$toolsprefix $CROSS_PARAMS || { echo "error configuring $archive"; exit 1; }
touch configured touch configured
fi fi
if [ ! -f built ]; then if [ ! -f built ]; then

View File

@@ -6,7 +6,7 @@ do
dir=$(echo $archive | sed -e 's/\(.*\)\.tar\.bz2/\1/' ) dir=$(echo $archive | sed -e 's/\(.*\)\.tar\.bz2/\1/' )
cd $BUILDDIR/$dir cd $BUILDDIR/$dir
if [ ! -f configured ]; then if [ ! -f configured ]; then
CXXFLAGS=$cflags CFLAGS=$cflags LDFLAGS=$ldflags ./configure --prefix=$prefix --disable-dependency-tracking $CROSS_PARAMS || { echo "error configuring $archive"; exit 1; } CXXFLAGS=$cflags CFLAGS=$cflags LDFLAGS=$ldflags ./configure --prefix=$toolsprefix --disable-dependency-tracking $CROSS_PARAMS || { echo "error configuring $archive"; exit 1; }
touch configured touch configured
fi fi
if [ ! -f built ]; then if [ ! -f built ]; then