Hello community,
here is the log from the commit of package gcc41
checked in at Fri Sep 1 01:29:36 CEST 2006.
--------
--- gcc41/cross-alpha-gcc-icecream-backend.changes 2006-08-15 17:40:11.000000000 +0200
+++ gcc41/cross-alpha-gcc-icecream-backend.changes 2006-08-30 14:17:33.000000000 +0200
@@ -1,0 +2,20 @@
+Tue Aug 29 16:30:37 CEST 2006 - rguenther@suse.de
+
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+
+-------------------------------------------------------------------
+Mon Aug 21 12:49:44 CEST 2006 - rguenther@suse.de
+
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
+
+-------------------------------------------------------------------
cross-arm-gcc-icecream-backend.changes: same change
cross-avr-gcc.changes: same change
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-ppc-gcc-icecream-backend.changes: same change
cross-ppc64-gcc-icecream-backend.changes: same change
cross-s390-gcc-icecream-backend.changes: same change
cross-s390x-gcc-icecream-backend.changes: same change
cross-x86_64-gcc-icecream-backend.changes: same change
gcc41.changes: same change
libgcj41.changes: same change
Old:
----
endless-loop-warning.patch
gcc-4.1.2-20060731.tar.bz2
libgcj.spec.in
New:
----
gcc-4.1.2-20060829.tar.bz2
stack-protect-kernel.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cross-alpha-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-alpha-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-alpha-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch alpha
+%define gcc_target_arch alpha-linux
+%define gcc_icecream 1
BuildRequires: cross-alpha-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-alpha-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-arm-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-arm-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-arm-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch arm
+%define gcc_target_arch arm-linux
+%define gcc_icecream 1
BuildRequires: cross-arm-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-arm-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-avr-gcc.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-avr-gcc (Version 4.1.2_20060731)
+# spec file for package cross-avr-gcc (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -26,8 +26,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -48,7 +48,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -78,6 +77,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
This compiler supports the C language on avr microprocessors. Also
@@ -90,13 +91,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -110,7 +114,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -142,6 +145,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -163,7 +167,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -182,8 +186,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -224,7 +228,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -245,21 +250,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -269,26 +266,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -314,6 +311,20 @@
%{_prefix}
%changelog -n cross-avr-gcc
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-hppa-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-hppa-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-hppa-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch hppa
+%define gcc_target_arch hppa-linux
+%define gcc_icecream 1
BuildRequires: cross-hppa-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-hppa-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-i386-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-i386-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-i386-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch i386
+%define gcc_target_arch i386-linux
+%define gcc_icecream 1
BuildRequires: cross-i386-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-i386-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-ia64-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-ia64-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-ia64-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch ia64
+%define gcc_target_arch ia64-linux
+%define gcc_icecream 1
BuildRequires: cross-ia64-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-ia64-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-ppc-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-ppc-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-ppc-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch ppc
+%define gcc_target_arch ppc-linux
+%define gcc_icecream 1
BuildRequires: cross-ppc-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-ppc-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-ppc64-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-ppc64-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-ppc64-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch ppc64
+%define gcc_target_arch ppc64-linux
+%define gcc_icecream 1
BuildRequires: cross-ppc64-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-ppc64-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-s390-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-s390-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-s390-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch s390
+%define gcc_target_arch s390-linux
+%define gcc_icecream 1
BuildRequires: cross-s390-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-s390-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-s390x-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-s390x-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-s390x-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch s390x
+%define gcc_target_arch s390x-linux
+%define gcc_icecream 1
BuildRequires: cross-s390x-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-s390x-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ cross-x86_64-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.1.2_20060731)
+# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch x86_64
+%define gcc_target_arch x86_64-linux
+%define gcc_icecream 1
BuildRequires: cross-x86_64-binutils glibc-devel-32bit
ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64
%define _prefix /opt/cross
@@ -28,8 +29,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL, LGPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -50,7 +51,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -80,6 +80,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
NOTE: Be sure to install at least the following packages as well or you
@@ -95,13 +97,16 @@
The GCC team.
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -115,7 +120,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -147,6 +151,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -168,7 +173,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -187,8 +192,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -229,7 +234,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -250,21 +256,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -274,26 +272,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -305,24 +303,23 @@
%install
cd obj-%{GCCDIST}
rm -rf $RPM_BUILD_ROOT
-BUILD_TARGET=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\
@@ -352,6 +349,20 @@
/usr/share/icecream-envs
%changelog -n cross-x86_64-gcc-icecream-backend
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ gcc41.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package gcc41 (Version 4.1.2_20060731)
+# spec file for package gcc41 (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -12,12 +12,14 @@
# icecream 0
Name: gcc41
+%if 0%{!?run_tests:1}
%define run_tests %(test -f %_sourcedir/RUN_TESTS && echo 1 || echo 0)
+%endif
# Ada currently fails to build on a few platforms, enable it only
# on those that work
# Note that AdaCore only supports %ix86, x86_64 and ia64
%ifarch %ix86 x86_64 ia64 hppa ppc s390
-%define build_ada 1
+%define build_ada 0%{!?building_libjava:1}
%else
# alpha ppc64 s390x
%define build_ada 0
@@ -28,10 +30,10 @@
%define build_libjava 0
%else
%define build_java 1
-%define build_libjava 0
+%define build_libjava 0%{?building_libjava:1}
%endif
-%define build_fortran 1
-%define build_objcp 1
+%define build_fortran 0%{!?building_libjava:1}
+%define build_objcp 0%{!?building_libjava:1}
%if 0%{?build_for_base:1}
%define build_ada 0
%define build_java 0
@@ -108,8 +110,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
URL: http://gcc.gnu.org/
License: GPL
-Version: 4.1.2_20060731
-Release: 3
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -119,11 +121,13 @@
%define versionspecificlibs 0
%endif
# COMMON-END
+%if 0%{?!building_libjava:1}
Requires: binutils glibc-devel
Requires: cpp41 = %{version}-%{release}
Requires: libgcc >= %{version}-%{release}
Obsoletes: gcc41-mudflap
Requires: libmudflap >= %{version}-%{release}
+%endif
# COMMON-BEGIN
Group: Development/Languages/C and C++
Autoreqprov: on
@@ -135,7 +139,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -165,6 +168,8 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
+# LIBJAVA-DELETE-BEGIN
%description
Core package for the GNU Compiler Collection, including the C language
@@ -583,51 +588,6 @@
--------
The GCC team.
-%package java
-Summary: The GNU Java Compiler
-Group: Development/Languages/Java
-Autoreqprov: on
-Requires: gcc41 = %{version}-%{release}
-Requires: libgcj41-devel = %{version}-%{release}
-
-%description java
-The Java compiler from the GCC-tools-suite.
-
-
-
-%package -n libgcj41
-Summary: Java Runtime Library for gcc
-Group: System/Libraries
-Provides: libgcj = %{version}-%{release}
-Obsoletes: libgcj
-Autoreqprov: on
-
-%description -n libgcj41
-This library is needed if you want to use the GNU Java compiler, gcj.
-Source code for this package is in gcc.
-
-
-
-%package -n libgcj41-devel
-Summary: Include Files and Libraries mandatory for Development.
-Group: Development/Libraries/Java
-Autoreqprov: on
-Requires: libstdc++41-devel = %{version}-%{release}
-Requires: libgcj >= %{version}-%{release}
-Requires: gtk2-devel
-Requires: libart_lgpl-devel
-Requires: glibc-devel
-Requires: zlib-devel
-%ifarch ia64
-Requires: libunwind-devel
-%endif
-
-%description -n libgcj41-devel
-This package contains all necessary include files and libraries needed
-to develop applications that require these.
-
-
-
%package ada
Requires: gcc41 = %{version}-%{release}
Requires: libada41 = %{version}-%{release}
@@ -822,6 +782,52 @@
+%package java
+Summary: The GNU Java Compiler
+Group: Development/Languages/Java
+Autoreqprov: on
+Requires: gcc41 = %{version}-%{release}
+Requires: libgcj41-devel = %{version}-%{release}
+
+%description java
+The Java compiler from the GCC-tools-suite.
+
+
+
+%package -n libgcj41
+# LIBJAVA-DELETE-END
+Summary: Java Runtime Library for gcc
+Group: System/Libraries
+Provides: libgcj = %{version}-%{release}
+Obsoletes: libgcj
+Autoreqprov: on
+
+%description -n libgcj41
+This library is needed if you want to use the GNU Java compiler, gcj.
+Source code for this package is in gcc.
+
+
+
+%package -n libgcj41-devel
+Summary: Include Files and Libraries mandatory for Development.
+Group: Development/Libraries/Java
+Autoreqprov: on
+Requires: libstdc++41-devel = %{version}-%{release}
+Requires: libgcj >= %{version}-%{release}
+Requires: gtk2-devel
+Requires: libart_lgpl-devel
+Requires: glibc-devel
+Requires: zlib-devel
+%ifarch ia64
+Requires: libunwind-devel
+%endif
+
+%description -n libgcj41-devel
+This package contains all necessary include files and libraries needed
+to develop applications that require these.
+
+
+
%package -n libffi41
Summary: Foreign Function Interface library
Group: System/Libraries
@@ -912,14 +918,30 @@
+%package -n gcc41-testresults
+Summary: The GNU C Compiler testsuiteresults
+Group: Development/Languages/C and C++
+
+%description -n gcc41-testresults
+Results from running the GCC testsuite.
+
+
+
+Authors:
+--------
+ The GCC team.
+
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -1066,7 +1088,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -1098,6 +1119,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -1119,7 +1141,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -1138,8 +1160,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -1180,7 +1202,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -1201,21 +1224,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -1225,26 +1240,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -1275,8 +1290,34 @@
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
export LIBRARY_PATH=$RPM_BUILD_ROOT%{libsubdir}:$RPM_BUILD_ROOT%{mainlibdirbi32}:$RPM_BUILD_ROOT%{mainlibdirbi64}
+%if 0%{?building_libjava:1}
+make -C %{GCCDIST}/libjava install DESTDIR=$RPM_BUILD_ROOT
+make -C %{GCCDIST}/libffi install DESTDIR=$RPM_BUILD_ROOT
+make -C gcc java.install-man DESTDIR=$RPM_BUILD_ROOT
+%else
make install DESTDIR=$RPM_BUILD_ROOT
+%endif
mkdir -p $RPM_BUILD_ROOT%{_libdir}
+# Remove some useless .la files
+for lib in libobjc libgfortran libgfortranbegin libmudflap libmudflapth \
+ libstdc++ libsupc++; do
+ rm -f $RPM_BUILD_ROOT%{versmainlibdir}/$lib.la
+%if %{biarch}
+%if %{build_primary_64bit}
+ rm -f $RPM_BUILD_ROOT%{versmainlibdirbi32}/$lib.la
+%else
+ rm -f $RPM_BUILD_ROOT%{versmainlibdirbi64}/$lib.la
+%endif
+%endif
+done
+%if %{biarch}
+%if %{build_primary_64bit}
+mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib
+%else
+mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib64
+%endif
+%endif
+# LIBJAVA-DELETE-BEGIN
# Fix c++config.h for multilibs
cxxconfig="`find %{GCCDIST}/libstdc++-v3/include -name c++config.h`"
for i in `find %{GCCDIST}/[36]*/libstdc++-v3/include -name c++config.h 2>/dev/null`; do
@@ -1312,25 +1353,7 @@
break
fi
done
-# Remove some useless .la files
-for lib in libobjc libgfortran libgfortranbegin libmudflap libmudflapth \
- libstdc++ libsupc++; do
- rm -f $RPM_BUILD_ROOT%{versmainlibdir}/$lib.la
-%if %{biarch}
-%if %{build_primary_64bit}
- rm -f $RPM_BUILD_ROOT%{versmainlibdirbi32}/$lib.la
-%else
- rm -f $RPM_BUILD_ROOT%{versmainlibdirbi64}/$lib.la
-%endif
-%endif
-done
-%if %{biarch}
-%if %{build_primary_64bit}
-mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib
-%else
-mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib64
-%endif
-%endif
+# LIBJAVA-DELETE-END
# Move shared libs around
%if %{versionspecificlibs}
%else
@@ -1349,6 +1372,7 @@
%endif
%endif
done
+# LIBJAVA-DELETE-BEGIN
# move shared libs from versionspecific dir to main libdir
for libname in \
%if %{build_fortran}
@@ -1394,6 +1418,7 @@
ln -sf /lib64/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s_64.so
chmod a+x $RPM_BUILD_ROOT/lib64/libgcc_s.so.%{libgcc_s}
%endif
+# LIBJAVA-DELETE-END
%endif
%if %{build_ada}
mv $RPM_BUILD_ROOT%{libsubdir}/adalib/lib*-*.so $RPM_BUILD_ROOT%{_libdir}
@@ -1421,9 +1446,11 @@
mkdir -p $RPM_BUILD_ROOT%{_libdir}/32
(cd $RPM_BUILD_ROOT%{_libdir}/32; tar cf - .) | (cd $RPM_BUILD_ROOT%{_prefix}/lib ; tar xf -)
rm -rf $RPM_BUILD_ROOT%{_libdir}/32
+%if 0%{?!building_libjava:1}
ln -s %{_prefix}/lib $RPM_BUILD_ROOT%{_libdir}/32
rm -rf $RPM_BUILD_ROOT/%{_lib}/32
ln -s /lib $RPM_BUILD_ROOT/%{_lib}/32
+%endif
popd
%else
# 32-bit biarch systems
@@ -1433,7 +1460,9 @@
mkdir -p $RPM_BUILD_ROOT%{_libdir}/64
(cd $RPM_BUILD_ROOT%{_libdir}/64; tar cf - .) | (cd $RPM_BUILD_ROOT%{_prefix}/lib64 ; tar xf -)
rm -rf $RPM_BUILD_ROOT%{_libdir}/64
+%if 0%{?!building_libjava:1}
ln -s %{_prefix}/lib $RPM_BUILD_ROOT%{_libdir}/64
+%endif
popd
%endif
%endif
@@ -1489,6 +1518,7 @@
rm -rf $RPM_BUILD_ROOT%{libsubdir}/include/bits
rm -rf $RPM_BUILD_ROOT%{libsubdir}/include/sys
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/gccbug%{binsuffix}
%if %{build_libjava}
# gcj -static doesn't work properly anyway, unless using --whole-archive
# let's save the space instead.
@@ -1509,16 +1539,16 @@
rm $RPM_BUILD_ROOT%{_mandir}/man1/grmiregistry%{binsuffix}.1
%endif
# fastjar is separate now
-rm $RPM_BUILD_ROOT%{_prefix}/bin/fastjar%{binsuffix}
-rm $RPM_BUILD_ROOT%{_prefix}/bin/grepjar%{binsuffix}
-rm $RPM_BUILD_ROOT%{_infodir}/fastjar.info*
-rm $RPM_BUILD_ROOT%{_mandir}/man1/fastjar%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{_mandir}/man1/grepjar%{binsuffix}.1
-%endif
-rm $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
-rm $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
-rm $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
-rm $RPM_BUILD_ROOT%{_libdir}/libiberty.a
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/fastjar%{binsuffix}
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/grepjar%{binsuffix}
+rm -f $RPM_BUILD_ROOT%{_infodir}/fastjar.info*
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/fastjar%{binsuffix}.1
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/grepjar%{binsuffix}.1
+%endif
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
+rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
%if %{build_nof}
rm -f $RPM_BUILD_ROOT%{_prefix}/lib/nof/libiberty.a
%endif
@@ -1530,9 +1560,11 @@
%endif
%endif
# Move mudflap header
+%if 0%{!?building_libjava:1}
mv $RPM_BUILD_ROOT/usr/include/mf-runtime.h $RPM_BUILD_ROOT%{libsubdir}/include/
+%endif
# For building libjava only we need to delete other manpages
-%if "%{name}" == "libgcj41"
+%if 0%{?building_libjava:1}
rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj%{binsuffix}.1
rm $RPM_BUILD_ROOT%{_mandir}/man1/gcjh%{binsuffix}.1
rm $RPM_BUILD_ROOT%{_mandir}/man1/gjnih%{binsuffix}.1
@@ -1549,6 +1581,7 @@
rm $RPM_BUILD_ROOT%{_infodir}/*.info*
rm $RPM_BUILD_ROOT%{_prefix}/share/locale/*/LC_MESSAGES/*.mo
%endif
+# LIBJAVA-DELETE-BEGIN
%post info
%if !%{gcc_for_opt}
@@ -1611,7 +1644,6 @@
%dir %{libsubdir}/nof
%endif
%{_prefix}/bin/gcc%{binsuffix}
-%{_prefix}/bin/gccbug%{binsuffix}
%{_prefix}/bin/gcov%{binsuffix}
%{libsubdir}/collect2
%{libsubdir}/include/README
@@ -1661,10 +1693,6 @@
%versmainlib libmudflapth.so
%doc %{_mandir}/man1/gcc%{binsuffix}.1.gz
%doc %{_mandir}/man1/gcov%{binsuffix}.1.gz
-%if %{run_tests}
-%doc testresults/*.sum
-%doc testresults/*.log
-%endif
%if %{separate_biarch}
%files -n gcc41%{separate_biarch_suffix}
@@ -1912,6 +1940,30 @@
%defattr(-,root,root)
%{libsubdir}/cc1objplus
%endif
+%if %{build_ada}
+
+%files ada
+%defattr(-,root,root)
+%dir %{_libdir}/gcc
+%dir %{_libdir}/gcc/%{GCCDIST}
+%dir %{libsubdir}
+%{_prefix}/bin/gnat*
+%{_prefix}/bin/gpr*
+%{libsubdir}/adainclude
+%dir %{libsubdir}/adalib
+%{libsubdir}/adalib/*.ali
+%{libsubdir}/adalib/*.a
+%{libsubdir}/adalib/libgnarl.so
+%{libsubdir}/adalib/libgnat.so
+%{libsubdir}/adalib/g-trasym.o
+%{libsubdir}/gnat1
+
+%files -n libada41
+%defattr(-,root,root)
+# Ada is not multilibbed
+%{mainlibdir}/libgnarl-*.so
+%{mainlibdir}/libgnat-*.so
+%endif
%if %{build_java}
%files java
@@ -1928,6 +1980,9 @@
%doc %{_mandir}/man1/gjnih%{binsuffix}.1.gz
%doc %{_mandir}/man1/jcf-dump%{binsuffix}.1.gz
%doc %{_mandir}/man1/jv-scan%{binsuffix}.1.gz
+%endif
+# LIBJAVA-DELETE-END
+%if %{build_java}
%if %{build_libjava}
%files -n libgcj41
@@ -2055,32 +2110,29 @@
%endif
%endif
%endif
-%if %{build_ada}
-
-%files ada
-%defattr(-,root,root)
-%dir %{_libdir}/gcc
-%dir %{_libdir}/gcc/%{GCCDIST}
-%dir %{libsubdir}
-%{_prefix}/bin/gnat*
-%{_prefix}/bin/gpr*
-%{libsubdir}/adainclude
-%dir %{libsubdir}/adalib
-%{libsubdir}/adalib/*.ali
-%{libsubdir}/adalib/*.a
-%{libsubdir}/adalib/libgnarl.so
-%{libsubdir}/adalib/libgnat.so
-%{libsubdir}/adalib/g-trasym.o
-%{libsubdir}/gnat1
+%if %{run_tests}
-%files -n libada41
+%files -n gcc41-testresults
%defattr(-,root,root)
-# Ada is not multilibbed
-%{mainlibdir}/libgnarl-*.so
-%{mainlibdir}/libgnat-*.so
+%doc testresults/*.sum
+%doc testresults/*.log
%endif
%changelog -n gcc41
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ libgcj41.spec ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package libgcj41 (Version 4.1.2_20060731)
+# spec file for package libgcj41 (Version 4.1.2_20060829)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -12,12 +12,28 @@
# icecream 0
Name: libgcj41
+%define building_libjava 1
+%define run_tests 1
+#
+# spec file for package gcc (Version 4.1.x)
+#
+# Copyright (c) 2005 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# 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/
+#
+# PREFIX_FOR_OPT is the definition for _prefix
+# LIBDIR_FOR_OPT is the definition for _libdir
+# Run the testsuite if there's a file named RUN_TESTS in the source
+%if 0%{!?run_tests:1}
%define run_tests %(test -f %_sourcedir/RUN_TESTS && echo 1 || echo 0)
+%endif
# Ada currently fails to build on a few platforms, enable it only
# on those that work
# Note that AdaCore only supports %ix86, x86_64 and ia64
%ifarch %ix86 x86_64 ia64 hppa ppc s390
-%define build_ada 0
+%define build_ada 0%{!?building_libjava:1}
%else
# alpha ppc64 s390x
%define build_ada 0
@@ -28,10 +44,10 @@
%define build_libjava 0
%else
%define build_java 1
-%define build_libjava 1
+%define build_libjava 0%{?building_libjava:1}
%endif
-%define build_fortran 0
-%define build_objcp 0
+%define build_fortran 0%{!?building_libjava:1}
+%define build_objcp 0%{!?building_libjava:1}
%if 0%{?build_for_base:1}
%define build_ada 0
%define build_java 0
@@ -108,8 +124,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: LGPL
-Version: 4.1.2_20060731
-Release: 4
+Version: 4.1.2_20060829
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
%define binsuffix -4.1
@@ -119,6 +135,13 @@
%define versionspecificlibs 0
%endif
# COMMON-END
+%if 0%{?!building_libjava:1}
+Requires: binutils glibc-devel
+Requires: cpp41 = %{version}-%{release}
+Requires: libgcc >= %{version}-%{release}
+Obsoletes: gcc41-mudflap
+Requires: libmudflap >= %{version}-%{release}
+%endif
# COMMON-BEGIN
Group: System/Libraries
Autoreqprov: on
@@ -130,7 +153,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -160,6 +182,7 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
Summary: Java Runtime Library for gcc
Group: System/Libraries
Provides: libgcj = %{version}-%{release}
@@ -282,14 +305,30 @@
+%package -n gcc41-testresults
+Summary: The GNU C Compiler testsuiteresults
+Group: Development/Languages/C and C++
+
+%description -n gcc41-testresults
+Results from running the GCC testsuite.
+
+
+
+Authors:
+--------
+ The GCC team.
+
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
%else
@@ -436,7 +475,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -468,6 +506,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -489,7 +528,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -508,8 +547,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
J=%{?jobs:%jobs}
@@ -550,7 +589,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -571,21 +611,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -595,26 +627,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -645,9 +677,13 @@
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
export LIBRARY_PATH=$RPM_BUILD_ROOT%{libsubdir}:$RPM_BUILD_ROOT%{mainlibdirbi32}:$RPM_BUILD_ROOT%{mainlibdirbi64}
+%if 0%{?building_libjava:1}
make -C %{GCCDIST}/libjava install DESTDIR=$RPM_BUILD_ROOT
make -C %{GCCDIST}/libffi install DESTDIR=$RPM_BUILD_ROOT
make -C gcc java.install-man DESTDIR=$RPM_BUILD_ROOT
+%else
+make install DESTDIR=$RPM_BUILD_ROOT
+%endif
mkdir -p $RPM_BUILD_ROOT%{_libdir}
# Remove some useless .la files
for lib in libobjc libgfortran libgfortranbegin libmudflap libmudflapth \
@@ -713,6 +749,11 @@
mkdir -p $RPM_BUILD_ROOT%{_libdir}/32
(cd $RPM_BUILD_ROOT%{_libdir}/32; tar cf - .) | (cd $RPM_BUILD_ROOT%{_prefix}/lib ; tar xf -)
rm -rf $RPM_BUILD_ROOT%{_libdir}/32
+%if 0%{?!building_libjava:1}
+ln -s %{_prefix}/lib $RPM_BUILD_ROOT%{_libdir}/32
+rm -rf $RPM_BUILD_ROOT/%{_lib}/32
+ln -s /lib $RPM_BUILD_ROOT/%{_lib}/32
+%endif
popd
%else
# 32-bit biarch systems
@@ -722,6 +763,9 @@
mkdir -p $RPM_BUILD_ROOT%{_libdir}/64
(cd $RPM_BUILD_ROOT%{_libdir}/64; tar cf - .) | (cd $RPM_BUILD_ROOT%{_prefix}/lib64 ; tar xf -)
rm -rf $RPM_BUILD_ROOT%{_libdir}/64
+%if 0%{?!building_libjava:1}
+ln -s %{_prefix}/lib $RPM_BUILD_ROOT%{_libdir}/64
+%endif
popd
%endif
%endif
@@ -777,6 +821,7 @@
rm -rf $RPM_BUILD_ROOT%{libsubdir}/include/bits
rm -rf $RPM_BUILD_ROOT%{libsubdir}/include/sys
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/gccbug%{binsuffix}
%if %{build_libjava}
# gcj -static doesn't work properly anyway, unless using --whole-archive
# let's save the space instead.
@@ -796,9 +841,33 @@
rm $RPM_BUILD_ROOT%{_mandir}/man1/grmic%{binsuffix}.1
rm $RPM_BUILD_ROOT%{_mandir}/man1/grmiregistry%{binsuffix}.1
%endif
+# fastjar is separate now
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/fastjar%{binsuffix}
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/grepjar%{binsuffix}
+rm -f $RPM_BUILD_ROOT%{_infodir}/fastjar.info*
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/fastjar%{binsuffix}.1
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/grepjar%{binsuffix}.1
+%endif
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
+rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
+%if %{build_nof}
+rm -f $RPM_BUILD_ROOT%{_prefix}/lib/nof/libiberty.a
+%endif
+%if %{biarch}
+%if %{build_primary_64bit}
+rm -f $RPM_BUILD_ROOT%{_prefix}/lib/libiberty.a
+%else
+rm -f $RPM_BUILD_ROOT%{_prefix}/lib64/libiberty.a
+%endif
+%endif
+# Move mudflap header
+%if 0%{!?building_libjava:1}
+mv $RPM_BUILD_ROOT/usr/include/mf-runtime.h $RPM_BUILD_ROOT%{libsubdir}/include/
%endif
# For building libjava only we need to delete other manpages
-%if "%{name}" == "libgcj41"
+%if 0%{?building_libjava:1}
rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj%{binsuffix}.1
rm $RPM_BUILD_ROOT%{_mandir}/man1/gcjh%{binsuffix}.1
rm $RPM_BUILD_ROOT%{_mandir}/man1/gjnih%{binsuffix}.1
@@ -943,8 +1012,29 @@
%endif
%endif
%endif
+%if %{run_tests}
+
+%files -n gcc41-testresults
+%defattr(-,root,root)
+%doc testresults/*.sum
+%doc testresults/*.log
+%endif
%changelog -n libgcj41
+* Tue Aug 29 2006 - rguenther@suse.de
+- Update to SVN branch head. Fixes [#187184].
+- Remove patch for bogus warning which is fixed upstream already.
+- Fix URL for bugreporting, use http://bugs.opensuse.org instead of
+ http://www.suse.de/feedback.
+- No longer package gccbug script which led to feedback@suse.de which no
+ longer exists.
+- Run the testsuite from the libgcj package and package results
+ in gcc41-testresults.
+* Mon Aug 21 2006 - rguenther@suse.de
+- Update to SVN branch head.
+- Add patch to allow stack protector inside the kernel.
+- Generate libgcj spec file from gcc spec file.
+- Clean up configure target machinery.
* Tue Aug 15 2006 - rguenther@suse.de
- Clean up target architecture discovery.
- Add separate spec file for building libgcj.
++++++ bug-reporting.patch ++++++
--- /var/tmp/diff_new_pack.FLRMgU/_old 2006-09-01 01:26:18.000000000 +0200
+++ /var/tmp/diff_new_pack.FLRMgU/_new 2006-09-01 01:26:18.000000000 +0200
@@ -1,22 +1,3 @@
---- gcc/gccbug.in
-+++ gcc/gccbug.in
-@@ -28,7 +28,7 @@
- SUBMITTER=net
-
- # The default mail address for PR submissions.
--GNATS_ADDR=gcc-gnats@gcc.gnu.org
-+GNATS_ADDR=feedback@suse.de
-
- # The default release for this host.
- # We have to guess at what program_transform_name might have done.
-@@ -309,6 +309,7 @@
- From: $FROM
- Reply-To: $REPLYTO
- Cc: $CC
-+X-Feedback-Type: GCC-Bug
- X-send-pr-version: $VERSION
- X-GNATS-Notify:
-
--- gcc/version.c
+++ gcc/version.c
@@ -8,7 +8,7 @@
@@ -33,7 +14,7 @@
not bugs in your modifications.) */
-const char bug_report_url[] = "URL:http://gcc.gnu.org/bugs.html";
-+const char bug_report_url[] = "URL:http://www.suse.de/feedback";
++const char bug_report_url[] = "URL:http://bugs.opensuse.org";
/* The complete version string, assembled from several pieces.
BASEVER, DATESTAMP, and DEVPHASE are defined by the Makefile. */
++++++ change_spec ++++++
--- gcc41/change_spec 2006-08-15 17:39:26.000000000 +0200
+++ gcc41/change_spec 2006-08-30 10:58:00.000000000 +0200
@@ -67,12 +67,15 @@
p
}
}' > $outfile
- sed -e 's%@gcc_suffix@%%g' \
+ echo '%define building_libjava 1' > libgcj$base_ver.spec
+ echo '%define run_tests 1' >> libgcj$base_ver.spec
+ sed -e '/^# LIBJAVA-DELETE-BEGIN/,/^# LIBJAVA-DELETE-END/d;s/-n libgcj@base_ver@@gcc_suffix@$//g;s/^Name:[[:space:]]*gcc/Name: libgcj/g' \
+ gcc.spec.in \
+ | sed -e 's%@gcc_suffix@%%g' \
-e 's%@base_ver@%'$base_ver'%g' \
-e 's$@PREFIX_FOR_OPT@$$g' \
-e 's$@LIBDIR_FOR_OPT@$$g' \
-e 's%@GCC_FOR_OPT@%0%g' \
- libgcj.spec.in \
| sed -n -e '{
/^# PACKAGE-BEGIN/h
/^# PACKAGE-BEGIN/,/^# PACKAGE-END/H
@@ -87,10 +90,10 @@
s/@variant@/-64bit/g
p
}
-}' > libgcj$base_ver.spec
+}' >> libgcj$base_ver.spec
fi
-
-
+
+
if [ $GCC_FOR_OPT != yes ]; then
# disabled: mips, sparc
for arch in alpha hppa arm i386 x86_64 s390 s390x ppc ppc64 ia64; do
++++++ cross.spec.in ++++++
--- gcc41/cross.spec.in 2006-08-15 17:11:43.000000000 +0200
+++ gcc41/cross.spec.in 2006-08-21 10:32:55.000000000 +0200
@@ -17,7 +17,8 @@
%define build_objcp 0
%define build_nof 0
%define gcc_for_opt 0
-%define gcc_target_arch @cross_arch@
+%define gcc_target_arch @cross_arch@-linux
+%define gcc_icecream 1
Name: cross-@cross_arch@-gcc-icecream-backend
BuildRequires: cross-@cross_arch@-binutils glibc-devel-32bit
@@ -28,30 +29,30 @@
# COMMON-BEGIN
# 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=%{BUILD_TARGET}
-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
+# This shows in the difference of %{CONFIGURE_TARGET}, which is powerpc64-linux
+# vs %{TARGET_ARCH}, which is powerpc in this case.
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 %{_prefix}/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
+install -s -D %{_prefix}/bin/%{TARGET_ARCH}-linux-as $RPM_BUILD_ROOT/env/usr/bin/as
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-g++ $RPM_BUILD_ROOT/env/usr/bin/g++
+install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/%{CONFIGURE_TARGET}-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_version/$back \
- $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back
+ install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back \
+ $RPM_BUILD_ROOT/env%{_libdir}/gcc/%{CONFIGURE_TARGET}/%gcc_version/$back
done
libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \
++++++ fortran-matmul.patch ++++++
++++ 1447 lines (skipped)
++++ between gcc41/fortran-matmul.patch
++++ and gcc41/fortran-matmul.patch
++++++ gcc-4.1.2-20060731.tar.bz2 -> gcc-4.1.2-20060829.tar.bz2 ++++++
gcc41/gcc-4.1.2-20060731.tar.bz2 gcc41/gcc-4.1.2-20060829.tar.bz2 differ: char 11, line 1
++++++ gcc.spec.in ++++++
--- gcc41/gcc.spec.in 2006-08-16 14:02:15.000000000 +0200
+++ gcc41/gcc.spec.in 2006-08-30 10:57:31.000000000 +0200
@@ -19,13 +19,15 @@
# Run the testsuite if there's a file named RUN_TESTS in the source
+%if 0%{!?run_tests:1}
%define run_tests %(test -f %_sourcedir/RUN_TESTS && echo 1 || echo 0)
+%endif
# Ada currently fails to build on a few platforms, enable it only
# on those that work
# Note that AdaCore only supports %ix86, x86_64 and ia64
%ifarch %ix86 x86_64 ia64 hppa ppc s390
-%define build_ada 1
+%define build_ada 0%{!?building_libjava:1}
%else
# alpha ppc64 s390x
%define build_ada 0
@@ -37,11 +39,11 @@
%define build_libjava 0
%else
%define build_java 1
-%define build_libjava 0
+%define build_libjava 0%{?building_libjava:1}
%endif
-%define build_fortran 1
-%define build_objcp 1
+%define build_fortran 0%{!?building_libjava:1}
+%define build_objcp 0%{!?building_libjava:1}
%if 0%{?build_for_base:1}
%define build_ada 0
@@ -52,7 +54,6 @@
%define run_tests 0
%endif
-
Name: gcc@base_ver@@gcc_suffix@
BuildRequires: glibc-devel-32bit flex bison gettext-devel
%if %{build_ada}
@@ -132,7 +133,7 @@
URL: http://gcc.gnu.org/
License: GPL
-Version: 4.1.2_20060731
+Version: 4.1.2_20060829
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -144,12 +145,13 @@
%endif
# COMMON-END
+%if 0%{?!building_libjava:1}
Requires: binutils glibc-devel
-Requires: cpp@base_ver@@gcc_suffix@ = %{version}-%{release}
+Requires: cpp@base_ver@@gcc_suffix@ = %{version}-%{release}
Requires: libgcc@gcc_suffix@ >= %{version}-%{release}
Obsoletes: gcc@base_ver@@gcc_suffix@-mudflap
Requires: libmudflap@gcc_suffix@ >= %{version}-%{release}
-
+%endif
# COMMON-BEGIN
Group: Development/Languages/C and C++
@@ -162,7 +164,6 @@
Patch2: gcc-noalias-warn.diff
Patch5: boehm-gc-strict-aliasing.patch
Patch7: acats-timeout.patch
-Patch9: endless-loop-warning.patch
Patch10: program-transform-name.diff
Patch12: gcc4-ppc64-m32-m64-multilib-only.patch
Patch23: libjava-no-multilib.diff
@@ -192,8 +193,9 @@
Patch62: gcc41-fortran-where-opt.patch
Patch63: emmintr.patch
Patch64: libstdcxx-bitset.patch
+Patch65: stack-protect-kernel.patch
-
+# LIBJAVA-DELETE-BEGIN
%description
Language frontends other than C are split to different sub-packages,
namely gcc-ada, gcc-c++, gcc-fortran, gcc-java and gcc-objc.
@@ -366,48 +368,6 @@
packages.
-%package java
-Summary: The GNU Java Compiler
-Group: Development/Languages/Java
-Autoreqprov: on
-Requires: gcc@base_ver@@gcc_suffix@ = %{version}-%{release}
-Requires: libgcj@base_ver@-devel@gcc_suffix@ = %{version}-%{release}
-
-%description java
-The Java compiler from the GCC-tools-suite.
-
-
-%package -n libgcj@base_ver@@gcc_suffix@
-Summary: Java Runtime Library for gcc
-Group: System/Libraries
-Provides: libgcj@gcc_suffix@ = %{version}-%{release}
-Obsoletes: libgcj@gcc_suffix@
-Autoreqprov: on
-
-%description -n libgcj@base_ver@@gcc_suffix@
-This library is needed if you want to use the GNU Java compiler, gcj.
-Source code for this package is in gcc.
-
-
-%package -n libgcj@base_ver@-devel@gcc_suffix@
-Summary: Include Files and Libraries mandatory for Development.
-Group: Development/Libraries/Java
-Autoreqprov: on
-Requires: libstdc++@base_ver@-devel@gcc_suffix@ = %{version}-%{release}
-Requires: libgcj@gcc_suffix@ >= %{version}-%{release}
-Requires: gtk2-devel
-Requires: libart_lgpl-devel
-Requires: glibc-devel
-Requires: zlib-devel
-%ifarch ia64
-Requires: libunwind-devel
-%endif
-
-%description -n libgcj@base_ver@-devel@gcc_suffix@
-This package contains all necessary include files and libraries needed
-to develop applications that require these.
-
-
%package ada
Requires: gcc@base_ver@@gcc_suffix@ = %{version}-%{release}
Requires: libada@base_ver@@gcc_suffix@ = %{version}-%{release}
@@ -477,6 +437,50 @@
This is the Mudflap Extension Runtime Library.
# PACKAGE-END
+
+%package java
+Summary: The GNU Java Compiler
+Group: Development/Languages/Java
+Autoreqprov: on
+Requires: gcc@base_ver@@gcc_suffix@ = %{version}-%{release}
+Requires: libgcj@base_ver@-devel@gcc_suffix@ = %{version}-%{release}
+
+%description java
+The Java compiler from the GCC-tools-suite.
+
+
+%package -n libgcj@base_ver@@gcc_suffix@
+# LIBJAVA-DELETE-END
+Summary: Java Runtime Library for gcc
+Group: System/Libraries
+Provides: libgcj@gcc_suffix@ = %{version}-%{release}
+Obsoletes: libgcj@gcc_suffix@
+Autoreqprov: on
+
+%description -n libgcj@base_ver@@gcc_suffix@
+This library is needed if you want to use the GNU Java compiler, gcj.
+Source code for this package is in gcc.
+
+
+%package -n libgcj@base_ver@-devel@gcc_suffix@
+Summary: Include Files and Libraries mandatory for Development.
+Group: Development/Libraries/Java
+Autoreqprov: on
+Requires: libstdc++@base_ver@-devel@gcc_suffix@ = %{version}-%{release}
+Requires: libgcj@gcc_suffix@ >= %{version}-%{release}
+Requires: gtk2-devel
+Requires: libart_lgpl-devel
+Requires: glibc-devel
+Requires: zlib-devel
+%ifarch ia64
+Requires: libunwind-devel
+%endif
+
+%description -n libgcj@base_ver@-devel@gcc_suffix@
+This package contains all necessary include files and libraries needed
+to develop applications that require these.
+
+
# PACKAGE-BEGIN
%package -n libffi@base_ver@@gcc_suffix@@variant@
Summary: Foreign Function Interface library
@@ -499,19 +503,32 @@
A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
# PACKAGE-END
+%package -n gcc@base_ver@@gcc_suffix@-testresults
+Summary: Testsuite results
+Group: Development/Languages/C and C++
+
+%description -n gcc@base_ver@@gcc_suffix@-testresults
+Results from running the gcc and target library testsuites.
+
# COMMON-BEGIN
# Define the canonical target and host architecture
+# %gcc_target_arch is supposed to be the full target triple
+# %TARGET_ARCH is the canonicalized CPU part
+# %CONFIGURE_TARGET is the target triple used for --target=
%if 0%{?gcc_target_arch:1}
-%define TARGET_ARCH %(echo %{gcc_target_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/")
+%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
%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)
-%define BUILD_TARGET %{TARGET_ARCH}
%ifarch ppc
%define GCCDIST powerpc64-suse-linux
@@ -679,7 +696,6 @@
%patch2
%patch5
%patch7
-%patch9
%patch10
%if !%{build_nof}
%patch12
@@ -711,6 +727,7 @@
%patch61
%patch62 -p1
%patch63
+%patch65
%build
# Avoid conflict with commercial libjawt.so
@@ -734,7 +751,7 @@
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 "%{name}" == "cross-avr-gcc"
+%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
@@ -754,8 +771,8 @@
%if %{build_ada}
languages=$languages,ada
%endif
-# override for cross-avr-gcc
-%if "%{name}" == "cross-avr-gcc"
+# override for cross targets until we have build_objc
+%if 0%{?gcc_target_arch:1}
languages=c,c++
%endif
@@ -803,7 +820,8 @@
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
../configure \
-%if "%{name}" != "cross-avr-gcc"
+%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
+%else
--enable-threads=posix \
%endif
--prefix=%{_prefix} --with-local-prefix=/usr/local \
@@ -824,21 +842,13 @@
--enable-shared --enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
%if 0%{?gcc_target_arch:1}
-%if "%{name}" == "cross-avr-gcc"
- --target=avr \
-%else
-%if "%{BUILD_TARGET}" == "powerpc"
- --target=powerpc64-linux \
- --with-as=/opt/cross/powerpc-linux/bin/as \
- --with-ld=/opt/cross/powerpc-linux/bin/ld \
-%else
- --target=%{BUILD_TARGET}-linux \
-%endif
-%endif
- --disable-nls --disable-shared \
-%if "%{name}" != "cross-avr-gcc"
+%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=/ \
%endif
+ --disable-nls --disable-shared \
+ --target=%{CONFIGURE_TARGET} \
%else
--program-suffix=%{binsuffix} \
--enable-version-specific-runtime-libs \
@@ -848,26 +858,26 @@
--without-system-libunwind \
%endif
%endif
-%if "%{BUILD_TARGET}" == "powerpc"
+%if "%{TARGET_ARCH}" == "powerpc"
--with-cpu=default32 \
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "powerpc64"
+%if "%{TARGET_ARCH}" == "powerpc64"
--enable-secureplt \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "i586"
+%if "%{TARGET_ARCH}" == "i586"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "x86_64"
+%if "%{TARGET_ARCH}" == "x86_64"
--with-cpu=generic \
%endif
-%if "%{BUILD_TARGET}" == "s390"
+%if "%{TARGET_ARCH}" == "s390"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
-%if "%{BUILD_TARGET}" == "s390x"
+%if "%{TARGET_ARCH}" == "s390x"
--with-tune=z9-109 --with-arch=z900 \
--with-long-double-128 \
%endif
@@ -901,9 +911,37 @@
# Work around tail/head -1 changes
export _POSIX2_VERSION=199209
export LIBRARY_PATH=$RPM_BUILD_ROOT%{libsubdir}:$RPM_BUILD_ROOT%{mainlibdirbi32}:$RPM_BUILD_ROOT%{mainlibdirbi64}
+%if 0%{?building_libjava:1}
+make -C %{GCCDIST}/libjava install DESTDIR=$RPM_BUILD_ROOT
+make -C %{GCCDIST}/libffi install DESTDIR=$RPM_BUILD_ROOT
+make -C gcc java.install-man DESTDIR=$RPM_BUILD_ROOT
+%else
make install DESTDIR=$RPM_BUILD_ROOT
+%endif
mkdir -p $RPM_BUILD_ROOT%{_libdir}
+# Remove some useless .la files
+for lib in libobjc libgfortran libgfortranbegin libmudflap libmudflapth \
+ libstdc++ libsupc++; do
+ rm -f $RPM_BUILD_ROOT%{versmainlibdir}/$lib.la
+%if %{biarch}
+%if %{build_primary_64bit}
+ rm -f $RPM_BUILD_ROOT%{versmainlibdirbi32}/$lib.la
+%else
+ rm -f $RPM_BUILD_ROOT%{versmainlibdirbi64}/$lib.la
+%endif
+%endif
+done
+
+%if %{biarch}
+%if %{build_primary_64bit}
+mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib
+%else
+mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib64
+%endif
+%endif
+
+# LIBJAVA-DELETE-BEGIN
# Fix c++config.h for multilibs
cxxconfig="`find %{GCCDIST}/libstdc++-v3/include -name c++config.h`"
for i in `find %{GCCDIST}/[36]*/libstdc++-v3/include -name c++config.h 2>/dev/null`; do
@@ -939,27 +977,7 @@
break
fi
done
-
-# Remove some useless .la files
-for lib in libobjc libgfortran libgfortranbegin libmudflap libmudflapth \
- libstdc++ libsupc++; do
- rm -f $RPM_BUILD_ROOT%{versmainlibdir}/$lib.la
-%if %{biarch}
-%if %{build_primary_64bit}
- rm -f $RPM_BUILD_ROOT%{versmainlibdirbi32}/$lib.la
-%else
- rm -f $RPM_BUILD_ROOT%{versmainlibdirbi64}/$lib.la
-%endif
-%endif
-done
-
-%if %{biarch}
-%if %{build_primary_64bit}
-mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib
-%else
-mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib64
-%endif
-%endif
+# LIBJAVA-DELETE-END
# Move shared libs around
%if %{versionspecificlibs}
@@ -979,6 +997,7 @@
%endif
%endif
done
+# LIBJAVA-DELETE-BEGIN
# move shared libs from versionspecific dir to main libdir
for libname in \
%if %{build_fortran}
@@ -1025,6 +1044,7 @@
ln -sf /lib64/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s_64.so
chmod a+x $RPM_BUILD_ROOT/lib64/libgcc_s.so.%{libgcc_s}
%endif
+# LIBJAVA-DELETE-END
%endif
%if %{build_ada}
@@ -1055,9 +1075,11 @@
mkdir -p $RPM_BUILD_ROOT%{_libdir}/32
(cd $RPM_BUILD_ROOT%{_libdir}/32; tar cf - .) | (cd $RPM_BUILD_ROOT%{_prefix}/lib ; tar xf -)
rm -rf $RPM_BUILD_ROOT%{_libdir}/32
+%if 0%{?!building_libjava:1}
ln -s %{_prefix}/lib $RPM_BUILD_ROOT%{_libdir}/32
rm -rf $RPM_BUILD_ROOT/%{_lib}/32
ln -s /lib $RPM_BUILD_ROOT/%{_lib}/32
+%endif
popd
%else
# 32-bit biarch systems
@@ -1067,7 +1089,9 @@
mkdir -p $RPM_BUILD_ROOT%{_libdir}/64
(cd $RPM_BUILD_ROOT%{_libdir}/64; tar cf - .) | (cd $RPM_BUILD_ROOT%{_prefix}/lib64 ; tar xf -)
rm -rf $RPM_BUILD_ROOT%{_libdir}/64
+%if 0%{?!building_libjava:1}
ln -s %{_prefix}/lib $RPM_BUILD_ROOT%{_libdir}/64
+%endif
popd
%endif
%endif
@@ -1125,6 +1149,7 @@
rm -rf $RPM_BUILD_ROOT%{libsubdir}/include/bits
rm -rf $RPM_BUILD_ROOT%{libsubdir}/include/sys
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/gccbug%{binsuffix}
%if %{build_libjava}
# gcj -static doesn't work properly anyway, unless using --whole-archive
# let's save the space instead.
@@ -1147,16 +1172,16 @@
rm $RPM_BUILD_ROOT%{_mandir}/man1/grmiregistry%{binsuffix}.1
%endif
# fastjar is separate now
-rm $RPM_BUILD_ROOT%{_prefix}/bin/fastjar%{binsuffix}
-rm $RPM_BUILD_ROOT%{_prefix}/bin/grepjar%{binsuffix}
-rm $RPM_BUILD_ROOT%{_infodir}/fastjar.info*
-rm $RPM_BUILD_ROOT%{_mandir}/man1/fastjar%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{_mandir}/man1/grepjar%{binsuffix}.1
-%endif
-rm $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
-rm $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
-rm $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
-rm $RPM_BUILD_ROOT%{_libdir}/libiberty.a
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/fastjar%{binsuffix}
+rm -f $RPM_BUILD_ROOT%{_prefix}/bin/grepjar%{binsuffix}
+rm -f $RPM_BUILD_ROOT%{_infodir}/fastjar.info*
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/fastjar%{binsuffix}.1
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/grepjar%{binsuffix}.1
+%endif
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
+rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
+rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
%if %{build_nof}
rm -f $RPM_BUILD_ROOT%{_prefix}/lib/nof/libiberty.a
%endif
@@ -1169,10 +1194,12 @@
%endif
# Move mudflap header
+%if 0%{!?building_libjava:1}
mv $RPM_BUILD_ROOT/usr/include/mf-runtime.h $RPM_BUILD_ROOT%{libsubdir}/include/
+%endif
# For building libjava only we need to delete other manpages
-%if "%{name}" == "libgcj@base_ver@@gcc_suffix@"
+%if 0%{?building_libjava:1}
rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj%{binsuffix}.1
rm $RPM_BUILD_ROOT%{_mandir}/man1/gcjh%{binsuffix}.1
rm $RPM_BUILD_ROOT%{_mandir}/man1/gjnih%{binsuffix}.1
@@ -1191,6 +1218,7 @@
rm $RPM_BUILD_ROOT%{_prefix}/share/locale/*/LC_MESSAGES/*.mo
%endif
+# LIBJAVA-DELETE-BEGIN
%post info
%if !%{gcc_for_opt}
%install_info --info-dir=%{_infodir} %{_infodir}/cpp.info.gz
@@ -1253,7 +1281,6 @@
%dir %{libsubdir}/nof
%endif
%{_prefix}/bin/gcc%{binsuffix}
-%{_prefix}/bin/gccbug%{binsuffix}
%{_prefix}/bin/gcov%{binsuffix}
%{libsubdir}/collect2
%{libsubdir}/include/README
@@ -1295,10 +1322,6 @@
%versmainlib libmudflapth.so
%doc %{_mandir}/man1/gcc%{binsuffix}.1.gz
%doc %{_mandir}/man1/gcov%{binsuffix}.1.gz
-%if %{run_tests}
-%doc testresults/*.sum
-%doc testresults/*.log
-%endif
%if %{separate_biarch}
%files -n gcc@base_ver@@gcc_suffix@%{separate_biarch_suffix}
@@ -1513,6 +1536,31 @@
%endif
+%if %{build_ada}
+%files ada
+%defattr(-,root,root)
+%dir %{_libdir}/gcc
+%dir %{_libdir}/gcc/%{GCCDIST}
+%dir %{libsubdir}
+%{_prefix}/bin/gnat*
+%{_prefix}/bin/gpr*
+%{libsubdir}/adainclude
+%dir %{libsubdir}/adalib
+%{libsubdir}/adalib/*.ali
+%{libsubdir}/adalib/*.a
+%{libsubdir}/adalib/libgnarl.so
+%{libsubdir}/adalib/libgnat.so
+%{libsubdir}/adalib/g-trasym.o
+%{libsubdir}/gnat1
+
+%files -n libada@base_ver@@gcc_suffix@
+%defattr(-,root,root)
+# Ada is not multilibbed
+%{mainlibdir}/libgnarl-*.so
+%{mainlibdir}/libgnat-*.so
+%endif
+
+
%if %{build_java}
%files java
%defattr(-,root,root)
@@ -1528,7 +1576,10 @@
%doc %{_mandir}/man1/gjnih%{binsuffix}.1.gz
%doc %{_mandir}/man1/jcf-dump%{binsuffix}.1.gz
%doc %{_mandir}/man1/jv-scan%{binsuffix}.1.gz
+%endif
+# LIBJAVA-DELETE-END
+%if %{build_java}
%if %{build_libjava}
%files -n libgcj@base_ver@@gcc_suffix@
%defattr(-,root,root)
@@ -1635,29 +1686,11 @@
%endif
%endif
-
-%if %{build_ada}
-%files ada
-%defattr(-,root,root)
-%dir %{_libdir}/gcc
-%dir %{_libdir}/gcc/%{GCCDIST}
-%dir %{libsubdir}
-%{_prefix}/bin/gnat*
-%{_prefix}/bin/gpr*
-%{libsubdir}/adainclude
-%dir %{libsubdir}/adalib
-%{libsubdir}/adalib/*.ali
-%{libsubdir}/adalib/*.a
-%{libsubdir}/adalib/libgnarl.so
-%{libsubdir}/adalib/libgnat.so
-%{libsubdir}/adalib/g-trasym.o
-%{libsubdir}/gnat1
-
-%files -n libada@base_ver@@gcc_suffix@
+%if %{run_tests}
+%files -n gcc@base_ver@@gcc_suffix@-testresults
%defattr(-,root,root)
-# Ada is not multilibbed
-%{mainlibdir}/libgnarl-*.so
-%{mainlibdir}/libgnat-*.so
+%doc testresults/*.sum
+%doc testresults/*.log
%endif
++++++ micro-cross.spec.in ++++++
--- gcc41/micro-cross.spec.in 2006-08-15 17:12:02.000000000 +0200
+++ gcc41/micro-cross.spec.in 2006-08-21 12:52:49.000000000 +0200
@@ -7,6 +7,7 @@
test -z "$cross_arch" && echo 1>&2 "Error: $0 needs environment variable 'cross_arch'"
test -z "$outfile" && echo 1>&2 "Error: $0 needs environment variable 'outfile'"
+cross_arch_cpu=`echo $cross_arch | sed -e 's/\([^-]*\)-\?.*/\1/'`
cat << EOF
#
@@ -31,8 +32,8 @@
%define gcc_target_arch $cross_arch
Name: cross-$cross_arch-gcc
-BuildRequires: cross-$cross_arch-binutils glibc-devel
-Requires: cross-$cross_arch-binutils
+BuildRequires: cross-$cross_arch_cpu-binutils glibc-devel
+Requires: cross-$cross_arch_cpu-binutils
%define _prefix /opt/cross
EOF
++++++ stack-protect-kernel.patch ++++++
2006-07-27 Arjan van de Ven
participants (1)
-
root@suse.de