s390x - gcc-3.4.1 - glibc-2.3.3
Norbert
nthiebau@tampabay.rr.com
Tue Dec 21 18:25:00 GMT 2004
Hi all,
I successfully built a cross for s390x on a x68_64 (Suse 9.1, vanilla)
Using crosstool-0.28-rc37
and re-using the s390.demo s390.dat and s390.config, slightly modified.
The only non-triavial thing was to add "--disable-multilib " as an extra
parameter, without it a link fails on ctri.o. Since I didn't need the 32
bits lib, the above worked for me :-).
> diff -u s390.dat s390x.dat
--- s390.dat 2004-09-01 23:46:21.000000000 -0400
+++ s390x.dat 2004-12-20 19:48:20.000000000 -0500
@@ -1,3 +1,4 @@
-KERNELCONFIG=`pwd`/s390.config
-TARGET=s390-unknown-linux-gnu
+GCC_EXTRA_CONFIG="--disable-multilib "
+KERNELCONFIG=`pwd`/s390x.config
+TARGET=s390x-unknown-linux-gnu
TARGET_CFLAGS="-O"
> diff -u s390.config s390x.config
--- s390.config 2004-01-16 13:54:39.000000000 -0500
+++ s390x.config 2004-12-20 15:35:00.000000000 -0500
@@ -8,7 +8,7 @@
# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_GENERIC_BUST_SPINLOCK is not set
-CONFIG_ARCH_S390=y
+CONFIG_ARCH_S390X=y
#
# Code maturity level options
> diff -u demo-s390
demo-s390.sh demo-s390x.sh demo-s390x.sh~
n_th@tpa50:~/packages/crosstool-0.28-rc37> diff -u demo-s390.sh
demo-s390x.sh
--- demo-s390.sh 2004-08-28 18:14:57.000000000 -0400
+++ demo-s390x.sh 2004-12-20 15:48:01.000000000 -0500
@@ -14,16 +14,16 @@
# fails with "soinit.c:25: internal compiler error: in
named_section_flags, at varasm.c:412"
# see http://gcc.gnu.org/PR9552
-#eval `cat s390.dat gcc-3.3-glibc-2.3.2.dat` sh all.sh --notest
+#eval `cat s390x.dat gcc-3.3-glibc-2.3.2.dat` sh all.sh --notest
# fails with "chown.c:65: `__libc_missing_32bit_uids' undeclared"
# maybe there's a patch for this in Debian's glibc combo patch,
#
http://security.debian.org/debian-security/pool/updates/main/g/glibc/glibc_2.2.5-11.5.diff.gz
-#eval `cat s390.dat gcc-3.2.3-glibc-2.2.5.dat` sh all.sh --notest
-#eval `cat s390.dat gcc-3.3-20040112-glibc-2.3.2.dat` sh all.sh
--notest
+#eval `cat s390x.dat gcc-3.2.3-glibc-2.2.5.dat` sh all.sh --notest
+#eval `cat s390x.dat gcc-3.3-20040112-glibc-2.3.2.dat` sh all.sh
--notest
# But this works, hurrah!
-#eval `cat s390.dat gcc-3.4.0-glibc-2.3.2.dat` sh all.sh --notest
- eval `cat s390.dat gcc-3.4.1-glibc-2.3.3.dat` sh all.sh --notest
-#eval `cat s390.dat gcc-3.4.1-glibc-20040827.dat` sh all.sh --notest
+#eval `cat s390x.dat gcc-3.4.0-glibc-2.3.2.dat` sh all.sh --notest
+ eval `cat s390x.dat gcc-3.4.1-glibc-2.3.3.dat` sh all.sh --notest
+#eval `cat s390x.dat gcc-3.4.1-glibc-20040827.dat` sh all.sh --notest
echo Done.
I ran the resulting hello world program on a tao-linux-s390x running
under hercules (a mainframe hardware emulator).
[n_th@tpa51(:) n_th]$ ll s390x-unknown-linux-gnu-hello*
-rwxr-xr-x 1 1245 labo 10098 Dec 20 20:21
s390x-unknown-linux-gnu-hello
-rwxr-xr-x 1 1245 labo 12968 Dec 20 20:21
s390x-unknown-linux-gnu-hello2
-rwxr-xr-x 1 1245 labo 3759459 Dec 20 20:21
s390x-unknown-linux-gnu-hello2-static
-rwxr-xr-x 1 1245 labo 600271 Dec 20 20:21
s390x-unknown-linux-gnu-hello-static
[n_th@tpa51(:) n_th]$ uname -a
Linux tpa51 2.4.21-15.0.3.TL #1 SMP Fri Jul 2 19:28:33 EEST 2004 s390x
s390x s390x GNU/Linux
[n_th@tpa51(:) n_th]$ ./s390x-unknown-linux-gnu-hello
Hello, world!
Cheers,
Norbert
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
More information about the crossgcc
mailing list