commit gcc47 for openSUSE:Factory
Hello community, here is the log from the commit of package gcc47 for openSUSE:Factory checked in at 2012-10-27 13:14:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gcc47 (Old) and /work/SRC/openSUSE:Factory/.gcc47.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "gcc47", Maintainer is "" Changes: -------- New Changes file: --- /dev/null 2012-10-22 00:44:18.403455820 +0200 +++ /work/SRC/openSUSE:Factory/.gcc47.new/cross-armv5tel-gcc47-icecream-backend.changes 2012-10-27 13:14:10.000000000 +0200 @@ -0,0 +1,246 @@ +------------------------------------------------------------------- +Tue Oct 23 12:11:58 UTC 2012 - rguenther@suse.com + +- Transition the first set of shared library packages to follow the + shared library policy. +- rename armv5el packages to official armv5tel name to avoid + compat symlinks + +------------------------------------------------------------------- +Tue Oct 23 11:09:42 UTC 2012 - rguenther@suse.com + +- Rip out support to build an optional compiler. + +------------------------------------------------------------------- +Thu Sep 20 14:53:14 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r191568). + * Includes GCC 4.7.2 release with bugfixes. + +------------------------------------------------------------------- +Tue Sep 4 13:45:49 UTC 2012 - schwab@linux-m68k.org + +- Make ppc and ppc64 configurations the same execpt for default target. + +------------------------------------------------------------------- +Mon Jul 30 09:16:53 UTC 2012 - rguenther@suse.com + +- Do not enable thumb by default for arm7. +- Update BuildRequires for cross compiler builds. +- Drop libmpc2 requires. + +------------------------------------------------------------------- +Wed Jul 25 12:47:48 UTC 2012 - rguenther@suse.com + +- Use --with-build-sysroot=/ for icecream crosses, provide + a real sysroot at /usr/target and adjust the g++ include path + accordingly. +- Properly honor the -gnueabi suffix for arm. + +------------------------------------------------------------------- +Mon Jul 23 08:26:09 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r189773). + * Includes fix for PR54038. [bnc#772488] + +------------------------------------------------------------------- +Wed Jul 18 09:36:38 UTC 2012 - rguenther@suse.com + +- BuildRequire makeinfo instead of texinfo for openSUSE 12.3 and beyond. + +------------------------------------------------------------------- +Tue Jul 17 21:10:31 UTC 2012 - jengelh@inai.de + +- Add SPARC to the list of arches not to package quadmath for. + Change the exclusive list to an inclusive list for where it + should be packaged (smaller list). +- Add SPARC visintrin.h to filelist + +------------------------------------------------------------------- +Tue Jul 17 12:07:35 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r189603). + * Fixes issue wiht DR1402 resolution. + * Fixes PR53995. + +------------------------------------------------------------------- +Fri Jul 13 09:03:35 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r189457). + * Changes the C++11 ABI of std::list objects back to that of C++98 + like it was in GCC 4.6. + * Changes the C++11 ABI of std::pair objects back to that of C++98 + like it was in GCC 4.6. Fixes DR1402 to make that work. + +------------------------------------------------------------------- +Fri Jun 29 08:42:19 UTC 2012 - rguenther@suse.com + +- Adjust arm icecream cross for continued change of the canonical + target used in binutils. + +------------------------------------------------------------------- +Tue Jun 26 08:03:03 UTC 2012 - rguenther@suse.com + +- Require a version of libquadmath0 at least as new as the + libgfortran3 library from the latter. [bnc#768785] + +------------------------------------------------------------------- +Fri Jun 22 11:03:09 UTC 2012 - adrian@suse.de + +- complete armv7hl switch + +------------------------------------------------------------------- +Wed Jun 20 15:13:58 UTC 2012 - aj@suse.de + +- Use new dynamic linker path /lib/ld-linux-armhf.so.3 for ARM v7. + +------------------------------------------------------------------- +Tue Jun 19 08:08:02 UTC 2012 - coolo@suse.com + +- do not build cross environments on architectures that + are not native + +------------------------------------------------------------------- +Thu Jun 15 13:08:54 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r188649). + * Includes GCC 4.7.1 release. + +------------------------------------------------------------------- +Wed Jun 6 08:54:04 UTC 2012 - rguenther@suse.com + +- Explicitely specify target tools used for building. + +------------------------------------------------------------------- +Mon Jun 4 11:10:00 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r188177). + +------------------------------------------------------------------- +Fri Jun 1 09:01:40 UTC 2012 - rguenther@suse.com + +- Fix typo in cross-icecream.spec.in. +- Also dump test-summary to the build log. + +------------------------------------------------------------------- +Wed May 30 14:13:54 UTC 2012 - rguenther@suse.com + +- Update patch for PR52080. + +------------------------------------------------------------------- +Mon May 7 09:35:56 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r187228). +- Add patch for PR52841. + +------------------------------------------------------------------- +Thu Apr 19 11:32:05 UTC 2012 - rguenther@suse.com + +- Fix canonicalized target names for crosses. +- Enable icecream backends, make their package name version specific. + +------------------------------------------------------------------- +Fri Apr 13 12:47:22 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r186417). +- Fix libstdc++.so-gdb.py autoload script. [bnc#750960] +- Drop to release checking. +- Fix build of cross targets with canonicalized name. + +------------------------------------------------------------------- +Thu Mar 22 12:06:49 UTC 2012 - rguenther@suse.com + +- Update to GCC 4.7.0 release. +- Update to gcc-4_7-branch head (r185687). + +------------------------------------------------------------------- +Tue Mar 20 11:53:04 UTC 2012 - rguenther@suse.com + +- Package the gdb python scripts. [bnc#750960] + +------------------------------------------------------------------- +Mon Mar 19 12:13:21 UTC 2012 - rguenther@suse.com + +- Change armv5 to use soft floating-point. + +------------------------------------------------------------------- +Tue Mar 13 12:59:26 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r185330). + +------------------------------------------------------------------- +Fri Mar 2 13:50:22 UTC 2012 - rguenther@suse.com + +- Update to GCC 4.7.0 release candidate. +- Fixup libstdc++v3 symbol baselines on powerpc. + +------------------------------------------------------------------- +Wed Feb 29 09:03:10 UTC 2012 - rguenther@suse.com + +- Fixup more SPDX license issues. + +------------------------------------------------------------------- +Tue Feb 28 13:10:03 UTC 2012 - rguenther@suse.com + +- Update to SVN trunk head (r184624). +- Merge changes from GCC 4.6 package. + +------------------------------------------------------------------- +Fri Feb 24 09:35:29 UTC 2012 - rguenther@suse.com + +- Update to SVN trunk head (r184541). + +------------------------------------------------------------------- +Tue Feb 21 13:05:10 UTC 2012 - rguenther@suse.com + +- Update to SVN trunk head (r184435). +- Merge changes from GCC 4.6 package. ++++ 49 more lines (skipped) ++++ between /dev/null ++++ and /work/SRC/openSUSE:Factory/.gcc47.new/cross-armv5tel-gcc47-icecream-backend.changes --- /work/SRC/openSUSE:Factory/gcc47/cross-armv7hl-gcc47-icecream-backend.changes 2012-08-04 21:46:42.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.gcc47.new/cross-armv7hl-gcc47-icecream-backend.changes 2012-10-27 13:14:10.000000000 +0200 @@ -1,0 +2,24 @@ +Tue Oct 23 12:11:58 UTC 2012 - rguenther@suse.com + +- Transition the first set of shared library packages to follow the + shared library policy. +- rename armv5el packages to official armv5tel name to avoid + compat symlinks + +------------------------------------------------------------------- +Tue Oct 23 11:09:42 UTC 2012 - rguenther@suse.com + +- Rip out support to build an optional compiler. + +------------------------------------------------------------------- +Thu Sep 20 14:53:14 UTC 2012 - rguenther@suse.com + +- Update to gcc-4_7-branch head (r191568). + * Includes GCC 4.7.2 release with bugfixes. + +------------------------------------------------------------------- +Tue Sep 4 13:45:49 UTC 2012 - schwab@linux-m68k.org + +- Make ppc and ppc64 configurations the same execpt for default target. + +------------------------------------------------------------------- cross-hppa-gcc47-icecream-backend.changes: same change cross-i386-gcc47-icecream-backend.changes: same change cross-ia64-gcc47-icecream-backend.changes: same change cross-ppc-gcc47-icecream-backend.changes: same change cross-ppc64-gcc47-icecream-backend.changes: same change cross-s390-gcc47-icecream-backend.changes: same change cross-s390x-gcc47-icecream-backend.changes: same change cross-x86_64-gcc47-icecream-backend.changes: same change gcc47-testresults.changes: same change gcc47.changes: same change libffi47.changes: same change libgcj47.changes: same change Old: ---- cross-armv5el-gcc47-icecream-backend.changes cross-armv5el-gcc47-icecream-backend.spec gcc-4.7.1-20120723.tar.bz2 New: ---- cross-armv5tel-gcc47-icecream-backend.changes cross-armv5tel-gcc47-icecream-backend.spec gcc-4.7.2-20120920.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cross-armv5tel-gcc47-icecream-backend.spec ++++++ # # spec file for package cross-armv5tel-gcc47-icecream-backend # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define build_cp 1 %define build_ada 0 %define build_libjava 0 %define build_java 0 %define build_fortran 0 %define build_objc 0 %define build_objcp 0 %define build_nof 0 %define build_with_mudflap 0 %define gcc_target_arch armv5tel-suse-linux %define gcc_icecream 1 %define binutils_target armv5tel %if %{binutils_target} == "armv7l" || %{binutils_target} == "armv7hl" %define binutils_target arm %endif %if %{binutils_target} == "armv5tel" %define binutils_target arm %endif %define canonical_target %(echo %{binutils_target} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") %if %{binutils_target} == "arm" %define canonical_target_abi -gnueabi %endif Name: cross-armv5tel-gcc47-icecream-backend BuildRequires: bison BuildRequires: cross-%{binutils_target}-binutils BuildRequires: flex BuildRequires: gettext-devel BuildRequires: glibc-devel-32bit BuildRequires: mpc-devel BuildRequires: mpfr-devel BuildRequires: perl %if %{suse_version} > 1220 BuildRequires: makeinfo %else BuildRequires: texinfo %endif BuildRequires: zlib-devel %ifarch %ix86 x86_64 ppc ppc64 s390 s390x ia64 %sparc hppa %arm BuildRequires: cloog-devel BuildRequires: ppl-devel %endif %ifarch ia64 BuildRequires: libunwind-devel %endif ExclusiveArch: ppc ppc64 %ix86 x86_64 ia64 %define _binary_payload w.ufdio # COMMON-BEGIN # COMMON-BEGIN %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 Url: http://gcc.gnu.org/ Version: 4.7.2_20120920 Release: 0 %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-9]\.[0-6]//' | sed 's/_/-/') %define binsuffix -4.7 # COMMON-END # COMMON-BEGIN BuildRoot: %{_tmppath}/%{name}-%{version}-build Source: gcc-%{gcc_version}%{snapshot_date}.tar.bz2 Source1: change_spec Source2: libgcj47-rpmlintrc Source3: gcc47-rpmlintrc Source4: ecj.jar Source5: README.First-for.SuSE.packagers Source6: baselibs.conf Patch1: gcc-dir-version.patch Patch2: gcc-sles-version.patch Patch3: gcc-noalias-warn.diff Patch6: suse-record-gcc-opts.diff Patch7: gcc-add-defaultsspec.diff Patch8: Wunprototyped-calls.diff Patch10: program-transform-name.diff Patch12: gcc4-ppc64-m32-m64-multilib-only.patch Patch23: libjava-no-multilib.diff Patch24: tls-no-direct.diff Patch28: pr33763.diff Patch30: gcc43-no-unwind-tables.diff Patch32: pr49484.diff Patch33: gcc-arm-linker.patch # A set of patches from the RH srpm Patch51: gcc41-ia64-stack-protector.patch Patch55: gcc41-java-slow_pthread_self.patch Patch57: gcc41-ppc32-retaddr.patch # Some patches taken from Debian Patch60: gcc44-textdomain.patch Patch61: gcc44-rename-info-files.patch # Patches for SAP features Patch130: sap303956-uchar.diff # GCC-TESTSUITE-DELETE-BEGIN # LIBFFI-DELETE-BEGIN # LIBJAVA-DELETE-BEGIN Summary: The GNU C Compiler and Support Files License: GPL-3.0+ Group: Development/Languages/C and C++ %description Core package for the GNU Compiler Collection, including the C language frontend. Language frontends other than C are split to different sub-packages, namely gcc-ada, gcc-c++, gcc-fortran, gcc-java, gcc-objc and gcc-obj-c++. # COMMON-END # 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 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/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc" %define CONFIGURE_TARGET powerpc64-suse-linux %endif %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64" %define CONFIGURE_TARGET powerpc64-suse-linux %endif %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586" %define CONFIGURE_TARGET i586-suse-linux %endif %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7l" %define CONFIGURE_TARGET armv7l-suse-linux-gnueabi %endif %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7hl" %define CONFIGURE_TARGET armv7hl-suse-linux-gnueabi %endif %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5tel" %define CONFIGURE_TARGET armv5tel-suse-linux-gnueabi %endif %else %define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") %endif %define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") %define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac) %ifarch ppc %define GCCDIST powerpc64-suse-linux %else %ifarch %sparc %define GCCDIST sparc64-suse-linux %else %ifarch %arm %define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi %else %define GCCDIST %{HOST_ARCH}-suse-linux %endif %endif %endif %define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version} %define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version} # COMMON-END # COMMON-BEGIN %prep %setup -q -n gcc-%{gcc_version}%{snapshot_date} %patch1 %patch2 %patch3 %patch6 %patch7 %patch8 %patch10 %if !%{build_nof} %patch12 %endif %patch23 %patch24 %patch28 %patch30 %patch32 %patch33 -p1 %patch51 %patch55 %patch57 %patch60 %patch61 %patch130 # We are configuring ppc as ppc64 but with switched multilibs. Adjust # the libstdc++ abi testsuite baseline files accordingly %ifarch ppc if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64 mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \ libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/ mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \ libstdc++-v3/config/abi/post/powerpc64-linux-gnu/ fi %endif %build # Avoid rebuilding of generated files contrib/gcc_update --touch # Avoid fucking up testsuite results with Java and indirect dispatch export SUSE_ASNEEDED=0 # Split version file into version used for directories (X.Y) and # version to report with --version (X.Y.Z). # See also gcc-dir-version.patch. # Also decrement the patchlevel version by one if test `cat gcc/DEV-PHASE` == "prerelease"; then ( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER else mv gcc/BASE-VER gcc/FULL-VER fi cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER rm -rf obj-%{GCCDIST} mkdir obj-%{GCCDIST} cd obj-%{GCCDIST} RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE" RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'` %ifarch %ix86 # -mcpu is superceded by -mtune but -mtune is not supported by # our bootstrap compiler. -mcpu gives a warning that stops # the build process, so remove it for now. Also remove all other # -march and -mtune flags. They are superseeded by proper # default compiler settings now. RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'` %endif %ifarch s390 s390x RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'` RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'` %endif %if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1} # Kill all -march/tune/cpu because that screws building the target libs RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'` %endif # Replace 2 spaces by one finally RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'` languages=c %if %{build_cp} languages=$languages,c++ %endif %if %{build_objc} languages=$languages,objc %endif %if %{build_fortran} languages=$languages,fortran %endif %if %{build_objcp} languages=$languages,obj-c++ %endif %if %{build_java} languages=$languages,java %endif %if %{build_ada} languages=$languages,ada %endif J=%{?jobs:%jobs} if test -z "$J"; then J=$(getconf _NPROCESSORS_CONF) JL=$(($J * 2)) else test 1 -gt "$J" && J=1 JL=$(($(getconf _NPROCESSORS_CONF)*2)) fi if test "$J" == "0"; then J=1 fi if test "$JL" == "0"; then JL=1 fi PARALLEL="-j$J -l$JL" # we don't want some miscompiles in the testsuite, or some fault in # the compiler to kill the machine. Hence we limit the amount of memory # by the physical RAM plus half of swap #MEM=$(free -m | awk '/^Mem:/ {print $2}') #SWAP=$(free -m | awk '/^Swap:/ {print $2}') #ulimit -v $(((MEM + SWAP/2)*1024)) # In general we want to ship release checking enabled compilers # and run BETA with checking enabled. #ENABLE_CHECKING="--enable-checking=yes" ENABLE_CHECKING="--enable-checking=release" # Work around tail/head -1 changes export _POSIX2_VERSION=199209 # configure tries to parse include/features.h to detect # if glibc supports SSP. When cross compiling we would need # to install a cross glibc, which we don't, or make the whole # thing point to the native glibc, which is in /, hence the # --with-sysroot=/ %if %{build_ada} # Using the host gnatmake like # CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}" # GNATMAKE="gnatmake%{hostsuffix}" # doesn't work due to PR33857, so an un-suffixed gnatmake has to be # available mkdir -p host-tools/bin cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc ln -sf /usr/%{_lib} host-tools/%{_lib} export PATH="`pwd`/host-tools/bin:$PATH" %endif #%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1} #%else # --enable-threads=posix \ #%endif # --enable-shared \ %if "%{TARGET_ARCH}" == "armv7l" || "%{TARGET_ARCH}" == "armv7hl" # temporary workaround for a miscompilation of hash functions in java code GCJ_EXTRA_FLAGS="-marm" %endif CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \ TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS $GCJ_EXTRA_FLAGS" \ ../configure \ --prefix=%{_prefix} \ --infodir=%{_infodir} \ --mandir=%{_mandir} \ --libdir=%{_libdir} \ --libexecdir=%{_libdir} \ --enable-languages=$languages \ $ENABLE_CHECKING \ --with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \ --enable-ssp \ --disable-libssp \ --disable-libitm \ --disable-plugin \ --with-bugurl="http://bugs.opensuse.org/" \ --with-pkgversion="SUSE Linux" \ %if !%{build_libjava} --disable-libgcj \ %else --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \ --with-ecj-jar=%{libsubdir}/ecj.jar \ --disable-java-awt \ %if !%{biarch_libjava} --disable-libjava-multilib \ %endif %endif %if !%{build_with_mudflap} --disable-libmudflap \ %endif --with-slibdir=/%{_lib} \ --with-system-zlib \ --enable-__cxa_atexit \ --enable-libstdcxx-allocator=new \ --disable-libstdcxx-pch \ --enable-version-specific-runtime-libs \ %if 0%{suse_version} > 1100 --enable-linker-build-id \ %endif %if 0%{?gcc_target_arch:1} %if 0%{?gcc_icecream:1} --with-build-sysroot=/ \ --with-sysroot=%{_prefix}/%{gcc_target_arch}%{?canonical_target_abi:%canonical_target_abi} \ --with-gxx-include-dir=%{_prefix}/%{gcc_target_arch}%{?canonical_target_abi:%canonical_target_abi}/usr/include/c++/%{gcc_dir_version} \ --enable-linux-futex \ %endif %if 0%{?canonical_target:1} --with-build-time-tools=/usr/%{canonical_target}-suse-linux%{?canonical_target_abi:%canonical_target_abi}/bin \ %endif %if 0%{?build_static:1} --disable-shared \ %endif %if "%{TARGET_ARCH}" == "spu" --with-sysroot=/usr/spu \ --with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \ --with-newlib \ %endif --disable-nls \ --target=%{CONFIGURE_TARGET} \ %else --program-suffix=%{binsuffix} \ --enable-linux-futex \ %ifarch ia64 --with-system-libunwind \ %else --without-system-libunwind \ %endif %endif %if "%{TARGET_ARCH}" == "armv5tel" --with-arch=armv5te \ --with-float=soft \ --with-mode=arm \ --with-abi=aapcs-linux \ --disable-sjlj-exceptions \ %endif %if "%{TARGET_ARCH}" == "armv7l" || "%{TARGET_ARCH}" == "armv7hl" --with-arch=armv7-a \ --with-tune=cortex-a9 \ --with-float=hard \ --with-abi=aapcs-linux \ --with-fpu=vfpv3-d16 \ --disable-sjlj-exceptions \ %endif %if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" %if "%{TARGET_ARCH}" == "powerpc" --with-cpu=default32 \ %endif --with-cpu-64=power4 \ --enable-secureplt \ --with-long-double-128 \ %endif %if "%{TARGET_ARCH}" == "sparc64" --with-cpu=ultrasparc \ --with-long-double-128 \ %endif %if "%{TARGET_ARCH}" == "sparc" --with-cpu=v8 \ --with-long-double-128 \ %endif %if "%{TARGET_ARCH}" == "i586" --with-arch-32=i586 \ --with-tune=generic \ %endif %if "%{TARGET_ARCH}" == "x86_64" --with-arch-32=i586 \ --with-tune=generic \ %endif %if "%{TARGET_ARCH}" == "s390" --with-tune=z196 --with-arch=z10 \ --with-long-double-128 \ --enable-decimal-float \ %endif %if "%{TARGET_ARCH}" == "s390x" --with-tune=z196 --with-arch=z10 \ --with-long-double-128 \ --enable-decimal-float \ %endif --build=%{GCCDIST} # COMMON-END # COMMON-END make %{?jobs:-j%jobs} all-gcc TARGET-gcc="cc1 cc1plus gcc-cross g++ native" %install cd obj-%{GCCDIST} rm -rf $RPM_BUILD_ROOT make -C gcc DESTDIR=$RPM_BUILD_ROOT/inst install-driver install-common make DESTDIR=$RPM_BUILD_ROOT/inst maybe-install-lto-plugin # 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/%{canonical_target}-suse-linux%{?canonical_target_abi:%canonical_target_abi}-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 %define targetlibsubdir %{_libdir}/gcc/%{CONFIGURE_TARGET}/%{gcc_dir_version} for back in cc1 cc1plus; do install -s -D $RPM_BUILD_ROOT/inst%{targetlibsubdir}/$back \ $RPM_BUILD_ROOT/env%{targetlibsubdir}/$back done if test -f $RPM_BUILD_ROOT/inst%{targetlibsubdir}/liblto_plugin.so; then install -s -D $RPM_BUILD_ROOT/inst%{targetlibsubdir}/liblto_plugin.so \ $RPM_BUILD_ROOT/env%{targetlibsubdir}/liblto_plugin.so fi libs=`for bin in $RPM_BUILD_ROOT/env/usr/bin/* $RPM_BUILD_ROOT/env%{targetlibsubdir}/*; do \ ldd $bin | sed -n '\,^[^/]*\(/[^ ]*\).*,{ s//\1/; p; }' ;\ done | sort -u ` for lib in $libs; do # Check wether the same library also exists in the parent directory, # and prefer that on the assumption that it is a more generic one. baselib=`echo "$lib" | sed 's,/[^/]*\(/[^/]*\)$,\1,'` test -f "$baselib" && lib=$baselib install -s -D $lib $RPM_BUILD_ROOT/env$lib done rm -rf $RPM_BUILD_ROOT/inst cd $RPM_BUILD_ROOT/env tar cvzf ../%{name}_%{_arch}.tar.gz * cd .. mkdir -p usr/share/icecream-envs mv %{name}_%{_arch}.tar.gz usr/share/icecream-envs rpm -q --changelog glibc > usr/share/icecream-envs/%{name}_%{_arch}.glibc rpm -q --changelog binutils > usr/share/icecream-envs/%{name}_%{_arch}.binutils rm -r env %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) /usr/share/icecream-envs %changelog ++++++ cross-armv7hl-gcc47-icecream-backend.spec ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -32,7 +32,7 @@ %if %{binutils_target} == "armv7l" || %{binutils_target} == "armv7hl" %define binutils_target arm %endif -%if %{binutils_target} == "armv5el" +%if %{binutils_target} == "armv5tel" %define binutils_target arm %endif %define canonical_target %(echo %{binutils_target} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") @@ -70,7 +70,7 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 Url: http://gcc.gnu.org/ -Version: 4.7.1_20120723 +Version: 4.7.2_20120920 Release: 0 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) @@ -152,8 +152,8 @@ %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7hl" %define CONFIGURE_TARGET armv7hl-suse-linux-gnueabi %endif -%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5el" -%define CONFIGURE_TARGET armv5el-suse-linux-gnueabi +%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5tel" +%define CONFIGURE_TARGET armv5tel-suse-linux-gnueabi %endif %else %define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") @@ -334,8 +334,12 @@ # --enable-threads=posix \ #%endif # --enable-shared \ +%if "%{TARGET_ARCH}" == "armv7l" || "%{TARGET_ARCH}" == "armv7hl" +# temporary workaround for a miscompilation of hash functions in java code +GCJ_EXTRA_FLAGS="-marm" +%endif CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \ -TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \ +TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS $GCJ_EXTRA_FLAGS" \ ../configure \ --prefix=%{_prefix} \ --infodir=%{_infodir} \ @@ -417,13 +421,11 @@ --with-fpu=vfpv3-d16 \ --disable-sjlj-exceptions \ %endif +%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" %if "%{TARGET_ARCH}" == "powerpc" --with-cpu=default32 \ - --enable-secureplt \ - --with-long-double-128 \ %endif -%if "%{TARGET_ARCH}" == "powerpc64" - --with-cpu=power4 \ + --with-cpu-64=power4 \ --enable-secureplt \ --with-long-double-128 \ %endif cross-hppa-gcc47-icecream-backend.spec: same change cross-i386-gcc47-icecream-backend.spec: same change cross-ia64-gcc47-icecream-backend.spec: same change cross-ppc-gcc47-icecream-backend.spec: same change cross-ppc64-gcc47-icecream-backend.spec: same change cross-s390-gcc47-icecream-backend.spec: same change cross-s390x-gcc47-icecream-backend.spec: same change cross-x86_64-gcc47-icecream-backend.spec: same change ++++++ gcc47-testresults.spec ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -72,7 +72,7 @@ %endif # For optional compilers only build C, C++ and Fortran -%if 0%{?build_optional_compiler:1}%{?build_optional_compiler_languages:1} +%if 0%{?build_optional_compiler_languages:1} %define build_ada 0 %define build_java 0 %define build_libjava 0 @@ -80,6 +80,22 @@ %define build_objcp 0 %endif +# Shared library SONAME versions +%ifarch hppa +%define libgcc_s 4 +%else +%define libgcc_s 1 +%endif +%define gcj_sover 13 +%define libgcj_bc_sover 1 +%define libffi_sover 4 +%define libmudflap_sover 0 +%define libgomp_sover 1 +%define libstdcxx_sover 6 +%define libobjc_sover 4 +%define libgfortran_sover 3 +%define libquadmath_sover 0 + Name: gcc47-testresults BuildRequires: bison BuildRequires: flex @@ -123,12 +139,6 @@ BuildRequires: gdb %endif -# Define version number of libgcc_s -%ifarch hppa -%define libgcc_s 4 -%else -%define libgcc_s 1 -%endif %ifarch ppc # We support building the nof libraries, but don't want this in the # regular rpms @@ -172,7 +182,7 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 Url: http://gcc.gnu.org/ -Version: 4.7.1_20120723 +Version: 4.7.2_20120920 Release: 0 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) @@ -184,16 +194,11 @@ Requires: binutils Requires: cpp47 = %{version}-%{release} Requires: glibc-devel -%if 0%{!?build_optional_compiler:1} Requires: libgcc%{libgcc_s} >= %{version}-%{release} -Requires: libgomp1 >= %{version}-%{release} +Requires: libgomp%{libgomp_sover} >= %{version}-%{release} %if %{build_with_mudflap} -Requires: libmudflap0 >= %{version}-%{release} -Requires: libmudflapth0 >= %{version}-%{release} -%endif -%else -Requires: libgcc47 = %{version}-%{release} -Requires: libgomp47 = %{version}-%{release} +Requires: libmudflap%{libmudflap_sover} >= %{version}-%{release} +Requires: libmudflapth%{libmudflap_sover} >= %{version}-%{release} %endif %if 0%{suse_version} > 1000 Suggests: gcc47-info gcc47-locale @@ -265,8 +270,8 @@ %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7hl" %define CONFIGURE_TARGET armv7hl-suse-linux-gnueabi %endif -%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5el" -%define CONFIGURE_TARGET armv5el-suse-linux-gnueabi +%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5tel" +%define CONFIGURE_TARGET armv5tel-suse-linux-gnueabi %endif %else %define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") @@ -312,13 +317,6 @@ %define versmainlibdirbi %{versmainlibdirbi64} %endif -%if 0%{?build_optional_compiler:1} -%define mainlibdir %{versmainlibdir} -%define mainlibdirbi32 %{versmainlibdirbi32} -%define mainlibdirbi64 %{versmainlibdirbi64} -%define noflibdir %{versnoflibdir} -%define mainlibdirbi %{versmainlibdirbi} -%else %define mainlibdir %{_libdir} %define mainlibdirbi32 %{_prefix}/lib %define mainlibdirbi64 %{_prefix}/lib64 @@ -328,7 +326,6 @@ %else %define mainlibdirbi %{mainlibdirbi64} %endif -%endif # Now define a few macros that make it easy to package libs and # related files just to the right package, without caring for the @@ -560,8 +557,12 @@ # --enable-threads=posix \ #%endif # --enable-shared \ +%if "%{TARGET_ARCH}" == "armv7l" || "%{TARGET_ARCH}" == "armv7hl" +# temporary workaround for a miscompilation of hash functions in java code +GCJ_EXTRA_FLAGS="-marm" +%endif CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \ -TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \ +TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS $GCJ_EXTRA_FLAGS" \ ../configure \ --prefix=%{_prefix} \ --infodir=%{_infodir} \ @@ -643,13 +644,11 @@ --with-fpu=vfpv3-d16 \ --disable-sjlj-exceptions \ %endif +%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" %if "%{TARGET_ARCH}" == "powerpc" --with-cpu=default32 \ - --enable-secureplt \ - --with-long-double-128 \ %endif -%if "%{TARGET_ARCH}" == "powerpc64" - --with-cpu=power4 \ + --with-cpu-64=power4 \ --enable-secureplt \ --with-long-double-128 \ %endif ++++++ gcc47.spec ++++++ ++++ 1221 lines (skipped) ++++ between /work/SRC/openSUSE:Factory/gcc47/gcc47.spec ++++ and /work/SRC/openSUSE:Factory/.gcc47.new/gcc47.spec ++++++ libffi47.spec ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -71,7 +71,7 @@ %endif # For optional compilers only build C, C++ and Fortran -%if 0%{?build_optional_compiler:1}%{?build_optional_compiler_languages:1} +%if 0%{?build_optional_compiler_languages:1} %define build_ada 0 %define build_java 0 %define build_libjava 0 @@ -79,6 +79,22 @@ %define build_objcp 0 %endif +# Shared library SONAME versions +%ifarch hppa +%define libgcc_s 4 +%else +%define libgcc_s 1 +%endif +%define gcj_sover 13 +%define libgcj_bc_sover 1 +%define libffi_sover 4 +%define libmudflap_sover 0 +%define libgomp_sover 1 +%define libstdcxx_sover 6 +%define libobjc_sover 4 +%define libgfortran_sover 3 +%define libquadmath_sover 0 + Name: libffi47 BuildRequires: bison BuildRequires: flex @@ -122,12 +138,6 @@ BuildRequires: gdb %endif -# Define version number of libgcc_s -%ifarch hppa -%define libgcc_s 4 -%else -%define libgcc_s 1 -%endif %ifarch ppc # We support building the nof libraries, but don't want this in the # regular rpms @@ -171,7 +181,7 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 Url: http://gcc.gnu.org/ -Version: 4.7.1_20120723 +Version: 4.7.2_20120920 Release: 0 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) @@ -183,16 +193,11 @@ Requires: binutils Requires: cpp47 = %{version}-%{release} Requires: glibc-devel -%if 0%{!?build_optional_compiler:1} Requires: libgcc%{libgcc_s} >= %{version}-%{release} -Requires: libgomp1 >= %{version}-%{release} +Requires: libgomp%{libgomp_sover} >= %{version}-%{release} %if %{build_with_mudflap} -Requires: libmudflap0 >= %{version}-%{release} -Requires: libmudflapth0 >= %{version}-%{release} -%endif -%else -Requires: libgcc47 = %{version}-%{release} -Requires: libgomp47 = %{version}-%{release} +Requires: libmudflap%{libmudflap_sover} >= %{version}-%{release} +Requires: libmudflapth%{libmudflap_sover} >= %{version}-%{release} %endif %if 0%{suse_version} > 1000 Suggests: gcc47-info gcc47-locale @@ -296,7 +301,7 @@ Summary: Foreign Function Interface library development files License: BSD-3-Clause Group: Development/Languages/C and C++ -Requires: libffi4 >= %{version}-%{release} +Requires: libffi%{libffi_sover} >= %{version}-%{release} Provides: libffi-devel = %{version}-%{release} Conflicts: libffi-devel < %{version}-%{release} @@ -309,7 +314,7 @@ Summary: Foreign Function Interface library development files License: BSD-3-Clause Group: Development/Languages/C and C++ -Requires: libffi4-32bit >= %{version}-%{release} +Requires: libffi%{libffi_sover}-32bit >= %{version}-%{release} Provides: libffi-devel-32bit = %{version}-%{release} Conflicts: libffi-devel-32bit < %{version}-%{release} @@ -322,7 +327,7 @@ Summary: Foreign Function Interface library development files License: BSD-3-Clause Group: Development/Languages/C and C++ -Requires: libffi4-64bit >= %{version}-%{release} +Requires: libffi%{libffi_sover}-64bit >= %{version}-%{release} Provides: libffi-devel-64bit = %{version}-%{release} Conflicts: libffi-devel-64bit < %{version}-%{release} @@ -364,8 +369,8 @@ %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7hl" %define CONFIGURE_TARGET armv7hl-suse-linux-gnueabi %endif -%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5el" -%define CONFIGURE_TARGET armv5el-suse-linux-gnueabi +%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5tel" +%define CONFIGURE_TARGET armv5tel-suse-linux-gnueabi %endif %else %define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") @@ -411,13 +416,6 @@ %define versmainlibdirbi %{versmainlibdirbi64} %endif -%if 0%{?build_optional_compiler:1} -%define mainlibdir %{versmainlibdir} -%define mainlibdirbi32 %{versmainlibdirbi32} -%define mainlibdirbi64 %{versmainlibdirbi64} -%define noflibdir %{versnoflibdir} -%define mainlibdirbi %{versmainlibdirbi} -%else %define mainlibdir %{_libdir} %define mainlibdirbi32 %{_prefix}/lib %define mainlibdirbi64 %{_prefix}/lib64 @@ -427,7 +425,6 @@ %else %define mainlibdirbi %{mainlibdirbi64} %endif -%endif # Now define a few macros that make it easy to package libs and # related files just to the right package, without caring for the @@ -659,8 +656,12 @@ # --enable-threads=posix \ #%endif # --enable-shared \ +%if "%{TARGET_ARCH}" == "armv7l" || "%{TARGET_ARCH}" == "armv7hl" +# temporary workaround for a miscompilation of hash functions in java code +GCJ_EXTRA_FLAGS="-marm" +%endif CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \ -TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \ +TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS $GCJ_EXTRA_FLAGS" \ ../configure \ --prefix=%{_prefix} \ --infodir=%{_infodir} \ @@ -742,13 +743,11 @@ --with-fpu=vfpv3-d16 \ --disable-sjlj-exceptions \ %endif +%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" %if "%{TARGET_ARCH}" == "powerpc" --with-cpu=default32 \ - --enable-secureplt \ - --with-long-double-128 \ %endif -%if "%{TARGET_ARCH}" == "powerpc64" - --with-cpu=power4 \ + --with-cpu-64=power4 \ --enable-secureplt \ --with-long-double-128 \ %endif @@ -1029,12 +1028,12 @@ %if 0%{?building_libffi:1} %files %defattr(-,root,root) -%mainlib libffi.so.* +%mainlib libffi.so.%{libffi_sover}* %if %{separate_biarch} %files -n libffi47%{separate_biarch_suffix} %defattr(-,root,root) -%biarchlib libffi.so.* +%biarchlib libffi.so.%{libffi_sover}* %endif %files -n libffi47-devel ++++++ libgcj47.spec ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -71,7 +71,7 @@ %endif # For optional compilers only build C, C++ and Fortran -%if 0%{?build_optional_compiler:1}%{?build_optional_compiler_languages:1} +%if 0%{?build_optional_compiler_languages:1} %define build_ada 0 %define build_java 0 %define build_libjava 0 @@ -79,6 +79,22 @@ %define build_objcp 0 %endif +# Shared library SONAME versions +%ifarch hppa +%define libgcc_s 4 +%else +%define libgcc_s 1 +%endif +%define gcj_sover 13 +%define libgcj_bc_sover 1 +%define libffi_sover 4 +%define libmudflap_sover 0 +%define libgomp_sover 1 +%define libstdcxx_sover 6 +%define libobjc_sover 4 +%define libgfortran_sover 3 +%define libquadmath_sover 0 + Name: libgcj47 BuildRequires: bison BuildRequires: flex @@ -122,12 +138,6 @@ BuildRequires: gdb %endif -# Define version number of libgcc_s -%ifarch hppa -%define libgcc_s 4 -%else -%define libgcc_s 1 -%endif %ifarch ppc # We support building the nof libraries, but don't want this in the # regular rpms @@ -171,7 +181,7 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 Url: http://gcc.gnu.org/ -Version: 4.7.1_20120723 +Version: 4.7.2_20120920 Release: 0 %define gcc_version %(echo %version | sed 's/_.*//') %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2) @@ -183,16 +193,11 @@ Requires: binutils Requires: cpp47 = %{version}-%{release} Requires: glibc-devel -%if 0%{!?build_optional_compiler:1} Requires: libgcc%{libgcc_s} >= %{version}-%{release} -Requires: libgomp1 >= %{version}-%{release} +Requires: libgomp%{libgomp_sover} >= %{version}-%{release} %if %{build_with_mudflap} -Requires: libmudflap0 >= %{version}-%{release} -Requires: libmudflapth0 >= %{version}-%{release} -%endif -%else -Requires: libgcc47 = %{version}-%{release} -Requires: libgomp47 = %{version}-%{release} +Requires: libmudflap%{libmudflap_sover} >= %{version}-%{release} +Requires: libmudflapth%{libmudflap_sover} >= %{version}-%{release} %endif %if 0%{suse_version} > 1000 Suggests: gcc47-info gcc47-locale @@ -237,7 +242,6 @@ Summary: Java Runtime Library for gcc License: GPL-2.0-with-classpath-exception Group: System/Libraries -%define gcj_sover 13 %if 0%{suse_version} > 1000 Recommends: libgcj47-jar = %{version}-%{release} %endif @@ -269,23 +273,22 @@ The Java compiler from the GCC-tools-suite. -%package -n libgcj_bc47 +%package -n libgcj_bc%{libgcj_bc_sover} Summary: Fake library for BC-ABI compatibility. License: GPL-2.0-with-classpath-exception Group: Development/Libraries/Java -Provides: libgcj_bc1 = %{version}-%{release} -Conflicts: libgcj_bc1 < %{version}-%{release} # libgcj_bc is special in that it just contains a symlink to # a proper libgcj version. So require that library and add # provides for the shlib version as created at link time Requires: libgcj%{gcj_sover} %ifarch x86_64 ia64 ppc64 s390x sparc64 -Provides: libgcj_bc.so.1()(64bit) +Provides: libgcj_bc.so.%{libgcj_bc_sover}()(64bit) %else -Provides: libgcj_bc.so.1 +Provides: libgcj_bc.so.%{libgcj_bc_sover} %endif +Conflicts: libgcj_bc%{libgcj_bc_sover} < %{version}-%{release} -%description -n libgcj_bc47 +%description -n libgcj_bc%{libgcj_bc_sover} A fake library that is used at link time only. It ensures that binaries built with the BC-ABI link against a constant SONAME. This way, BC-ABI binaries continue to work if the SONAME underlying @@ -310,7 +313,7 @@ Requires: libart_lgpl-devel Requires: libgcj%{gcj_sover} >= %{version}-%{release} Requires: libgcj47-jar = %{version}-%{release} -Requires: libgcj_bc1 >= %{version}-%{release} +Requires: libgcj_bc%{libgcj_bc_sover} >= %{version}-%{release} Requires: libstdc++47-devel = %{version} Requires: zlib-devel %ifarch ia64 @@ -396,7 +399,7 @@ Summary: Foreign Function Interface library development files License: BSD-3-Clause Group: Development/Languages/C and C++ -Requires: libffi4 >= %{version}-%{release} +Requires: libffi%{libffi_sover} >= %{version}-%{release} Provides: libffi-devel = %{version}-%{release} Conflicts: libffi-devel < %{version}-%{release} @@ -409,7 +412,7 @@ Summary: Foreign Function Interface library development files License: BSD-3-Clause Group: Development/Languages/C and C++ -Requires: libffi4-32bit >= %{version}-%{release} +Requires: libffi%{libffi_sover}-32bit >= %{version}-%{release} Provides: libffi-devel-32bit = %{version}-%{release} Conflicts: libffi-devel-32bit < %{version}-%{release} @@ -422,7 +425,7 @@ Summary: Foreign Function Interface library development files License: BSD-3-Clause Group: Development/Languages/C and C++ -Requires: libffi4-64bit >= %{version}-%{release} +Requires: libffi%{libffi_sover}-64bit >= %{version}-%{release} Provides: libffi-devel-64bit = %{version}-%{release} Conflicts: libffi-devel-64bit < %{version}-%{release} @@ -464,8 +467,8 @@ %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7hl" %define CONFIGURE_TARGET armv7hl-suse-linux-gnueabi %endif -%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5el" -%define CONFIGURE_TARGET armv5el-suse-linux-gnueabi +%if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5tel" +%define CONFIGURE_TARGET armv5tel-suse-linux-gnueabi %endif %else %define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") @@ -511,13 +514,6 @@ %define versmainlibdirbi %{versmainlibdirbi64} %endif -%if 0%{?build_optional_compiler:1} -%define mainlibdir %{versmainlibdir} -%define mainlibdirbi32 %{versmainlibdirbi32} -%define mainlibdirbi64 %{versmainlibdirbi64} -%define noflibdir %{versnoflibdir} -%define mainlibdirbi %{versmainlibdirbi} -%else %define mainlibdir %{_libdir} %define mainlibdirbi32 %{_prefix}/lib %define mainlibdirbi64 %{_prefix}/lib64 @@ -527,7 +523,6 @@ %else %define mainlibdirbi %{mainlibdirbi64} %endif -%endif # Now define a few macros that make it easy to package libs and # related files just to the right package, without caring for the @@ -759,8 +754,12 @@ # --enable-threads=posix \ #%endif # --enable-shared \ +%if "%{TARGET_ARCH}" == "armv7l" || "%{TARGET_ARCH}" == "armv7hl" +# temporary workaround for a miscompilation of hash functions in java code +GCJ_EXTRA_FLAGS="-marm" +%endif CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \ -TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \ +TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS $GCJ_EXTRA_FLAGS" \ ../configure \ --prefix=%{_prefix} \ --infodir=%{_infodir} \ @@ -842,13 +841,11 @@ --with-fpu=vfpv3-d16 \ --disable-sjlj-exceptions \ %endif +%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" %if "%{TARGET_ARCH}" == "powerpc" --with-cpu=default32 \ - --enable-secureplt \ - --with-long-double-128 \ %endif -%if "%{TARGET_ARCH}" == "powerpc64" - --with-cpu=power4 \ + --with-cpu-64=power4 \ --enable-secureplt \ --with-long-double-128 \ %endif @@ -981,7 +978,6 @@ # LIBFFI-DELETE-BEGIN -%if 0%{!?build_optional_compiler:1} # move shared libs from versionspecific dir to main libdir for libname in \ %if 0%{?building_libjava:1} @@ -1043,13 +1039,12 @@ for lib in `find $RPM_BUILD_ROOT%{versmainlibdir} -maxdepth 1 -name libgcj_bc.so.*`; do rm $lib done -ln -s libgcj.so.%{gcj_sover} $RPM_BUILD_ROOT%{mainlibdir}/libgcj_bc.so.1 +ln -s libgcj.so.%{gcj_sover} $RPM_BUILD_ROOT%{mainlibdir}/libgcj_bc.so.%{libgcj_bc_sover} %if %{biarch_libjava} for lib in `find $RPM_BUILD_ROOT%{versmainlibdirbi} -maxdepth 1 -name libgcj_bc.so.*`; do rm $lib done -ln -s libgcj.so.%{gcj_sover} $RPM_BUILD_ROOT%{mainlibdirbi}/libgcj_bc.so.1 -%endif +ln -s libgcj.so.%{gcj_sover} $RPM_BUILD_ROOT%{mainlibdirbi}/libgcj_bc.so.%{libgcj_bc_sover} %endif %endif @@ -1288,12 +1283,12 @@ %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/libjavamath.la %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/libjavamath.so -%files -n libgcj_bc47 +%files -n libgcj_bc%{libgcj_bc_sover} %defattr(-,root,root) %if %{biarch_libjava} -%biarchlib libgcj_bc.so.* +%biarchlib libgcj_bc.so.%{libgcj_bc_sover}* %else -%mainlib libgcj_bc.so.* +%mainlib libgcj_bc.so.%{libgcj_bc_sover}* %endif %files -n libgcj47-jar @@ -1370,12 +1365,12 @@ %if 0%{?building_libffi:1} %files -n libffi47 %defattr(-,root,root) -%mainlib libffi.so.* +%mainlib libffi.so.%{libffi_sover}* %if %{separate_biarch} %files -n libffi47%{separate_biarch_suffix} %defattr(-,root,root) -%biarchlib libffi.so.* +%biarchlib libffi.so.%{libffi_sover}* %endif %files -n libffi47-devel ++++++ baselibs.conf ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -1,5 +1,5 @@ -targettype x86 package libgcc47 -targettype x86 package libstdc++47 +targettype x86 package libgcc1 +targettype x86 package libstdc++6 libgcj47 requires "libgcj47" libgcj47-devel ++++++ change_spec ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -3,7 +3,6 @@ do_icecream=1 do_cross_static=0 do_cross_shared=0 -do_optional_compiler=0 do_optional_compiler_languages=0 rm -f libgcj*.spec libgcj*.changes libffi*.spec libffi*.changes gcc*-testresults.spec gcc*-testresults.changes gcc*.spec cross*.spec cross*.changes @@ -29,10 +28,6 @@ fi echo -n > $outfile - if test "$do_optional_compiler" = "1"; then - echo '%define run_tests 1' >> $outfile - echo '%define build_optional_compiler 1' >> $outfile - fi if test "$do_optional_compiler_languages" = "1"; then echo '%define run_tests 1' >> $outfile echo '%define build_optional_compiler_languages 1' >> $outfile @@ -54,7 +49,6 @@ p } }' >> $outfile - if test "$do_optional_compiler" = "0"; then if test "$do_optional_compiler_languages" = "0"; then echo '%define building_libjava 1' > libgcj$base_ver.spec sed -e '/^# LIBJAVA-DELETE-BEGIN/,/^# LIBJAVA-DELETE-END/d;s/-n libgcj@base_ver@$//g;s/^Name:[[:space:]]*gcc/Name: libgcj/g' \ @@ -108,12 +102,11 @@ && ( ln -f gcc$base_ver.changes libgcj$base_ver.changes; \ ln -f gcc$base_ver.changes libffi$base_ver.changes; \ ln -f gcc$base_ver.changes gcc$base_ver-testresults.changes; ) - fi fi # disabled: mips, sparc, alpha if test "$do_icecream" = 1 ; then - for arch in hppa i386 x86_64 s390 s390x ppc ppc64 ia64 armv7hl armv5el; do + for arch in hppa i386 x86_64 s390 s390x ppc ppc64 ia64 armv7hl armv5tel; do exclarch=`echo $arch | sed -e 's/i.86/%ix86/'` { sed -n -e '1,/COMMON-BEGIN/p' cross-icecream.spec.in sed -n -e '/COMMON-BEGIN/,/COMMON-END/p' $outfile ++++++ cross-icecream.spec.in ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -24,7 +24,7 @@ %if %{binutils_target} == "armv7l" || %{binutils_target} == "armv7hl" %define binutils_target arm %endif -%if %{binutils_target} == "armv5el" +%if %{binutils_target} == "armv5tel" %define binutils_target arm %endif %define canonical_target %(echo %{binutils_target} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;") ++++++ gcc-4.7.1-20120723.tar.bz2 -> gcc-4.7.2-20120920.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/gcc47/gcc-4.7.1-20120723.tar.bz2 /work/SRC/openSUSE:Factory/.gcc47.new/gcc-4.7.2-20120920.tar.bz2 differ: char 11, line 1 ++++++ gcc.spec.in ++++++ ++++ 744 lines (skipped) ++++ between /work/SRC/openSUSE:Factory/gcc47/gcc.spec.in ++++ and /work/SRC/openSUSE:Factory/.gcc47.new/gcc.spec.in ++++++ gcc47-rpmlintrc ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -1,12 +1,6 @@ # This line is mandatory to access the configuration functions from Config import * -addFilter ("libgomp.*shlib-policy-name-error") -addFilter ("libgcc.*shlib-policy-name-error") -addFilter ("libgfortran.*shlib-policy-name-error") -addFilter ("libquadmath.*shlib-policy-name-error") -addFilter ("libobjc.*shlib-policy-name-error") -addFilter ("libstdc.*shlib-policy-name-error") addFilter ("gcc47.*devel-dependency glibc-devel") addFilter ("gcc47-c.*devel-dependency libstdc") ++++++ libgcj47-rpmlintrc ++++++ --- /var/tmp/diff_new_pack.7JfYIj/_old 2012-10-27 13:14:20.000000000 +0200 +++ /var/tmp/diff_new_pack.7JfYIj/_new 2012-10-27 13:14:20.000000000 +0200 @@ -1,4 +1,3 @@ # This line is mandatory to access the configuration functions from Config import * -addFilter ("libgcj_bc47.*shlib-policy-name-error") -- 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