This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gcc 4.0.2 arm-softfloat-linux


Hello,

i just want to add that gcc 4.0.2 series toolchain compiles and
successfully run software (userland) on test system now.

target: arm7 (sharp blue streak series), linux (2.4.27 series) with
softfloat
host: cygwin (win xp) and fedora linux

================================================

 /opt/crosstool/src/crosstool-0.38

$ ls  patches/gcc-4.0.2/

fix-fixincl.patch
gcc-3.4.0-arm-lib1asm.patch
gcc-4.0.2-arm-nolibfloat.patch
pr20815-fix.patch

------------------
The "gcc-4.0.2-arm-nolibfloat" patch is rediffed/modified against
"arm-nolibfloat.patch" of gcc 3.4.x series
Probably useful for 4.0.0 and 4.0.1 too.

--- gcc-4.0.2/gcc/config/arm/linux-elf.h.orig	2005-09-30
11:58:10.218750000 +0200
+++ gcc-4.0.2/gcc/config/arm/linux-elf.h	2005-09-30
11:58:44.984375000 +0200
@@ -56,7 +56,7 @@
    %{shared:-lc} \
    %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
 
-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat}
-lgcc"
+#define LIBGCC_SPEC "-lgcc"
 
 /* Provide a STARTFILE_SPEC appropriate for GNU/Linux.  Here we add
    the GNU/Linux magical crtbegin.o file (see crtstuff.c) which 
 
------------------
The "gcc-3.4.0-arm-lib1asm" patch is modified to get glibc 2.3.5 to
build (notice additional "_floatdidf _floatdisf")

diff -urNd gcc-3.4.0-orig/gcc/config/arm/t-linux
gcc-3.4.0/gcc/config/arm/t-linux
--- gcc-3.4.0-orig/gcc/config/arm/t-linux	2003-09-20
23:09:07.000000000 +0200
+++ gcc-3.4.0/gcc/config/arm/t-linux	2004-05-01 20:31:59.102846400
+0200
@@ -4,7 +4,10 @@
 LIBGCC2_DEBUG_CFLAGS = -g0
 
 LIB1ASMSRC = arm/lib1funcs.asm
-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
+LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
+	_negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi
_fixunsdfsi \
+	_truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
+	_fixsfsi _fixunssfsi _floatdidf _floatdisf 
 
 # MULTILIB_OPTIONS = mhard-float/msoft-float
 # MULTILIB_DIRNAMES = hard-float soft-float 


================================================

$ cat gcc-4.0.2-glibc-2.3.5-linux-2.4.27-vrs1-lineo5-stl3.dat
BINUTILS_DIR=binutils-2.16.1
GCC_DIR=gcc-4.0.2
GLIBC_DIR=glibc-2.3.5
LINUX_DIR=linux-2.4.27-vrs1-lineo5-stl3
GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.5
GDB_DIR=gdb-6.3.50.20050926

------------------

$ cat arm-softfloat-linux.dat
KERNELCONFIG=`pwd`/arm.config
TARGET=arm-softfloat-linux-gnu
TARGET_CFLAGS="-O"
GCC_EXTRA_CONFIG="--with-float=soft --with-cpu=arm7tdmi \
	--enable-cxx-flags=-mcpu=arm7tdmi"
GLIBC_EXTRA_CONFIG="--without-fp" 

------------------

I have now two cross toolchains running (capable of producing arm
executables): 

gcc-3.4.4-glibc-2.3.3-linux-2.4.27-vrs1-lineo5-stl3.dat (stable,
production systems)
gcc-4.0.2-glibc-2.3.5-linux-2.4.27-vrs1-lineo5-stl3.dat (testing, mainly
due to C++ optimization improvements)

I have also running the same toolchains as native x86 cygwin/mingw32
(not cross but just for additonal testing, because the software is cross
true platform)
 
I want to say "thank you" once again for this wonderful crosstool.
It is a real time-saver.

Regards,

Robert


------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]