openSUSE Commits
Threads by month
- ----- 2024 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
May 2009
- 1 participants
- 754 discussions
Hello community,
here is the log from the commit of package linux-kernel-headers for openSUSE:Factory
checked in at Fri May 15 21:30:29 CEST 2009.
--------
--- linux-kernel-headers/linux-kernel-headers.changes 2009-02-23 16:37:02.000000000 +0100
+++ linux-kernel-headers/linux-kernel-headers.changes 2009-05-08 15:39:20.000000000 +0200
@@ -1,0 +2,7 @@
+Fri May 8 15:38:37 CEST 2009 - coolo(a)suse.de
+
+- update to 2.6.29
+- install with SRCARCH=x86 to get kvm support in qemu
+ (detected by presence of kvm.h)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ linux-kernel-headers.spec ++++++
--- /var/tmp/diff_new_pack.X24078/_old 2009-05-15 21:29:04.000000000 +0200
+++ /var/tmp/diff_new_pack.X24078/_new 2009-05-15 21:29:04.000000000 +0200
@@ -25,7 +25,7 @@
BuildArch: noarch
# this confusing version number has no meaning
Version: 2.6.29
-Release: 1
+Release: 2
Url: http://www.kernel.org/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Provides: kernel-headers
@@ -177,6 +177,10 @@
%{_prefix}/include/*
%changelog
+* Fri May 08 2009 coolo(a)suse.de
+- update to 2.6.29
+- install with SRCARCH=x86 to get kvm support in qemu
+ (detected by presence of kvm.h)
* Mon Feb 23 2009 dmueller(a)suse.de
- update to 2.6.29rc6
* Wed Feb 18 2009 dmueller(a)suse.de
@@ -229,7 +233,7 @@
- use make headers_install_all to reduce installed package size
- drop all patches except TIOCGDEV and SO_BSDCOMPAT
- mark as noarch and link asm at install time
-* Mon May 21 2007 dmueller(a)suse.de
+* Tue May 22 2007 dmueller(a)suse.de
- Update to match kernel 2.6.21
* Fri Mar 02 2007 pbaudis(a)suse.cz
- Fix in-tarball paths
@@ -426,7 +430,7 @@
- Fix asm-s390/setup.h for userspace inclusion
- nsswitch.conf: Add nis to netgroup and automount entry
- Fix sys/procfs.h for ppc64
-* Mon Jan 09 2006 kukuk(a)suse.de
+* Tue Jan 10 2006 kukuk(a)suse.de
- Update to current CVS (fix for pthread.h with -std=c99)
- Define PAGE_SIZE on POWER
- Don't include linux/sched.h in asm-power/elf.h
@@ -653,7 +657,7 @@
- Include own copy of texi2html
- Add glibc_pst_upgrade program (based on version from FC3)
- Update to current CVS
-* Thu Jan 27 2005 kukuk(a)suse.de
+* Fri Jan 28 2005 kukuk(a)suse.de
- Re-add patch for timezone/zic.c (got lost with last merge)
* Wed Jan 26 2005 kukuk(a)suse.de
- Update timezone data to 2005c release (fixes zdump crash on
@@ -749,7 +753,7 @@
- Update to CVS: Fix nscd crash if one service is disabled
- glob.h: Add workaround for invalid prototypes
- nss_compat: Check that buffer is larger than 0 bytes
-* Fri Sep 10 2004 kukuk(a)suse.de
+* Sat Sep 11 2004 kukuk(a)suse.de
- Update to CVS: Fix cdefs.h for C++ usage
* Fri Sep 10 2004 kukuk(a)suse.de
- Add lwres to hosts search order in nsswitch.conf
@@ -767,7 +771,7 @@
- Update to current CVS:
- Use CVS version for last fix.
- Add malloc sanity checks for double free.
-* Fri Aug 20 2004 schwab(a)suse.de
+* Sat Aug 21 2004 schwab(a)suse.de
- Fix cancellable syscalls in librt w/ linuxthreads.
* Fri Aug 20 2004 kukuk(a)suse.de
- Update to current CVS [#43993]
@@ -845,19 +849,19 @@
* Thu Apr 15 2004 kukuk(a)suse.de
- Add /etc/ld.so.conf.d/*.conf to /etc/ld.so.conf
- Disable FUTEX_REQUEUE support in NPTL library [Bug #38882]
-* Wed Apr 14 2004 schwab(a)suse.de
+* Thu Apr 15 2004 schwab(a)suse.de
- Remove /usr/i386-linux from ld.so.conf,
* Wed Apr 14 2004 kukuk(a)suse.de
- Fix linux/compiler.h for glibc inclusion
- Really fix ffsl on s390x
-* Fri Apr 09 2004 schwab(a)suse.de
+* Sat Apr 10 2004 schwab(a)suse.de
- Fix syntax error in memcmp.
* Fri Apr 09 2004 kukuk(a)suse.de
- Update from CVS: linuxthread debug fixes
- Fix INLINE_SYSCALL on x86-64 and ia64 (fixes #38399)
- Fix ffsl weak alias on s390x
- Update to 2.6.5 kernel headers
-* Wed Apr 07 2004 meissner(a)suse.de
+* Thu Apr 08 2004 meissner(a)suse.de
- forward umount to umount2 on ppc64 because umount syscall
does not exist
* Mon Apr 05 2004 kukuk(a)suse.de
@@ -1380,7 +1384,7 @@
- Update to current cvs snapshot
* Fri Jan 03 2003 bg(a)suse.de
- removed obsolete patch for hppa
-* Fri Dec 20 2002 kukuk(a)suse.de
+* Sat Dec 21 2002 kukuk(a)suse.de
- Update to current cvs snapshot
- Obsoletes glibc-2.3-setjmp-ppc64.diff
- Obsoletes build-alpha.diff
@@ -1957,7 +1961,7 @@
- strip gconv modules
* Fri Nov 24 2000 kukuk(a)suse.de
- Fix typo in spec file
-* Thu Nov 23 2000 kukuk(a)suse.de
+* Fri Nov 24 2000 kukuk(a)suse.de
- Add hack for POWER3
* Wed Nov 22 2000 kukuk(a)suse.de
- Add strncat bugfix for S/390
@@ -2269,7 +2273,7 @@
- don't use lx_hack for build
* Tue Mar 16 1999 ro(a)suse.de
- libc.texinfo: changed to build with stable texinfo version
-* Mon Mar 15 1999 ro(a)suse.de
+* Tue Mar 16 1999 ro(a)suse.de
- update to 2.1.1 (cvs of Mar 15 1999)
- update nssv1 to 2.0.2
* Sat Feb 20 1999 ro(a)suse.de
@@ -2294,7 +2298,7 @@
* Wed Sep 02 1998 ro(a)suse.de
- build for 586 since egcs generates code for 686 that does NOT run
on 586 !!! (eg strtok)
-* Fri Aug 21 1998 ro(a)suse.de
+* Sat Aug 22 1998 ro(a)suse.de
- updated to cvs-version 20.8.98
added gettext as neededforbuild (so configure shuts up)
glibc-linuxthreads is contained in main archive now
++++++ linux-kernel-headers-2.6.29.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/asm-powerpc/seccomp.h new/linux-kernel-headers-2.6.29/usr/include/asm-powerpc/seccomp.h
--- old/linux-kernel-headers-2.6.29/usr/include/asm-powerpc/seccomp.h 2009-02-23 13:19:09.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/asm-powerpc/seccomp.h 2009-05-08 15:34:55.000000000 +0200
@@ -1,7 +1,6 @@
#ifndef _ASM_POWERPC_SECCOMP_H
#define _ASM_POWERPC_SECCOMP_H
-
#include <linux/unistd.h>
#define __NR_seccomp_read __NR_read
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/asm-s390/mman.h new/linux-kernel-headers-2.6.29/usr/include/asm-s390/mman.h
--- old/linux-kernel-headers-2.6.29/usr/include/asm-s390/mman.h 2009-02-23 13:19:14.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/asm-s390/mman.h 2009-05-08 15:35:00.000000000 +0200
@@ -22,4 +22,9 @@
#define MCL_CURRENT 1 /* lock all current mappings */
#define MCL_FUTURE 2 /* lock all future mappings */
+#if defined(__KERNEL__) && !defined(__ASSEMBLY__) && defined(CONFIG_64BIT)
+int s390_mmap_check(unsigned long addr, unsigned long len);
+#define arch_mmap_check(addr,len,flags) s390_mmap_check(addr,len)
+#endif
+
#endif /* __S390_MMAN_H__ */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/linux/a.out.h new/linux-kernel-headers-2.6.29/usr/include/linux/a.out.h
--- old/linux-kernel-headers-2.6.29/usr/include/linux/a.out.h 1970-01-01 01:00:00.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/linux/a.out.h 2009-05-08 15:35:25.000000000 +0200
@@ -0,0 +1,270 @@
+#ifndef __A_OUT_GNU_H__
+#define __A_OUT_GNU_H__
+
+#define __GNU_EXEC_MACROS__
+
+#ifndef __STRUCT_EXEC_OVERRIDE__
+
+#include <asm/a.out.h>
+
+#endif /* __STRUCT_EXEC_OVERRIDE__ */
+
+#ifndef __ASSEMBLY__
+
+/* these go in the N_MACHTYPE field */
+enum machine_type {
+#if defined (M_OLDSUN2)
+ M__OLDSUN2 = M_OLDSUN2,
+#else
+ M_OLDSUN2 = 0,
+#endif
+#if defined (M_68010)
+ M__68010 = M_68010,
+#else
+ M_68010 = 1,
+#endif
+#if defined (M_68020)
+ M__68020 = M_68020,
+#else
+ M_68020 = 2,
+#endif
+#if defined (M_SPARC)
+ M__SPARC = M_SPARC,
+#else
+ M_SPARC = 3,
+#endif
+ /* skip a bunch so we don't run into any of sun's numbers */
+ M_386 = 100,
+ M_MIPS1 = 151, /* MIPS R3000/R3000 binary */
+ M_MIPS2 = 152 /* MIPS R6000/R4000 binary */
+};
+
+#if !defined (N_MAGIC)
+#define N_MAGIC(exec) ((exec).a_info & 0xffff)
+#endif
+#define N_MACHTYPE(exec) ((enum machine_type)(((exec).a_info >> 16) & 0xff))
+#define N_FLAGS(exec) (((exec).a_info >> 24) & 0xff)
+#define N_SET_INFO(exec, magic, type, flags) \
+ ((exec).a_info = ((magic) & 0xffff) \
+ | (((int)(type) & 0xff) << 16) \
+ | (((flags) & 0xff) << 24))
+#define N_SET_MAGIC(exec, magic) \
+ ((exec).a_info = (((exec).a_info & 0xffff0000) | ((magic) & 0xffff)))
+
+#define N_SET_MACHTYPE(exec, machtype) \
+ ((exec).a_info = \
+ ((exec).a_info&0xff00ffff) | ((((int)(machtype))&0xff) << 16))
+
+#define N_SET_FLAGS(exec, flags) \
+ ((exec).a_info = \
+ ((exec).a_info&0x00ffffff) | (((flags) & 0xff) << 24))
+
+/* Code indicating object file or impure executable. */
+#define OMAGIC 0407
+/* Code indicating pure executable. */
+#define NMAGIC 0410
+/* Code indicating demand-paged executable. */
+#define ZMAGIC 0413
+/* This indicates a demand-paged executable with the header in the text.
+ The first page is unmapped to help trap NULL pointer references */
+#define QMAGIC 0314
+
+/* Code indicating core file. */
+#define CMAGIC 0421
+
+#if !defined (N_BADMAG)
+#define N_BADMAG(x) (N_MAGIC(x) != OMAGIC \
+ && N_MAGIC(x) != NMAGIC \
+ && N_MAGIC(x) != ZMAGIC \
+ && N_MAGIC(x) != QMAGIC)
+#endif
+
+#define _N_HDROFF(x) (1024 - sizeof (struct exec))
+
+#if !defined (N_TXTOFF)
+#define N_TXTOFF(x) \
+ (N_MAGIC(x) == ZMAGIC ? _N_HDROFF((x)) + sizeof (struct exec) : \
+ (N_MAGIC(x) == QMAGIC ? 0 : sizeof (struct exec)))
+#endif
+
+#if !defined (N_DATOFF)
+#define N_DATOFF(x) (N_TXTOFF(x) + (x).a_text)
+#endif
+
+#if !defined (N_TRELOFF)
+#define N_TRELOFF(x) (N_DATOFF(x) + (x).a_data)
+#endif
+
+#if !defined (N_DRELOFF)
+#define N_DRELOFF(x) (N_TRELOFF(x) + N_TRSIZE(x))
+#endif
+
+#if !defined (N_SYMOFF)
+#define N_SYMOFF(x) (N_DRELOFF(x) + N_DRSIZE(x))
+#endif
+
+#if !defined (N_STROFF)
+#define N_STROFF(x) (N_SYMOFF(x) + N_SYMSIZE(x))
+#endif
+
+/* Address of text segment in memory after it is loaded. */
+#if !defined (N_TXTADDR)
+#define N_TXTADDR(x) (N_MAGIC(x) == QMAGIC ? PAGE_SIZE : 0)
+#endif
+
+/* Address of data segment in memory after it is loaded.
+ Note that it is up to you to define SEGMENT_SIZE
+ on machines not listed here. */
+#if defined(vax) || defined(hp300) || defined(pyr)
+#define SEGMENT_SIZE page_size
+#endif
+#ifdef sony
+#define SEGMENT_SIZE 0x2000
+#endif /* Sony. */
+#ifdef is68k
+#define SEGMENT_SIZE 0x20000
+#endif
+#if defined(m68k) && defined(PORTAR)
+#define PAGE_SIZE 0x400
+#define SEGMENT_SIZE PAGE_SIZE
+#endif
+
+#ifdef linux
+#include <unistd.h>
+#if defined(__i386__) || defined(__mc68000__)
+#define SEGMENT_SIZE 1024
+#else
+#ifndef SEGMENT_SIZE
+#define SEGMENT_SIZE getpagesize()
+#endif
+#endif
+#endif
+
+#define _N_SEGMENT_ROUND(x) ALIGN(x, SEGMENT_SIZE)
+
+#define _N_TXTENDADDR(x) (N_TXTADDR(x)+(x).a_text)
+
+#ifndef N_DATADDR
+#define N_DATADDR(x) \
+ (N_MAGIC(x)==OMAGIC? (_N_TXTENDADDR(x)) \
+ : (_N_SEGMENT_ROUND (_N_TXTENDADDR(x))))
+#endif
+
+/* Address of bss segment in memory after it is loaded. */
+#if !defined (N_BSSADDR)
+#define N_BSSADDR(x) (N_DATADDR(x) + (x).a_data)
+#endif
+
+#if !defined (N_NLIST_DECLARED)
+struct nlist {
+ union {
+ char *n_name;
+ struct nlist *n_next;
+ long n_strx;
+ } n_un;
+ unsigned char n_type;
+ char n_other;
+ short n_desc;
+ unsigned long n_value;
+};
+#endif /* no N_NLIST_DECLARED. */
+
+#if !defined (N_UNDF)
+#define N_UNDF 0
+#endif
+#if !defined (N_ABS)
+#define N_ABS 2
+#endif
+#if !defined (N_TEXT)
+#define N_TEXT 4
+#endif
+#if !defined (N_DATA)
+#define N_DATA 6
+#endif
+#if !defined (N_BSS)
+#define N_BSS 8
+#endif
+#if !defined (N_FN)
+#define N_FN 15
+#endif
+
+#if !defined (N_EXT)
+#define N_EXT 1
+#endif
+#if !defined (N_TYPE)
+#define N_TYPE 036
+#endif
+#if !defined (N_STAB)
+#define N_STAB 0340
+#endif
+
+/* The following type indicates the definition of a symbol as being
+ an indirect reference to another symbol. The other symbol
+ appears as an undefined reference, immediately following this symbol.
+
+ Indirection is asymmetrical. The other symbol's value will be used
+ to satisfy requests for the indirect symbol, but not vice versa.
+ If the other symbol does not have a definition, libraries will
+ be searched to find a definition. */
+#define N_INDR 0xa
+
+/* The following symbols refer to set elements.
+ All the N_SET[ATDB] symbols with the same name form one set.
+ Space is allocated for the set in the text section, and each set
+ element's value is stored into one word of the space.
+ The first word of the space is the length of the set (number of elements).
+
+ The address of the set is made into an N_SETV symbol
+ whose name is the same as the name of the set.
+ This symbol acts like a N_DATA global symbol
+ in that it can satisfy undefined external references. */
+
+/* These appear as input to LD, in a .o file. */
+#define N_SETA 0x14 /* Absolute set element symbol */
+#define N_SETT 0x16 /* Text set element symbol */
+#define N_SETD 0x18 /* Data set element symbol */
+#define N_SETB 0x1A /* Bss set element symbol */
+
+/* This is output from LD. */
+#define N_SETV 0x1C /* Pointer to set vector in data area. */
+
+#if !defined (N_RELOCATION_INFO_DECLARED)
+/* This structure describes a single relocation to be performed.
+ The text-relocation section of the file is a vector of these structures,
+ all of which apply to the text section.
+ Likewise, the data-relocation section applies to the data section. */
+
+struct relocation_info
+{
+ /* Address (within segment) to be relocated. */
+ int r_address;
+ /* The meaning of r_symbolnum depends on r_extern. */
+ unsigned int r_symbolnum:24;
+ /* Nonzero means value is a pc-relative offset
+ and it should be relocated for changes in its own address
+ as well as for changes in the symbol or section specified. */
+ unsigned int r_pcrel:1;
+ /* Length (as exponent of 2) of the field to be relocated.
+ Thus, a value of 2 indicates 1<<2 bytes. */
+ unsigned int r_length:2;
+ /* 1 => relocate with value of symbol.
+ r_symbolnum is the index of the symbol
+ in file's the symbol table.
+ 0 => relocate with the address of a segment.
+ r_symbolnum is N_TEXT, N_DATA, N_BSS or N_ABS
+ (the N_EXT bit may be set also, but signifies nothing). */
+ unsigned int r_extern:1;
+ /* Four bits that aren't used, but when writing an object file
+ it is desirable to clear them. */
+#ifdef NS32K
+ unsigned r_bsr:1;
+ unsigned r_disp:1;
+ unsigned r_pad:2;
+#else
+ unsigned int r_pad:4;
+#endif
+};
+#endif /* no N_RELOCATION_INFO_DECLARED. */
+
+#endif /*__ASSEMBLY__ */
+#endif /* __A_OUT_GNU_H__ */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/linux/dcbnl.h new/linux-kernel-headers-2.6.29/usr/include/linux/dcbnl.h
--- old/linux-kernel-headers-2.6.29/usr/include/linux/dcbnl.h 1970-01-01 01:00:00.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/linux/dcbnl.h 2009-05-08 15:35:26.000000000 +0200
@@ -0,0 +1,342 @@
+/*
+ * Copyright (c) 2008, Intel Corporation.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope 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
+ * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
+ * Place - Suite 330, Boston, MA 02111-1307 USA.
+ *
+ * Author: Lucy Liu <lucy.liu(a)intel.com>
+ */
+
+#ifndef __LINUX_DCBNL_H__
+#define __LINUX_DCBNL_H__
+
+#include <linux/types.h>
+
+#define DCB_PROTO_VERSION 1
+
+struct dcbmsg {
+ __u8 dcb_family;
+ __u8 cmd;
+ __u16 dcb_pad;
+};
+
+/**
+ * enum dcbnl_commands - supported DCB commands
+ *
+ * @DCB_CMD_UNDEFINED: unspecified command to catch errors
+ * @DCB_CMD_GSTATE: request the state of DCB in the device
+ * @DCB_CMD_SSTATE: set the state of DCB in the device
+ * @DCB_CMD_PGTX_GCFG: request the priority group configuration for Tx
+ * @DCB_CMD_PGTX_SCFG: set the priority group configuration for Tx
+ * @DCB_CMD_PGRX_GCFG: request the priority group configuration for Rx
+ * @DCB_CMD_PGRX_SCFG: set the priority group configuration for Rx
+ * @DCB_CMD_PFC_GCFG: request the priority flow control configuration
+ * @DCB_CMD_PFC_SCFG: set the priority flow control configuration
+ * @DCB_CMD_SET_ALL: apply all changes to the underlying device
+ * @DCB_CMD_GPERM_HWADDR: get the permanent MAC address of the underlying
+ * device. Only useful when using bonding.
+ * @DCB_CMD_GCAP: request the DCB capabilities of the device
+ * @DCB_CMD_GNUMTCS: get the number of traffic classes currently supported
+ * @DCB_CMD_SNUMTCS: set the number of traffic classes
+ * @DCB_CMD_GBCN: set backward congestion notification configuration
+ * @DCB_CMD_SBCN: get backward congestion notification configration.
+ */
+enum dcbnl_commands {
+ DCB_CMD_UNDEFINED,
+
+ DCB_CMD_GSTATE,
+ DCB_CMD_SSTATE,
+
+ DCB_CMD_PGTX_GCFG,
+ DCB_CMD_PGTX_SCFG,
+ DCB_CMD_PGRX_GCFG,
+ DCB_CMD_PGRX_SCFG,
+
+ DCB_CMD_PFC_GCFG,
+ DCB_CMD_PFC_SCFG,
+
+ DCB_CMD_SET_ALL,
+
+ DCB_CMD_GPERM_HWADDR,
+
+ DCB_CMD_GCAP,
+
+ DCB_CMD_GNUMTCS,
+ DCB_CMD_SNUMTCS,
+
+ DCB_CMD_PFC_GSTATE,
+ DCB_CMD_PFC_SSTATE,
+
+ DCB_CMD_BCN_GCFG,
+ DCB_CMD_BCN_SCFG,
+
+ __DCB_CMD_ENUM_MAX,
+ DCB_CMD_MAX = __DCB_CMD_ENUM_MAX - 1,
+};
+
+/**
+ * enum dcbnl_attrs - DCB top-level netlink attributes
+ *
+ * @DCB_ATTR_UNDEFINED: unspecified attribute to catch errors
+ * @DCB_ATTR_IFNAME: interface name of the underlying device (NLA_STRING)
+ * @DCB_ATTR_STATE: enable state of DCB in the device (NLA_U8)
+ * @DCB_ATTR_PFC_STATE: enable state of PFC in the device (NLA_U8)
+ * @DCB_ATTR_PFC_CFG: priority flow control configuration (NLA_NESTED)
+ * @DCB_ATTR_NUM_TC: number of traffic classes supported in the device (NLA_U8)
+ * @DCB_ATTR_PG_CFG: priority group configuration (NLA_NESTED)
+ * @DCB_ATTR_SET_ALL: bool to commit changes to hardware or not (NLA_U8)
+ * @DCB_ATTR_PERM_HWADDR: MAC address of the physical device (NLA_NESTED)
+ * @DCB_ATTR_CAP: DCB capabilities of the device (NLA_NESTED)
+ * @DCB_ATTR_NUMTCS: number of traffic classes supported (NLA_NESTED)
+ * @DCB_ATTR_BCN: backward congestion notification configuration (NLA_NESTED)
+ */
+enum dcbnl_attrs {
+ DCB_ATTR_UNDEFINED,
+
+ DCB_ATTR_IFNAME,
+ DCB_ATTR_STATE,
+ DCB_ATTR_PFC_STATE,
+ DCB_ATTR_PFC_CFG,
+ DCB_ATTR_NUM_TC,
+ DCB_ATTR_PG_CFG,
+ DCB_ATTR_SET_ALL,
+ DCB_ATTR_PERM_HWADDR,
+ DCB_ATTR_CAP,
+ DCB_ATTR_NUMTCS,
+ DCB_ATTR_BCN,
+
+ __DCB_ATTR_ENUM_MAX,
+ DCB_ATTR_MAX = __DCB_ATTR_ENUM_MAX - 1,
+};
+
+/**
+ * enum dcbnl_pfc_attrs - DCB Priority Flow Control user priority nested attrs
+ *
+ * @DCB_PFC_UP_ATTR_UNDEFINED: unspecified attribute to catch errors
+ * @DCB_PFC_UP_ATTR_0: Priority Flow Control value for User Priority 0 (NLA_U8)
+ * @DCB_PFC_UP_ATTR_1: Priority Flow Control value for User Priority 1 (NLA_U8)
+ * @DCB_PFC_UP_ATTR_2: Priority Flow Control value for User Priority 2 (NLA_U8)
+ * @DCB_PFC_UP_ATTR_3: Priority Flow Control value for User Priority 3 (NLA_U8)
+ * @DCB_PFC_UP_ATTR_4: Priority Flow Control value for User Priority 4 (NLA_U8)
+ * @DCB_PFC_UP_ATTR_5: Priority Flow Control value for User Priority 5 (NLA_U8)
+ * @DCB_PFC_UP_ATTR_6: Priority Flow Control value for User Priority 6 (NLA_U8)
+ * @DCB_PFC_UP_ATTR_7: Priority Flow Control value for User Priority 7 (NLA_U8)
+ * @DCB_PFC_UP_ATTR_MAX: highest attribute number currently defined
+ * @DCB_PFC_UP_ATTR_ALL: apply to all priority flow control attrs (NLA_FLAG)
+ *
+ */
+enum dcbnl_pfc_up_attrs {
+ DCB_PFC_UP_ATTR_UNDEFINED,
+
+ DCB_PFC_UP_ATTR_0,
+ DCB_PFC_UP_ATTR_1,
+ DCB_PFC_UP_ATTR_2,
+ DCB_PFC_UP_ATTR_3,
+ DCB_PFC_UP_ATTR_4,
+ DCB_PFC_UP_ATTR_5,
+ DCB_PFC_UP_ATTR_6,
+ DCB_PFC_UP_ATTR_7,
+ DCB_PFC_UP_ATTR_ALL,
+
+ __DCB_PFC_UP_ATTR_ENUM_MAX,
+ DCB_PFC_UP_ATTR_MAX = __DCB_PFC_UP_ATTR_ENUM_MAX - 1,
+};
+
+/**
+ * enum dcbnl_pg_attrs - DCB Priority Group attributes
+ *
+ * @DCB_PG_ATTR_UNDEFINED: unspecified attribute to catch errors
+ * @DCB_PG_ATTR_TC_0: Priority Group Traffic Class 0 configuration (NLA_NESTED)
+ * @DCB_PG_ATTR_TC_1: Priority Group Traffic Class 1 configuration (NLA_NESTED)
+ * @DCB_PG_ATTR_TC_2: Priority Group Traffic Class 2 configuration (NLA_NESTED)
+ * @DCB_PG_ATTR_TC_3: Priority Group Traffic Class 3 configuration (NLA_NESTED)
+ * @DCB_PG_ATTR_TC_4: Priority Group Traffic Class 4 configuration (NLA_NESTED)
+ * @DCB_PG_ATTR_TC_5: Priority Group Traffic Class 5 configuration (NLA_NESTED)
+ * @DCB_PG_ATTR_TC_6: Priority Group Traffic Class 6 configuration (NLA_NESTED)
+ * @DCB_PG_ATTR_TC_7: Priority Group Traffic Class 7 configuration (NLA_NESTED)
+ * @DCB_PG_ATTR_TC_MAX: highest attribute number currently defined
+ * @DCB_PG_ATTR_TC_ALL: apply to all traffic classes (NLA_NESTED)
+ * @DCB_PG_ATTR_BW_ID_0: Percent of link bandwidth for Priority Group 0 (NLA_U8)
+ * @DCB_PG_ATTR_BW_ID_1: Percent of link bandwidth for Priority Group 1 (NLA_U8)
+ * @DCB_PG_ATTR_BW_ID_2: Percent of link bandwidth for Priority Group 2 (NLA_U8)
+ * @DCB_PG_ATTR_BW_ID_3: Percent of link bandwidth for Priority Group 3 (NLA_U8)
+ * @DCB_PG_ATTR_BW_ID_4: Percent of link bandwidth for Priority Group 4 (NLA_U8)
+ * @DCB_PG_ATTR_BW_ID_5: Percent of link bandwidth for Priority Group 5 (NLA_U8)
+ * @DCB_PG_ATTR_BW_ID_6: Percent of link bandwidth for Priority Group 6 (NLA_U8)
+ * @DCB_PG_ATTR_BW_ID_7: Percent of link bandwidth for Priority Group 7 (NLA_U8)
+ * @DCB_PG_ATTR_BW_ID_MAX: highest attribute number currently defined
+ * @DCB_PG_ATTR_BW_ID_ALL: apply to all priority groups (NLA_FLAG)
+ *
+ */
+enum dcbnl_pg_attrs {
+ DCB_PG_ATTR_UNDEFINED,
+
+ DCB_PG_ATTR_TC_0,
+ DCB_PG_ATTR_TC_1,
+ DCB_PG_ATTR_TC_2,
+ DCB_PG_ATTR_TC_3,
+ DCB_PG_ATTR_TC_4,
+ DCB_PG_ATTR_TC_5,
+ DCB_PG_ATTR_TC_6,
+ DCB_PG_ATTR_TC_7,
+ DCB_PG_ATTR_TC_MAX,
+ DCB_PG_ATTR_TC_ALL,
+
+ DCB_PG_ATTR_BW_ID_0,
+ DCB_PG_ATTR_BW_ID_1,
+ DCB_PG_ATTR_BW_ID_2,
+ DCB_PG_ATTR_BW_ID_3,
+ DCB_PG_ATTR_BW_ID_4,
+ DCB_PG_ATTR_BW_ID_5,
+ DCB_PG_ATTR_BW_ID_6,
+ DCB_PG_ATTR_BW_ID_7,
+ DCB_PG_ATTR_BW_ID_MAX,
+ DCB_PG_ATTR_BW_ID_ALL,
+
+ __DCB_PG_ATTR_ENUM_MAX,
+ DCB_PG_ATTR_MAX = __DCB_PG_ATTR_ENUM_MAX - 1,
+};
+
+/**
+ * enum dcbnl_tc_attrs - DCB Traffic Class attributes
+ *
+ * @DCB_TC_ATTR_PARAM_UNDEFINED: unspecified attribute to catch errors
+ * @DCB_TC_ATTR_PARAM_PGID: (NLA_U8) Priority group the traffic class belongs to
+ * Valid values are: 0-7
+ * @DCB_TC_ATTR_PARAM_UP_MAPPING: (NLA_U8) Traffic class to user priority map
+ * Some devices may not support changing the
+ * user priority map of a TC.
+ * @DCB_TC_ATTR_PARAM_STRICT_PRIO: (NLA_U8) Strict priority setting
+ * 0 - none
+ * 1 - group strict
+ * 2 - link strict
+ * @DCB_TC_ATTR_PARAM_BW_PCT: optional - (NLA_U8) If supported by the device and
+ * not configured to use link strict priority,
+ * this is the percentage of bandwidth of the
+ * priority group this traffic class belongs to
+ * @DCB_TC_ATTR_PARAM_ALL: (NLA_FLAG) all traffic class parameters
+ *
+ */
+enum dcbnl_tc_attrs {
+ DCB_TC_ATTR_PARAM_UNDEFINED,
+
+ DCB_TC_ATTR_PARAM_PGID,
+ DCB_TC_ATTR_PARAM_UP_MAPPING,
+ DCB_TC_ATTR_PARAM_STRICT_PRIO,
+ DCB_TC_ATTR_PARAM_BW_PCT,
+ DCB_TC_ATTR_PARAM_ALL,
+
+ __DCB_TC_ATTR_PARAM_ENUM_MAX,
+ DCB_TC_ATTR_PARAM_MAX = __DCB_TC_ATTR_PARAM_ENUM_MAX - 1,
+};
+
+/**
+ * enum dcbnl_cap_attrs - DCB Capability attributes
+ *
+ * @DCB_CAP_ATTR_UNDEFINED: unspecified attribute to catch errors
+ * @DCB_CAP_ATTR_ALL: (NLA_FLAG) all capability parameters
+ * @DCB_CAP_ATTR_PG: (NLA_U8) device supports Priority Groups
+ * @DCB_CAP_ATTR_PFC: (NLA_U8) device supports Priority Flow Control
+ * @DCB_CAP_ATTR_UP2TC: (NLA_U8) device supports user priority to
+ * traffic class mapping
+ * @DCB_CAP_ATTR_PG_TCS: (NLA_U8) bitmap where each bit represents a
+ * number of traffic classes the device
+ * can be configured to use for Priority Groups
+ * @DCB_CAP_ATTR_PFC_TCS: (NLA_U8) bitmap where each bit represents a
+ * number of traffic classes the device can be
+ * configured to use for Priority Flow Control
+ * @DCB_CAP_ATTR_GSP: (NLA_U8) device supports group strict priority
+ * @DCB_CAP_ATTR_BCN: (NLA_U8) device supports Backwards Congestion
+ * Notification
+ */
+enum dcbnl_cap_attrs {
+ DCB_CAP_ATTR_UNDEFINED,
+ DCB_CAP_ATTR_ALL,
+ DCB_CAP_ATTR_PG,
+ DCB_CAP_ATTR_PFC,
+ DCB_CAP_ATTR_UP2TC,
+ DCB_CAP_ATTR_PG_TCS,
+ DCB_CAP_ATTR_PFC_TCS,
+ DCB_CAP_ATTR_GSP,
+ DCB_CAP_ATTR_BCN,
+
+ __DCB_CAP_ATTR_ENUM_MAX,
+ DCB_CAP_ATTR_MAX = __DCB_CAP_ATTR_ENUM_MAX - 1,
+};
+
+/**
+ * enum dcbnl_numtcs_attrs - number of traffic classes
+ *
+ * @DCB_NUMTCS_ATTR_UNDEFINED: unspecified attribute to catch errors
+ * @DCB_NUMTCS_ATTR_ALL: (NLA_FLAG) all traffic class attributes
+ * @DCB_NUMTCS_ATTR_PG: (NLA_U8) number of traffic classes used for
+ * priority groups
+ * @DCB_NUMTCS_ATTR_PFC: (NLA_U8) number of traffic classes which can
+ * support priority flow control
+ */
+enum dcbnl_numtcs_attrs {
+ DCB_NUMTCS_ATTR_UNDEFINED,
+ DCB_NUMTCS_ATTR_ALL,
+ DCB_NUMTCS_ATTR_PG,
+ DCB_NUMTCS_ATTR_PFC,
+
+ __DCB_NUMTCS_ATTR_ENUM_MAX,
+ DCB_NUMTCS_ATTR_MAX = __DCB_NUMTCS_ATTR_ENUM_MAX - 1,
+};
+
+enum dcbnl_bcn_attrs{
+ DCB_BCN_ATTR_UNDEFINED = 0,
+
+ DCB_BCN_ATTR_RP_0,
+ DCB_BCN_ATTR_RP_1,
+ DCB_BCN_ATTR_RP_2,
+ DCB_BCN_ATTR_RP_3,
+ DCB_BCN_ATTR_RP_4,
+ DCB_BCN_ATTR_RP_5,
+ DCB_BCN_ATTR_RP_6,
+ DCB_BCN_ATTR_RP_7,
+ DCB_BCN_ATTR_RP_ALL,
+
+ DCB_BCN_ATTR_BCNA_0,
+ DCB_BCN_ATTR_BCNA_1,
+ DCB_BCN_ATTR_ALPHA,
+ DCB_BCN_ATTR_BETA,
+ DCB_BCN_ATTR_GD,
+ DCB_BCN_ATTR_GI,
+ DCB_BCN_ATTR_TMAX,
+ DCB_BCN_ATTR_TD,
+ DCB_BCN_ATTR_RMIN,
+ DCB_BCN_ATTR_W,
+ DCB_BCN_ATTR_RD,
+ DCB_BCN_ATTR_RU,
+ DCB_BCN_ATTR_WRTT,
+ DCB_BCN_ATTR_RI,
+ DCB_BCN_ATTR_C,
+ DCB_BCN_ATTR_ALL,
+
+ __DCB_BCN_ATTR_ENUM_MAX,
+ DCB_BCN_ATTR_MAX = __DCB_BCN_ATTR_ENUM_MAX - 1,
+};
+
+/**
+ * enum dcb_general_attr_values - general DCB attribute values
+ *
+ * @DCB_ATTR_UNDEFINED: value used to indicate an attribute is not supported
+ *
+ */
+enum dcb_general_attr_values {
+ DCB_ATTR_VALUE_UNDEFINED = 0xff
+};
+
+
+#endif /* __LINUX_DCBNL_H__ */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/linux/hdreg.h new/linux-kernel-headers-2.6.29/usr/include/linux/hdreg.h
--- old/linux-kernel-headers-2.6.29/usr/include/linux/hdreg.h 2009-02-23 13:19:31.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/linux/hdreg.h 2009-05-08 15:35:26.000000000 +0200
@@ -440,7 +440,6 @@
unsigned short words69_70[2]; /* reserved words 69-70
* future command overlap and queuing
*/
- /* HDIO_GET_IDENTITY currently returns only words 0 through 70 */
unsigned short words71_74[4]; /* reserved words 71-74
* for IDENTIFY PACKET DEVICE command
*/
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/linux/i2c-dev.h new/linux-kernel-headers-2.6.29/usr/include/linux/i2c-dev.h
--- old/linux-kernel-headers-2.6.29/usr/include/linux/i2c-dev.h 2009-02-23 13:19:31.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/linux/i2c-dev.h 2009-05-08 15:35:26.000000000 +0200
@@ -33,7 +33,7 @@
*/
#define I2C_RETRIES 0x0701 /* number of times a device address should
be polled when not acknowledging */
-#define I2C_TIMEOUT 0x0702 /* set timeout in jiffies - call with int */
+#define I2C_TIMEOUT 0x0702 /* set timeout in units of 10 ms */
/* NOTE: Slave address is 7 or 10 bits, but 10-bit addresses
* are NOT supported! (due to code brokenness)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/linux/kvm.h new/linux-kernel-headers-2.6.29/usr/include/linux/kvm.h
--- old/linux-kernel-headers-2.6.29/usr/include/linux/kvm.h 1970-01-01 01:00:00.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/linux/kvm.h 2009-05-08 15:35:27.000000000 +0200
@@ -0,0 +1,527 @@
+#ifndef __LINUX_KVM_H
+#define __LINUX_KVM_H
+
+/*
+ * Userspace interface for /dev/kvm - kernel based virtual machine
+ *
+ * Note: you must update KVM_API_VERSION if you change this interface.
+ */
+
+#include <linux/types.h>
+
+#include <linux/ioctl.h>
+#include <asm/kvm.h>
+
+#define KVM_API_VERSION 12
+
+/* for KVM_TRACE_ENABLE */
+struct kvm_user_trace_setup {
+ __u32 buf_size; /* sub_buffer size of each per-cpu */
+ __u32 buf_nr; /* the number of sub_buffers of each per-cpu */
+};
+
+/* for KVM_CREATE_MEMORY_REGION */
+struct kvm_memory_region {
+ __u32 slot;
+ __u32 flags;
+ __u64 guest_phys_addr;
+ __u64 memory_size; /* bytes */
+};
+
+/* for KVM_SET_USER_MEMORY_REGION */
+struct kvm_userspace_memory_region {
+ __u32 slot;
+ __u32 flags;
+ __u64 guest_phys_addr;
+ __u64 memory_size; /* bytes */
+ __u64 userspace_addr; /* start of the userspace allocated memory */
+};
+
+/* for kvm_memory_region::flags */
+#define KVM_MEM_LOG_DIRTY_PAGES 1UL
+
+
+/* for KVM_IRQ_LINE */
+struct kvm_irq_level {
+ /*
+ * ACPI gsi notion of irq.
+ * For IA-64 (APIC model) IOAPIC0: irq 0-23; IOAPIC1: irq 24-47..
+ * For X86 (standard AT mode) PIC0/1: irq 0-15. IOAPIC0: 0-23..
+ */
+ __u32 irq;
+ __u32 level;
+};
+
+
+struct kvm_irqchip {
+ __u32 chip_id;
+ __u32 pad;
+ union {
+ char dummy[512]; /* reserving space */
+#ifdef __KVM_HAVE_PIT
+ struct kvm_pic_state pic;
+#endif
+#ifdef __KVM_HAVE_IOAPIC
+ struct kvm_ioapic_state ioapic;
+#endif
+ } chip;
+};
+
+#define KVM_EXIT_UNKNOWN 0
+#define KVM_EXIT_EXCEPTION 1
+#define KVM_EXIT_IO 2
+#define KVM_EXIT_HYPERCALL 3
+#define KVM_EXIT_DEBUG 4
+#define KVM_EXIT_HLT 5
+#define KVM_EXIT_MMIO 6
+#define KVM_EXIT_IRQ_WINDOW_OPEN 7
+#define KVM_EXIT_SHUTDOWN 8
+#define KVM_EXIT_FAIL_ENTRY 9
+#define KVM_EXIT_INTR 10
+#define KVM_EXIT_SET_TPR 11
+#define KVM_EXIT_TPR_ACCESS 12
+#define KVM_EXIT_S390_SIEIC 13
+#define KVM_EXIT_S390_RESET 14
+#define KVM_EXIT_DCR 15
+#define KVM_EXIT_NMI 16
+
+/* for KVM_RUN, returned by mmap(vcpu_fd, offset=0) */
+struct kvm_run {
+ /* in */
+ __u8 request_interrupt_window;
+ __u8 padding1[7];
+
+ /* out */
+ __u32 exit_reason;
+ __u8 ready_for_interrupt_injection;
+ __u8 if_flag;
+ __u8 padding2[2];
+
+ /* in (pre_kvm_run), out (post_kvm_run) */
+ __u64 cr8;
+ __u64 apic_base;
+
+ union {
+ /* KVM_EXIT_UNKNOWN */
+ struct {
+ __u64 hardware_exit_reason;
+ } hw;
+ /* KVM_EXIT_FAIL_ENTRY */
+ struct {
+ __u64 hardware_entry_failure_reason;
+ } fail_entry;
+ /* KVM_EXIT_EXCEPTION */
+ struct {
+ __u32 exception;
+ __u32 error_code;
+ } ex;
+ /* KVM_EXIT_IO */
+ struct kvm_io {
+#define KVM_EXIT_IO_IN 0
+#define KVM_EXIT_IO_OUT 1
+ __u8 direction;
+ __u8 size; /* bytes */
+ __u16 port;
+ __u32 count;
+ __u64 data_offset; /* relative to kvm_run start */
+ } io;
+ struct {
+ } debug;
+ /* KVM_EXIT_MMIO */
+ struct {
+ __u64 phys_addr;
+ __u8 data[8];
+ __u32 len;
+ __u8 is_write;
+ } mmio;
+ /* KVM_EXIT_HYPERCALL */
+ struct {
+ __u64 nr;
+ __u64 args[6];
+ __u64 ret;
+ __u32 longmode;
+ __u32 pad;
+ } hypercall;
+ /* KVM_EXIT_TPR_ACCESS */
+ struct {
+ __u64 rip;
+ __u32 is_write;
+ __u32 pad;
+ } tpr_access;
+ /* KVM_EXIT_S390_SIEIC */
+ struct {
+ __u8 icptcode;
+ __u64 mask; /* psw upper half */
+ __u64 addr; /* psw lower half */
+ __u16 ipa;
+ __u32 ipb;
+ } s390_sieic;
+ /* KVM_EXIT_S390_RESET */
+#define KVM_S390_RESET_POR 1
+#define KVM_S390_RESET_CLEAR 2
+#define KVM_S390_RESET_SUBSYSTEM 4
+#define KVM_S390_RESET_CPU_INIT 8
+#define KVM_S390_RESET_IPL 16
+ __u64 s390_reset_flags;
+ /* KVM_EXIT_DCR */
+ struct {
+ __u32 dcrn;
+ __u32 data;
+ __u8 is_write;
+ } dcr;
+ /* Fix the size of the union. */
+ char padding[256];
+ };
+};
+
+/* for KVM_REGISTER_COALESCED_MMIO / KVM_UNREGISTER_COALESCED_MMIO */
+
+struct kvm_coalesced_mmio_zone {
+ __u64 addr;
+ __u32 size;
+ __u32 pad;
+};
+
+struct kvm_coalesced_mmio {
+ __u64 phys_addr;
+ __u32 len;
+ __u32 pad;
+ __u8 data[8];
+};
+
+struct kvm_coalesced_mmio_ring {
+ __u32 first, last;
+ struct kvm_coalesced_mmio coalesced_mmio[0];
+};
+
+#define KVM_COALESCED_MMIO_MAX \
+ ((PAGE_SIZE - sizeof(struct kvm_coalesced_mmio_ring)) / \
+ sizeof(struct kvm_coalesced_mmio))
+
+/* for KVM_TRANSLATE */
+struct kvm_translation {
+ /* in */
+ __u64 linear_address;
+
+ /* out */
+ __u64 physical_address;
+ __u8 valid;
+ __u8 writeable;
+ __u8 usermode;
+ __u8 pad[5];
+};
+
+/* for KVM_INTERRUPT */
+struct kvm_interrupt {
+ /* in */
+ __u32 irq;
+};
+
+struct kvm_breakpoint {
+ __u32 enabled;
+ __u32 padding;
+ __u64 address;
+};
+
+/* for KVM_DEBUG_GUEST */
+struct kvm_debug_guest {
+ /* int */
+ __u32 enabled;
+ __u32 pad;
+ struct kvm_breakpoint breakpoints[4];
+ __u32 singlestep;
+};
+
+/* for KVM_GET_DIRTY_LOG */
+struct kvm_dirty_log {
+ __u32 slot;
+ __u32 padding;
+ union {
+ void *dirty_bitmap; /* one bit per page */
+ __u64 padding;
+ };
+};
+
+/* for KVM_SET_SIGNAL_MASK */
+struct kvm_signal_mask {
+ __u32 len;
+ __u8 sigset[0];
+};
+
+/* for KVM_TPR_ACCESS_REPORTING */
+struct kvm_tpr_access_ctl {
+ __u32 enabled;
+ __u32 flags;
+ __u32 reserved[8];
+};
+
+/* for KVM_SET_VAPIC_ADDR */
+struct kvm_vapic_addr {
+ __u64 vapic_addr;
+};
+
+/* for KVM_SET_MPSTATE */
+
+#define KVM_MP_STATE_RUNNABLE 0
+#define KVM_MP_STATE_UNINITIALIZED 1
+#define KVM_MP_STATE_INIT_RECEIVED 2
+#define KVM_MP_STATE_HALTED 3
+#define KVM_MP_STATE_SIPI_RECEIVED 4
+
+struct kvm_mp_state {
+ __u32 mp_state;
+};
+
+struct kvm_s390_psw {
+ __u64 mask;
+ __u64 addr;
+};
+
+/* valid values for type in kvm_s390_interrupt */
+#define KVM_S390_SIGP_STOP 0xfffe0000u
+#define KVM_S390_PROGRAM_INT 0xfffe0001u
+#define KVM_S390_SIGP_SET_PREFIX 0xfffe0002u
+#define KVM_S390_RESTART 0xfffe0003u
+#define KVM_S390_INT_VIRTIO 0xffff2603u
+#define KVM_S390_INT_SERVICE 0xffff2401u
+#define KVM_S390_INT_EMERGENCY 0xffff1201u
+
+struct kvm_s390_interrupt {
+ __u32 type;
+ __u32 parm;
+ __u64 parm64;
+};
+
+#define KVM_TRC_SHIFT 16
+/*
+ * kvm trace categories
+ */
+#define KVM_TRC_ENTRYEXIT (1 << KVM_TRC_SHIFT)
+#define KVM_TRC_HANDLER (1 << (KVM_TRC_SHIFT + 1)) /* only 12 bits */
+
+/*
+ * kvm trace action
+ */
+#define KVM_TRC_VMENTRY (KVM_TRC_ENTRYEXIT + 0x01)
+#define KVM_TRC_VMEXIT (KVM_TRC_ENTRYEXIT + 0x02)
+#define KVM_TRC_PAGE_FAULT (KVM_TRC_HANDLER + 0x01)
+
+#define KVM_TRC_HEAD_SIZE 12
+#define KVM_TRC_CYCLE_SIZE 8
+#define KVM_TRC_EXTRA_MAX 7
+
+/* This structure represents a single trace buffer record. */
+struct kvm_trace_rec {
+ /* variable rec_val
+ * is split into:
+ * bits 0 - 27 -> event id
+ * bits 28 -30 -> number of extra data args of size u32
+ * bits 31 -> binary indicator for if tsc is in record
+ */
+ __u32 rec_val;
+ __u32 pid;
+ __u32 vcpu_id;
+ union {
+ struct {
+ __u64 timestamp;
+ __u32 extra_u32[KVM_TRC_EXTRA_MAX];
+ } __attribute__((packed)) timestamp;
+ struct {
+ __u32 extra_u32[KVM_TRC_EXTRA_MAX];
+ } notimestamp;
+ } u;
+};
+
+#define TRACE_REC_EVENT_ID(val) \
+ (0x0fffffff & (val))
+#define TRACE_REC_NUM_DATA_ARGS(val) \
+ (0x70000000 & ((val) << 28))
+#define TRACE_REC_TCS(val) \
+ (0x80000000 & ((val) << 31))
+
+#define KVMIO 0xAE
+
+/*
+ * ioctls for /dev/kvm fds:
+ */
+#define KVM_GET_API_VERSION _IO(KVMIO, 0x00)
+#define KVM_CREATE_VM _IO(KVMIO, 0x01) /* returns a VM fd */
+#define KVM_GET_MSR_INDEX_LIST _IOWR(KVMIO, 0x02, struct kvm_msr_list)
+
+#define KVM_S390_ENABLE_SIE _IO(KVMIO, 0x06)
+/*
+ * Check if a kvm extension is available. Argument is extension number,
+ * return is 1 (yes) or 0 (no, sorry).
+ */
+#define KVM_CHECK_EXTENSION _IO(KVMIO, 0x03)
+/*
+ * Get size for mmap(vcpu_fd)
+ */
+#define KVM_GET_VCPU_MMAP_SIZE _IO(KVMIO, 0x04) /* in bytes */
+#define KVM_GET_SUPPORTED_CPUID _IOWR(KVMIO, 0x05, struct kvm_cpuid2)
+/*
+ * ioctls for kvm trace
+ */
+#define KVM_TRACE_ENABLE _IOW(KVMIO, 0x06, struct kvm_user_trace_setup)
+#define KVM_TRACE_PAUSE _IO(KVMIO, 0x07)
+#define KVM_TRACE_DISABLE _IO(KVMIO, 0x08)
+/*
+ * Extension capability list.
+ */
+#define KVM_CAP_IRQCHIP 0
+#define KVM_CAP_HLT 1
+#define KVM_CAP_MMU_SHADOW_CACHE_CONTROL 2
+#define KVM_CAP_USER_MEMORY 3
+#define KVM_CAP_SET_TSS_ADDR 4
+#define KVM_CAP_VAPIC 6
+#define KVM_CAP_EXT_CPUID 7
+#define KVM_CAP_CLOCKSOURCE 8
+#define KVM_CAP_NR_VCPUS 9 /* returns max vcpus per vm */
+#define KVM_CAP_NR_MEMSLOTS 10 /* returns max memory slots per vm */
+#define KVM_CAP_PIT 11
+#define KVM_CAP_NOP_IO_DELAY 12
+#define KVM_CAP_PV_MMU 13
+#define KVM_CAP_MP_STATE 14
+#define KVM_CAP_COALESCED_MMIO 15
+#define KVM_CAP_SYNC_MMU 16 /* Changes to host mmap are reflected in guest */
+#ifdef __KVM_HAVE_DEVICE_ASSIGNMENT
+#define KVM_CAP_DEVICE_ASSIGNMENT 17
+#endif
+#define KVM_CAP_IOMMU 18
+#ifdef __KVM_HAVE_MSI
+#define KVM_CAP_DEVICE_MSI 20
+#endif
+/* Bug in KVM_SET_USER_MEMORY_REGION fixed: */
+#define KVM_CAP_DESTROY_MEMORY_REGION_WORKS 21
+#ifdef __KVM_HAVE_USER_NMI
+#define KVM_CAP_USER_NMI 22
+#endif
+
+/*
+ * ioctls for VM fds
+ */
+#define KVM_SET_MEMORY_REGION _IOW(KVMIO, 0x40, struct kvm_memory_region)
+#define KVM_SET_NR_MMU_PAGES _IO(KVMIO, 0x44)
+#define KVM_GET_NR_MMU_PAGES _IO(KVMIO, 0x45)
+#define KVM_SET_USER_MEMORY_REGION _IOW(KVMIO, 0x46,\
+ struct kvm_userspace_memory_region)
+#define KVM_SET_TSS_ADDR _IO(KVMIO, 0x47)
+/*
+ * KVM_CREATE_VCPU receives as a parameter the vcpu slot, and returns
+ * a vcpu fd.
+ */
+#define KVM_CREATE_VCPU _IO(KVMIO, 0x41)
+#define KVM_GET_DIRTY_LOG _IOW(KVMIO, 0x42, struct kvm_dirty_log)
+#define KVM_SET_MEMORY_ALIAS _IOW(KVMIO, 0x43, struct kvm_memory_alias)
+/* Device model IOC */
+#define KVM_CREATE_IRQCHIP _IO(KVMIO, 0x60)
+#define KVM_IRQ_LINE _IOW(KVMIO, 0x61, struct kvm_irq_level)
+#define KVM_GET_IRQCHIP _IOWR(KVMIO, 0x62, struct kvm_irqchip)
+#define KVM_SET_IRQCHIP _IOR(KVMIO, 0x63, struct kvm_irqchip)
+#define KVM_CREATE_PIT _IO(KVMIO, 0x64)
+#define KVM_GET_PIT _IOWR(KVMIO, 0x65, struct kvm_pit_state)
+#define KVM_SET_PIT _IOR(KVMIO, 0x66, struct kvm_pit_state)
+#define KVM_REGISTER_COALESCED_MMIO \
+ _IOW(KVMIO, 0x67, struct kvm_coalesced_mmio_zone)
+#define KVM_UNREGISTER_COALESCED_MMIO \
+ _IOW(KVMIO, 0x68, struct kvm_coalesced_mmio_zone)
+#define KVM_ASSIGN_PCI_DEVICE _IOR(KVMIO, 0x69, \
+ struct kvm_assigned_pci_dev)
+#define KVM_ASSIGN_IRQ _IOR(KVMIO, 0x70, \
+ struct kvm_assigned_irq)
+
+/*
+ * ioctls for vcpu fds
+ */
+#define KVM_RUN _IO(KVMIO, 0x80)
+#define KVM_GET_REGS _IOR(KVMIO, 0x81, struct kvm_regs)
+#define KVM_SET_REGS _IOW(KVMIO, 0x82, struct kvm_regs)
+#define KVM_GET_SREGS _IOR(KVMIO, 0x83, struct kvm_sregs)
+#define KVM_SET_SREGS _IOW(KVMIO, 0x84, struct kvm_sregs)
+#define KVM_TRANSLATE _IOWR(KVMIO, 0x85, struct kvm_translation)
+#define KVM_INTERRUPT _IOW(KVMIO, 0x86, struct kvm_interrupt)
+#define KVM_DEBUG_GUEST _IOW(KVMIO, 0x87, struct kvm_debug_guest)
+#define KVM_GET_MSRS _IOWR(KVMIO, 0x88, struct kvm_msrs)
+#define KVM_SET_MSRS _IOW(KVMIO, 0x89, struct kvm_msrs)
+#define KVM_SET_CPUID _IOW(KVMIO, 0x8a, struct kvm_cpuid)
+#define KVM_SET_SIGNAL_MASK _IOW(KVMIO, 0x8b, struct kvm_signal_mask)
+#define KVM_GET_FPU _IOR(KVMIO, 0x8c, struct kvm_fpu)
+#define KVM_SET_FPU _IOW(KVMIO, 0x8d, struct kvm_fpu)
+#define KVM_GET_LAPIC _IOR(KVMIO, 0x8e, struct kvm_lapic_state)
+#define KVM_SET_LAPIC _IOW(KVMIO, 0x8f, struct kvm_lapic_state)
+#define KVM_SET_CPUID2 _IOW(KVMIO, 0x90, struct kvm_cpuid2)
+#define KVM_GET_CPUID2 _IOWR(KVMIO, 0x91, struct kvm_cpuid2)
+/* Available with KVM_CAP_VAPIC */
+#define KVM_TPR_ACCESS_REPORTING _IOWR(KVMIO, 0x92, struct kvm_tpr_access_ctl)
+/* Available with KVM_CAP_VAPIC */
+#define KVM_SET_VAPIC_ADDR _IOW(KVMIO, 0x93, struct kvm_vapic_addr)
+/* valid for virtual machine (for floating interrupt)_and_ vcpu */
+#define KVM_S390_INTERRUPT _IOW(KVMIO, 0x94, struct kvm_s390_interrupt)
+/* store status for s390 */
+#define KVM_S390_STORE_STATUS_NOADDR (-1ul)
+#define KVM_S390_STORE_STATUS_PREFIXED (-2ul)
+#define KVM_S390_STORE_STATUS _IOW(KVMIO, 0x95, unsigned long)
+/* initial ipl psw for s390 */
+#define KVM_S390_SET_INITIAL_PSW _IOW(KVMIO, 0x96, struct kvm_s390_psw)
+/* initial reset for s390 */
+#define KVM_S390_INITIAL_RESET _IO(KVMIO, 0x97)
+#define KVM_GET_MP_STATE _IOR(KVMIO, 0x98, struct kvm_mp_state)
+#define KVM_SET_MP_STATE _IOW(KVMIO, 0x99, struct kvm_mp_state)
+/* Available with KVM_CAP_NMI */
+#define KVM_NMI _IO(KVMIO, 0x9a)
+
+#define KVM_TRC_INJ_VIRQ (KVM_TRC_HANDLER + 0x02)
+#define KVM_TRC_REDELIVER_EVT (KVM_TRC_HANDLER + 0x03)
+#define KVM_TRC_PEND_INTR (KVM_TRC_HANDLER + 0x04)
+#define KVM_TRC_IO_READ (KVM_TRC_HANDLER + 0x05)
+#define KVM_TRC_IO_WRITE (KVM_TRC_HANDLER + 0x06)
+#define KVM_TRC_CR_READ (KVM_TRC_HANDLER + 0x07)
+#define KVM_TRC_CR_WRITE (KVM_TRC_HANDLER + 0x08)
+#define KVM_TRC_DR_READ (KVM_TRC_HANDLER + 0x09)
+#define KVM_TRC_DR_WRITE (KVM_TRC_HANDLER + 0x0A)
+#define KVM_TRC_MSR_READ (KVM_TRC_HANDLER + 0x0B)
+#define KVM_TRC_MSR_WRITE (KVM_TRC_HANDLER + 0x0C)
+#define KVM_TRC_CPUID (KVM_TRC_HANDLER + 0x0D)
+#define KVM_TRC_INTR (KVM_TRC_HANDLER + 0x0E)
+#define KVM_TRC_NMI (KVM_TRC_HANDLER + 0x0F)
+#define KVM_TRC_VMMCALL (KVM_TRC_HANDLER + 0x10)
+#define KVM_TRC_HLT (KVM_TRC_HANDLER + 0x11)
+#define KVM_TRC_CLTS (KVM_TRC_HANDLER + 0x12)
+#define KVM_TRC_LMSW (KVM_TRC_HANDLER + 0x13)
+#define KVM_TRC_APIC_ACCESS (KVM_TRC_HANDLER + 0x14)
+#define KVM_TRC_TDP_FAULT (KVM_TRC_HANDLER + 0x15)
+#define KVM_TRC_GTLB_WRITE (KVM_TRC_HANDLER + 0x16)
+#define KVM_TRC_STLB_WRITE (KVM_TRC_HANDLER + 0x17)
+#define KVM_TRC_STLB_INVAL (KVM_TRC_HANDLER + 0x18)
+#define KVM_TRC_PPC_INSTR (KVM_TRC_HANDLER + 0x19)
+
+struct kvm_assigned_pci_dev {
+ __u32 assigned_dev_id;
+ __u32 busnr;
+ __u32 devfn;
+ __u32 flags;
+ union {
+ __u32 reserved[12];
+ };
+};
+
+struct kvm_assigned_irq {
+ __u32 assigned_dev_id;
+ __u32 host_irq;
+ __u32 guest_irq;
+ __u32 flags;
+ union {
+ struct {
+ __u32 addr_lo;
+ __u32 addr_hi;
+ __u32 data;
+ } guest_msi;
+ __u32 reserved[12];
+ };
+};
+
+#define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0)
+
+#define KVM_DEV_IRQ_ASSIGN_ENABLE_MSI (1 << 0)
+
+#endif
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/linux/netfilter/xt_NFLOG.h new/linux-kernel-headers-2.6.29/usr/include/linux/netfilter/xt_NFLOG.h
--- old/linux-kernel-headers-2.6.29/usr/include/linux/netfilter/xt_NFLOG.h 2009-02-23 13:19:28.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/linux/netfilter/xt_NFLOG.h 2009-05-08 15:35:24.000000000 +0200
@@ -2,7 +2,7 @@
#define _XT_NFLOG_TARGET
#define XT_NFLOG_DEFAULT_GROUP 0x1
-#define XT_NFLOG_DEFAULT_THRESHOLD 1
+#define XT_NFLOG_DEFAULT_THRESHOLD 0
#define XT_NFLOG_MASK 0x0
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linux-kernel-headers-2.6.29/usr/include/linux/serio.h new/linux-kernel-headers-2.6.29/usr/include/linux/serio.h
--- old/linux-kernel-headers-2.6.29/usr/include/linux/serio.h 2009-02-23 13:19:32.000000000 +0100
+++ new/linux-kernel-headers-2.6.29/usr/include/linux/serio.h 2009-05-08 15:35:27.000000000 +0200
@@ -70,7 +70,7 @@
#define SERIO_FUJITSU 0x35
#define SERIO_ZHENHUA 0x36
#define SERIO_INEXIO 0x37
-#define SERIO_TOUCHIT213 0x37
+#define SERIO_TOUCHIT213 0x38
#define SERIO_W8001 0x39
#endif
++++++ linux-kernel-headers_install_all.sh ++++++
--- /var/tmp/diff_new_pack.X24078/_old 2009-05-15 21:29:05.000000000 +0200
+++ /var/tmp/diff_new_pack.X24078/_new 2009-05-15 21:29:05.000000000 +0200
@@ -23,6 +23,10 @@
pushd linux-${kernel_dir}
cp Makefile $header_dir
/usr/bin/make O="$header_dir" headers_install_all
+# kvm.h and aout.h are only installed if SRCARCH is an architecture
+# that has support for them. As the package is noarch we need to make
+# sure we get the full support on x86
+/usr/bin/make SRCARCH=x86 O="$header_dir" headers_install_all
popd
pushd "$header_dir"
for asm in \
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package bash for openSUSE:Factory
checked in at Fri May 15 21:21:57 CEST 2009.
--------
--- bash/bash.changes 2009-04-27 12:19:59.000000000 +0200
+++ bash/bash.changes 2009-05-11 10:21:36.000000000 +0200
@@ -1,0 +2,5 @@
+Mon May 11 10:18:06 CEST 2009 - werne(a)suse.de
+
+- Increase size of hash table for runtime linker a lot
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ bash.spec ++++++
--- /var/tmp/diff_new_pack.n13293/_old 2009-05-15 21:20:31.000000000 +0200
+++ /var/tmp/diff_new_pack.n13293/_new 2009-05-15 21:20:31.000000000 +0200
@@ -27,7 +27,7 @@
Suggests: command-not-found
AutoReqProv: on
Version: 4.0
-Release: 9
+Release: 10
Summary: The GNU Bourne-Again Shell
Url: http://www.gnu.org/software/bash/bash.html
Source0: ftp://ftp.gnu.org/gnu/bash/bash-%{bash_vers}.tar.bz2
@@ -91,7 +91,7 @@
Provides: bash:%{_infodir}/bash.info.gz
PreReq: %install_info_prereq
Version: 4.0
-Release: 9
+Release: 10
AutoReqProv: on
%description -n bash-doc
@@ -111,7 +111,7 @@
Group: System/Libraries
Provides: bash:/%{_lib}/libreadline.so.%{rl_major}
Version: 6.0
-Release: 9
+Release: 10
Recommends: readline-doc = %{version}
# bug437293
%ifarch ppc64
@@ -140,7 +140,7 @@
Group: Development/Libraries/C and C++
Provides: bash:%{_libdir}/libreadline.a
Version: 6.0
-Release: 9
+Release: 10
Requires: libreadline6 = %{version}
Requires: ncurses-devel
Recommends: readline-doc = %{version}
@@ -169,7 +169,7 @@
Provides: readline:%{_infodir}/readline.info.gz
PreReq: %install_info_prereq
Version: 6.0
-Release: 9
+Release: 10
AutoReqProv: on
%description -n readline-doc
@@ -268,7 +268,8 @@
cflags -ftree-loop-linear CFLAGS
cflags -pipe CFLAGS
cflags -Wl,--as-needed LDFLAGS
- cflags -Wl,-O,2 LDFLAGS
+ cflags -Wl,-O2 LDFLAGS
+ cflags -Wl,--hash-size=16699 LDFLAGS
CC=gcc
CC_FOR_BUILD="$CC"
CFLAGS_FOR_BUILD="$CFLAGS"
@@ -519,6 +520,8 @@
%doc %{_defaultdocdir}/readline/
%changelog
+* Mon May 11 2009 werne(a)suse.de
+- Increase size of hash table for runtime linker a lot
* Mon Apr 27 2009 werne(a)suse.de
- Add patches from mailing list:
* fix problem with invisible characters in prompt
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gcc44 for openSUSE:Factory
checked in at Fri May 15 17:02:22 CEST 2009.
--------
--- gcc44/cross-avr-gcc44.changes 2009-04-22 12:21:07.000000000 +0200
+++ /mounts/work_src_done/STABLE/gcc44/cross-avr-gcc44.changes 2009-05-15 16:31:33.000000000 +0200
@@ -1,0 +2,18 @@
+Fri May 15 16:13:57 CEST 2009 - rguenther(a)suse.de
+
+- Adjust cross specs and generation.
+
+-------------------------------------------------------------------
+Fri May 8 10:09:46 CEST 2009 - rguenther(a)suse.de
+
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+
+-------------------------------------------------------------------
+Thu May 7 16:29:11 CEST 2009 - rguenther(a)suse.de
+
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
+
+-------------------------------------------------------------------
cross-hppa-gcc-icecream-backend.changes: same change
cross-i386-gcc-icecream-backend.changes: same change
cross-ia64-gcc-icecream-backend.changes: same change
cross-ppc64-gcc-icecream-backend.changes: same change
cross-ppc-gcc-icecream-backend.changes: same change
cross-s390-gcc-icecream-backend.changes: same change
cross-s390x-gcc-icecream-backend.changes: same change
cross-spu-gcc.changes: same change
cross-spu-gcc-static.changes: same change
cross-x86_64-gcc-icecream-backend.changes: same change
gcc44.changes: same change
libgcj44.changes: same change
calling whatdependson for head-i586
Old:
----
gcc-4.4.0-20090421.tar.bz2
micro-cross.spec.in
New:
----
gcc-4.4.0-20090508.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cross-avr-gcc44.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-avr-gcc44 (Version 4.4.0_20090421)
+# spec file for package cross-avr-gcc44 (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -34,10 +34,14 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch avr
%if "avr" == "spu"
-%define build_cp 0
+%define build_fortran 1
+%endif
+%if 0%{?build_static:1}
+%define build_fortran 0
%endif
Name: cross-avr-gcc44
@@ -61,7 +65,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -375,12 +379,9 @@
%install
cd obj-%{GCCDIST}
make install DESTDIR=$RPM_BUILD_ROOT
-# ln -s avr-elf-gcc $RPM_BUILD_ROOT/%{_prefix}/bin/avr-gcc
-rm -rf $RPM_BUILD_ROOT/%{_prefix}/share
-rm $RPM_BUILD_ROOT/%{_libdir}/libiberty.a
-# The libgcc.a that is not inside an avr* subdirectory is for avr2.
-# rm $RPM_BUILD_ROOT/%{_libdir}/gcc/*/*/{libgcc.a,libgcov.a}
-rmdir $RPM_BUILD_ROOT/%{_prefix}/include
+rm -rf $RPM_BUILD_ROOT%{_prefix}/share
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/*-gccbug
+find $RPM_BUILD_ROOT -name libiberty.a | xargs rm
%clean
rm -rf $RPM_BUILD_ROOT
@@ -389,6 +390,15 @@
%defattr(-,root,root)
%{_prefix}
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-hppa-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-hppa-gcc-icecream-backend (Version 4.4.0_20090421)
+# spec file for package cross-hppa-gcc-icecream-backend (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,6 +25,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch hppa-linux
%define gcc_icecream 1
@@ -41,7 +42,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -406,6 +407,15 @@
/usr/share/icecream-envs
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-i386-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-i386-gcc-icecream-backend (Version 4.4.0_20090421)
+# spec file for package cross-i386-gcc-icecream-backend (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,6 +25,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch i386-linux
%define gcc_icecream 1
@@ -41,7 +42,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -406,6 +407,15 @@
/usr/share/icecream-envs
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-ia64-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-ia64-gcc-icecream-backend (Version 4.4.0_20090421)
+# spec file for package cross-ia64-gcc-icecream-backend (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,6 +25,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch ia64-linux
%define gcc_icecream 1
@@ -41,7 +42,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -406,6 +407,15 @@
/usr/share/icecream-envs
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-ppc64-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-ppc64-gcc-icecream-backend (Version 4.4.0_20090421)
+# spec file for package cross-ppc64-gcc-icecream-backend (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,6 +25,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch ppc64-linux
%define gcc_icecream 1
@@ -41,7 +42,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -406,6 +407,15 @@
/usr/share/icecream-envs
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-ppc-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-ppc-gcc-icecream-backend (Version 4.4.0_20090421)
+# spec file for package cross-ppc-gcc-icecream-backend (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,6 +25,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch ppc-linux
%define gcc_icecream 1
@@ -41,7 +42,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -406,6 +407,15 @@
/usr/share/icecream-envs
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-s390-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-s390-gcc-icecream-backend (Version 4.4.0_20090421)
+# spec file for package cross-s390-gcc-icecream-backend (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,6 +25,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch s390-linux
%define gcc_icecream 1
@@ -41,7 +42,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -406,6 +407,15 @@
/usr/share/icecream-envs
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-s390x-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-s390x-gcc-icecream-backend (Version 4.4.0_20090421)
+# spec file for package cross-s390x-gcc-icecream-backend (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,6 +25,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch s390x-linux
%define gcc_icecream 1
@@ -41,7 +42,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -406,6 +407,15 @@
/usr/share/icecream-envs
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-spu-gcc.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-spu-gcc (Version 4.4.0_20090421)
+# spec file for package cross-spu-gcc (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,10 +25,14 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch spu
%if "spu" == "spu"
-%define build_cp 0
+%define build_fortran 1
+%endif
+%if 0%{?build_static:1}
+%define build_fortran 0
%endif
Name: cross-spu-gcc
@@ -52,7 +56,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v2 or later
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -361,12 +365,9 @@
%install
cd obj-%{GCCDIST}
make install DESTDIR=$RPM_BUILD_ROOT
-# ln -s spu-elf-gcc $RPM_BUILD_ROOT/%{_prefix}/bin/spu-gcc
-rm -rf $RPM_BUILD_ROOT/%{_prefix}/share
-rm $RPM_BUILD_ROOT/%{_libdir}/libiberty.a
-# The libgcc.a that is not inside an avr* subdirectory is for avr2.
-# rm $RPM_BUILD_ROOT/%{_libdir}/gcc/*/*/{libgcc.a,libgcov.a}
-rmdir $RPM_BUILD_ROOT/%{_prefix}/include
+rm -rf $RPM_BUILD_ROOT%{_prefix}/share
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/*-gccbug
+find $RPM_BUILD_ROOT -name libiberty.a | xargs rm
%clean
rm -rf $RPM_BUILD_ROOT
@@ -375,6 +376,15 @@
%defattr(-,root,root)
%{_prefix}
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
cross-spu-gcc-static.spec: same change
++++++ cross-x86_64-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.4.0_20090421)
+# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -25,6 +25,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch x86_64-linux
%define gcc_icecream 1
@@ -41,7 +42,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -406,6 +407,15 @@
/usr/share/icecream-envs
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ gcc44.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:39.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package gcc44 (Version 4.4.0_20090421)
+# spec file for package gcc44 (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -27,7 +27,7 @@
%ifarch %ix86 x86_64 ppc s390 ia64
%define build_ada 0%{!?building_libjava:1}
%else
-# alpha ppc64 s390x hppa
+# alpha ppc64 s390x hppa arm
%define build_ada 0
%endif
# We don't want to build java on arm
@@ -52,7 +52,10 @@
%endif
Name: gcc44
-BuildRequires: bison cloog-devel flex gettext-devel glibc-devel-32bit mpfr-devel perl ppl-devel texinfo zlib-devel
+BuildRequires: bison flex gettext-devel glibc-devel-32bit mpfr-devel perl texinfo zlib-devel
+%ifarch %ix86 x86_64 ppc ppc64 s390 s390x ia64
+BuildRequires: cloog-devel ppl-devel
+%endif
%if %{build_ada}
%if %{suse_version} > 1120
%define hostsuffix -4.4
@@ -115,8 +118,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v3 or later
-Version: 4.4.0_20090421
-Release: 2
+Version: 4.4.0_20090508
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -2606,6 +2609,15 @@
%endif
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ libgcj44.spec ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:40.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:40.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package libgcj44 (Version 4.4.0_20090421)
+# spec file for package libgcj44 (Version 4.4.0_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -38,7 +38,7 @@
%ifarch %ix86 x86_64 ppc s390 ia64
%define build_ada 0%{!?building_libjava:1}
%else
-# alpha ppc64 s390x hppa
+# alpha ppc64 s390x hppa arm
%define build_ada 0
%endif
# We don't want to build java on arm
@@ -63,7 +63,10 @@
%endif
Name: libgcj44
-BuildRequires: bison cloog-devel flex gettext-devel glibc-devel-32bit mpfr-devel perl ppl-devel texinfo zlib-devel
+BuildRequires: bison flex gettext-devel glibc-devel-32bit mpfr-devel perl texinfo zlib-devel
+%ifarch %ix86 x86_64 ppc ppc64 s390 s390x ia64
+BuildRequires: cloog-devel ppl-devel
+%endif
%if %{build_ada}
%if %{suse_version} > 1120
%define hostsuffix -4.4
@@ -126,8 +129,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v2 or later; LGPL v2.1 or later
-Version: 4.4.0_20090421
-Release: 2
+Version: 4.4.0_20090508
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -1233,6 +1236,15 @@
%endif
%changelog
+* Fri May 15 2009 rguenther(a)suse.de
+- Adjust cross specs and generation.
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147285). [bnc#501751]
+- Disable GRAPHITE support for host architectures other than
+ %%ix86, x86_64, ppc, ppc64, s390, s390x and ia64.
+* Thu May 07 2009 rguenther(a)suse.de
+- Update to gcc-4_4-branch head (r147237).
+- Enable icecream backends and cross compilers.
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ cross-icecream.spec.in ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:40.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:40.000000000 +0200
@@ -18,6 +18,7 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch @cross_arch@-linux
%define gcc_icecream 1
++++++ cross.spec.in ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:40.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:40.000000000 +0200
@@ -30,11 +30,16 @@
%define build_objc 0
%define build_objcp 0
%define build_nof 0
+%define build_with_mudflap 0
%define gcc_for_opt 0
%define gcc_target_arch $cross_arch
%if "$cross_arch" == "spu"
-%define build_cp 0
+%define build_fortran 1
+%endif
+
+%if 0%{?build_static:1}
+%define build_fortran 0
%endif
Name: cross-$cross_arch-gcc$name_suffix
@@ -73,12 +78,9 @@
%install
cd obj-%{GCCDIST}
make install DESTDIR=\$RPM_BUILD_ROOT
-# ln -s $cross_arch-elf-gcc \$RPM_BUILD_ROOT/%{_prefix}/bin/$cross_arch-gcc
-rm -rf \$RPM_BUILD_ROOT/%{_prefix}/share
-rm \$RPM_BUILD_ROOT/%{_libdir}/libiberty.a
-# The libgcc.a that is not inside an avr* subdirectory is for avr2.
-# rm \$RPM_BUILD_ROOT/%{_libdir}/gcc/*/*/{libgcc.a,libgcov.a}
-rmdir \$RPM_BUILD_ROOT/%{_prefix}/include
+rm -rf \$RPM_BUILD_ROOT%{_prefix}/share
+rm -f \$RPM_BUILD_ROOT%{_prefix}/bin/*-gccbug
+find \$RPM_BUILD_ROOT -name libiberty.a | xargs rm
%clean
rm -rf \$RPM_BUILD_ROOT
++++++ gcc-4.4.0-20090421.tar.bz2 -> gcc-4.4.0-20090508.tar.bz2 ++++++
gcc44/gcc-4.4.0-20090421.tar.bz2 /mounts/work_src_done/STABLE/gcc44/gcc-4.4.0-20090508.tar.bz2 differ: byte 11, line 1
++++++ gcc.spec.in ++++++
--- /var/tmp/diff_new_pack.R22077/_old 2009-05-15 17:00:41.000000000 +0200
+++ /var/tmp/diff_new_pack.R22077/_new 2009-05-15 17:00:41.000000000 +0200
@@ -23,7 +23,7 @@
%ifarch %ix86 x86_64 ppc s390 ia64
%define build_ada 0%{!?building_libjava:1}
%else
-# alpha ppc64 s390x hppa
+# alpha ppc64 s390x hppa arm
%define build_ada 0
%endif
@@ -53,7 +53,10 @@
Name: gcc@base_ver@
-BuildRequires: bison flex gettext-devel glibc-devel-32bit mpfr-devel perl texinfo zlib-devel cloog-devel ppl-devel
+BuildRequires: bison flex gettext-devel glibc-devel-32bit mpfr-devel perl texinfo zlib-devel
+%ifarch %ix86 x86_64 ppc ppc64 s390 s390x ia64
+BuildRequires: cloog-devel ppl-devel
+%endif
%if %{build_ada}
%if %{suse_version} > 1120
%define hostsuffix -4.4
@@ -123,7 +126,7 @@
URL: http://gcc.gnu.org/
License: GPL
-Version: 4.4.0_20090421
+Version: 4.4.0_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gcc44 for openSUSE:Factory
checked in at Fri May 15 12:20:33 CEST 2009.
--------
New Changes file:
--- /dev/null 2009-04-14 11:58:14.000000000 +0200
+++ /mounts/work_src_done/STABLE/gcc44/cross-avr-gcc44.changes 2009-04-22 12:21:07.000000000 +0200
@@ -0,0 +1,174 @@
+-------------------------------------------------------------------
+Mon Apr 20 17:07:59 CEST 2009 - rguenther(a)suse.de
+
+- Update to GCC 4.4.0 release.
+
+-------------------------------------------------------------------
+Sat Apr 18 14:45:46 CEST 2009 - rguenther(a)suse.de
+
+- Adjust Ada BuildRequires check.
+
+-------------------------------------------------------------------
+Tue Apr 14 13:42:06 CEST 2009 - rguenther(a)suse.de
+
+- Update to GCC 4.4.0 RC1.
+
+-------------------------------------------------------------------
+Tue Mar 31 12:00:48 CEST 2009 - rguenther(a)suse.de
+
+- Update to gcc-4_4-branch head (r145337).
+- Switch to release-checking.
+
+-------------------------------------------------------------------
+Mon Mar 23 10:54:07 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r145004).
+
+-------------------------------------------------------------------
+Mon Mar 16 14:49:31 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r144881).
+
+-------------------------------------------------------------------
+Thu Feb 26 11:30:35 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r144446).
+- Updates classpath to 0.98 release. [bnc#457169]
+- Add patch for PR39272.
+
+-------------------------------------------------------------------
+Thu Feb 19 11:24:56 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r144292).
+
+-------------------------------------------------------------------
+Wed Feb 11 15:35:38 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r144122).
+- Enable LFS support for 32bit host binaries.
+- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
+
+-------------------------------------------------------------------
+Fri Feb 6 16:37:28 CET 2009 - rguenther(a)suse.de
+
+- Update baselibs.conf.
+
+-------------------------------------------------------------------
+Wed Feb 4 15:17:50 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r143983).
+- Forward-port -Wunprototyped-calls.
+
+-------------------------------------------------------------------
+Wed Jan 28 13:36:48 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (143725).
+- Add patch to fix PR38977.
+- Forward-port SUSE local changes from gcc43 package.
+
+-------------------------------------------------------------------
+Fri Jan 23 00:02:21 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (143577).
+
+-------------------------------------------------------------------
+Fri Jan 9 11:42:24 CET 2009 - rguenther(a)suse.de
+
+- Properly package x86intrin.h.
+
+-------------------------------------------------------------------
+Thu Jan 8 17:18:11 CET 2009 - rguenther(a)suse.de
+
+- Update to SVN trunk head (143188).
+
+-------------------------------------------------------------------
+Thu Dec 11 12:36:56 CET 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (142676).
+- Add build-id patch and patch to disable unwind tables for crtstuff.
+
+-------------------------------------------------------------------
+Thu Dec 4 18:05:23 CET 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (142437).
+
+-------------------------------------------------------------------
+Tue Nov 25 18:04:48 CET 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (142195).
+
+-------------------------------------------------------------------
+Tue Nov 25 14:03:03 CET 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r142190).
+- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
+
+-------------------------------------------------------------------
+Thu Nov 15 16:25:53 CET 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r141893).
+
+-------------------------------------------------------------------
+Thu Nov 6 16:25:53 CET 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r141645).
+- Bring forward some spec file changes from gcc43.
+
+-------------------------------------------------------------------
+Fri Oct 31 14:06:39 CET 2008 - rguenther(a)suse.de
+
+- Fix Ada multilibbing.
+- Fix updated classpath packaging.
+
+-------------------------------------------------------------------
+Thu Oct 30 22:18:07 CET 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r141467).
+
+-------------------------------------------------------------------
+Fri Sep 19 11:53:02 CEST 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r140485).
+
+-------------------------------------------------------------------
+Wed Sep 17 17:45:25 CEST 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r140419).
+
+-------------------------------------------------------------------
+Tue Sep 16 11:16:16 CEST 2008 - rguenther(a)suse.de
+
+- Add proper provides/obsoletes to shared library packages.
+
+-------------------------------------------------------------------
+Fri Sep 5 11:19:07 CEST 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r140030).
+- Fix GRAPHITE enablement.
+
+-------------------------------------------------------------------
+Wed Sep 3 13:54:17 CEST 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r139931).
+- Add ppl and cloog build dependencies to enable GRAPHITE.
+
+-------------------------------------------------------------------
+Fri Aug 29 10:57:30 CEST 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r139755).
+
+-------------------------------------------------------------------
+Tue Aug 19 18:47:37 CEST 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r139235).
+
+-------------------------------------------------------------------
+Sat Jul 19 14:06:37 CEST 2008 - rguenther(a)suse.de
+
+- Update to SVN trunk head (r137977).
+
+-------------------------------------------------------------------
+Wed Jun 11 15:20:35 CEST 2008 - rguenther(a)suse.de
+
+- New gcc44 package.
+
New Changes file:
cross-hppa-gcc-icecream-backend.changes: same change
New Changes file:
cross-i386-gcc-icecream-backend.changes: same change
New Changes file:
cross-ia64-gcc-icecream-backend.changes: same change
New Changes file:
cross-ppc64-gcc-icecream-backend.changes: same change
New Changes file:
cross-ppc-gcc-icecream-backend.changes: same change
New Changes file:
cross-s390-gcc-icecream-backend.changes: same change
New Changes file:
cross-s390x-gcc-icecream-backend.changes: same change
New Changes file:
cross-spu-gcc.changes: same change
New Changes file:
cross-spu-gcc-static.changes: same change
New Changes file:
cross-x86_64-gcc-icecream-backend.changes: same change
libgcj44.changes: same change
calling whatdependson for head-i586
New:
----
cross-avr-gcc44.changes
cross-avr-gcc44.spec
cross-hppa-gcc-icecream-backend.changes
cross-hppa-gcc-icecream-backend.spec
cross-i386-gcc-icecream-backend.changes
cross-i386-gcc-icecream-backend.spec
cross-ia64-gcc-icecream-backend.changes
cross-ia64-gcc-icecream-backend.spec
cross-ppc64-gcc-icecream-backend.changes
cross-ppc64-gcc-icecream-backend.spec
cross-ppc-gcc-icecream-backend.changes
cross-ppc-gcc-icecream-backend.spec
cross-s390-gcc-icecream-backend.changes
cross-s390-gcc-icecream-backend.spec
cross-s390x-gcc-icecream-backend.changes
cross-s390x-gcc-icecream-backend.spec
cross-spu-gcc.changes
cross-spu-gcc.spec
cross-spu-gcc-static.changes
cross-spu-gcc-static.spec
cross-x86_64-gcc-icecream-backend.changes
cross-x86_64-gcc-icecream-backend.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cross-avr-gcc44.spec ++++++
#
# spec file for package cross-avr-gcc44 (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_static 1
#
# spec file for package gcc (Version 4.0.1)
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
#
%define build_cp 1
%define build_ada 0
%define build_java 0
%define build_libjava 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch avr
%if "avr" == "spu"
%define build_cp 0
%endif
Name: cross-avr-gcc44
BuildRequires: bison flex mpfr-devel
BuildRequires: cross-avr-binutils
%if "avr44" == "spu-static"
BuildRequires: cross-avr-newlib-headers
%endif
%if "avr44" == "spu"
BuildRequires: cross-avr-newlib
Requires: cross-avr-newlib
%endif
Requires: cross-avr-binutils
# Suffixed gcc conflicts with unsuffixed gcc
%if "44" == ""
%else
Conflicts: cross-avr-gcc
%endif
%define _prefix /opt/cross
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler for atmel Processors
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
This compiler supports the C language on avr microprocessors. Also
install cross-avr-binutils and avr-libc.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
make %{?jobs:-j%jobs}
%install
cd obj-%{GCCDIST}
make install DESTDIR=$RPM_BUILD_ROOT
# ln -s avr-elf-gcc $RPM_BUILD_ROOT/%{_prefix}/bin/avr-gcc
rm -rf $RPM_BUILD_ROOT/%{_prefix}/share
rm $RPM_BUILD_ROOT/%{_libdir}/libiberty.a
# The libgcc.a that is not inside an avr* subdirectory is for avr2.
# rm $RPM_BUILD_ROOT/%{_libdir}/gcc/*/*/{libgcc.a,libgcov.a}
rmdir $RPM_BUILD_ROOT/%{_prefix}/include
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%{_prefix}
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-hppa-gcc-icecream-backend.spec ++++++
#
# spec file for package cross-hppa-gcc-icecream-backend (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch hppa-linux
%define gcc_icecream 1
Name: cross-hppa-gcc-icecream-backend
BuildRequires: cross-hppa-binutils glibc-devel-32bit
BuildRequires: gmp-devel mpfr-devel
BuildRequires: bison
BuildRequires: flex
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _binary_payload w.ufdio
# COMMON-BEGIN
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler and Support Files
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
will not be able to compile: binutils and glibc-devel.
Compiled with support for Ada, C, C++, Fortran77, Java, and
Objective-C.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
# COMMON-END
make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native"
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
BUILD_TARGET=%{TARGET_ARCH}
ORIG_TARGET=$BUILD_TARGET
# We play funny tricks with the ppc compiler. We want to have it biarch,
# which the powerpc compiler itself doesn't support. So we actually
# configure it as powerpc64 target compiler (i.e. a native cross compiler
# even on ppc), with the default code generation to be powerpc32.
# But this doesn't hide the fact that it's still a cross compiler which
# shows also in various paths
test "$BUILD_TARGET" = powerpc && BUILD_TARGET=powerpc64
make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common
# But the assembler comes from the cross-binutils, and hence is _not_
# named funnily, not even on ppc, so there we need the original target
install -s -D /opt/cross/bin/${ORIG_TARGET}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc
for back in cc1 cc1plus; do
install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \
$RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
done | sort -u `
for lib in $libs; do
# Check wether the same library also exists in the parent directory,
# and prefer that on the assumption that it is a more generic one.
baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'`
test -f "$baselib" && lib=$baselib
install -s -D $lib $RPM_BUILD_ROOT/env$lib
done
rm -rf $RPM_BUILD_ROOT/inst
cd $RPM_BUILD_ROOT/env
tar cvzf ../%{name}_%{_arch}.tar.gz *
cd ..
mkdir -p usr/share/icecream-envs
mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs
rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc
rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils
rm -r env
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/share/icecream-envs
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-i386-gcc-icecream-backend.spec ++++++
#
# spec file for package cross-i386-gcc-icecream-backend (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch i386-linux
%define gcc_icecream 1
Name: cross-i386-gcc-icecream-backend
BuildRequires: cross-i386-binutils glibc-devel-32bit
BuildRequires: gmp-devel mpfr-devel
BuildRequires: bison
BuildRequires: flex
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _binary_payload w.ufdio
# COMMON-BEGIN
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler and Support Files
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
will not be able to compile: binutils and glibc-devel.
Compiled with support for Ada, C, C++, Fortran77, Java, and
Objective-C.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
# COMMON-END
make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native"
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
BUILD_TARGET=%{TARGET_ARCH}
ORIG_TARGET=$BUILD_TARGET
# We play funny tricks with the ppc compiler. We want to have it biarch,
# which the powerpc compiler itself doesn't support. So we actually
# configure it as powerpc64 target compiler (i.e. a native cross compiler
# even on ppc), with the default code generation to be powerpc32.
# But this doesn't hide the fact that it's still a cross compiler which
# shows also in various paths
test "$BUILD_TARGET" = powerpc && BUILD_TARGET=powerpc64
make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common
# But the assembler comes from the cross-binutils, and hence is _not_
# named funnily, not even on ppc, so there we need the original target
install -s -D /opt/cross/bin/${ORIG_TARGET}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc
for back in cc1 cc1plus; do
install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \
$RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
done | sort -u `
for lib in $libs; do
# Check wether the same library also exists in the parent directory,
# and prefer that on the assumption that it is a more generic one.
baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'`
test -f "$baselib" && lib=$baselib
install -s -D $lib $RPM_BUILD_ROOT/env$lib
done
rm -rf $RPM_BUILD_ROOT/inst
cd $RPM_BUILD_ROOT/env
tar cvzf ../%{name}_%{_arch}.tar.gz *
cd ..
mkdir -p usr/share/icecream-envs
mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs
rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc
rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils
rm -r env
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/share/icecream-envs
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-ia64-gcc-icecream-backend.spec ++++++
#
# spec file for package cross-ia64-gcc-icecream-backend (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch ia64-linux
%define gcc_icecream 1
Name: cross-ia64-gcc-icecream-backend
BuildRequires: cross-ia64-binutils glibc-devel-32bit
BuildRequires: gmp-devel mpfr-devel
BuildRequires: bison
BuildRequires: flex
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _binary_payload w.ufdio
# COMMON-BEGIN
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler and Support Files
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
will not be able to compile: binutils and glibc-devel.
Compiled with support for Ada, C, C++, Fortran77, Java, and
Objective-C.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
# COMMON-END
make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native"
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
BUILD_TARGET=%{TARGET_ARCH}
ORIG_TARGET=$BUILD_TARGET
# We play funny tricks with the ppc compiler. We want to have it biarch,
# which the powerpc compiler itself doesn't support. So we actually
# configure it as powerpc64 target compiler (i.e. a native cross compiler
# even on ppc), with the default code generation to be powerpc32.
# But this doesn't hide the fact that it's still a cross compiler which
# shows also in various paths
test "$BUILD_TARGET" = powerpc && BUILD_TARGET=powerpc64
make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common
# But the assembler comes from the cross-binutils, and hence is _not_
# named funnily, not even on ppc, so there we need the original target
install -s -D /opt/cross/bin/${ORIG_TARGET}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc
for back in cc1 cc1plus; do
install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \
$RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
done | sort -u `
for lib in $libs; do
# Check wether the same library also exists in the parent directory,
# and prefer that on the assumption that it is a more generic one.
baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'`
test -f "$baselib" && lib=$baselib
install -s -D $lib $RPM_BUILD_ROOT/env$lib
done
rm -rf $RPM_BUILD_ROOT/inst
cd $RPM_BUILD_ROOT/env
tar cvzf ../%{name}_%{_arch}.tar.gz *
cd ..
mkdir -p usr/share/icecream-envs
mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs
rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc
rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils
rm -r env
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/share/icecream-envs
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-ppc64-gcc-icecream-backend.spec ++++++
#
# spec file for package cross-ppc64-gcc-icecream-backend (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch ppc64-linux
%define gcc_icecream 1
Name: cross-ppc64-gcc-icecream-backend
BuildRequires: cross-ppc64-binutils glibc-devel-32bit
BuildRequires: gmp-devel mpfr-devel
BuildRequires: bison
BuildRequires: flex
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _binary_payload w.ufdio
# COMMON-BEGIN
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler and Support Files
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
will not be able to compile: binutils and glibc-devel.
Compiled with support for Ada, C, C++, Fortran77, Java, and
Objective-C.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
# COMMON-END
make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native"
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
BUILD_TARGET=%{TARGET_ARCH}
ORIG_TARGET=$BUILD_TARGET
# We play funny tricks with the ppc compiler. We want to have it biarch,
# which the powerpc compiler itself doesn't support. So we actually
# configure it as powerpc64 target compiler (i.e. a native cross compiler
# even on ppc), with the default code generation to be powerpc32.
# But this doesn't hide the fact that it's still a cross compiler which
# shows also in various paths
test "$BUILD_TARGET" = powerpc && BUILD_TARGET=powerpc64
make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common
# But the assembler comes from the cross-binutils, and hence is _not_
# named funnily, not even on ppc, so there we need the original target
install -s -D /opt/cross/bin/${ORIG_TARGET}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc
for back in cc1 cc1plus; do
install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \
$RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
done | sort -u `
for lib in $libs; do
# Check wether the same library also exists in the parent directory,
# and prefer that on the assumption that it is a more generic one.
baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'`
test -f "$baselib" && lib=$baselib
install -s -D $lib $RPM_BUILD_ROOT/env$lib
done
rm -rf $RPM_BUILD_ROOT/inst
cd $RPM_BUILD_ROOT/env
tar cvzf ../%{name}_%{_arch}.tar.gz *
cd ..
mkdir -p usr/share/icecream-envs
mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs
rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc
rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils
rm -r env
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/share/icecream-envs
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-ppc-gcc-icecream-backend.spec ++++++
#
# spec file for package cross-ppc-gcc-icecream-backend (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch ppc-linux
%define gcc_icecream 1
Name: cross-ppc-gcc-icecream-backend
BuildRequires: cross-ppc-binutils glibc-devel-32bit
BuildRequires: gmp-devel mpfr-devel
BuildRequires: bison
BuildRequires: flex
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _binary_payload w.ufdio
# COMMON-BEGIN
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler and Support Files
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
will not be able to compile: binutils and glibc-devel.
Compiled with support for Ada, C, C++, Fortran77, Java, and
Objective-C.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
# COMMON-END
make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native"
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
BUILD_TARGET=%{TARGET_ARCH}
ORIG_TARGET=$BUILD_TARGET
# We play funny tricks with the ppc compiler. We want to have it biarch,
# which the powerpc compiler itself doesn't support. So we actually
# configure it as powerpc64 target compiler (i.e. a native cross compiler
# even on ppc), with the default code generation to be powerpc32.
# But this doesn't hide the fact that it's still a cross compiler which
# shows also in various paths
test "$BUILD_TARGET" = powerpc && BUILD_TARGET=powerpc64
make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common
# But the assembler comes from the cross-binutils, and hence is _not_
# named funnily, not even on ppc, so there we need the original target
install -s -D /opt/cross/bin/${ORIG_TARGET}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc
for back in cc1 cc1plus; do
install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \
$RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
done | sort -u `
for lib in $libs; do
# Check wether the same library also exists in the parent directory,
# and prefer that on the assumption that it is a more generic one.
baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'`
test -f "$baselib" && lib=$baselib
install -s -D $lib $RPM_BUILD_ROOT/env$lib
done
rm -rf $RPM_BUILD_ROOT/inst
cd $RPM_BUILD_ROOT/env
tar cvzf ../%{name}_%{_arch}.tar.gz *
cd ..
mkdir -p usr/share/icecream-envs
mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs
rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc
rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils
rm -r env
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/share/icecream-envs
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-s390-gcc-icecream-backend.spec ++++++
#
# spec file for package cross-s390-gcc-icecream-backend (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch s390-linux
%define gcc_icecream 1
Name: cross-s390-gcc-icecream-backend
BuildRequires: cross-s390-binutils glibc-devel-32bit
BuildRequires: gmp-devel mpfr-devel
BuildRequires: bison
BuildRequires: flex
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _binary_payload w.ufdio
# COMMON-BEGIN
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler and Support Files
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
will not be able to compile: binutils and glibc-devel.
Compiled with support for Ada, C, C++, Fortran77, Java, and
Objective-C.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
# COMMON-END
make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native"
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
BUILD_TARGET=%{TARGET_ARCH}
ORIG_TARGET=$BUILD_TARGET
# We play funny tricks with the ppc compiler. We want to have it biarch,
# which the powerpc compiler itself doesn't support. So we actually
# configure it as powerpc64 target compiler (i.e. a native cross compiler
# even on ppc), with the default code generation to be powerpc32.
# But this doesn't hide the fact that it's still a cross compiler which
# shows also in various paths
test "$BUILD_TARGET" = powerpc && BUILD_TARGET=powerpc64
make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common
# But the assembler comes from the cross-binutils, and hence is _not_
# named funnily, not even on ppc, so there we need the original target
install -s -D /opt/cross/bin/${ORIG_TARGET}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc
for back in cc1 cc1plus; do
install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \
$RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
done | sort -u `
for lib in $libs; do
# Check wether the same library also exists in the parent directory,
# and prefer that on the assumption that it is a more generic one.
baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'`
test -f "$baselib" && lib=$baselib
install -s -D $lib $RPM_BUILD_ROOT/env$lib
done
rm -rf $RPM_BUILD_ROOT/inst
cd $RPM_BUILD_ROOT/env
tar cvzf ../%{name}_%{_arch}.tar.gz *
cd ..
mkdir -p usr/share/icecream-envs
mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs
rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc
rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils
rm -r env
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/share/icecream-envs
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-s390x-gcc-icecream-backend.spec ++++++
#
# spec file for package cross-s390x-gcc-icecream-backend (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch s390x-linux
%define gcc_icecream 1
Name: cross-s390x-gcc-icecream-backend
BuildRequires: cross-s390x-binutils glibc-devel-32bit
BuildRequires: gmp-devel mpfr-devel
BuildRequires: bison
BuildRequires: flex
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _binary_payload w.ufdio
# COMMON-BEGIN
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler and Support Files
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
will not be able to compile: binutils and glibc-devel.
Compiled with support for Ada, C, C++, Fortran77, Java, and
Objective-C.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
# COMMON-END
make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native"
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
BUILD_TARGET=%{TARGET_ARCH}
ORIG_TARGET=$BUILD_TARGET
# We play funny tricks with the ppc compiler. We want to have it biarch,
# which the powerpc compiler itself doesn't support. So we actually
# configure it as powerpc64 target compiler (i.e. a native cross compiler
# even on ppc), with the default code generation to be powerpc32.
# But this doesn't hide the fact that it's still a cross compiler which
# shows also in various paths
test "$BUILD_TARGET" = powerpc && BUILD_TARGET=powerpc64
make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common
# But the assembler comes from the cross-binutils, and hence is _not_
# named funnily, not even on ppc, so there we need the original target
install -s -D /opt/cross/bin/${ORIG_TARGET}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc
for back in cc1 cc1plus; do
install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \
$RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
done | sort -u `
for lib in $libs; do
# Check wether the same library also exists in the parent directory,
# and prefer that on the assumption that it is a more generic one.
baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'`
test -f "$baselib" && lib=$baselib
install -s -D $lib $RPM_BUILD_ROOT/env$lib
done
rm -rf $RPM_BUILD_ROOT/inst
cd $RPM_BUILD_ROOT/env
tar cvzf ../%{name}_%{_arch}.tar.gz *
cd ..
mkdir -p usr/share/icecream-envs
mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs
rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc
rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils
rm -r env
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/share/icecream-envs
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-spu-gcc.spec ++++++
#
# spec file for package cross-spu-gcc (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_java 0
%define build_libjava 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch spu
%if "spu" == "spu"
%define build_cp 0
%endif
Name: cross-spu-gcc
BuildRequires: bison flex mpfr-devel
BuildRequires: cross-spu-binutils
%if "spu" == "spu-static"
BuildRequires: cross-spu-newlib-headers
%endif
%if "spu" == "spu"
BuildRequires: cross-spu-newlib
Requires: cross-spu-newlib
%endif
Requires: cross-spu-binutils
# Suffixed gcc conflicts with unsuffixed gcc
%if "" == ""
%else
Conflicts: cross-spu-gcc
%endif
%define _prefix /opt/cross
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v2 or later
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Libraries/Cross
AutoReqProv: on
Summary: The GNU C Compiler for Cell SPU Processors (shared)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
This compiler supports the C language on Cell SPU microprocessors.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
make %{?jobs:-j%jobs}
%install
cd obj-%{GCCDIST}
make install DESTDIR=$RPM_BUILD_ROOT
# ln -s spu-elf-gcc $RPM_BUILD_ROOT/%{_prefix}/bin/spu-gcc
rm -rf $RPM_BUILD_ROOT/%{_prefix}/share
rm $RPM_BUILD_ROOT/%{_libdir}/libiberty.a
# The libgcc.a that is not inside an avr* subdirectory is for avr2.
# rm $RPM_BUILD_ROOT/%{_libdir}/gcc/*/*/{libgcc.a,libgcov.a}
rmdir $RPM_BUILD_ROOT/%{_prefix}/include
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%{_prefix}
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-spu-gcc-static.spec ++++++
#
# spec file for package cross-spu-gcc-static (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_static 1
#
# spec file for package gcc (Version 4.0.1)
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
#
%define build_cp 1
%define build_ada 0
%define build_java 0
%define build_libjava 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch spu
%if "spu" == "spu"
%define build_cp 0
%endif
Name: cross-spu-gcc-static
BuildRequires: bison flex mpfr-devel
BuildRequires: cross-spu-binutils
%if "spu-static" == "spu-static"
BuildRequires: cross-spu-newlib-headers
%endif
%if "spu-static" == "spu"
BuildRequires: cross-spu-newlib
Requires: cross-spu-newlib
%endif
Requires: cross-spu-binutils
# Suffixed gcc conflicts with unsuffixed gcc
%if "-static" == ""
%else
Conflicts: cross-spu-gcc
%endif
%define _prefix /opt/cross
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v2 or later
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Libraries/Cross
AutoReqProv: on
Summary: The GNU C Compiler for Cell SPU Processors (static)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
This compiler supports the C language on Cell SPU microprocessors.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
make %{?jobs:-j%jobs}
%install
cd obj-%{GCCDIST}
make install DESTDIR=$RPM_BUILD_ROOT
# ln -s spu-elf-gcc $RPM_BUILD_ROOT/%{_prefix}/bin/spu-gcc
rm -rf $RPM_BUILD_ROOT/%{_prefix}/share
rm $RPM_BUILD_ROOT/%{_libdir}/libiberty.a
# The libgcc.a that is not inside an avr* subdirectory is for avr2.
# rm $RPM_BUILD_ROOT/%{_libdir}/gcc/*/*/{libgcc.a,libgcov.a}
rmdir $RPM_BUILD_ROOT/%{_prefix}/include
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%{_prefix}
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ cross-x86_64-gcc-icecream-backend.spec ++++++
#
# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.4.0_20090421)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define build_cp 1
%define build_ada 0
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_objc 0
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
%define gcc_target_arch x86_64-linux
%define gcc_icecream 1
Name: cross-x86_64-gcc-icecream-backend
BuildRequires: cross-x86_64-binutils glibc-devel-32bit
BuildRequires: gmp-devel mpfr-devel
BuildRequires: bison
BuildRequires: flex
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _binary_payload w.ufdio
# COMMON-BEGIN
# COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
Version: 4.4.0_20090421
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.4
# COMMON-END
# COMMON-BEGIN
Group: Development/Languages/C and C++
AutoReqProv: on
Summary: The GNU C Compiler and Support Files
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2
Source1: change_spec
Source2: libgcj44-rpmlintrc
Source3: gcc44-rpmlintrc
Source4: ecj.jar
Source5: README.First-for.SuSE.packagers
Patch1: gcc-dir-version.patch
Patch2: gcc-sles-version.patch
Patch3: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch6: suse-record-gcc-opts.diff
Patch7: acats-timeout.patch
Patch8: Wunprototyped-calls.diff
Patch9: gcc44-lfs.diff
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
Patch24: tls-no-direct.diff
Patch25: pr27880.diff
Patch28: pr33763.diff
Patch29: build-id.diff
Patch30: gcc43-no-unwind-tables.diff
# A set of patches from the RH srpm
Patch51: gcc41-ia64-stack-protector.patch
Patch55: gcc41-java-slow_pthread_self.patch
Patch57: gcc41-ppc32-retaddr.patch
# Some patches taken from Debian
Patch60: gcc44-textdomain.patch
Patch61: gcc44-rename-info-files.patch
# Patches for SAP features
Patch130: sap303956-uchar.diff
# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
will not be able to compile: binutils and glibc-devel.
Compiled with support for Ada, C, C++, Fortran77, Java, and
Objective-C.
Authors:
--------
The GCC team.
%if 0%{?gcc_target_arch:1}
%define CONFIGURE_TARGET %{gcc_target_arch}
%define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
%define CONFIGURE_TARGET powerpc64-linux
%endif
%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
%define CONFIGURE_TARGET i586-linux
%endif
%else
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%endif
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
%define GCCDIST %{HOST_ARCH}-suse-linux
%endif
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
# COMMON-END
# COMMON-BEGIN
%prep
%setup -q -n gcc-%{gcc_version}%{snapshot_date}
%patch1
%patch2
%patch3
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%if !%{build_nof}
%patch12
%endif
%patch23
%patch24
%patch25
%patch28
%if 0%{suse_version} > 1100
%patch29
%endif
%patch30
%patch51
%patch55
%patch57
%patch60
%patch61
%patch130
%build
# Avoid rebuilding of generated files
contrib/gcc_update --touch
# Split version file into version used for directories (X.Y) and
# version to report with --version (X.Y.Z).
# See also gcc-dir-version.patch.
# Also decrement the patchlevel version by one
if test `cat gcc/DEV-PHASE` == "prerelease"; then
( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
else
mv gcc/BASE-VER gcc/FULL-VER
fi
cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
rm -rf obj-%{GCCDIST}
mkdir obj-%{GCCDIST}
cd obj-%{GCCDIST}
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
%ifarch %ix86
# -mcpu is superceded by -mtune but -mtune is not supported by
# our bootstrap compiler. -mcpu gives a warning that stops
# the build process, so remove it for now. Also remove all other
# -march and -mtune flags. They are superseeded by proper
# default compiler settings now.
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
%endif
%ifarch s390 s390x
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
%endif
%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
# Kill all -march/tune/cpu because that screws building the target libs
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
%endif
# Replace 2 spaces by one finally
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
languages=c
%if %{build_cp}
languages=$languages,c++
%endif
%if %{build_objc}
languages=$languages,objc
%endif
%if %{build_fortran}
languages=$languages,fortran
%endif
%if %{build_objcp}
languages=$languages,obj-c++
%endif
%if %{build_java}
languages=$languages,java
%endif
%if %{build_ada}
languages=$languages,ada
%endif
J=%{?jobs:%jobs}
if test -z "$J"; then
J=$(getconf _NPROCESSORS_CONF)
JL=$(($J * 2))
else
test 1 -gt "$J" && J=1
JL=$(($(getconf _NPROCESSORS_CONF)*2))
fi
if test "$J" == "0"; then
J=1
fi
if test "$JL" == "0"; then
JL=1
fi
PARALLEL="-j$J -l$JL"
# we don't want some miscompiles in the testsuite, or some fault in
# the compiler to kill the machine. Hence we limit the amount of memory
# by the physical RAM plus half of swap
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
#ulimit -v $(((MEM + SWAP/2)*1024))
# In general we want to ship release checking enabled compilers
# and run BETA with checking enabled.
#ENABLE_CHECKING="--enable-checking=yes"
ENABLE_CHECKING="--enable-checking=release"
%if "%{name}" != "gcc44"
export PATH=/opt/cross/bin:$PATH
%endif
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
# configure tries to parse include/features.h to detect
# if glibc supports SSP. When cross compiling we would need
# to install a cross glibc, which we don't, or make the whole
# thing point to the native glibc, which is in /, hence the
# --with-sysroot=/
%if %{build_ada}
# Using the host gnatmake like
# CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
# GNATMAKE="gnatmake%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
ln -sf /usr/%{_lib} host-tools/%{_lib}
export PATH="`pwd`/host-tools/bin:$PATH"
%endif
#%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
#%else
# --enable-threads=posix \
#%endif
# --enable-shared \
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
--prefix=%{_prefix} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--libdir=%{_libdir} \
--libexecdir=%{_libdir} \
--enable-languages=$languages \
$ENABLE_CHECKING \
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
--enable-ssp \
--disable-libssp \
--with-bugurl="http://bugs.opensuse.org/" \
--with-pkgversion="SUSE Linux" \
%if !%{build_libjava}
--disable-libgcj \
%else
--with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
%if !%{biarch_libjava}
--disable-libjava-multilib \
%endif
%endif
%if !%{build_with_mudflap}
--disable-libmudflap \
%endif
--with-slibdir=/%{_lib} \
--with-system-zlib \
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--disable-libstdcxx-pch \
--enable-version-specific-runtime-libs \
%if 0%{?gcc_target_arch:1}
%if 0%{?gcc_icecream:1}
--with-as=/opt/cross/%{TARGET_ARCH}-linux/bin/as \
--with-ld=/opt/cross/%{TARGET_ARCH}-linux/bin/ld \
--with-sysroot=/ \
--enable-linux-futex \
%endif
%if 0%{?build_static:1}
--disable-shared \
%endif
%if "%{TARGET_ARCH}" == "spu"
--with-sysroot=/usr/spu \
--with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
--with-newlib \
%endif
--disable-nls \
--target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-linux-futex \
%ifarch ia64
--with-system-libunwind \
%else
--without-system-libunwind \
%endif
%endif
%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "powerpc64"
--with-cpu=power4 \
--enable-secureplt \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "i586"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "x86_64"
--with-arch-32=i586 \
--with-tune=generic \
%endif
%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z10 --with-arch=z9-109 \
--with-long-double-128 \
%endif
--build=%{GCCDIST}
# COMMON-END
# COMMON-END
make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native"
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
BUILD_TARGET=%{TARGET_ARCH}
ORIG_TARGET=$BUILD_TARGET
# We play funny tricks with the ppc compiler. We want to have it biarch,
# which the powerpc compiler itself doesn't support. So we actually
# configure it as powerpc64 target compiler (i.e. a native cross compiler
# even on ppc), with the default code generation to be powerpc32.
# But this doesn't hide the fact that it's still a cross compiler which
# shows also in various paths
test "$BUILD_TARGET" = powerpc && BUILD_TARGET=powerpc64
make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common
# But the assembler comes from the cross-binutils, and hence is _not_
# named funnily, not even on ppc, so there we need the original target
install -s -D /opt/cross/bin/${ORIG_TARGET}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc
for back in cc1 cc1plus; do
install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \
$RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
done | sort -u `
for lib in $libs; do
# Check wether the same library also exists in the parent directory,
# and prefer that on the assumption that it is a more generic one.
baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'`
test -f "$baselib" && lib=$baselib
install -s -D $lib $RPM_BUILD_ROOT/env$lib
done
rm -rf $RPM_BUILD_ROOT/inst
cd $RPM_BUILD_ROOT/env
tar cvzf ../%{name}_%{_arch}.tar.gz *
cd ..
mkdir -p usr/share/icecream-envs
mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs
rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc
rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils
rm -r env
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/share/icecream-envs
%changelog
* Mon Apr 20 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 release.
* Sat Apr 18 2009 rguenther(a)suse.de
- Adjust Ada BuildRequires check.
* Tue Apr 14 2009 rguenther(a)suse.de
- Update to GCC 4.4.0 RC1.
* Tue Mar 31 2009 rguenther(a)suse.de
- Update to gcc-4_4-branch head (r145337).
- Switch to release-checking.
* Mon Mar 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (r145004).
* Mon Mar 16 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144881).
* Thu Feb 26 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144446).
- Updates classpath to 0.98 release. [bnc#457169]
- Add patch for PR39272.
* Thu Feb 19 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144292).
* Wed Feb 11 2009 rguenther(a)suse.de
- Update to SVN trunk head (r144122).
- Enable LFS support for 32bit host binaries.
- Set default cpu and tuning for x86_64 and ix86. Filter RPM_OPT_FLAGS.
* Fri Feb 06 2009 rguenther(a)suse.de
- Update baselibs.conf.
* Wed Feb 04 2009 rguenther(a)suse.de
- Update to SVN trunk head (r143983).
- Forward-port -Wunprototyped-calls.
* Wed Jan 28 2009 rguenther(a)suse.de
- Update to SVN trunk head (143725).
- Add patch to fix PR38977.
- Forward-port SUSE local changes from gcc43 package.
* Fri Jan 23 2009 rguenther(a)suse.de
- Update to SVN trunk head (143577).
* Fri Jan 09 2009 rguenther(a)suse.de
- Properly package x86intrin.h.
* Thu Jan 08 2009 rguenther(a)suse.de
- Update to SVN trunk head (143188).
* Thu Dec 11 2008 rguenther(a)suse.de
- Update to SVN trunk head (142676).
- Add build-id patch and patch to disable unwind tables for crtstuff.
* Thu Dec 04 2008 rguenther(a)suse.de
- Update to SVN trunk head (142437).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (142195).
* Tue Nov 25 2008 rguenther(a)suse.de
- Update to SVN trunk head (r142190).
- Install new immintrin.h and avxintrin.h files, remove gmmintrin.h.
* Sat Nov 15 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141893).
* Thu Nov 06 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141645).
- Bring forward some spec file changes from gcc43.
* Fri Oct 31 2008 rguenther(a)suse.de
- Fix Ada multilibbing.
- Fix updated classpath packaging.
* Thu Oct 30 2008 rguenther(a)suse.de
- Update to SVN trunk head (r141467).
* Fri Sep 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140485).
* Wed Sep 17 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140419).
* Tue Sep 16 2008 rguenther(a)suse.de
- Add proper provides/obsoletes to shared library packages.
* Fri Sep 05 2008 rguenther(a)suse.de
- Update to SVN trunk head (r140030).
- Fix GRAPHITE enablement.
* Wed Sep 03 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139931).
- Add ppl and cloog build dependencies to enable GRAPHITE.
* Fri Aug 29 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139755).
* Tue Aug 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r139235).
* Sat Jul 19 2008 rguenther(a)suse.de
- Update to SVN trunk head (r137977).
* Wed Jun 11 2008 rguenther(a)suse.de
- New gcc44 package.
++++++ gcc44.spec ++++++
--- /var/tmp/diff_new_pack.W29290/_old 2009-05-15 12:19:22.000000000 +0200
+++ /var/tmp/diff_new_pack.W29290/_new 2009-05-15 12:19:22.000000000 +0200
@@ -116,7 +116,7 @@
Url: http://gcc.gnu.org/
License: GPL v3 or later
Version: 4.4.0_20090421
-Release: 1
+Release: 2
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
++++++ libgcj44.spec ++++++
--- /var/tmp/diff_new_pack.W29290/_old 2009-05-15 12:19:23.000000000 +0200
+++ /var/tmp/diff_new_pack.W29290/_new 2009-05-15 12:19:23.000000000 +0200
@@ -127,7 +127,7 @@
Url: http://gcc.gnu.org/
License: GPL v2 or later; LGPL v2.1 or later
Version: 4.4.0_20090421
-Release: 1
+Release: 2
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
++++++ change_spec ++++++
--- /var/tmp/diff_new_pack.W29290/_old 2009-05-15 12:19:23.000000000 +0200
+++ /var/tmp/diff_new_pack.W29290/_new 2009-05-15 12:19:23.000000000 +0200
@@ -1,8 +1,8 @@
#!/bin/bash
-do_icecream=0
-do_cross_static=0
-do_cross_shared=0
+do_icecream=1
+do_cross_static=1
+do_cross_shared=1
rm -f gcc*.spec cross*.spec cross*.changes
# Default is to generate the normal gcc package
@@ -83,7 +83,7 @@
# avr is static but wants the non-static versioned name
if test "$do_cross_static" = 1 ; then
echo '%define build_static 1' > cross-avr-gcc$base_ver.spec
- cross_arch=avr name_suffix="43" sh cross.spec.in >> cross-avr-gcc$base_ver.spec
+ cross_arch=avr name_suffix="44" sh cross.spec.in >> cross-avr-gcc$base_ver.spec
test -f gcc*.changes && ln -f gcc*.changes cross-avr-gcc$base_ver.changes
fi
if test "$do_cross_shared" = 1 ; then
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gmp for openSUSE:Factory
checked in at Fri May 15 12:10:43 CEST 2009.
--------
--- gmp/gmp.changes 2009-04-15 11:12:23.000000000 +0200
+++ /mounts/work_src_done/STABLE/gmp/gmp.changes 2009-05-12 13:14:34.000000000 +0200
@@ -1,0 +2,13 @@
+Tue May 12 13:00:14 CEST 2009 - rguenther(a)suse.de
+
+- Update to bugfix release GMP 4.3.1.
+ * Fixed bug in mpn_gcdext, affecting also mpz_gcdext and mpz_invert.
+ * Fixed some minor documentation issues.
+ * Recognise more IBM "POWER" processor variants.
+
+-------------------------------------------------------------------
+Sat May 9 18:56:46 CEST 2009 - rguenther(a)suse.de
+
+- Fix baselibs.conf wrt package split. [bnc#501465]
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
gmp-4.3.0.tar.bz2
New:
----
gmp-4.3.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gmp.spec ++++++
--- /var/tmp/diff_new_pack.SJ9368/_old 2009-05-15 12:10:00.000000000 +0200
+++ /var/tmp/diff_new_pack.SJ9368/_new 2009-05-15 12:10:00.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package gmp (Version 4.3.0)
+# spec file for package gmp (Version 4.3.1)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -28,8 +28,8 @@
Obsoletes: gmp-64bit
%endif
#
-Version: 4.3.0
-Release: 2
+Version: 4.3.1
+Release: 1
Summary: The GNU MP Library
Url: http://gmplib.org/
Source: gmp-%{version}.tar.bz2
@@ -124,14 +124,14 @@
#%ifarch x86_64 x86
# --enable-fat \
#%endif
-CFLAGS="$RPM_OPT_FLAGS -fexceptions -Wall" \
+CFLAGS="$RPM_OPT_FLAGS -fexceptions" \
./configure --prefix=/usr \
--libdir=%{_libdir} \
--infodir=%{_infodir} \
--build=%{_target_platform} \
--disable-mpfr \
--enable-cxx
-make CFLAGS="$RPM_OPT_FLAGS -fexceptions -Wall" %{?jobs:-j%jobs}
+make CFLAGS="$RPM_OPT_FLAGS -fexceptions" %{?jobs:-j%jobs}
%check
# do not disable "make check", FIX THE BUGS!
@@ -180,6 +180,13 @@
/usr/include/gmpxx.h
%changelog
+* Tue May 12 2009 rguenther(a)suse.de
+- Update to bugfix release GMP 4.3.1.
+ * Fixed bug in mpn_gcdext, affecting also mpz_gcdext and mpz_invert.
+ * Fixed some minor documentation issues.
+ * Recognise more IBM "POWER" processor variants.
+* Sat May 09 2009 rguenther(a)suse.de
+- Fix baselibs.conf wrt package split. [bnc#501465]
* Wed Apr 15 2009 rguenther(a)suse.de
- Update to version 4.3.0.
* Speedups all over the board
++++++ baselibs.conf ++++++
--- /var/tmp/diff_new_pack.SJ9368/_old 2009-05-15 12:10:00.000000000 +0200
+++ /var/tmp/diff_new_pack.SJ9368/_new 2009-05-15 12:10:00.000000000 +0200
@@ -1,3 +1,9 @@
+targettype x86 package libgmp3
+ obsoletes "gmp-<targettype>"
libgmp3
+ obsoletes "gmp-<targettype>"
libgmpxx4
gmp-devel
+ requires -gmp-<targettype>
+ requires "libgmp3-<targettype> = <version>"
+ requires "libgmpxx4-<targettype> = <version>"
++++++ gmp-4.3.0.tar.bz2 -> gmp-4.3.1.tar.bz2 ++++++
++++ 3555 lines of diff (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package elfutils for openSUSE:Factory
checked in at Fri May 15 12:08:23 CEST 2009.
--------
--- elfutils/elfutils.changes 2009-02-19 16:48:36.000000000 +0100
+++ /mounts/work_src_done/STABLE/elfutils/elfutils.changes 2009-04-29 17:51:24.000000000 +0200
@@ -1,0 +2,14 @@
+Wed Apr 29 17:49:28 CEST 2009 - tiwai(a)suse.de
+
+- updated to 0.141:
+ - libebl: sparc backend fixes
+ some more arm backend support
+ - libdwfl: fix dwfl_module_build_id for prelinked DSO case
+ fixes in core file support dwfl_module_getsym interface
+ improved for non-address symbols
+ - eu-strip: fix infinite loop on strange inputs with -f
+ - eu-addr2line: take -j/--section=NAME option for binutils
+ compatibility (same effect as '(NAME)0x123' syntax already
+ supported)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
elfutils-0.140-no-osl.tar.bz2
New:
----
elfutils-0.141-no-osl.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ elfutils.spec ++++++
--- /var/tmp/diff_new_pack.v28015/_old 2009-05-15 12:07:23.000000000 +0200
+++ /var/tmp/diff_new_pack.v28015/_new 2009-05-15 12:07:23.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package elfutils (Version 0.140)
+# spec file for package elfutils (Version 0.141)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -20,7 +20,7 @@
Name: elfutils
License: GPL v2 or later
-Version: 0.140
+Version: 0.141
Release: 1
Summary: Higher-level library to access ELF
Group: System/Libraries
@@ -294,6 +294,17 @@
%{_includedir}/elfutils/libdwfl.h
%changelog
+* Wed Apr 29 2009 tiwai(a)suse.de
+- updated to 0.141:
+ - libebl: sparc backend fixes
+ some more arm backend support
+ - libdwfl: fix dwfl_module_build_id for prelinked DSO case
+ fixes in core file support dwfl_module_getsym interface
+ improved for non-address symbols
+ - eu-strip: fix infinite loop on strange inputs with -f
+ - eu-addr2line: take -j/--section=NAME option for binutils
+ compatibility (same effect as '(NAME)0x123' syntax already
+ supported)
* Thu Feb 19 2009 tiwai(a)suse.de
- Update to 0.139
- libcpu: Add Intel SSE4 disassembler support
++++++ elfutils-0.137-dwarf-header-check-fix.diff ++++++
--- /var/tmp/diff_new_pack.v28015/_old 2009-05-15 12:07:23.000000000 +0200
+++ /var/tmp/diff_new_pack.v28015/_new 2009-05-15 12:07:23.000000000 +0200
@@ -1,8 +1,10 @@
-diff --git a/libdw/dwarf_getsrclines.c b/libdw/dwarf_getsrclines.c
-index 9b3c97a..54c17f8 100644
+---
+ libdw/dwarf_getsrclines.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
--- a/libdw/dwarf_getsrclines.c
+++ b/libdw/dwarf_getsrclines.c
-@@ -337,8 +337,11 @@ dwarf_getsrclines (Dwarf_Die *cudie, Dwarf_Lines **lines, size_t *nlines)
+@@ -337,8 +337,10 @@
/* Consistency check. */
if (unlikely (linep != header_start + header_length))
{
@@ -10,7 +12,6 @@
__libdw_seterrno (DWARF_E_INVALID_DWARF);
goto out;
+#endif
-+ linep = header_start + header_length;
}
/* We are about to process the statement program. Initialize the
++++++ elfutils-0.140-no-osl.tar.bz2 -> elfutils-0.141-no-osl.tar.bz2 ++++++
++++ 9154 lines of diff (skipped)
++++++ elfutils-portability.patch ++++++
++++ 862 lines (skipped)
++++ between elfutils/elfutils-portability.patch
++++ and /mounts/work_src_done/STABLE/elfutils/elfutils-portability.patch
++++++ elfutils-robustify.patch ++++++
--- /var/tmp/diff_new_pack.v28015/_old 2009-05-15 12:07:25.000000000 +0200
+++ /var/tmp/diff_new_pack.v28015/_new 2009-05-15 12:07:25.000000000 +0200
@@ -1,6 +1,6 @@
--- elfutils/libelf/ChangeLog
+++ elfutils/libelf/ChangeLog
-@@ -521,6 +521,49 @@
+@@ -529,6 +529,49 @@
If section content hasn't been read yet, do it before looking for the
block size. If no section data present, infer size of section header.
@@ -792,7 +792,7 @@
#endif /* libelfP.h */
--- elfutils/src/ChangeLog
+++ elfutils/src/ChangeLog
-@@ -1347,6 +1347,16 @@
+@@ -1376,6 +1376,16 @@
object symbols or symbols with unknown type.
(check_rel): Likewise.
@@ -809,7 +809,7 @@
2005-06-08 Roland McGrath <roland(a)redhat.com>
* readelf.c (print_ops): Add consts.
-@@ -1392,6 +1402,19 @@
+@@ -1421,6 +1431,19 @@
* readelf.c (dwarf_tag_string): Add new tags.
@@ -1298,7 +1298,7 @@
if (extrastr != NULL)
fputs (extrastr, stdout);
-@@ -4104,6 +4134,16 @@ print_debug_aranges_section (Dwfl_Module
+@@ -4107,6 +4137,16 @@ print_debug_aranges_section (Dwfl_Module
return;
}
@@ -1451,7 +1451,7 @@
/* Mark the section as investigated. */
shdr_info[cnt].idx = 2;
-@@ -954,7 +978,7 @@ handle_elf (int fd, Elf *elf, const char
+@@ -955,7 +979,7 @@ handle_elf (int fd, Elf *elf, const char
error (EXIT_FAILURE, 0, gettext ("while generating output file: %s"),
elf_errmsg (-1));
@@ -1460,7 +1460,7 @@
/* Add this name to the section header string table. */
shdr_info[cnt].se = ebl_strtabadd (shst, shdr_info[cnt].name, 0);
-@@ -991,7 +1015,7 @@ handle_elf (int fd, Elf *elf, const char
+@@ -992,7 +1016,7 @@ handle_elf (int fd, Elf *elf, const char
error (EXIT_FAILURE, 0,
gettext ("while create section header section: %s"),
elf_errmsg (-1));
@@ -1469,7 +1469,7 @@
shdr_info[cnt].data = elf_newdata (shdr_info[cnt].newscn);
if (shdr_info[cnt].data == NULL)
-@@ -1047,7 +1071,7 @@ handle_elf (int fd, Elf *elf, const char
+@@ -1048,7 +1072,7 @@ handle_elf (int fd, Elf *elf, const char
error (EXIT_FAILURE, 0,
gettext ("while create section header section: %s"),
elf_errmsg (-1));
@@ -1478,7 +1478,7 @@
/* Finalize the string table and fill in the correct indices in the
section headers. */
-@@ -1137,20 +1161,20 @@ handle_elf (int fd, Elf *elf, const char
+@@ -1138,20 +1162,20 @@ handle_elf (int fd, Elf *elf, const char
shndxdata = elf_getdata (shdr_info[shdr_info[cnt].symtab_idx].scn,
NULL);
@@ -1502,7 +1502,7 @@
>= shdr_info[cnt].data->d_size / elsize);
}
-@@ -1205,7 +1229,7 @@ handle_elf (int fd, Elf *elf, const char
+@@ -1206,7 +1230,7 @@ handle_elf (int fd, Elf *elf, const char
sec = shdr_info[sym->st_shndx].idx;
else
{
@@ -1511,7 +1511,7 @@
sec = shdr_info[xshndx].idx;
}
-@@ -1226,7 +1250,7 @@ handle_elf (int fd, Elf *elf, const char
+@@ -1227,7 +1251,7 @@ handle_elf (int fd, Elf *elf, const char
nxshndx = sec;
}
@@ -1520,7 +1520,7 @@
if ((inner != destidx || nshndx != sym->st_shndx
|| (shndxdata != NULL && nxshndx != xshndx))
-@@ -1250,7 +1274,7 @@ handle_elf (int fd, Elf *elf, const char
+@@ -1251,7 +1275,7 @@ handle_elf (int fd, Elf *elf, const char
|| shdr_info[cnt].debug_data == NULL)
/* This is a section symbol for a section which has
been removed. */
@@ -1529,7 +1529,7 @@
}
if (destidx != inner)
-@@ -1437,11 +1461,11 @@ handle_elf (int fd, Elf *elf, const char
+@@ -1438,11 +1462,11 @@ handle_elf (int fd, Elf *elf, const char
{
GElf_Sym sym_mem;
GElf_Sym *sym = gelf_getsym (symd, inner, &sym_mem);
@@ -1543,7 +1543,7 @@
size_t hidx = elf_hash (name) % nbucket;
if (bucket[hidx] == 0)
-@@ -1460,7 +1484,7 @@ handle_elf (int fd, Elf *elf, const char
+@@ -1461,7 +1485,7 @@ handle_elf (int fd, Elf *elf, const char
else
{
/* Alpha and S390 64-bit use 64-bit SHT_HASH entries. */
@@ -1552,7 +1552,7 @@
== sizeof (Elf64_Xword));
Elf64_Xword *bucket = (Elf64_Xword *) hashd->d_buf;
-@@ -1491,11 +1515,11 @@ handle_elf (int fd, Elf *elf, const char
+@@ -1492,11 +1516,11 @@ handle_elf (int fd, Elf *elf, const char
{
GElf_Sym sym_mem;
GElf_Sym *sym = gelf_getsym (symd, inner, &sym_mem);
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gcc43 for openSUSE:Factory
checked in at Fri May 15 12:05:15 CEST 2009.
--------
--- gcc43/gcc43.changes 2009-04-21 11:00:33.000000000 +0200
+++ /mounts/work_src_done/STABLE/gcc43/gcc43.changes 2009-05-08 14:13:33.000000000 +0200
@@ -1,0 +2,6 @@
+Fri May 8 13:51:19 CEST 2009 - rguenther(a)suse.de
+
+- Update to gcc-4_3-branch head (r147281).
+- Disable cross compiler spec file generation.
+
+-------------------------------------------------------------------
libgcj43.changes: same change
calling whatdependson for head-i586
Old:
----
cross-avr-gcc43.changes
cross-avr-gcc43.spec
cross-hppa-gcc-icecream-backend.changes
cross-hppa-gcc-icecream-backend.spec
cross-i386-gcc-icecream-backend.changes
cross-i386-gcc-icecream-backend.spec
cross-ia64-gcc-icecream-backend.changes
cross-ia64-gcc-icecream-backend.spec
cross-ppc64-gcc-icecream-backend.changes
cross-ppc64-gcc-icecream-backend.spec
cross-ppc-gcc-icecream-backend.changes
cross-ppc-gcc-icecream-backend.spec
cross-s390-gcc-icecream-backend.changes
cross-s390-gcc-icecream-backend.spec
cross-s390x-gcc-icecream-backend.changes
cross-s390x-gcc-icecream-backend.spec
cross-spu-gcc.changes
cross-spu-gcc.spec
cross-spu-gcc-static.changes
cross-spu-gcc-static.spec
cross-x86_64-gcc-icecream-backend.changes
cross-x86_64-gcc-icecream-backend.spec
gcc-4.3.3-20090316.tar.bz2
pr39175.diff
New:
----
gcc-4.3.3-20090508.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gcc43.spec ++++++
--- /var/tmp/diff_new_pack.lD8240/_old 2009-05-15 12:01:52.000000000 +0200
+++ /var/tmp/diff_new_pack.lD8240/_new 2009-05-15 12:01:52.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package gcc43 (Version 4.3.3_20090316)
+# spec file for package gcc43 (Version 4.3.3_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -115,8 +115,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v3 or later
-Version: 4.3.3_20090316
-Release: 2
+Version: 4.3.3_20090508
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -172,7 +172,6 @@
Patch46: pr32277.diff
Patch47: gcc43-as-g0
Patch202: nvl440482.patch
-Patch203: pr39175.diff
Patch204: pr39675.diff
# A set of patches from the RH srpm
Patch50: gcc43-c++-builtin-redecl.patch
@@ -1457,7 +1456,6 @@
%patch46
%patch47
%patch202
-%patch203
%patch204
%patch50
%patch51
@@ -2648,6 +2646,9 @@
%endif
%changelog
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_3-branch head (r147281).
+- Disable cross compiler spec file generation.
* Mon Apr 20 2009 rguenther(a)suse.de
- Add patch for PR39675. [bnc#492696]
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ libgcj43.spec ++++++
--- /var/tmp/diff_new_pack.lD8240/_old 2009-05-15 12:01:52.000000000 +0200
+++ /var/tmp/diff_new_pack.lD8240/_new 2009-05-15 12:01:52.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package libgcj43 (Version 4.3.3_20090316)
+# spec file for package libgcj43 (Version 4.3.3_20090508)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -126,8 +126,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v2 or later; LGPL v2.1 or later
-Version: 4.3.3_20090316
-Release: 2
+Version: 4.3.3_20090508
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -183,7 +183,6 @@
Patch46: pr32277.diff
Patch47: gcc43-as-g0
Patch202: nvl440482.patch
-Patch203: pr39175.diff
Patch204: pr39675.diff
# A set of patches from the RH srpm
Patch50: gcc43-c++-builtin-redecl.patch
@@ -655,7 +654,6 @@
%patch46
%patch47
%patch202
-%patch203
%patch204
%patch50
%patch51
@@ -1361,6 +1359,9 @@
%endif
%changelog
+* Fri May 08 2009 rguenther(a)suse.de
+- Update to gcc-4_3-branch head (r147281).
+- Disable cross compiler spec file generation.
* Mon Apr 20 2009 rguenther(a)suse.de
- Add patch for PR39675. [bnc#492696]
* Sat Apr 18 2009 rguenther(a)suse.de
++++++ change_spec ++++++
--- /var/tmp/diff_new_pack.lD8240/_old 2009-05-15 12:01:53.000000000 +0200
+++ /var/tmp/diff_new_pack.lD8240/_new 2009-05-15 12:01:53.000000000 +0200
@@ -1,8 +1,8 @@
#!/bin/bash
-do_icecream=1
-do_cross_static=1
-do_cross_shared=1
+do_icecream=0
+do_cross_static=0
+do_cross_shared=0
rm -f gcc*.spec cross*.spec cross*.changes
# Default is to generate the normal gcc package
++++++ gcc-4.3.3-20090316.tar.bz2 -> gcc-4.3.3-20090508.tar.bz2 ++++++
gcc43/gcc-4.3.3-20090316.tar.bz2 /mounts/work_src_done/STABLE/gcc43/gcc-4.3.3-20090508.tar.bz2 differ: byte 11, line 1
++++++ gcc.spec.in ++++++
--- /var/tmp/diff_new_pack.lD8240/_old 2009-05-15 12:01:54.000000000 +0200
+++ /var/tmp/diff_new_pack.lD8240/_new 2009-05-15 12:01:54.000000000 +0200
@@ -123,7 +123,7 @@
URL: http://gcc.gnu.org/
License: GPL
-Version: 4.3.3_20090316
+Version: 4.3.3_20090508
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -182,7 +182,6 @@
Patch46: pr32277.diff
Patch47: gcc43-as-g0
Patch202: nvl440482.patch
-Patch203: pr39175.diff
Patch204: pr39675.diff
# A set of patches from the RH srpm
Patch50: gcc43-c++-builtin-redecl.patch
@@ -928,7 +927,6 @@
%patch46
%patch47
%patch202
-%patch203
%patch204
%patch50
%patch51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gcc for openSUSE:Factory
checked in at Fri May 15 12:01:13 CEST 2009.
--------
--- gcc/gcc.changes 2009-02-16 11:03:52.000000000 +0100
+++ /mounts/work_src_done/STABLE/gcc/gcc.changes 2009-04-27 17:01:25.000000000 +0200
@@ -1,0 +2,5 @@
+Mon Apr 27 17:01:13 CEST 2009 - rguenther(a)suse.de
+
+- Switch gcc default to 4.4.
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
needed_space_in_mb
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gcc.spec ++++++
--- /var/tmp/diff_new_pack.F29901/_old 2009-05-15 12:00:34.000000000 +0200
+++ /var/tmp/diff_new_pack.F29901/_new 2009-05-15 12:00:34.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package gcc (Version 4.3)
+# spec file for package gcc (Version 4.4)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -28,11 +28,11 @@
%define separate_bi32 1
%endif
Url: http://gcc.gnu.org/
-%define gcc_version 43
-%define gcc_suffix 4.3
+%define gcc_version 44
+%define gcc_suffix 4.4
License: GPL v2 or later
-Version: 4.3
-Release: 61
+Version: 4.4
+Release: 2
Group: Development/Languages/C and C++
Summary: The system GNU C Compiler
Provides: c_compiler
@@ -640,6 +640,8 @@
%endif
%changelog
+* Mon Apr 27 2009 rguenther(a)suse.de
+- Switch gcc default to 4.4.
* Mon Feb 16 2009 rguenther(a)suse.de
- Enable links for classpath binaries and manpages again.
* Fri Jan 09 2009 rguenther(a)suse.de
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
FYI: Package qv was dropped from openSUSE:Factory at Thu May 14 11:17:16 CEST 2009.
You can find the latest sources of the package in the
openSUSE:Dropped
repository:
https://build.opensuse.org/package/show?project=openSUSE:Dropped&package=qv
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
FYI: Package cdp was dropped from openSUSE:Factory at Thu May 14 11:16:10 CEST 2009.
You can find the latest sources of the package in the
openSUSE:Dropped
repository:
https://build.opensuse.org/package/show?project=openSUSE:Dropped&package=cdp
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0