This is the mail archive of the crossgcc@sources.redhat.com 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]

s390x - gcc-3.4.1 - glibc-2.3.3


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


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