Re: cross-gcc for itanium

2011-09-18 Thread Mark Kettenis
 Date: Sun, 18 Sep 2011 05:06:04 +0300
 From: Paul Irofti p...@irofti.net
 
 This makes the cross-gcc target for ia64 build, okay?

That is gcc3 stuff.  You should use gcc4 for ia64.



cross-gcc for itanium

2011-09-17 Thread Paul Irofti
This makes the cross-gcc target for ia64 build, okay?

Index: config.gcc
===
RCS file: /cvs/src/gnu/usr.bin/gcc/gcc/config.gcc,v
retrieving revision 1.20
diff -u -p -r1.20 config.gcc
--- config.gcc  18 Mar 2010 19:39:48 -  1.20
+++ config.gcc  18 Sep 2011 02:03:14 -
@@ -1512,6 +1512,12 @@ ia64*-*-freebsd*)
tmake_file=${tmake_file} ia64/t-ia64
extra_parts=crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o
;;
+ia64*-*-openbsd*)
+   tm_file=${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} ia64/sysv4.h 
ia64/openbsd.h ia64/ia64.h
+   target_cpu_default=MASK_GNU_AS|MASK_GNU_LD
+   tmake_file=${tmake_file} ia64/t-ia64
+   extra_parts=crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o
+   ;;
 ia64*-*-linux*)
tm_file=${tm_file} dbxelf.h elfos.h svr4.h linux.h ia64/sysv4.h 
ia64/linux.h
tmake_file=t-slibgcc-elf-ver t-linux ia64/t-ia64 ia64/t-glibc
Index: config/ia64/openbsd.h
===
RCS file: config/ia64/openbsd.h
diff -N config/ia64/openbsd.h
--- /dev/null   1 Jan 1970 00:00:00 -
+++ config/ia64/openbsd.h   18 Sep 2011 02:03:14 -
@@ -0,0 +1,53 @@
+/* Definitions for Intel IA-64 running FreeBSD using the ELF format
+   Copyright (C) 2001 Free Software Foundation, Inc.
+   Contributed by David E. O'Brien obr...@freebsd.org and BSDi.
+
+This file is part of GNU CC.
+
+GNU CC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU CC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU CC; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+
+#define LINK_SPEC  \
+ %{p:%e`-p' not supported; use `-pg' and gprof(1)}\
+  %{Wl,*:%*}   \
+  %{assert*} %{R*} %{rpath*} %{defsym*}
\
+  %{shared:-Bshareable %{h*} %{soname*}}   \
+  %{symbolic:-Bsymbolic}   \
+  %{!shared:   \
+%{!static: \
+  %{rdynamic:-export-dynamic}  \
+  %{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \
+%{static:-Bstatic}}
+
+
+/[  Target stuff  ]***/
+
+/* Define the actual types of some ANSI-mandated types.  
+   Needs to agree with machine/ansi.h.  GCC defaults come from c-decl.c,
+   c-common.c, and config/arch/arch.h.  */
+
+/* Earlier headers may get this wrong for FreeBSD.
+   We use the GCC defaults instead.  */
+#undef WCHAR_TYPE
+
+#undef  WCHAR_TYPE_SIZE
+#define WCHAR_TYPE_SIZE 32
+
+#undef  TARGET_VERSION
+#define TARGET_VERSION fprintf (stderr,  (OpenBSD/IA-64 ELF));
+
+#define TARGET_ELF 1
+
+#define JMP_BUF_SIZE  76