Hello community, here is the log from the commit of package gcc43 checked in at Fri Nov 30 16:13:38 CET 2007. -------- --- gcc43/cross-avr-gcc43.changes 2007-11-22 15:52:11.000000000 +0100 +++ /mounts/work_src_done/STABLE/gcc43/cross-avr-gcc43.changes 2007-11-29 12:23:48.000000000 +0100 @@ -1,0 +2,18 @@ +Thu Nov 29 11:31:23 CET 2007 - rguenther@suse.de + +- Update to SVN trunk head (r130511). [#340981] +- Add patch for PR33763. [#344524] +- Add patch for PR34244. [#342603] +- Add patch for PR34238. + +------------------------------------------------------------------- +Fri Nov 23 14:37:50 CET 2007 - rguenther@suse.de + +- Build gcc43-java from libgcj43.spec. +- Shuffle binaries back from gcc43-gij to gcc43-java retaining + only classpath tools in gcc43-gij. +- Add libgcj43-jar package required by libgcj43-devel and only + recommended by libgcj43. +- Fix icecream cross install directory. + +------------------------------------------------------------------- cross-hppa-gcc-icecream-backend.changes: same change cross-i386-gcc-icecream-backend.changes: same change cross-ia64-gcc-icecream-backend.changes: same change cross-ppc64-gcc-icecream-backend.changes: same change cross-ppc-gcc-icecream-backend.changes: same change cross-s390-gcc-icecream-backend.changes: same change cross-s390x-gcc-icecream-backend.changes: same change cross-spu-gcc.changes: same change cross-spu-gcc-static.changes: same change cross-x86_64-gcc-icecream-backend.changes: same change gcc43.changes: same change libgcj43.changes: same change Old: ---- fix-smt-alias gcc-4.3.0-20071118.tar.bz2 pr34148.diff pr34176.diff New: ---- gcc-4.3.0-20071129.tar.bz2 pr33763.diff pr34238.diff pr34244.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cross-avr-gcc43.spec ++++++ --- /var/tmp/diff_new_pack.z29573/_old 2007-11-30 16:12:24.000000000 +0100 +++ /var/tmp/diff_new_pack.z29573/_new 2007-11-30 16:12:24.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package cross-avr-gcc43 (Version 4.3.0_20071118) +# spec file for package cross-avr-gcc43 (Version 4.3.0_20071129) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -54,8 +54,8 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc Url: http://gcc.gnu.org/ License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT -Version: 4.3.0_20071118 -Release: 2 +Version: 4.3.0_20071129 +Release: 1 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) %define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/') @@ -82,9 +82,9 @@ Patch24: tls-no-direct.diff Patch25: pr27880.diff Patch27: revert-pr25950.diff -Patch28: pr34148.diff -Patch29: pr34176.diff -Patch30: fix-smt-alias +Patch28: pr33763.diff +Patch29: pr34244.diff +Patch30: pr34238.diff # A set of patches from the RH srpm Patch51: gcc41-ia64-stack-protector.patch Patch55: gcc41-java-slow_pthread_self.patch @@ -349,6 +349,18 @@ %defattr(-,root,root) %{_prefix} %changelog +* Thu Nov 29 2007 - rguenther@suse.de +- Update to SVN trunk head (r130511). [#340981] +- Add patch for PR33763. [#344524] +- Add patch for PR34244. [#342603] +- Add patch for PR34238. +* Fri Nov 23 2007 - rguenther@suse.de +- Build gcc43-java from libgcj43.spec. +- Shuffle binaries back from gcc43-gij to gcc43-java retaining + only classpath tools in gcc43-gij. +- Add libgcj43-jar package required by libgcj43-devel and only + recommended by libgcj43. +- Fix icecream cross install directory. * Thu Nov 22 2007 - rguenther@suse.de - Simplify biarch rpm-macros. - Add patch for PR34176. [#342236] ++++++ cross-hppa-gcc-icecream-backend.spec ++++++ --- /var/tmp/diff_new_pack.z29573/_old 2007-11-30 16:12:24.000000000 +0100 +++ /var/tmp/diff_new_pack.z29573/_new 2007-11-30 16:12:24.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package cross-hppa-gcc-icecream-backend (Version 4.3.0_20071118) +# spec file for package cross-hppa-gcc-icecream-backend (Version 4.3.0_20071129) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -33,8 +33,8 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc Url: http://gcc.gnu.org/ License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT -Version: 4.3.0_20071118 -Release: 2 +Version: 4.3.0_20071129 +Release: 1 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) %define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/') @@ -61,9 +61,9 @@ Patch24: tls-no-direct.diff Patch25: pr27880.diff Patch27: revert-pr25950.diff -Patch28: pr34148.diff -Patch29: pr34176.diff -Patch30: fix-smt-alias +Patch28: pr33763.diff +Patch29: pr34244.diff +Patch30: pr34238.diff # A set of patches from the RH srpm Patch51: gcc41-ia64-stack-protector.patch Patch55: gcc41-java-slow_pthread_self.patch @@ -334,8 +334,8 @@ install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++ install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc for back in cc1 cc1plus; do - install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back \ - $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back + install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \ + $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back done libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \ ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\ @@ -365,6 +365,18 @@ /usr/share/icecream-envs %changelog +* Thu Nov 29 2007 - rguenther@suse.de +- Update to SVN trunk head (r130511). [#340981] +- Add patch for PR33763. [#344524] +- Add patch for PR34244. [#342603] +- Add patch for PR34238. +* Fri Nov 23 2007 - rguenther@suse.de +- Build gcc43-java from libgcj43.spec. +- Shuffle binaries back from gcc43-gij to gcc43-java retaining + only classpath tools in gcc43-gij. +- Add libgcj43-jar package required by libgcj43-devel and only + recommended by libgcj43. +- Fix icecream cross install directory. * Thu Nov 22 2007 - rguenther@suse.de - Simplify biarch rpm-macros. - Add patch for PR34176. [#342236] cross-i386-gcc-icecream-backend.spec: same change cross-ia64-gcc-icecream-backend.spec: same change cross-ppc64-gcc-icecream-backend.spec: same change cross-ppc-gcc-icecream-backend.spec: same change cross-s390-gcc-icecream-backend.spec: same change cross-s390x-gcc-icecream-backend.spec: same change ++++++ cross-spu-gcc.spec ++++++ --- /var/tmp/diff_new_pack.z29573/_old 2007-11-30 16:12:25.000000000 +0100 +++ /var/tmp/diff_new_pack.z29573/_new 2007-11-30 16:12:25.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package cross-spu-gcc (Version 4.3.0_20071118) +# spec file for package cross-spu-gcc (Version 4.3.0_20071129) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -44,8 +44,8 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc Url: http://gcc.gnu.org/ License: GPL v2 or later -Version: 4.3.0_20071118 -Release: 2 +Version: 4.3.0_20071129 +Release: 1 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) %define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/') @@ -72,9 +72,9 @@ Patch24: tls-no-direct.diff Patch25: pr27880.diff Patch27: revert-pr25950.diff -Patch28: pr34148.diff -Patch29: pr34176.diff -Patch30: fix-smt-alias +Patch28: pr33763.diff +Patch29: pr34244.diff +Patch30: pr34238.diff # A set of patches from the RH srpm Patch51: gcc41-ia64-stack-protector.patch Patch55: gcc41-java-slow_pthread_self.patch @@ -334,6 +334,18 @@ %defattr(-,root,root) %{_prefix} %changelog +* Thu Nov 29 2007 - rguenther@suse.de +- Update to SVN trunk head (r130511). [#340981] +- Add patch for PR33763. [#344524] +- Add patch for PR34244. [#342603] +- Add patch for PR34238. +* Fri Nov 23 2007 - rguenther@suse.de +- Build gcc43-java from libgcj43.spec. +- Shuffle binaries back from gcc43-gij to gcc43-java retaining + only classpath tools in gcc43-gij. +- Add libgcj43-jar package required by libgcj43-devel and only + recommended by libgcj43. +- Fix icecream cross install directory. * Thu Nov 22 2007 - rguenther@suse.de - Simplify biarch rpm-macros. - Add patch for PR34176. [#342236] cross-spu-gcc-static.spec: same change ++++++ cross-x86_64-gcc-icecream-backend.spec ++++++ --- /var/tmp/diff_new_pack.z29573/_old 2007-11-30 16:12:25.000000000 +0100 +++ /var/tmp/diff_new_pack.z29573/_new 2007-11-30 16:12:25.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.3.0_20071118) +# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.3.0_20071129) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -33,8 +33,8 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc Url: http://gcc.gnu.org/ License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT -Version: 4.3.0_20071118 -Release: 2 +Version: 4.3.0_20071129 +Release: 1 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) %define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/') @@ -61,9 +61,9 @@ Patch24: tls-no-direct.diff Patch25: pr27880.diff Patch27: revert-pr25950.diff -Patch28: pr34148.diff -Patch29: pr34176.diff -Patch30: fix-smt-alias +Patch28: pr33763.diff +Patch29: pr34244.diff +Patch30: pr34238.diff # A set of patches from the RH srpm Patch51: gcc41-ia64-stack-protector.patch Patch55: gcc41-java-slow_pthread_self.patch @@ -334,8 +334,8 @@ install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-g++ $RPM_BUILD_ROOT/env/usr/bin/g++ install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc for back in cc1 cc1plus; do - install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back \ - $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back + install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \ + $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back done libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \ ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\ @@ -365,6 +365,18 @@ /usr/share/icecream-envs %changelog +* Thu Nov 29 2007 - rguenther@suse.de +- Update to SVN trunk head (r130511). [#340981] +- Add patch for PR33763. [#344524] +- Add patch for PR34244. [#342603] +- Add patch for PR34238. +* Fri Nov 23 2007 - rguenther@suse.de +- Build gcc43-java from libgcj43.spec. +- Shuffle binaries back from gcc43-gij to gcc43-java retaining + only classpath tools in gcc43-gij. +- Add libgcj43-jar package required by libgcj43-devel and only + recommended by libgcj43. +- Fix icecream cross install directory. * Thu Nov 22 2007 - rguenther@suse.de - Simplify biarch rpm-macros. - Add patch for PR34176. [#342236] ++++++ gcc43.spec ++++++ --- /var/tmp/diff_new_pack.z29573/_old 2007-11-30 16:12:25.000000000 +0100 +++ /var/tmp/diff_new_pack.z29573/_new 2007-11-30 16:12:25.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package gcc43 (Version 4.3.0_20071118) +# spec file for package gcc43 (Version 4.3.0_20071129) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -101,8 +101,8 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc Url: http://gcc.gnu.org/ License: GPL v3 or later -Version: 4.3.0_20071118 -Release: 2 +Version: 4.3.0_20071129 +Release: 1 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) %define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/') @@ -136,9 +136,9 @@ Patch24: tls-no-direct.diff Patch25: pr27880.diff Patch27: revert-pr25950.diff -Patch28: pr34148.diff -Patch29: pr34176.diff -Patch30: fix-smt-alias +Patch28: pr33763.diff +Patch29: pr34244.diff +Patch30: pr34238.diff # A set of patches from the RH srpm Patch51: gcc41-ia64-stack-protector.patch Patch55: gcc41-java-slow_pthread_self.patch @@ -877,23 +877,12 @@ %run_ldconfig # PACKAGE-END -%package java -Summary: The GNU Java Compiler -Group: Development/Languages/Java -AutoReqProv: on -Requires: gcc43 = %{version}-%{release} -Requires: libgcj43-devel = %{version} - -%description java -The Java compiler from the GCC-tools-suite. - - - %package -n libgcj43 # LIBJAVA-DELETE-END Summary: Java Runtime Library for gcc Group: System/Libraries %define gcj_sover 9 +Recommends: libgcj43-jar = %{version}-%{release} Provides: libgcj%{gcj_sover} = %{version}-%{release} Obsoletes: libgcj%{gcj_sover} < %{version}-%{release} AutoReqProv: on @@ -910,15 +899,27 @@ %postun -n libgcj43 %run_ldconfig +%package -n gcc43-java +Summary: The GNU Java Compiler +Group: Development/Languages/Java +AutoReqProv: on +Requires: gcc43 = %{version} +Requires: libgcj43-devel = %{version}-%{release} + +%description -n gcc43-java +The Java compiler from the GCC-tools-suite. + + + %package -n libgcj_bc43 Summary: Fake library for BC-ABI compatibility. Group: System/Libraries AutoReqProv: on Provides: libgcj_bc1 = %{version}-%{release} # make rpm happy -Obsoletes: libgcj_bc42@variant@ +Obsoletes: libgcj_bc42 # make zypp happy -Provides: libgcj_bc42@variant@ +Provides: libgcj_bc42 %description -n libgcj_bc43 A fake library that is used at link time only. It ensures that binaries @@ -933,6 +934,15 @@ %postun -n libgcj_bc43 %run_ldconfig +%package -n libgcj43-jar +Summary: Java runtime library (jar files). +Group: System/Libraries + +%description -n libgcj43-jar +These are the jar files that go along with the gcj front end to gcc. + + + %package -n libgcj43-devel Summary: Include Files and Libraries mandatory for Development Group: Development/Libraries/Java @@ -940,6 +950,7 @@ Requires: libstdc++43-devel = %{version} Requires: libgcj%{gcj_sover} >= %{version}-%{release} Requires: libgcj_bc1 >= %{version}-%{release} +Requires: libgcj43-jar = %{version}-%{release} Requires: gtk2-devel Requires: libart_lgpl-devel Requires: glibc-devel @@ -1439,8 +1450,26 @@ 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 +make -C gcc java.install-common DESTDIR=$RPM_BUILD_ROOT +make -C gcc install-common DESTDIR=$RPM_BUILD_ROOT COMPILERS='jc1$(exeext) jvgenmain$(exeext)' +# install-common also installs collect2, gcov and the g++ and gfortran driver +%if %{build_cp} +rm $RPM_BUILD_ROOT%{_prefix}/bin/g++%{binsuffix} +%endif +%if %{build_fortran} +rm $RPM_BUILD_ROOT%{_prefix}/bin/gfortran%{binsuffix} +%endif +rm $RPM_BUILD_ROOT%{_prefix}/bin/gcov%{binsuffix} +rm $RPM_BUILD_ROOT%{libsubdir}/collect2 %else make install DESTDIR=$RPM_BUILD_ROOT +%if %{build_java} +make -C gcc java.uninstall DESTDIR=$RPM_BUILD_ROOT +rm $RPM_BUILD_ROOT%{_prefix}/bin/jcf-dump%{binsuffix} +rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1 +rm $RPM_BUILD_ROOT%{libsubdir}/jc1 +rm $RPM_BUILD_ROOT%{libsubdir}/jvgenmain +%endif %endif # Remove some useless .la files for lib in libobjc libgfortran libgfortranbegin libmudflap libmudflapth \ @@ -1645,8 +1674,8 @@ rm -r $RPM_BUILD_ROOT%{_libdir}/security %endif %if %{build_java} -rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1 %if !%{build_libjava} +rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj-dbtool%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/gij%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/grmic%{binsuffix}.1 @@ -1668,12 +1697,8 @@ %endif %endif %if 0%{?building_libjava:1} -# For building libjava only we need to delete other manpages -rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj%{binsuffix}.1 -rm $RPM_BUILD_ROOT%{_mandir}/man1/gcjh%{binsuffix}.1 -rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1 +# For building libjava only we need to delete other info docs rm $RPM_BUILD_ROOT%{_infodir}/cp-tools.info* -%else # For building the java frontend we need to copy the ecj jar mkdir -p $RPM_BUILD_ROOT%{libsubdir} cp $RPM_SOURCE_DIR/ecj.jar $RPM_BUILD_ROOT%{libsubdir} @@ -2025,19 +2050,30 @@ %{mainlibdir}/libgnarl-*.so %{mainlibdir}/libgnat-*.so %endif +# LIBJAVA-DELETE-END %if %{build_java} +%if 0%{?building_libjava:1} -%files java +%files -n gcc43-java %defattr(-,root,root) %{_prefix}/bin/gcj%{binsuffix} +%{_prefix}/bin/gcjh%{binsuffix} +%{_prefix}/bin/gcj-dbtool%{binsuffix} %{_prefix}/bin/jcf-dump%{binsuffix} +%{_prefix}/bin/jv-convert%{binsuffix} +%{_prefix}/bin/gc-analyze%{binsuffix} %{libsubdir}/jc1 %{libsubdir}/jvgenmain %{libsubdir}/ecj.jar +%{libsubdir}/ecj1 %doc %{_mandir}/man1/gcj%{binsuffix}.1.gz +%doc %{_mandir}/man1/gcjh%{binsuffix}.1.gz +%doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz %doc %{_mandir}/man1/jcf-dump%{binsuffix}.1.gz +%doc %{_mandir}/man1/jv-convert%{binsuffix}.1.gz +%doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz +%endif %endif -# LIBJAVA-DELETE-END %if %{build_java} %if %{build_libjava} @@ -2047,8 +2083,6 @@ %dir %{_libdir}/gcc %dir %{_libdir}/gcc/%{GCCDIST} %dir %{libsubdir} -%{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar -%{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/classmap.db # We usually do not multilib libjava %if %{biarch_libjava} @@ -2077,6 +2111,11 @@ %mainlib libgcj_bc.so.* %endif +%files -n libgcj43-jar +%defattr(-,root,root) +%{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar +%{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar + %files -n libgcj43-devel %defattr(-,root,root) %dir %{_prefix}/include/c++ @@ -2097,7 +2136,6 @@ %{gxxinclude}/org %{gxxinclude}/sun %{libsubdir}/include/gcj -%{libsubdir}/ecj1 %if %{biarch_libjava} %versbiarchlib libgcj.so %versbiarchlib libgcj.spec @@ -2114,33 +2152,27 @@ %files -n gcc43-gij %defattr(-,root,root) -%{_prefix}/bin/gappletviewer%{binsuffix} -%{_prefix}/bin/gjarsigner%{binsuffix} -%{_prefix}/bin/gkeytool%{binsuffix} -%{_prefix}/bin/grmic%{binsuffix} -%{_prefix}/bin/grmiregistry%{binsuffix} -%{_prefix}/bin/grmid%{binsuffix} -%{_prefix}/bin/jv-convert%{binsuffix} -%{_prefix}/bin/gcj-dbtool%{binsuffix} %{_prefix}/bin/gij%{binsuffix} +%{_prefix}/bin/gappletviewer%{binsuffix} %{_prefix}/bin/gjar%{binsuffix} -%{_prefix}/bin/gc-analyze%{binsuffix} +%{_prefix}/bin/gjarsigner%{binsuffix} %{_prefix}/bin/gjavah%{binsuffix} +%{_prefix}/bin/gkeytool%{binsuffix} %{_prefix}/bin/gnative2ascii%{binsuffix} %{_prefix}/bin/gorbd%{binsuffix} +%{_prefix}/bin/grmic%{binsuffix} +%{_prefix}/bin/grmid%{binsuffix} +%{_prefix}/bin/grmiregistry%{binsuffix} %{_prefix}/bin/gserialver%{binsuffix} %{_prefix}/bin/gtnameserv%{binsuffix} -%{_prefix}/bin/gcjh%{binsuffix} -%doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz %doc %{_mandir}/man1/gij%{binsuffix}.1.gz -%doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz +%doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz %doc %{_mandir}/man1/grmic%{binsuffix}.1.gz %doc %{_mandir}/man1/grmid%{binsuffix}.1.gz %doc %{_mandir}/man1/grmiregistry%{binsuffix}.1.gz %doc %{_mandir}/man1/gkeytool%{binsuffix}.1.gz %doc %{_mandir}/man1/gjar%{binsuffix}.1.gz %doc %{_mandir}/man1/gjarsigner%{binsuffix}.1.gz -%doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz %doc %{_mandir}/man1/gjavah%{binsuffix}.1.gz %doc %{_mandir}/man1/gnative2ascii%{binsuffix}.1.gz %doc %{_mandir}/man1/gorbd%{binsuffix}.1.gz @@ -2181,6 +2213,18 @@ %endif %changelog +* Thu Nov 29 2007 - rguenther@suse.de +- Update to SVN trunk head (r130511). [#340981] +- Add patch for PR33763. [#344524] +- Add patch for PR34244. [#342603] +- Add patch for PR34238. +* Fri Nov 23 2007 - rguenther@suse.de +- Build gcc43-java from libgcj43.spec. +- Shuffle binaries back from gcc43-gij to gcc43-java retaining + only classpath tools in gcc43-gij. +- Add libgcj43-jar package required by libgcj43-devel and only + recommended by libgcj43. +- Fix icecream cross install directory. * Thu Nov 22 2007 - rguenther@suse.de - Simplify biarch rpm-macros. - Add patch for PR34176. [#342236] ++++++ libgcj43.spec ++++++ --- /var/tmp/diff_new_pack.z29573/_old 2007-11-30 16:12:25.000000000 +0100 +++ /var/tmp/diff_new_pack.z29573/_new 2007-11-30 16:12:25.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package libgcj43 (Version 4.3.0_20071118) +# spec file for package libgcj43 (Version 4.3.0_20071129) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -113,8 +113,8 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc Url: http://gcc.gnu.org/ License: GPL v2 or later; LGPL v2.1 or later -Version: 4.3.0_20071118 -Release: 2 +Version: 4.3.0_20071129 +Release: 1 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) %define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/') @@ -148,9 +148,9 @@ Patch24: tls-no-direct.diff Patch25: pr27880.diff Patch27: revert-pr25950.diff -Patch28: pr34148.diff -Patch29: pr34176.diff -Patch30: fix-smt-alias +Patch28: pr33763.diff +Patch29: pr34244.diff +Patch30: pr34238.diff # A set of patches from the RH srpm Patch51: gcc41-ia64-stack-protector.patch Patch55: gcc41-java-slow_pthread_self.patch @@ -158,6 +158,7 @@ Summary: Java Runtime Library for gcc Group: System/Libraries %define gcj_sover 9 +Recommends: libgcj43-jar = %{version}-%{release} Provides: libgcj%{gcj_sover} = %{version}-%{release} Obsoletes: libgcj%{gcj_sover} < %{version}-%{release} AutoReqProv: on @@ -174,15 +175,27 @@ %postun %run_ldconfig +%package -n gcc43-java +Summary: The GNU Java Compiler +Group: Development/Languages/Java +AutoReqProv: on +Requires: gcc43 = %{version} +Requires: libgcj43-devel = %{version}-%{release} + +%description -n gcc43-java +The Java compiler from the GCC-tools-suite. + + + %package -n libgcj_bc43 Summary: Fake library for BC-ABI compatibility. Group: System/Libraries AutoReqProv: on Provides: libgcj_bc1 = %{version}-%{release} # make rpm happy -Obsoletes: libgcj_bc42@variant@ +Obsoletes: libgcj_bc42 # make zypp happy -Provides: libgcj_bc42@variant@ +Provides: libgcj_bc42 %description -n libgcj_bc43 A fake library that is used at link time only. It ensures that binaries @@ -197,6 +210,15 @@ %postun -n libgcj_bc43 %run_ldconfig +%package -n libgcj43-jar +Summary: Java runtime library (jar files). +Group: System/Libraries + +%description -n libgcj43-jar +These are the jar files that go along with the gcj front end to gcc. + + + %package -n libgcj43-devel Summary: Include Files and Libraries mandatory for Development Group: Development/Libraries/Java @@ -204,6 +226,7 @@ Requires: libstdc++43-devel = %{version} Requires: libgcj%{gcj_sover} >= %{version}-%{release} Requires: libgcj_bc1 >= %{version}-%{release} +Requires: libgcj43-jar = %{version}-%{release} Requires: gtk2-devel Requires: libart_lgpl-devel Requires: glibc-devel @@ -703,8 +726,26 @@ 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 +make -C gcc java.install-common DESTDIR=$RPM_BUILD_ROOT +make -C gcc install-common DESTDIR=$RPM_BUILD_ROOT COMPILERS='jc1$(exeext) jvgenmain$(exeext)' +# install-common also installs collect2, gcov and the g++ and gfortran driver +%if %{build_cp} +rm $RPM_BUILD_ROOT%{_prefix}/bin/g++%{binsuffix} +%endif +%if %{build_fortran} +rm $RPM_BUILD_ROOT%{_prefix}/bin/gfortran%{binsuffix} +%endif +rm $RPM_BUILD_ROOT%{_prefix}/bin/gcov%{binsuffix} +rm $RPM_BUILD_ROOT%{libsubdir}/collect2 %else make install DESTDIR=$RPM_BUILD_ROOT +%if %{build_java} +make -C gcc java.uninstall DESTDIR=$RPM_BUILD_ROOT +rm $RPM_BUILD_ROOT%{_prefix}/bin/jcf-dump%{binsuffix} +rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1 +rm $RPM_BUILD_ROOT%{libsubdir}/jc1 +rm $RPM_BUILD_ROOT%{libsubdir}/jvgenmain +%endif %endif # Remove some useless .la files for lib in libobjc libgfortran libgfortranbegin libmudflap libmudflapth \ @@ -843,8 +884,8 @@ rm -r $RPM_BUILD_ROOT%{_libdir}/security %endif %if %{build_java} -rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1 %if !%{build_libjava} +rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj-dbtool%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/gij%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/grmic%{binsuffix}.1 @@ -866,17 +907,36 @@ %endif %endif %if 0%{?building_libjava:1} -# For building libjava only we need to delete other manpages -rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj%{binsuffix}.1 -rm $RPM_BUILD_ROOT%{_mandir}/man1/gcjh%{binsuffix}.1 -rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1 +# For building libjava only we need to delete other info docs rm $RPM_BUILD_ROOT%{_infodir}/cp-tools.info* -%else # For building the java frontend we need to copy the ecj jar mkdir -p $RPM_BUILD_ROOT%{libsubdir} cp $RPM_SOURCE_DIR/ecj.jar $RPM_BUILD_ROOT%{libsubdir} %endif %if %{build_java} +%if 0%{?building_libjava:1} + +%files -n gcc43-java +%defattr(-,root,root) +%{_prefix}/bin/gcj%{binsuffix} +%{_prefix}/bin/gcjh%{binsuffix} +%{_prefix}/bin/gcj-dbtool%{binsuffix} +%{_prefix}/bin/jcf-dump%{binsuffix} +%{_prefix}/bin/jv-convert%{binsuffix} +%{_prefix}/bin/gc-analyze%{binsuffix} +%{libsubdir}/jc1 +%{libsubdir}/jvgenmain +%{libsubdir}/ecj.jar +%{libsubdir}/ecj1 +%doc %{_mandir}/man1/gcj%{binsuffix}.1.gz +%doc %{_mandir}/man1/gcjh%{binsuffix}.1.gz +%doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz +%doc %{_mandir}/man1/jcf-dump%{binsuffix}.1.gz +%doc %{_mandir}/man1/jv-convert%{binsuffix}.1.gz +%doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz +%endif +%endif +%if %{build_java} %if %{build_libjava} %files @@ -885,8 +945,6 @@ %dir %{_libdir}/gcc %dir %{_libdir}/gcc/%{GCCDIST} %dir %{libsubdir} -%{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar -%{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/classmap.db # We usually do not multilib libjava %if %{biarch_libjava} @@ -915,6 +973,11 @@ %mainlib libgcj_bc.so.* %endif +%files -n libgcj43-jar +%defattr(-,root,root) +%{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar +%{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar + %files -n libgcj43-devel %defattr(-,root,root) %dir %{_prefix}/include/c++ @@ -935,7 +998,6 @@ %{gxxinclude}/org %{gxxinclude}/sun %{libsubdir}/include/gcj -%{libsubdir}/ecj1 %if %{biarch_libjava} %versbiarchlib libgcj.so %versbiarchlib libgcj.spec @@ -952,33 +1014,27 @@ %files -n gcc43-gij %defattr(-,root,root) -%{_prefix}/bin/gappletviewer%{binsuffix} -%{_prefix}/bin/gjarsigner%{binsuffix} -%{_prefix}/bin/gkeytool%{binsuffix} -%{_prefix}/bin/grmic%{binsuffix} -%{_prefix}/bin/grmiregistry%{binsuffix} -%{_prefix}/bin/grmid%{binsuffix} -%{_prefix}/bin/jv-convert%{binsuffix} -%{_prefix}/bin/gcj-dbtool%{binsuffix} %{_prefix}/bin/gij%{binsuffix} +%{_prefix}/bin/gappletviewer%{binsuffix} %{_prefix}/bin/gjar%{binsuffix} -%{_prefix}/bin/gc-analyze%{binsuffix} +%{_prefix}/bin/gjarsigner%{binsuffix} %{_prefix}/bin/gjavah%{binsuffix} +%{_prefix}/bin/gkeytool%{binsuffix} %{_prefix}/bin/gnative2ascii%{binsuffix} %{_prefix}/bin/gorbd%{binsuffix} +%{_prefix}/bin/grmic%{binsuffix} +%{_prefix}/bin/grmid%{binsuffix} +%{_prefix}/bin/grmiregistry%{binsuffix} %{_prefix}/bin/gserialver%{binsuffix} %{_prefix}/bin/gtnameserv%{binsuffix} -%{_prefix}/bin/gcjh%{binsuffix} -%doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz %doc %{_mandir}/man1/gij%{binsuffix}.1.gz -%doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz +%doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz %doc %{_mandir}/man1/grmic%{binsuffix}.1.gz %doc %{_mandir}/man1/grmid%{binsuffix}.1.gz %doc %{_mandir}/man1/grmiregistry%{binsuffix}.1.gz %doc %{_mandir}/man1/gkeytool%{binsuffix}.1.gz %doc %{_mandir}/man1/gjar%{binsuffix}.1.gz %doc %{_mandir}/man1/gjarsigner%{binsuffix}.1.gz -%doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz %doc %{_mandir}/man1/gjavah%{binsuffix}.1.gz %doc %{_mandir}/man1/gnative2ascii%{binsuffix}.1.gz %doc %{_mandir}/man1/gorbd%{binsuffix}.1.gz @@ -1019,6 +1075,18 @@ %endif %changelog +* Thu Nov 29 2007 - rguenther@suse.de +- Update to SVN trunk head (r130511). [#340981] +- Add patch for PR33763. [#344524] +- Add patch for PR34244. [#342603] +- Add patch for PR34238. +* Fri Nov 23 2007 - rguenther@suse.de +- Build gcc43-java from libgcj43.spec. +- Shuffle binaries back from gcc43-gij to gcc43-java retaining + only classpath tools in gcc43-gij. +- Add libgcj43-jar package required by libgcj43-devel and only + recommended by libgcj43. +- Fix icecream cross install directory. * Thu Nov 22 2007 - rguenther@suse.de - Simplify biarch rpm-macros. - Add patch for PR34176. [#342236] ++++++ cross-icecream.spec.in ++++++ --- gcc43/cross-icecream.spec.in 2007-11-22 15:44:54.000000000 +0100 +++ /mounts/work_src_done/STABLE/gcc43/cross-icecream.spec.in 2007-11-24 19:56:21.000000000 +0100 @@ -55,8 +55,8 @@ install -s $RPM_BUILD_ROOT/inst%{_prefix}/bin/${BUILD_TARGET}-linux-gcc $RPM_BUILD_ROOT/env/usr/bin/gcc for back in cc1 cc1plus; do - install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back \ - $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%gcc_version/$back + install -s -D $RPM_BUILD_ROOT/inst%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back \ + $RPM_BUILD_ROOT/env%{_libdir}/gcc/${BUILD_TARGET}-linux/%{gcc_dir_version}/$back done libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/*; do \ ++++++ gcc-4.3.0-20071118.tar.bz2 -> gcc-4.3.0-20071129.tar.bz2 ++++++ gcc43/gcc-4.3.0-20071118.tar.bz2 /mounts/work_src_done/STABLE/gcc43/gcc-4.3.0-20071129.tar.bz2 differ: byte 11, line 1 ++++++ gcc.spec.in ++++++ --- gcc43/gcc.spec.in 2007-11-22 15:52:27.000000000 +0100 +++ /mounts/work_src_done/STABLE/gcc43/gcc.spec.in 2007-11-29 15:09:38.000000000 +0100 @@ -117,7 +117,7 @@ URL: http://gcc.gnu.org/ License: GPL -Version: 4.3.0_20071118 +Version: 4.3.0_20071129 Release: 1 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) @@ -154,9 +154,9 @@ Patch24: tls-no-direct.diff Patch25: pr27880.diff Patch27: revert-pr25950.diff -Patch28: pr34148.diff -Patch29: pr34176.diff -Patch30: fix-smt-alias +Patch28: pr33763.diff +Patch29: pr34244.diff +Patch30: pr34238.diff # A set of patches from the RH srpm Patch51: gcc41-ia64-stack-protector.patch Patch55: gcc41-java-slow_pthread_self.patch @@ -479,22 +479,12 @@ # PACKAGE-END -%package java -Summary: The GNU Java Compiler -Group: Development/Languages/Java -Autoreqprov: on -Requires: gcc@base_ver@ = %{version}-%{release} -Requires: libgcj@base_ver@-devel = %{version} - -%description java -The Java compiler from the GCC-tools-suite. - - %package -n libgcj@base_ver@ # LIBJAVA-DELETE-END Summary: Java Runtime Library for gcc Group: System/Libraries %define gcj_sover 9 +Recommends: libgcj@base_ver@-jar = %{version}-%{release} Provides: libgcj%{gcj_sover} = %{version}-%{release} Obsoletes: libgcj%{gcj_sover} < %{version}-%{release} Autoreqprov: on @@ -510,15 +500,26 @@ %run_ldconfig +%package -n gcc@base_ver@-java +Summary: The GNU Java Compiler +Group: Development/Languages/Java +Autoreqprov: on +Requires: gcc@base_ver@ = %{version} +Requires: libgcj@base_ver@-devel = %{version}-%{release} + +%description -n gcc@base_ver@-java +The Java compiler from the GCC-tools-suite. + + %package -n libgcj_bc@base_ver@ Summary: Fake library for BC-ABI compatibility. Group: Development/Libraries/Java Autoreqprov: on Provides: libgcj_bc1 = %{version}-%{release} # make rpm happy -Obsoletes: libgcj_bc42@variant@ +Obsoletes: libgcj_bc42 # make zypp happy -Provides: libgcj_bc42@variant@ +Provides: libgcj_bc42 %description -n libgcj_bc@base_ver@ @@ -534,6 +535,14 @@ %run_ldconfig +%package -n libgcj@base_ver@-jar +Summary: Java runtime library (jar files). +Group: Development/Libraries/Java + +%description -n libgcj@base_ver@-jar +These are the jar files that go along with the gcj front end to gcc. + + %package -n libgcj@base_ver@-devel Summary: Include Files and Libraries mandatory for Development. Group: Development/Libraries/Java @@ -541,6 +550,7 @@ Requires: libstdc++@base_ver@-devel = %{version} Requires: libgcj%{gcj_sover} >= %{version}-%{release} Requires: libgcj_bc1 >= %{version}-%{release} +Requires: libgcj@base_ver@-jar = %{version}-%{release} Requires: gtk2-devel Requires: libart_lgpl-devel Requires: glibc-devel @@ -989,8 +999,26 @@ 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 +make -C gcc java.install-common DESTDIR=$RPM_BUILD_ROOT +make -C gcc install-common DESTDIR=$RPM_BUILD_ROOT COMPILERS='jc1$(exeext) jvgenmain$(exeext)' +# install-common also installs collect2, gcov and the g++ and gfortran driver +%if %{build_cp} +rm $RPM_BUILD_ROOT%{_prefix}/bin/g++%{binsuffix} +%endif +%if %{build_fortran} +rm $RPM_BUILD_ROOT%{_prefix}/bin/gfortran%{binsuffix} +%endif +rm $RPM_BUILD_ROOT%{_prefix}/bin/gcov%{binsuffix} +rm $RPM_BUILD_ROOT%{libsubdir}/collect2 %else make install DESTDIR=$RPM_BUILD_ROOT +%if %{build_java} +make -C gcc java.uninstall DESTDIR=$RPM_BUILD_ROOT +rm $RPM_BUILD_ROOT%{_prefix}/bin/jcf-dump%{binsuffix} +rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1 +rm $RPM_BUILD_ROOT%{libsubdir}/jc1 +rm $RPM_BUILD_ROOT%{libsubdir}/jvgenmain +%endif %endif # Remove some useless .la files @@ -1208,8 +1236,8 @@ rm -r $RPM_BUILD_ROOT%{_libdir}/security %endif %if %{build_java} -rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1 %if !%{build_libjava} +rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj-dbtool%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/gij%{binsuffix}.1 rm $RPM_BUILD_ROOT%{_mandir}/man1/grmic%{binsuffix}.1 @@ -1232,12 +1260,8 @@ %endif %if 0%{?building_libjava:1} -# For building libjava only we need to delete other manpages -rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj%{binsuffix}.1 -rm $RPM_BUILD_ROOT%{_mandir}/man1/gcjh%{binsuffix}.1 -rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1 +# For building libjava only we need to delete other info docs rm $RPM_BUILD_ROOT%{_infodir}/cp-tools.info* -%else # For building the java frontend we need to copy the ecj jar mkdir -p $RPM_BUILD_ROOT%{libsubdir} cp $RPM_SOURCE_DIR/ecj.jar $RPM_BUILD_ROOT%{libsubdir} @@ -1595,20 +1619,31 @@ %{mainlibdir}/libgnarl-*.so %{mainlibdir}/libgnat-*.so %endif +# LIBJAVA-DELETE-END %if %{build_java} -%files java +%if 0%{?building_libjava:1} +%files -n gcc@base_ver@-java %defattr(-,root,root) %{_prefix}/bin/gcj%{binsuffix} +%{_prefix}/bin/gcjh%{binsuffix} +%{_prefix}/bin/gcj-dbtool%{binsuffix} %{_prefix}/bin/jcf-dump%{binsuffix} +%{_prefix}/bin/jv-convert%{binsuffix} +%{_prefix}/bin/gc-analyze%{binsuffix} %{libsubdir}/jc1 %{libsubdir}/jvgenmain %{libsubdir}/ecj.jar +%{libsubdir}/ecj1 %doc %{_mandir}/man1/gcj%{binsuffix}.1.gz +%doc %{_mandir}/man1/gcjh%{binsuffix}.1.gz +%doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz %doc %{_mandir}/man1/jcf-dump%{binsuffix}.1.gz +%doc %{_mandir}/man1/jv-convert%{binsuffix}.1.gz +%doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz +%endif %endif -# LIBJAVA-DELETE-END %if %{build_java} %if %{build_libjava} @@ -1618,8 +1653,6 @@ %dir %{_libdir}/gcc %dir %{_libdir}/gcc/%{GCCDIST} %dir %{libsubdir} -%{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar -%{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/classmap.db # We usually do not multilib libjava %if %{biarch_libjava} @@ -1648,6 +1681,11 @@ %mainlib libgcj_bc.so.* %endif +%files -n libgcj@base_ver@-jar +%defattr(-,root,root) +%{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar +%{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar + %files -n libgcj@base_ver@-devel %defattr(-,root,root) %dir %{_prefix}/include/c++ @@ -1668,7 +1706,6 @@ %{gxxinclude}/org %{gxxinclude}/sun %{libsubdir}/include/gcj -%{libsubdir}/ecj1 %if %{biarch_libjava} %versbiarchlib libgcj.so %versbiarchlib libgcj.spec @@ -1685,33 +1722,27 @@ %files -n gcc@base_ver@-gij %defattr(-,root,root) -%{_prefix}/bin/gappletviewer%{binsuffix} -%{_prefix}/bin/gjarsigner%{binsuffix} -%{_prefix}/bin/gkeytool%{binsuffix} -%{_prefix}/bin/grmic%{binsuffix} -%{_prefix}/bin/grmiregistry%{binsuffix} -%{_prefix}/bin/grmid%{binsuffix} -%{_prefix}/bin/jv-convert%{binsuffix} -%{_prefix}/bin/gcj-dbtool%{binsuffix} %{_prefix}/bin/gij%{binsuffix} +%{_prefix}/bin/gappletviewer%{binsuffix} %{_prefix}/bin/gjar%{binsuffix} -%{_prefix}/bin/gc-analyze%{binsuffix} +%{_prefix}/bin/gjarsigner%{binsuffix} %{_prefix}/bin/gjavah%{binsuffix} +%{_prefix}/bin/gkeytool%{binsuffix} %{_prefix}/bin/gnative2ascii%{binsuffix} %{_prefix}/bin/gorbd%{binsuffix} +%{_prefix}/bin/grmic%{binsuffix} +%{_prefix}/bin/grmid%{binsuffix} +%{_prefix}/bin/grmiregistry%{binsuffix} %{_prefix}/bin/gserialver%{binsuffix} %{_prefix}/bin/gtnameserv%{binsuffix} -%{_prefix}/bin/gcjh%{binsuffix} -%doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz %doc %{_mandir}/man1/gij%{binsuffix}.1.gz -%doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz +%doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz %doc %{_mandir}/man1/grmic%{binsuffix}.1.gz %doc %{_mandir}/man1/grmid%{binsuffix}.1.gz %doc %{_mandir}/man1/grmiregistry%{binsuffix}.1.gz %doc %{_mandir}/man1/gkeytool%{binsuffix}.1.gz %doc %{_mandir}/man1/gjar%{binsuffix}.1.gz %doc %{_mandir}/man1/gjarsigner%{binsuffix}.1.gz -%doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz %doc %{_mandir}/man1/gjavah%{binsuffix}.1.gz %doc %{_mandir}/man1/gnative2ascii%{binsuffix}.1.gz %doc %{_mandir}/man1/gorbd%{binsuffix}.1.gz ++++++ pr34148.diff -> pr33763.diff ++++++ --- gcc43/pr34148.diff 2007-11-22 15:45:02.000000000 +0100 +++ /mounts/work_src_done/STABLE/gcc43/pr33763.diff 2007-11-28 14:16:49.000000000 +0100 @@ -1,43 +1,19 @@ -2007-11-20 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/34148 - * tree-ssa-structalias.c (create_variable_info_for): Do not use - field-sensitive PTA for single-element structures. - * tree-ssa-alias.c (create_overlap_variables_for): Do not create - SFTs for single-element structures. - -Index: gcc/tree-ssa-structalias.c +Index: gcc/tree-inline.c =================================================================== -*** gcc/tree-ssa-structalias.c (revision 130288) ---- gcc/tree-ssa-structalias.c (working copy) -*************** create_variable_info_for (tree decl, con -*** 4441,4446 **** ---- 4441,4447 ---- - && !notokay - && !vi->is_unknown_size_var - && var_can_have_subvars (decl) -+ && VEC_length (fieldoff_s, fieldstack) > 1 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) +*** gcc/tree-inline.c (revision 130489) +--- gcc/tree-inline.c (working copy) +*************** expand_call_inline (basic_block bb, tree +*** 2573,2578 **** +--- 2573,2584 ---- + if (!cgraph_inline_p (cg_edge, &reason)) { - unsigned int newindex = VEC_length (varinfo_t, varmap); -Index: gcc/tree-ssa-alias.c -=================================================================== -*** gcc/tree-ssa-alias.c (revision 130288) ---- gcc/tree-ssa-alias.c (working copy) -*************** create_overlap_variables_for (tree var) -*** 3837,3843 **** - TREE_TYPE (var)); - /* Make sure to not create SFTs for structs we won't generate variable - infos for. See tree-ssa-structalias.c:create_variable_info_for (). */ -! if (VEC_length (fieldoff_s, fieldstack) != 0 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) - { - subvar_t *subvars; ---- 3837,3843 ---- - TREE_TYPE (var)); - /* Make sure to not create SFTs for structs we won't generate variable - infos for. See tree-ssa-structalias.c:create_variable_info_for (). */ -! if (VEC_length (fieldoff_s, fieldstack) > 1 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) - { - subvar_t *subvars; + if (lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn)) ++ /* For extern inline functions that get redefined we always ++ silently ignored alway_inline flag. Better behaviour would ++ be to be able to keep both bodies and use extern inline body ++ for inlining, but we can't do that because frontends overwrite ++ the body. */ ++ && !cg_edge->callee->local.redefined_extern_inline + /* Avoid warnings during early inline pass. */ + && (!flag_unit_at_a_time || cgraph_global_info_ready)) + { ++++++ pr34148.diff -> pr34238.diff ++++++ --- gcc43/pr34148.diff 2007-11-22 15:45:02.000000000 +0100 +++ /mounts/work_src_done/STABLE/gcc43/pr34238.diff 2007-11-29 12:23:26.000000000 +0100 @@ -1,43 +1,70 @@ -2007-11-20 Richard Guenther <rguenther@suse.de> +Hi! + +As shown by the attached testcase (which is probably valid, as +A<>::a is never used and so it shouldn't be necessary to define +it), the DECL_INITIAL (decl) == NULL check doesn't work in cases +where it is actually never needed, only instantiated +(in that case tsubst_decl clears DECL_INITIAL: + /* We do NOT check for matching decls pushed separately at this + point, as they may not represent instantiations of this + template, and in any case are considered separate under the + discrete model. */ + r = copy_decl (t); + DECL_USE_TEMPLATE (r) = 0; + TREE_TYPE (r) = type; + /* Clear out the mangled name and RTL for the instantiation. */ + SET_DECL_ASSEMBLER_NAME (r, NULL_TREE); + SET_DECL_RTL (r, NULL_RTX); + DECL_INITIAL (r) = NULL_TREE; + DECL_CONTEXT (r) = ctx; +). The following patch fixes that. For the const static data members +with initializers in the class definition we won't issue any diagnostics, +but IMHO that's far less severe than making up the vars with default +initializer when there is none. I've also tried (attached patch) +instead delay this diagnostics after the vars have been output, so we +know for sure if it was emitted or not. That also fixes this anon9.C +and anon10.C gives diagnostics while it is without any diagnostics ATM, +but anon6.C breaks - there is the A<int>::c var actually emitted into +assembly, even when nobody really needs it :( (with or without the patch), +so with that alternate patch which checks TREE_ASM_WRITTEN we error on +anon6.C. + +Is the first patch ok for trunk? Bootstrapped/regtested on x86_64-linux. + +2007-11-26 Jakub Jelinek <jakub@redhat.com> + + PR c++/34238 + * decl2.c (cp_write_global_declarations): Test + !DECL_INITIALIZED_IN_CLASS_P instead of checking NULL + DECL_INITIAL. + + * g++.dg/ext/visibility/anon9.C: New test. + +--- gcc/cp/decl2.c.jj 2007-11-22 15:03:54.000000000 +0100 ++++ gcc/cp/decl2.c 2007-11-26 21:04:38.000000000 +0100 +@@ -3375,7 +3375,7 @@ cp_write_global_declarations (void) + namespace { struct A { static const int i = 4; } }; + decl_needed_p won't reliably detect whether it was + really needed. */ +- if (DECL_IN_AGGR_P (decl) && DECL_INITIAL (decl) == NULL_TREE) ++ if (DECL_IN_AGGR_P (decl) && !DECL_INITIALIZED_IN_CLASS_P (decl)) + error ("%Jstatic data member %qD used, but not defined", + decl, decl); + DECL_EXTERNAL (decl) = 0; +--- gcc/testsuite/g++.dg/ext/visibility/anon9.C.jj 2007-11-26 21:37:34.000000000 +0100 ++++ gcc/testsuite/g++.dg/ext/visibility/anon9.C 2007-11-26 21:38:01.000000000 +0100 +@@ -0,0 +1,11 @@ ++// PR c++/34238 ++// { dg-do compile } ++ ++namespace ++{ ++ template <typename T = int> struct A ++ { ++ static const bool a = true; ++ }; ++} ++struct A<> a; + + Jakub - PR tree-optimization/34148 - * tree-ssa-structalias.c (create_variable_info_for): Do not use - field-sensitive PTA for single-element structures. - * tree-ssa-alias.c (create_overlap_variables_for): Do not create - SFTs for single-element structures. - -Index: gcc/tree-ssa-structalias.c -=================================================================== -*** gcc/tree-ssa-structalias.c (revision 130288) ---- gcc/tree-ssa-structalias.c (working copy) -*************** create_variable_info_for (tree decl, con -*** 4441,4446 **** ---- 4441,4447 ---- - && !notokay - && !vi->is_unknown_size_var - && var_can_have_subvars (decl) -+ && VEC_length (fieldoff_s, fieldstack) > 1 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) - { - unsigned int newindex = VEC_length (varinfo_t, varmap); -Index: gcc/tree-ssa-alias.c -=================================================================== -*** gcc/tree-ssa-alias.c (revision 130288) ---- gcc/tree-ssa-alias.c (working copy) -*************** create_overlap_variables_for (tree var) -*** 3837,3843 **** - TREE_TYPE (var)); - /* Make sure to not create SFTs for structs we won't generate variable - infos for. See tree-ssa-structalias.c:create_variable_info_for (). */ -! if (VEC_length (fieldoff_s, fieldstack) != 0 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) - { - subvar_t *subvars; ---- 3837,3843 ---- - TREE_TYPE (var)); - /* Make sure to not create SFTs for structs we won't generate variable - infos for. See tree-ssa-structalias.c:create_variable_info_for (). */ -! if (VEC_length (fieldoff_s, fieldstack) > 1 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) - { - subvar_t *subvars; ++++++ pr34148.diff -> pr34244.diff ++++++ --- gcc43/pr34148.diff 2007-11-22 15:45:02.000000000 +0100 +++ /mounts/work_src_done/STABLE/gcc43/pr34244.diff 2007-11-29 11:06:45.000000000 +0100 @@ -1,43 +1,241 @@ -2007-11-20 Richard Guenther <rguenther@suse.de> +Hi, - PR tree-optimization/34148 - * tree-ssa-structalias.c (create_variable_info_for): Do not use - field-sensitive PTA for single-element structures. - * tree-ssa-alias.c (create_overlap_variables_for): Do not create - SFTs for single-element structures. +we have a code like -Index: gcc/tree-ssa-structalias.c +if (something) + offset = 100; +else + offset = -100; + +while (offset > 0) + offset--; + +if (offset == 0) + launch_nuclear_rockets (); + +VRP starts simulating the code, first executing the true branch of the if +(something) condition, getting offset = 100. It then proceeds with the loop, +determining that number of iterations is equal to offset (since we just now +believe that offset==100, this is correct, without any assumptions), thus the +final value of offset is 0 and launch_nuclear_rockets is considered to be +always executed. + +Later, VRP evaluates the false branch of the if (something) condition, setting +the value range of offset to [-100,100], and proceeds to re-evaluate the +effects of the loop. However, scev caches the number of iterations of the +loop, so it is not re-evaluated, and we keep believing that the final value of +offset is always zero. + +Forcing scev to recompute the number of iterations every time some value range +changes would probably lead to compile time problems (computing number of iterations +is fairly expensive, and we used to have compile time problems with that in other +passes). Instead, the patch forces scev to compute and cache the number of iterations +of each loop before vrp analysis starts, and cache these values (that do not use +the partial results of VRP). + +Bootstrapped & regtested on amd64-linux. + +Zdenek + + PR tree-optimization/34244 + * tree-vrp.c (adjust_range_with_scev): Clear scev cache. + (record_numbers_of_iterations): New function. + (execute_vrp): Cache the numbers of iterations of loops. + * tree-scalar-evolution.c (scev_reset_except_niters): + New function. + (scev_reset): Use scev_reset_except_niters. + * tree-scalar-evolution.h (scev_reset_except_niters): Declare. + + * gcc.dg/tree-ssa/pr34244.c: New test. + +Index: gcc/tree-vrp.c =================================================================== -*** gcc/tree-ssa-structalias.c (revision 130288) ---- gcc/tree-ssa-structalias.c (working copy) -*************** create_variable_info_for (tree decl, con -*** 4441,4446 **** ---- 4441,4447 ---- - && !notokay - && !vi->is_unknown_size_var - && var_can_have_subvars (decl) -+ && VEC_length (fieldoff_s, fieldstack) > 1 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) - { - unsigned int newindex = VEC_length (varinfo_t, varmap); -Index: gcc/tree-ssa-alias.c +*** gcc/tree-vrp.c (revision 130489) +--- gcc/tree-vrp.c (working copy) +*************** adjust_range_with_scev (value_range_t *v +*** 2636,2641 **** +--- 2636,2648 ---- + if (vr->type == VR_ANTI_RANGE) + return; + ++ /* Ensure that there are not values in the scev cache based on assumptions ++ on ranges of ssa names that were changed ++ (in set_value_range/set_value_range_to_varying). Preserve cached numbers ++ of iterations, that were computed before the start of VRP (we do not ++ recompute these each time to save the compile time). */ ++ scev_reset_except_niters (); ++ + chrec = instantiate_parameters (loop, analyze_scalar_evolution (loop, var)); + + /* Like in PR19590, scev can return a constant function. */ +*************** vrp_finalize (void) +*** 6047,6052 **** +--- 6054,6073 ---- + vr_phi_edge_counts = NULL; + } + ++ /* Calculates number of iterations for all loops, to ensure that they are ++ cached. */ ++ ++ static void ++ record_numbers_of_iterations (void) ++ { ++ loop_iterator li; ++ struct loop *loop; ++ ++ FOR_EACH_LOOP (li, loop, 0) ++ { ++ number_of_latch_executions (loop); ++ } ++ } + + /* Main entry point to VRP (Value Range Propagation). This pass is + loosely based on J. R. C. Patterson, ``Accurate Static Branch +*************** execute_vrp (void) +*** 6101,6106 **** +--- 6122,6138 ---- + + insert_range_assertions (); + ++ /* Compute the # of iterations for each loop before we start the VRP ++ analysis. The value ranges determined by VRP are used in expression ++ simplification, that is also used by the # of iterations analysis. ++ However, in the middle of the VRP analysis, the value ranges do not take ++ all the possible paths in CFG into account, so they do not have to be ++ correct, and the # of iterations analysis can obtain wrong results. ++ This is a problem, since the results of the # of iterations analysis ++ are cached, so these mistakes would not be corrected when the value ++ ranges are corrected. */ ++ record_numbers_of_iterations (); ++ + vrp_initialize (); + ssa_propagate (vrp_visit_stmt, vrp_visit_phi_node); + vrp_finalize (); +Index: gcc/tree-scalar-evolution.c =================================================================== -*** gcc/tree-ssa-alias.c (revision 130288) ---- gcc/tree-ssa-alias.c (working copy) -*************** create_overlap_variables_for (tree var) -*** 3837,3843 **** - TREE_TYPE (var)); - /* Make sure to not create SFTs for structs we won't generate variable - infos for. See tree-ssa-structalias.c:create_variable_info_for (). */ -! if (VEC_length (fieldoff_s, fieldstack) != 0 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) +*** gcc/tree-scalar-evolution.c (revision 130489) +--- gcc/tree-scalar-evolution.c (working copy) +*************** scev_initialize (void) +*** 2608,2613 **** +--- 2608,2623 ---- + } + } + ++ /* Clean the scalar evolution analysis cache, but preserve the cached ++ numbers of iterations for the loops. */ ++ ++ void ++ scev_reset_except_niters (void) ++ { ++ if (scalar_evolution_info) ++ htab_empty (scalar_evolution_info); ++ } ++ + /* Cleans up the information cached by the scalar evolutions analysis. */ + + void +*************** scev_reset (void) +*** 2619,2625 **** + if (!scalar_evolution_info || !current_loops) + return; + +! htab_empty (scalar_evolution_info); + FOR_EACH_LOOP (li, loop, 0) { - subvar_t *subvars; ---- 3837,3843 ---- - TREE_TYPE (var)); - /* Make sure to not create SFTs for structs we won't generate variable - infos for. See tree-ssa-structalias.c:create_variable_info_for (). */ -! if (VEC_length (fieldoff_s, fieldstack) > 1 - && VEC_length (fieldoff_s, fieldstack) <= MAX_FIELDS_FOR_FIELD_SENSITIVE) + loop->nb_iterations = NULL_TREE; +--- 2629,2636 ---- + if (!scalar_evolution_info || !current_loops) + return; + +! scev_reset_except_niters (); +! + FOR_EACH_LOOP (li, loop, 0) { - subvar_t *subvars; + loop->nb_iterations = NULL_TREE; +Index: gcc/tree-scalar-evolution.h +=================================================================== +*** gcc/tree-scalar-evolution.h (revision 130489) +--- gcc/tree-scalar-evolution.h (working copy) +*************** extern tree get_loop_exit_condition (con +*** 27,32 **** +--- 27,33 ---- + + extern void scev_initialize (void); + extern void scev_reset (void); ++ extern void scev_reset_except_niters (void); + extern void scev_finalize (void); + extern tree analyze_scalar_evolution (struct loop *, tree); + extern tree instantiate_parameters (struct loop *, tree); +Index: gcc/testsuite/gcc.dg/tree-ssa/pr34244.c +=================================================================== +*** gcc/testsuite/gcc.dg/tree-ssa/pr34244.c (revision 0) +--- gcc/testsuite/gcc.dg/tree-ssa/pr34244.c (revision 0) +*************** +*** 0 **** +--- 1,65 ---- ++ /* PR tree-optimization/34244 */ ++ /* { dg-do run } */ ++ /* { dg-options "-O2 " } */ ++ ++ int __attribute__((noinline)) GetParent(void) ++ { ++ static int count = 0; ++ count++; ++ switch (count) ++ { ++ case 1: ++ case 3: ++ case 4: ++ return 1; ++ default: ++ return 0; ++ } ++ } ++ int __attribute__((noinline)) FindCommonAncestor(int aNode1, int aNode2) ++ { ++ if (aNode1 && aNode2) { ++ int offset = 0; ++ int anc1 = aNode1; ++ for (;;) { ++ ++offset; ++ int parent = GetParent(); ++ if (!parent) ++ break; ++ anc1 = parent; ++ } ++ int anc2 = aNode2; ++ for (;;) { ++ --offset; ++ int parent = GetParent(); ++ if (!parent) ++ break; ++ anc2 = parent; ++ } ++ if (anc1 == anc2) { ++ anc1 = aNode1; ++ anc2 = aNode2; ++ while (offset > 0) { ++ anc1 = GetParent(); ++ --offset; ++ } ++ while (offset < 0) { ++ anc2 = GetParent(); ++ ++offset; ++ } ++ while (anc1 != anc2) { ++ anc1 = GetParent(); ++ anc2 = GetParent(); ++ } ++ return anc1; ++ } ++ } ++ return 0; ++ } ++ extern void abort (void); ++ int main() ++ { ++ if (FindCommonAncestor (1, 1) != 0) ++ abort (); ++ return 0; ++ } + ++++++ revert-pr25950.diff ++++++ --- /var/tmp/diff_new_pack.z29573/_old 2007-11-30 16:12:26.000000000 +0100 +++ /var/tmp/diff_new_pack.z29573/_new 2007-11-30 16:12:26.000000000 +0100 @@ -1,7 +1,7 @@ Index: gcc/cp/call.c =================================================================== -*** gcc/cp/call.c (revision 130276) ---- gcc/cp/call.c (working copy) +*** gcc/cp/call.c.orig 2007-11-27 14:27:45.000000000 +0100 +--- gcc/cp/call.c 2007-11-28 11:57:06.000000000 +0100 *************** struct conversion { *** 89,94 **** --- 89,98 ---- @@ -250,19 +250,19 @@ bitwise or of LOOKUP_* values. If any errors are warnings are generated, set *DIAGNOSTIC_FN to "error" or "warning", *************** convert_like_real (conversion *convs, tr -*** 4421,4426 **** ---- 4445,4452 ---- - leave it as an lvalue. */ +*** 4422,4427 **** +--- 4446,4453 ---- if (inner >= 0) - expr = decl_constant_value (expr); -+ if (convs->check_copy_constructor_p) -+ check_constructor_callable (totype, expr); - return expr; - case ck_ambig: - /* Call build_user_type_conversion again for the error. */ + { + expr = decl_constant_value (expr); ++ if (convs->check_copy_constructor_p) ++ check_constructor_callable (totype, expr); + if (expr == null_node && INTEGRAL_TYPE_P (totype)) + /* If __null has been converted to an integer type, we do not + want to warn about uses of EXPR as an integer, rather than *************** convert_like_real (conversion *convs, tr -*** 4450,4455 **** ---- 4476,4483 ---- +*** 4457,4462 **** +--- 4483,4490 ---- { /* We are going to bind a reference directly to a base-class subobject of EXPR. */ @@ -272,8 +272,8 @@ expr = build_unary_op (ADDR_EXPR, expr, 0); expr = convert_to_base (expr, build_pointer_type (totype), *************** initialize_reference (tree type, tree ex -*** 6793,6798 **** ---- 6821,6828 ---- +*** 6800,6805 **** +--- 6828,6835 ---- remember that the conversion was required. */ if (conv->kind == ck_base) { @@ -284,8 +284,8 @@ } Index: gcc/cp/cp-tree.h =================================================================== -*** gcc/cp/cp-tree.h (revision 130276) ---- gcc/cp/cp-tree.h (working copy) +*** gcc/cp/cp-tree.h.orig 2007-11-19 11:36:02.000000000 +0100 +--- gcc/cp/cp-tree.h 2007-11-28 11:53:41.000000000 +0100 *************** enum overload_flags { NO_SPECIAL = 0, DT *** 3698,3707 **** #define LOOKUP_PREFER_NAMESPACES (1 << 9) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de