# NOTE: despite lower soname, libffi is newer than standalone 3.0.10
#
+# NOTE
+# - when adding new subpackages with external libraries (like libffi)
+# or having own Version, do not use epoch 6 there, reset them to 0!
+#
# TODO:
-# - gconf peer? (but libgcj needs split anyway)
-# - package?
-# /usr/bin/gjdoc [BR: antlr.jar] (but see gjdoc package, there are some additional jars?)
-# /usr/share/man/man1/gjdoc.1.gz
+# - revise obsoletes for new libmpx packages!
#
# Conditional build:
# - languages:
%bcond_without cxx # build without C++ support
%bcond_without fortran # build without Fortran support
%bcond_without go # build without Go support
-%bcond_without java # build without Java support
%bcond_without objc # build without Objective-C support
%bcond_without objcxx # build without Objective-C++ support
# - features:
%bcond_without gomp # build without OpenMP support
%bcond_without multilib # build without multilib support (which needs glibc[32&64]-devel)
-%bcond_with multilibx32 # build with x32 multilib support on x86_64 (needs x32 glibc-devel)
+%bcond_without multilibx32 # build with x32 multilib support on x86_64 (needs x32 glibc-devel)
%bcond_without profiling # build without profiling
-%bcond_without python # build without libstdc++ printers for gdb and aot-compile for java
+%bcond_without python # build without libstdc++ printers for gdb
%bcond_with gcc_libffi # packaging gcc libffi for system usage
- # note: libgcj and libgo always have convenience gcc libffi linked in
-# - libgcj options:
-%bcond_without alsa # don't build libgcj ALSA MIDI interface
-%bcond_without dssi # don't build libgcj DSSI MIDI interface
-%bcond_without gtk # don't build libgcj GTK peer
-%bcond_without apidocs # do not build and package API docs
-%bcond_with mozilla # build libgcjwebplugin (needs fix for new xulrunner)
-%bcond_with qt # build libgcj Qt peer (currently doesn't build with libtool-2.x)
-%bcond_without x # don't build libgcj Xlib-dependent AWTs (incl. GTK/Qt)
# - other:
%bcond_without bootstrap # omit 3-stage bootstrap
%bcond_with tests # torture gcc
%define cxx_sover 6
%endif
-# go, java and objcxx require C++
+# go and objcxx require C++
%if %{without cxx}
%undefine with_go
-%undefine with_java
%undefine with_objcxx
%endif
# objcxx requires objc
%undefine with_profiling
%endif
-%if %{without x}
-%undefine with_gtk
-%undefine with_qt
-%endif
-
-%ifarch sparc64
-# used to be broken (to be verified if needed)
+%ifarch sparc64 x32
+# used to be broken on sparc64 (to be verified if needed)
+# broken since 5.x on x32 (to be verified if needed)
%undefine with_ada
%endif
%define with_vtv 1
%endif
-%define major_ver 4.9
-%define minor_ver 2
-%define major_ecj_ver 4.9
-# class data version seen with file(1) that this jvm is able to load
-%define _classdataversion 50.0
-%define gcj_soname_ver 15
+# Stable is: any major_ver and minor_ver >= 1.0
+# For PLD we usually use gcc when minor_ver >= 2.0 (first bugfix release or later)
+%define major_ver 7
+%define minor_ver 3.0
Summary: GNU Compiler Collection: the C compiler and shared files
Summary(es.UTF-8): Colección de compiladores GNU: el compilador C y ficheros compartidos
Summary(pt_BR.UTF-8): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
Name: gcc
Version: %{major_ver}.%{minor_ver}
-Release: 5
+Release: 1
Epoch: 6
License: GPL v3+
Group: Development/Languages
-Source0: https://ftp.gnu.org/pub/gnu/gcc/gcc-%{version}/%{name}-%{version}.tar.bz2
-# Source0-md5: 4df8ee253b7f3863ad0b86359cd39c43
+Source0: https://ftp.gnu.org/pub/gnu/gcc/gcc-%{version}/%{name}-%{version}.tar.xz
+# Source0-md5: be2da21680f27624f3a87055c4ba5af2
Source1: %{name}-optimize-la.pl
-Source2: ftp://sourceware.org/pub/java/ecj-%{major_ecj_ver}.jar
-# Source2-md5: 7339f199ba11c941890031fd9981d7be
# check libffi version with libffi/configure.ac
Source3: libffi.pc.in
-# svn diff -x --ignore-eol-style --force svn://gcc.gnu.org/svn/gcc/tags/gcc_4_9_2_release svn://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch > gcc-branch.diff
+Source4: branch.sh
+# use branch.sh to update glibc-branch.diff
Patch100: %{name}-branch.diff
-# Patch100-md5: 1f1a11566ddf413cca96fbb04fd790d4
+# Patch100-md5: 389fef34774afd4faa62f5e51d95c122
Patch0: %{name}-info.patch
-Patch1: %{name}-cloog.patch
Patch2: %{name}-nodebug.patch
Patch3: %{name}-ada-link.patch
Patch4: %{name}-ada-x32.patch
-Patch6: %{name}-pr61164.patch
-Patch7: %{name}-libjava-multilib.patch
-Patch8: %{name}-enable-java-awt-qt.patch
Patch10: %{name}-moresparcs.patch
Patch11: %{name}-install-libffi.patch
URL: http://gcc.gnu.org/
BuildRequires: autoconf >= 2.64
-%{?with_tests:BuildRequires: autogen}
-BuildRequires: automake >= 1:1.9.3
-# binutils 2.17.50.0.9 or newer are required for fixing PR middle-end/20218.
-BuildRequires: binutils >= 3:2.17.50.0.9-1
+%{?with_tests:BuildRequires: autogen >= 5.5.4}
+BuildRequires: automake >= 1:1.11.1
+BuildRequires: binutils >= 3:2.23
BuildRequires: bison
BuildRequires: chrpath >= 0.13-2
-BuildRequires: cloog-isl-devel >= 0.17.0
-BuildRequires: cloog-isl-devel < 0.19
-%{?with_tests:BuildRequires: dejagnu}
+%{?with_tests:BuildRequires: dejagnu >= 1.4.4}
BuildRequires: elfutils-devel >= 0.145-1
BuildRequires: fileutils >= 4.0.41
-BuildRequires: flex
+BuildRequires: flex >= 2.5.4
%if %{with ada}
BuildRequires: gcc(ada)
BuildRequires: gcc-ada
%endif
-BuildRequires: gettext-tools
+BuildRequires: gdb
+BuildRequires: gettext-tools >= 0.14.5
BuildRequires: glibc-devel >= 6:2.4-1
%if %{with multilib}
# Formerly known as gcc(multilib)
BuildRequires: glibc-devel(sparcv9)
%endif
%endif
-BuildRequires: gmp-c++-devel >= 4.1
-BuildRequires: gmp-devel >= 4.1
-BuildRequires: isl-devel >= 0.13
-BuildRequires: libmpc-devel
-BuildRequires: mpfr-devel >= 2.3.0
-BuildRequires: ppl-devel >= 0.11
+BuildRequires: gmp-c++-devel >= 4.3.2
+BuildRequires: gmp-devel >= 4.3.2
+BuildRequires: isl-devel >= 0.15
+BuildRequires: libmpc-devel >= 0.8.1
+BuildRequires: mpfr-devel >= 2.4.2
%if %{with python}
BuildRequires: python-devel
BuildRequires: rpm-pythonprov
%endif
BuildRequires: rpmbuild(macros) >= 1.211
-BuildRequires: texinfo >= 4.1
+BuildRequires: texinfo >= 4.7
BuildRequires: zlib-devel
-%if %{with java}
-%{?with_alsa:BuildRequires: alsa-lib-devel}
-%if %{with dssi}
-BuildRequires: dssi-devel
-BuildRequires: jack-audio-connection-kit-devel
-%endif
-BuildRequires: libxml2-devel >= 1:2.6.8
-BuildRequires: libxslt-devel >= 1.1.11
-BuildRequires: perl-base
-BuildRequires: perl-tools-pod
-BuildRequires: pkgconfig
-BuildRequires: sed >= 4.0
-BuildRequires: unzip
-BuildRequires: zip
-%if %{with gtk}
-BuildRequires: cairo-devel >= 0.5.0
-BuildRequires: gtk+2-devel >= 2:2.4.0
-BuildRequires: libart_lgpl-devel
-BuildRequires: pango-devel
-BuildRequires: xorg-lib-libXt-devel
-BuildRequires: xorg-lib-libXtst-devel
-%endif
-%if %{with qt}
-BuildRequires: QtGui-devel >= 4.0.1
-BuildRequires: qt4-build >= 4.0.1
-%endif
-%{?with_mozilla:BuildRequires: xulrunner-devel >= 1.8.1.3-1.20070321.5}
-%endif
BuildConflicts: pdksh < 5.2.14-50
Requires: binutils >= 3:2.23
+Requires: gmp >= 4.3.2
+Requires: isl >= 0.15
Requires: libgcc = %{epoch}:%{version}-%{release}
+Requires: libmpc >= 0.8.1
+Requires: mpfr >= 2.4.2
Provides: cpp = %{epoch}:%{version}-%{release}
%{?with_ada:Provides: gcc(ada)}
Obsoletes: cpp
%endif
%endif
%define gcclibdir %{_libdir}/gcc/%{_target_platform}/%{version}
-%define gcjdbexecdir gcj-%{version}-%{gcj_soname_ver}
%define filterout -fwrapv -fno-strict-aliasing -fsigned-char
%define filterout_ld -Wl,--as-needed
# receiving non constant format strings
%define Werror_cflags %{nil}
-%define skip_post_check_so '.*(libgo|libxmlj|lib-gnu-awt-xlib)\.so.*'
+%define skip_post_check_so '.*(libasan|libcc1plugin|libcp1plugin|libgo|libxmlj|libubsan|lib-gnu-awt-xlib|libmpxwrappers)\.so.*'
+# private symbols
+%define _noautoreq .*\(GLIBC_PRIVATE\)
%description
A compiler aimed at integrating all the optimizations and features
Ten pakiet zawiera skrypty Pythona dla GDB służące do ładnego
wypisywania typów i kontenerów libstdc++.
-%package -n libstdc++-apidocs
-Summary: C++ standard library API documentation
-Summary(pl.UTF-8): Dokumentacja API biblioteki standardowej C++
-License: FDL v1.3 (mainly), GPL v3+ (doxygen generated parts)
-Group: Documentation
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
-
-%description -n libstdc++-apidocs
-API and internal documentation for C++ standard library.
-
-%description -n libstdc++-apidocs -l pl.UTF-8
-Dokumentacja API i wewnętrzna biblioteki standardowej C++.
-
%package fortran
Summary: Fortran 95 language support for GCC
Summary(es.UTF-8): Soporte de Fortran 95 para GCC
%description -n libquadmath-multilib-%{multilib2}-static -l pl.UTF-8
Wersja %{m2_desc} biblioteki statycznej GCC do obsługi typu __float128.
-%package java
-Summary: Java language support for GCC
-Summary(es.UTF-8): Soporte de Java para GCC
-Summary(pl.UTF-8): Obsługa języka Java dla GCC
-Group: Development/Languages/Java
-Requires: %{name} = %{epoch}:%{version}-%{release}
-Requires: libgcj-devel = %{epoch}:%{version}-%{release}
-Provides: gcc-java-tools
-Provides: gcj = %{epoch}:%{version}-%{release}
-Obsoletes: eclipse-ecj
-Obsoletes: gcc-java-tools
-Obsoletes: java-gnu-classpath-tools
-
-%description java
-This package adds experimental support for compiling Java(TM) programs
-and bytecode into native code. To use this you will also need the
-libgcj package.
-
-%description java -l es.UTF-8
-Este paquete añade soporte experimental para compilar programas
-Java(tm) y su bytecode en código nativo. Para usarlo también va a
-necesitar el paquete libgcj.
-
-%description java -l pl.UTF-8
-Ten pakiet dodaje możliwość kompilowania programów w języku Java(TM)
-oraz bajtkodu do kodu natywnego. Do używania go wymagany jest
-dodatkowo pakiet libgcj.
-
-%package java-aotcompile
-Summary: Java AOT-compiler - compiling bytecode to native
-Summary(pl.UTF-8): Kompilator AOT dla Javy - kompilacja bajtkodu do kodu natywnego
-License: GPL v2+
-Group: Development/Tools
-Requires: %{name}-java = %{epoch}:%{version}-%{release}
-
-%description java-aotcompile
-aot-compile is a script that searches a directory for Java bytecode
-(as class files, or in jars) and uses gcj to compile it to native code
-and generate the databases from it.
-
-%description java-aotcompile -l pl.UTF-8
-aot-compile to skrypt wyszukujący w katalogu bajtkod Javy (w plikach
-class lub jarach) i kompilujący go przy użyciu gcj, a następnie
-generujący z niego bazy danych.
-
-%package -n libgcj
-Summary: Java Class Libraries
-Summary(es.UTF-8): Bibliotecas de clases de Java
-Summary(pl.UTF-8): Biblioteki klas Javy
-License: GPL v2+ with limited linking exception
-Group: Libraries
-Requires: jpackage-utils
-Requires: libstdc++ = %{epoch}:%{version}-%{release}
-Provides: java(ClassDataVersion) = %{_classdataversion}
-Obsoletes: libgcj3
-
-%description -n libgcj
-Java Class Libraries.
-
-%description -n libgcj -l es.UTF-8
-Bibliotecas de clases de Java.
-
-%description -n libgcj -l pl.UTF-8
-Biblioteki klas Javy.
-
-%package -n libgcj-devel
-Summary: Development files for Java Class Libraries
-Summary(es.UTF-8): Ficheros de desarrollo para las bibliotecas de clases de Java
-Summary(pl.UTF-8): Pliki nagłówkowe bibliotek klas Javy
-License: GPL v2+ with limited linking exception
-Group: Development/Libraries
-Requires: libgcj = %{epoch}:%{version}-%{release}
-Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
-Requires: zlib-devel
-Obsoletes: libgcj3-devel
-
-%description -n libgcj-devel
-Development files for Java Class Libraries.
-
-%description -n libgcj-devel -l es.UTF-8
-Ficheros de desarrollo para las bibliotecas de clases de Java.
-
-%description -n libgcj-devel -l pl.UTF-8
-Pliki nagłówkowe bibliotek klas Javy.
-
-%package -n libgcj-static
-Summary: Static Java Class Libraries
-Summary(es.UTF-8): Bibliotecas estáticas de clases de Java
-Summary(pl.UTF-8): Statyczne biblioteki klas Javy
-License: GPL v2+ with limited linking exception
-Group: Development/Libraries
-Requires: libgcj-devel = %{epoch}:%{version}-%{release}
-
-%description -n libgcj-static
-Static Java Class Libraries.
-
-%description -n libgcj-static -l es.UTF-8
-Bibliotecas estáticas de clases de Java.
-
-%description -n libgcj-static -l pl.UTF-8
-Statyczne biblioteki klas Javy.
-
%package -n libffi
Summary: Foreign Function Interface library
Summary(es.UTF-8): Biblioteca de interfaz de funciones ajenas
%description -n libatomic-multilib-%{multilib2}-static -l pl.UTF-8
Ten pakiet zawiera wersję %{m2_desc} statycznej biblioteki GNU Atomic.
+%package gdb-plugin
+Summary: GCC plugin for GDB
+Summary(pl.UTF-8): Wtyczka GCC dla GDB
+Group: Development/Debuggers
+Requires: %{name} = %{epoch}:%{version}-%{release}
+
+%description gdb-plugin
+This package contains GCC plugin for GDB C expression evaluation.
+
+%description gdb-plugin -l pl.UTF-8
+Ten pakiet zawiera wtyczkę GCC do obliczania wyrażeń języka C w GDB.
+
+%package plugin-devel
+Summary: Support for compiling GCC plugins
+Summary(pl.UTF-8): Obsługa kompilowania wtyczek GCC
+Group: Development/Languages
+Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: gmp-devel >= 4.3.2
+Requires: libmpc-devel >= 0.8.1
+Requires: mpfr-devel >= 2.4.2
+
+%description plugin-devel
+This package contains header files and other support files for
+compiling GCC plugins. The GCC plugin ABI is currently not stable, so
+plugins must be rebuilt any time GCC is updated.
+
+%description plugin-devel -l pl.UTF-8
+Ten pakiet zawiera pliki nagłówkowe oraz inne pozwalające na
+kompilowanie wtyczek GCC. ABI wtyczek GCC nie jest obecnie stabilne,
+więc wtyczki muszą być przebudowywane przy każdej aktualizacji GCC.
+
+# Packages with epoch 0
+# DO NOT MOVE THESE PACKAGES AROUND
+
+%package -n libmpx
+Summary: GCC Memory Protection Extensions language extensions runtime library
+Summary(pl.UTF-8): Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC
+Epoch: 0
+License: BSD
+Group: Libraries
+Requires: libstdc++ = 6:%{version}-%{release}
+
+%description -n libmpx
+This package contains the Memory Protection Extensions C language
+extensions runtime library.
+
+%description -n libmpx -l pl.UTF-8
+Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory
+Protection Extensions dla języka C.
+
+%package -n libmpx-devel
+Summary: GCC development files for Memory Protection Extensions language extensions
+Summary(pl.UTF-8): Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions
+Epoch: 0
+License: BSD
+Group: Development/Libraries
+Requires: libmpx = %{version}-%{release}
+
+%description -n libmpx-devel
+This package contains development files for Memory Protection
+Extensions C language extensions.
+
+%description -n libmpx-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection
+Extensions dla języka C.
+
+%package -n libmpx-static
+Summary: GCC Memory Protection Extensions language extensions static library
+Summary(pl.UTF-8): Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC
+Epoch: 0
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-devel = %{version}-%{release}
+
+%description -n libmpx-static
+This package contains Memory Protection Extensions C language
+extensions static library.
+
+%description -n libmpx-static -l pl.UTF-8
+Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection
+Extensions dla języka C.
+
+%package -n libmpx-multilib-32
+Summary: GCC Memory Protection Extensions language extensions runtime library - 32-bit version
+Summary(pl.UTF-8): Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC - wersja 32-bitowa
+Epoch: 0
+License: BSD
+Group: Libraries
+Requires: libstdc++-multilib-32 = %{version}-%{release}
+Obsoletes: libmpx-multilib
+
+%description -n libmpx-multilib-32
+This package contains the Memory Protection Extensions C language
+extensions runtime library in 32-bit version.
+
+%description -n libmpx-multilib-32 -l pl.UTF-8
+Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory
+Protection Extensions dla języka C. W tym pakiecie znajduje się wersja
+32-bitowa.
+
+%package -n libmpx-multilib-32-devel
+Summary: GCC development files for Memory Protection Extensions language extensions - 32-bit version
+Summary(pl.UTF-8): Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions - wersja 32-bitowa
+Epoch: 0
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-devel = %{version}-%{release}
+Requires: libmpx-multilib-32 = %{version}-%{release}
+Obsoletes: libmpx-multilib-devel
+
+%description -n libmpx-multilib-32-devel
+This package contains development files for Memory Protection
+Extensions C language extensions in 32-bit version.
+
+%description -n libmpx-multilib-32-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection
+Extensions dla języka C. W tym pakiecie znajduje się wersja 32-bitowa.
+
+%package -n libmpx-multilib-32-static
+Summary: GCC Memory Protection Extensions language extensions static library - 32-bit version
+Summary(pl.UTF-8): Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC - wersja 32-bitowa
+Epoch: 0
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-multilib-32-devel = %{version}-%{release}
+Obsoletes: libmpx-multilib-static
+
+%description -n libmpx-multilib-32-static
+This package contains the Memory Protection Extensions C language
+extensions static library in 32-bit version.
+
+%description -n libmpx-multilib-32-static -l pl.UTF-8
+Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection
+Extensions dla języka C. W tym pakiecie znajduje się wersja 32-bitowa.
+
+%package -n libmpx-multilib-%{multilib2}
+Summary: GCC Memory Protection Extensions language extensions runtime library
+Summary(pl.UTF-8): Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC
+Epoch: 0
+License: BSD
+Group: Libraries
+Requires: libstdc++-multilib-%{multilib2} = 6:%{version}-%{release}
+
+%description -n libmpx-multilib-%{multilib2}
+This package contains the Memory Protection Extensions C language
+extensions runtime library.
+
+%description -n libmpx-multilib-%{multilib2} -l pl.UTF-8
+Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory
+Protection Extensions dla języka C.
+
+%package -n libmpx-multilib-%{multilib2}-devel
+Summary: GCC development files for Memory Protection Extensions language extensions
+Summary(pl.UTF-8): Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions
+Epoch: 0
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-devel = %{version}-%{release}
+Requires: libmpx-multilib-%{multilib2} = %{version}-%{release}
+
+%description -n libmpx-multilib-%{multilib2}-devel
+This package contains development files for Memory Protection
+Extensions C language extensions.
+
+%description -n libmpx-multilib-%{multilib2}-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection
+Extensions dla języka C.
+
+%package -n libmpx-multilib-%{multilib2}-static
+Summary: GCC Memory Protection Extensions language extensions static library
+Summary(pl.UTF-8): Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC
+Epoch: 0
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-multilib-%{multilib2}-devel = %{version}-%{release}
+
+%description -n libmpx-multilib-%{multilib2}-static
+This package contains the Memory Protection Extensions C language
+extensions static library.
+
+%description -n libmpx-multilib-%{multilib2}-static -l pl.UTF-8
+Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection
+Extensions dla języka C.
+
%prep
%setup -q
%patch100 -p0
%patch0 -p1
-%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch6 -p1
-%patch7 -p0
-%if %{with qt}
-%patch8 -p1
-%endif
%patch10 -p1
%if %{with gcc_libffi}
%patch11 -p0
%endif
-mv ChangeLog ChangeLog.general
-
-%if %{with java}
-# see contrib/download_ecj
-cp -p %{SOURCE2} ecj.jar
-%endif
+%{__mv} ChangeLog ChangeLog.general
# override snapshot version.
echo %{version} > gcc/BASE-VER
cd gcc
#{__autoconf}
cd ..
-%if %{with qt}
-cd libjava/classpath
-%{__autoconf}
-cd ../..
-%endif
cp -f /usr/share/automake/config.sub .
rm -rf builddir && install -d builddir && cd builddir
-# http://www.mailinglistarchive.com/java%40gcc.gnu.org/msg02751.html
-export JAR=no
-
CC="%{__cc}" \
CFLAGS="%{rpmcflags}" \
CXXFLAGS="%{rpmcxxflags}" \
%endif
%{?with_fortran:--enable-cmath} \
--enable-decimal-float \
- --enable-gnu-unique-object \
--enable-gnu-indirect-function \
+ --enable-gnu-unique-object \
--enable-initfini-array \
- --enable-languages="c%{?with_cxx:,c++}%{?with_fortran:,fortran}%{?with_objc:,objc}%{?with_objcxx:,obj-c++}%{?with_ada:,ada}%{?with_java:,java}%{?with_go:,go}" \
+ --disable-isl-version-check \
+ --enable-languages="c%{?with_cxx:,c++}%{?with_fortran:,fortran}%{?with_objc:,objc}%{?with_objcxx:,obj-c++}%{?with_ada:,ada}%{?with_go:,go}" \
--%{?with_gomp:en}%{!?with_gomp:dis}able-libgomp \
--enable-libitm \
--enable-linker-build-id \
%ifarch %{x8664} x32
--with-arch-32=x86-64 \
%endif
- --with-cloog \
%ifarch sparc64
--with-cpu=ultrasparc \
%endif
--with-multilib-list=m32,m64,mx32 \
%endif
%endif
- --with-ppl \
- --disable-ppl-version-check \
--with-slibdir=%{_slibdir} \
%ifnarch ia64
--without-system-libunwind \
--with-system-libunwind \
%endif
--with-system-zlib \
- %{!?with_java:--without-x} \
+ --without-x \
%if %{with cxx}
--enable-__cxa_atexit \
--enable-libstdcxx-allocator=new \
--enable-libstdcxx-visibility \
--enable-symvers=gnu%{?with_symvers:-versioned-namespace} \
--with-gxx-include-dir=%{_includedir}/c++/%{version} \
-%endif
-%if %{with java}
- %{!?with_alsa:--disable-alsa} \
- %{!?with_dssi:--disable-dssi} \
- --disable-gconf-peer \
- %{?with_gtk:--enable-gtk-cairo} \
-%if %{with x}
- --enable-java-awt="xlib%{?with_gtk:,gtk}%{?with_qt:,qt}" \
-%endif
- --enable-jni \
- --enable-libgcj \
- --enable-libgcj-database \
- --enable-libgcj-multifile \
- --disable-libjava-multilib \
- %{?with_mozilla:--enable-plugin} \
- --enable-static-libjava \
- --enable-xmlj \
+ %{?with_vtv:--enable-vtable-verify} \
%endif
--with-pkgversion="PLD-Linux" \
--with-bugurl="http://bugs.pld-linux.org" \
all $(all):
$(MAKE) -C builddir $(MAKE_OPTS) $(all) \
%{?with_bootstrap:%{?with_profiling:profiledbootstrap}} \
- GCJFLAGS="%{rpmcflags}" \
BOOT_CFLAGS="%{rpmcflags}" \
STAGE1_CFLAGS="%{rpmcflags} -O1 -g0" \
GNATLIBCFLAGS="%{rpmcflags}" \
ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-g++ \
$RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-g++
%endif
-%if %{with java}
-ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcj \
- $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcj
-%endif
%endif
%endif
echo ".so man1/gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
libssp=$(cd $RPM_BUILD_ROOT%{_libdir}; echo libssp.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdir}/libssp.so.* $RPM_BUILD_ROOT%{_slibdir}
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libssp.so.* $RPM_BUILD_ROOT%{_slibdir}
ln -sf %{_slibdir}/$libssp $RPM_BUILD_ROOT%{_libdir}/libssp.so
libitm=$(cd $RPM_BUILD_ROOT%{_libdir}; echo libitm.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdir}/libitm.so.* $RPM_BUILD_ROOT%{_slibdir}
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libitm.so.* $RPM_BUILD_ROOT%{_slibdir}
ln -sf %{_slibdir}/$libitm $RPM_BUILD_ROOT%{_libdir}/libitm.so
libgomp=$(cd $RPM_BUILD_ROOT%{_libdir}; echo libgomp.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdir}/libgomp.so.* $RPM_BUILD_ROOT%{_slibdir}
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libgomp.so.* $RPM_BUILD_ROOT%{_slibdir}
ln -sf %{_slibdir}/$libgomp $RPM_BUILD_ROOT%{_libdir}/libgomp.so
%if %{with multilib}
libssp=$(cd $RPM_BUILD_ROOT%{_libdir32}; echo libssp.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdir32}/libssp.so.* $RPM_BUILD_ROOT%{_slibdir32}
+%{__mv} $RPM_BUILD_ROOT%{_libdir32}/libssp.so.* $RPM_BUILD_ROOT%{_slibdir32}
ln -sf %{_slibdir32}/$libssp $RPM_BUILD_ROOT%{_libdir32}/libssp.so
libitm=$(cd $RPM_BUILD_ROOT%{_libdir32}; echo libitm.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdir32}/libitm.so.* $RPM_BUILD_ROOT%{_slibdir32}
+%{__mv} $RPM_BUILD_ROOT%{_libdir32}/libitm.so.* $RPM_BUILD_ROOT%{_slibdir32}
ln -sf %{_slibdir32}/$libitm $RPM_BUILD_ROOT%{_libdir32}/libitm.so
libgomp=$(cd $RPM_BUILD_ROOT%{_libdir32}; echo libgomp.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdir32}/libgomp.so.* $RPM_BUILD_ROOT%{_slibdir32}
+%{__mv} $RPM_BUILD_ROOT%{_libdir32}/libgomp.so.* $RPM_BUILD_ROOT%{_slibdir32}
ln -sf %{_slibdir32}/$libgomp $RPM_BUILD_ROOT%{_libdir32}/libgomp.so
%if %{with multilib2}
libssp=$(cd $RPM_BUILD_ROOT%{_libdirm2}; echo libssp.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdirm2}/libssp.so.* $RPM_BUILD_ROOT%{_slibdirm2}
+%{__mv} $RPM_BUILD_ROOT%{_libdirm2}/libssp.so.* $RPM_BUILD_ROOT%{_slibdirm2}
ln -sf %{_slibdirm2}/$libssp $RPM_BUILD_ROOT%{_libdirm2}/libssp.so
libitm=$(cd $RPM_BUILD_ROOT%{_libdirm2}; echo libitm.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdirm2}/libitm.so.* $RPM_BUILD_ROOT%{_slibdirm2}
+%{__mv} $RPM_BUILD_ROOT%{_libdirm2}/libitm.so.* $RPM_BUILD_ROOT%{_slibdirm2}
ln -sf %{_slibdirm2}/$libitm $RPM_BUILD_ROOT%{_libdirm2}/libitm.so
libgomp=$(cd $RPM_BUILD_ROOT%{_libdirm2}; echo libgomp.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdirm2}/libgomp.so.* $RPM_BUILD_ROOT%{_slibdirm2}
+%{__mv} $RPM_BUILD_ROOT%{_libdirm2}/libgomp.so.* $RPM_BUILD_ROOT%{_slibdirm2}
ln -sf %{_slibdirm2}/$libgomp $RPM_BUILD_ROOT%{_libdirm2}/libgomp.so
%endif
%endif
%if %{with ada}
# move ada shared libraries to proper place...
-mv -f $RPM_BUILD_ROOT%{gcclibdir}/adalib/*.so.1 \
+%{__mv} $RPM_BUILD_ROOT%{gcclibdir}/adalib/*.so.1 \
$RPM_BUILD_ROOT%{_libdir}
# check if symlink to be made is valid
test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-%{major_ver}.so.1
ln -sf libgnat-%{major_ver}.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
ln -sf libgnarl-%{major_ver}.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
%if %{with multilib}
-mv -f $RPM_BUILD_ROOT%{gcclibdir}/32/adalib/*.so.1 \
+%{__mv} $RPM_BUILD_ROOT%{gcclibdir}/32/adalib/*.so.1 \
$RPM_BUILD_ROOT%{_libdir32}
# check if symlink to be made is valid
test -f $RPM_BUILD_ROOT%{_libdir32}/libgnat-%{major_ver}.so.1
ln -sf libgnarl-%{major_ver}.so $RPM_BUILD_ROOT%{_libdir32}/libgnarl.so
%if %{with multilib2}
-mv -f $RPM_BUILD_ROOT%{gcclibdir}/%{multilib2}/adalib/*.so.1 \
+%{__mv} $RPM_BUILD_ROOT%{gcclibdir}/%{multilib2}/adalib/*.so.1 \
$RPM_BUILD_ROOT%{_libdirm2}
# check if symlink to be made is valid
test -f $RPM_BUILD_ROOT%{_libdirm2}/libgnat-%{major_ver}.so.1
cd ..
-%if %{with java}
-install -d java-doc
-cp -f libjava/READ* java-doc
-ln -sf libgcj-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/libgcj.jar
-%endif
-
%if %{with gcc_libffi}
# still not installed by gcc?
[ ! -f $RPM_BUILD_ROOT%{_pkgconfigdir}/libffi.pc ] || exit 1
# avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/%{_target_platform}/%{version}
# normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
for f in libitm.la libssp.la libssp_nonshared.la \
- %{?with_cxx:libstdc++.la libsupc++.la} \
+ %{?with_cxx:libstdc++.la libstdc++fs.la libsupc++.la} \
%{?with_fortran:libgfortran.la libquadmath.la} \
%{?with_gomp:libgomp.la} \
%{?with_Xsan:libasan.la libubsan.la} \
%{?with_lsan_m0:liblsan.la} \
%{?with_tsan_m0:libtsan.la} \
%{?with_atomic:libatomic.la} \
-%if %{with java}
- %{?with_gcc_libffi:libffi.la} \
- libgcj.la libgcj-tools.la libgij.la \
- %{gcjdbexecdir}/libjvm.la \
- %{gcjdbexecdir}/libxmlj.la \
- %{?with_x:lib-gnu-awt-xlib.la} \
- %{?with_gtk:%{gcjdbexecdir}/libgtkpeer.la %{gcjdbexecdir}/libjawt.la} \
- %{?with_qt:%{gcjdbexecdir}/libqtpeer.la} \
- %{?with_alsa:%{gcjdbexecdir}/libgjsmalsa.la} \
- %{?with_dssi:%{gcjdbexecdir}/libgjsmdssi.la} \
-%endif
%{?with_objc:libobjc.la};
do
- %{__perl} %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/$f %{_libdir} > $RPM_BUILD_ROOT%{_libdir}/$f.fixed
- mv $RPM_BUILD_ROOT%{_libdir}/$f{.fixed,}
+ file="$RPM_BUILD_ROOT%{_libdir}/$f"
+ %{__perl} %{SOURCE1} "$file" %{_libdir} >"${file}.fixed"
+ %{__mv} "${file}.fixed" "$file"
done
%if %{with multilib}
for f in libitm.la libssp.la libssp_nonshared.la \
- %{?with_cxx:libstdc++.la libsupc++.la} \
+ %{?with_cxx:libstdc++.la libstdc++fs.la libsupc++.la} \
%{?with_fortran:libgfortran.la libquadmath.la} \
%{?with_gomp:libgomp.la} \
%{?with_Xsan:libasan.la libubsan.la} \
%{?with_lsan_m1:liblsan.la} \
%{?with_tsan_m1:libtsan.la} \
%{?with_atomic:libatomic.la} \
- %{?with_java:%{?with_gcc_libffi:libffi.la}} \
%{?with_objc:libobjc.la};
do
%{__perl} %{SOURCE1} $RPM_BUILD_ROOT%{_libdir32}/$f %{_libdir32} > $RPM_BUILD_ROOT%{_libdir32}/$f.fixed
- mv $RPM_BUILD_ROOT%{_libdir32}/$f{.fixed,}
+ %{__mv} $RPM_BUILD_ROOT%{_libdir32}/$f{.fixed,}
done
%if %{with multilib2}
for f in libitm.la libssp.la libssp_nonshared.la \
- %{?with_cxx:libstdc++.la libsupc++.la} \
+ %{?with_cxx:libstdc++.la libstdc++fs.la libsupc++.la} \
%{?with_fortran:libgfortran.la libquadmath.la} \
%{?with_gomp:libgomp.la} \
%{?with_Xsan:libasan.la libubsan.la} \
%{?with_lsan_m2:liblsan.la} \
%{?with_tsan_m2:libtsan.la} \
%{?with_atomic:libatomic.la} \
- %{?with_java:%{?with_gcc_libffi:libffi.la}} \
%{?with_objc:libobjc.la};
do
%{__perl} %{SOURCE1} $RPM_BUILD_ROOT%{_libdirm2}/$f %{_libdirm2} > $RPM_BUILD_ROOT%{_libdirm2}/$f.fixed
- mv $RPM_BUILD_ROOT%{_libdirm2}/$f{.fixed,}
+ %{__mv} $RPM_BUILD_ROOT%{_libdirm2}/$f{.fixed,}
done
%endif
%endif
%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/install-tools
%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/include-fixed
-# plugin, .la not needed
-%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/liblto_plugin.la
+# plugins, .la not needed
+%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/liblto_plugin.la \
+ $RPM_BUILD_ROOT%{_libdir}/libcc1.la
+
+%if %{without lsan_m0} && (%{without multilib2} || %{without lsan_m2})
+%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/include/sanitizer/lsan_interface.h
+%endif
%if %{with python}
for LIBDIR in %{_libdir} %{?with_multilib:%{_libdir32}} %{?with_multilib2:%{_libdirm2}} ; do
> $LIBPATH/$(basename $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libstdc++.so.*.*.*)-gdb.py
done
install -d $RPM_BUILD_ROOT%{py_sitescriptdir}
-mv $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx $RPM_BUILD_ROOT%{py_sitescriptdir}
-%if %{with java}
-mv $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libjava $RPM_BUILD_ROOT%{py_sitescriptdir}
-%{__sed} -i -e '1s,#!/usr/bin/env python,#!/usr/bin/python,' $RPM_BUILD_ROOT%{_bindir}/aot-compile
-%endif
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx $RPM_BUILD_ROOT%{py_sitescriptdir}
%py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
%py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
%py_postclean
%else
%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx
-%if %{with java}
-%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libjava
-%endif
%endif
# script(s) always installed; see above for builds with python; if no python, just don't package
%{__rm} $RPM_BUILD_ROOT%{_libdir}/libstdc++.so.*-gdb.py
%postun fortran -p /sbin/postshell
-/usr/sbin/fix-info-dir -c %{_infodir}
-%post java -p /sbin/postshell
--/usr/sbin/fix-info-dir -c %{_infodir}
-
-%postun java -p /sbin/postshell
--/usr/sbin/fix-info-dir -c %{_infodir}
-
%post go -p /sbin/postshell
-/usr/sbin/fix-info-dir -c %{_infodir}
%postun -n libffi-devel -p /sbin/postshell
-/usr/sbin/fix-info-dir -c %{_infodir}
+%post -n libgomp-devel -p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
+%postun -n libgomp-devel -p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
%post -p /sbin/ldconfig -n libcilkrts
%postun -p /sbin/ldconfig -n libcilkrts
%post -p /sbin/ldconfig -n libcilkrts-multilib-32
%postun -p /sbin/ldconfig -n libgfortran-multilib-32
%post -p /sbin/ldconfig -n libgfortran-multilib-%{multilib2}
%postun -p /sbin/ldconfig -n libgfortran-multilib-%{multilib2}
-%post -p /sbin/ldconfig -n libgcj
-%postun -p /sbin/ldconfig -n libgcj
%post -p /sbin/ldconfig -n libffi
%postun -p /sbin/ldconfig -n libffi
%post -p /sbin/ldconfig -n libffi-multilib-32
%postun -p /sbin/ldconfig -n libffi-multilib-32
%post -p /sbin/ldconfig -n libffi-multilib-%{multilib2}
%postun -p /sbin/ldconfig -n libffi-multilib-%{multilib2}
+%post -p /sbin/ldconfig -n libmpx
+%postun -p /sbin/ldconfig -n libmpx
+%post -p /sbin/ldconfig -n libmpx-multilib-32
+%postun -p /sbin/ldconfig -n libmpx-multilib-32
+%post -p /sbin/ldconfig -n libmpx-multilib-%{multilib2}
+%postun -p /sbin/ldconfig -n libmpx-multilib-%{multilib2}
%post -p /sbin/ldconfig -n libobjc
%postun -p /sbin/ldconfig -n libobjc
%post -p /sbin/ldconfig -n libobjc-multilib-32
%postun -p /sbin/ldconfig -n libatomic-multilib-32
%post -p /sbin/ldconfig -n libatomic-multilib-%{multilib2}
%postun -p /sbin/ldconfig -n libatomic-multilib-%{multilib2}
+%post -p /sbin/ldconfig gdb-plugin
+%postun -p /sbin/ldconfig gdb-plugin
%files -f gcc.lang
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/gcc-ranlib
#%attr(755,root,root) %{_bindir}/gccbug
%attr(755,root,root) %{_bindir}/gcov
+%attr(755,root,root) %{_bindir}/gcov-dump
+%attr(755,root,root) %{_bindir}/gcov-tool
%{_mandir}/man1/cc.1*
%{_mandir}/man1/cpp.1*
%{_mandir}/man1/gcc.1*
%{_mandir}/man1/gcov.1*
+%{_mandir}/man1/gcov-dump.1*
+%{_mandir}/man1/gcov-tool.1*
%{_infodir}/cpp.info*
%{_infodir}/cppinternals.info*
%{_infodir}/gcc.info*
%{_libdir}/libssp.a
%{_libdir}/libssp_nonshared.la
%{_libdir}/libssp_nonshared.a
-%dir %{_libdir}/gcc
%dir %{_libdir}/gcc/%{_target_platform}
%dir %{gcclibdir}
%{gcclibdir}/libgcc.a
%{gcclibdir}/libgcov.a
%{gcclibdir}/specs
%{gcclibdir}/crt*.o
+%{?with_vtv:%{gcclibdir}/vtv_*.o}
%attr(755,root,root) %{gcclibdir}/cc1
%attr(755,root,root) %{gcclibdir}/collect2
%attr(755,root,root) %{gcclibdir}/lto-wrapper
%attr(755,root,root) %{gcclibdir}/lto1
%attr(755,root,root) %{gcclibdir}/liblto_plugin.so*
-%{gcclibdir}/plugin
%dir %{gcclibdir}/include
%dir %{gcclibdir}/include/sanitizer
%{gcclibdir}/include/sanitizer/common_interface_defs.h
%dir %{gcclibdir}/include/ssp
%{gcclibdir}/include/ssp/*.h
%{gcclibdir}/include/float.h
+%{gcclibdir}/include/gcov.h
%{gcclibdir}/include/iso646.h
%{gcclibdir}/include/limits.h
%{gcclibdir}/include/stdalign.h
%{gcclibdir}/include/adxintrin.h
%{gcclibdir}/include/ammintrin.h
%{gcclibdir}/include/avx2intrin.h
+%{gcclibdir}/include/avx5124fmapsintrin.h
+%{gcclibdir}/include/avx5124vnniwintrin.h
+%{gcclibdir}/include/avx512vpopcntdqintrin.h
+%{gcclibdir}/include/avx512bwintrin.h
%{gcclibdir}/include/avx512cdintrin.h
+%{gcclibdir}/include/avx512dqintrin.h
%{gcclibdir}/include/avx512erintrin.h
%{gcclibdir}/include/avx512fintrin.h
+%{gcclibdir}/include/avx512ifmaintrin.h
+%{gcclibdir}/include/avx512ifmavlintrin.h
%{gcclibdir}/include/avx512pfintrin.h
+%{gcclibdir}/include/avx512vbmiintrin.h
+%{gcclibdir}/include/avx512vbmivlintrin.h
+%{gcclibdir}/include/avx512vlbwintrin.h
+%{gcclibdir}/include/avx512vldqintrin.h
+%{gcclibdir}/include/avx512vlintrin.h
%{gcclibdir}/include/avxintrin.h
%{gcclibdir}/include/bmi2intrin.h
%{gcclibdir}/include/bmiintrin.h
%{gcclibdir}/include/bmmintrin.h
+%{gcclibdir}/include/clflushoptintrin.h
+%{gcclibdir}/include/clwbintrin.h
+%{gcclibdir}/include/clzerointrin.h
%{gcclibdir}/include/cpuid.h
%{gcclibdir}/include/cross-stdarg.h
%{gcclibdir}/include/emmintrin.h
%{gcclibdir}/include/mmintrin.h
%{gcclibdir}/include/mm_malloc.h
%{gcclibdir}/include/nmmintrin.h
+%{gcclibdir}/include/mwaitxintrin.h
+%{gcclibdir}/include/pkuintrin.h
%{gcclibdir}/include/pmmintrin.h
%{gcclibdir}/include/popcntintrin.h
%{gcclibdir}/include/prfchwintrin.h
%{gcclibdir}/include/rdseedintrin.h
%{gcclibdir}/include/rtmintrin.h
+%{gcclibdir}/include/sgxintrin.h
%{gcclibdir}/include/shaintrin.h
%{gcclibdir}/include/smmintrin.h
%{gcclibdir}/include/tbmintrin.h
%{gcclibdir}/include/x86intrin.h
%{gcclibdir}/include/xmmintrin.h
%{gcclibdir}/include/xopintrin.h
+%{gcclibdir}/include/xsavecintrin.h
%{gcclibdir}/include/xsaveintrin.h
%{gcclibdir}/include/xsaveoptintrin.h
+%{gcclibdir}/include/xsavesintrin.h
%{gcclibdir}/include/xtestintrin.h
%endif
%ifarch arm
%{gcclibdir}/include/spu2vmx.h
%{gcclibdir}/include/vec_types.h
%endif
+%{?with_vtv:%{gcclibdir}/include/vtv_*.h}
%if %{with multilib}
%files multilib-32
%attr(755,root,root) %{_slibdir32}/libgcc_s.so
%dir %{gcclibdir}/32
%{gcclibdir}/32/crt*.o
+%{?with_vtv:%{gcclibdir}/32/vtv_*.o}
%{gcclibdir}/32/libgcc.a
%{gcclibdir}/32/libgcc_eh.a
%{gcclibdir}/32/libgcov.a
%attr(755,root,root) %{_slibdirm2}/libgcc_s.so
%dir %{gcclibdir}/%{multilib2}
%{gcclibdir}/%{multilib2}/crt*.o
+%{?with_vtv:%{gcclibdir}/%{multilib2}/vtv_*.o}
%{gcclibdir}/%{multilib2}/libgcc.a
%{gcclibdir}/%{multilib2}/libgcc_eh.a
%{gcclibdir}/%{multilib2}/libgcov.a
%{_libdir}/libgomp.spec
%{gcclibdir}/finclude
%{gcclibdir}/include/omp.h
+%{gcclibdir}/include/openacc.h
%{_infodir}/libgomp.info*
%files -n libgomp-static
%attr(755,root,root) %{_libdir32}/libgomp.so
%{_libdir32}/libgomp.la
%{_libdir32}/libgomp.spec
+%{gcclibdir}/32/finclude
%files -n libgomp-multilib-32-static
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libgomp.so
%{_libdirm2}/libgomp.la
%{_libdirm2}/libgomp.spec
+%{gcclibdir}/%{multilib2}/finclude
%files -n libgomp-multilib-%{multilib2}-static
%defattr(644,root,root,755)
%endif
%endif
+# see libmpx/configure.tgt for supported architectures
+%ifarch %{x8664} %{ix86}
+%files -n libmpx
+%defattr(644,root,root,755)
+%doc libmpx/ChangeLog
+%attr(755,root,root) %{_libdir}/libmpx.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libmpx.so.2
+%attr(755,root,root) %{_libdir}/libmpxwrappers.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libmpxwrappers.so.2
+
+%files -n libmpx-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libmpx.so
+%attr(755,root,root) %{_libdir}/libmpxwrappers.so
+%{_libdir}/libmpx.la
+%{_libdir}/libmpxwrappers.la
+%{_libdir}/libmpx.spec
+
+%files -n libmpx-static
+%defattr(644,root,root,755)
+%{_libdir}/libmpx.a
+%{_libdir}/libmpxwrappers.a
+%endif
+
+%if %{with multilib}
+%files -n libmpx-multilib-32
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir32}/libmpx.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libmpx.so.2
+%attr(755,root,root) %{_libdir32}/libmpxwrappers.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libmpxwrappers.so.2
+
+%files -n libmpx-multilib-32-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir32}/libmpx.so
+%attr(755,root,root) %{_libdir32}/libmpxwrappers.so
+%{_libdir32}/libmpx.la
+%{_libdir32}/libmpxwrappers.la
+%{_libdir32}/libmpx.spec
+
+%files -n libmpx-multilib-32-static
+%defattr(644,root,root,755)
+%{_libdir32}/libmpx.a
+%{_libdir32}/libmpxwrappers.a
+%endif
+
+%if %{with multilib2}
+# see libmpx/configure.tgt for supported architectures;
+# no x32 there as of gcc 6.x
+%if "%{multilib2}" != "x32"
+%files -n libmpx-multilib-%{multilib2}
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libmpx.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libmpx.so.2
+%attr(755,root,root) %{_libdirm2}/libmpxwrappers.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libmpxwrappers.so.2
+
+%files -n libmpx-multilib-%{multilib2}-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libmpx.so
+%attr(755,root,root) %{_libdirm2}/libmpxwrappers.so
+%{_libdirm2}/libmpx.la
+%{_libdirm2}/libmpxwrappers.la
+%{_libdirm2}/libmpx.spec
+
+%files -n libmpx-multilib-%{multilib2}-static
+%defattr(644,root,root,755)
+%{_libdirm2}/libmpx.a
+%{_libdirm2}/libmpxwrappers.a
+%endif
+%endif
+
%if %{with ada}
%files ada
%defattr(644,root,root,755)
%doc gcc/ada/ChangeLog
%attr(755,root,root) %{_bindir}/gnat*
-%if %{with java}
-%exclude %{_bindir}/gnative2ascii
-%endif
%attr(755,root,root) %{_libdir}/libgnarl-*.so
%attr(755,root,root) %{_libdir}/libgnarl.so
%attr(755,root,root) %{_libdir}/libgnat-*.so
%{gcclibdir}/adalib/*.ali
%ifarch %{ix86} %{x8664} x32
%{gcclibdir}/adalib/libgmem.a
+%{gcclibdir}/adalib/libgnarl_pic.a
+%{gcclibdir}/adalib/libgnat_pic.a
%endif
%{_infodir}/gnat-style.info*
%{_infodir}/gnat_rm.info*
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libstdc++.so
%{_libdir}/libstdc++.la
+%{_libdir}/libstdc++fs.a
+%{_libdir}/libstdc++fs.la
%dir %{_includedir}/c++
%{_includedir}/c++/%{version}
+%{_includedir}/expc++.h
%{_includedir}/extc++.h
%{_includedir}/stdc++.h
%{_includedir}/stdtr1c++.h
-%if %{with java}
-%exclude %{_includedir}/c++/%{version}/java
-%exclude %{_includedir}/c++/%{version}/javax
-%exclude %{_includedir}/c++/%{version}/gcj
-%exclude %{_includedir}/c++/%{version}/gnu
-%exclude %{_includedir}/c++/%{version}/org
-%exclude %{_includedir}/c++/%{version}/sun
-%endif
%files -n libstdc++-static
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libstdc++.so
%{_libdir32}/libstdc++.la
+%{_libdir32}/libstdc++fs.a
+%{_libdir32}/libstdc++fs.la
%files -n libstdc++-multilib-32-static
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libstdc++.so
%{_libdirm2}/libstdc++.la
+%{_libdirm2}/libstdc++fs.a
+%{_libdirm2}/libstdc++fs.la
%files -n libstdc++-multilib-%{multilib2}-static
%defattr(644,root,root,755)
%endif
%endif
-%if %{with apidocs}
-%files -n libstdc++-apidocs
-%defattr(644,root,root,755)
-%doc libstdc++-v3/doc/html/*
-%endif
%endif
%if %{with fortran}
%{_libdir}/libgfortran.la
%{gcclibdir}/libcaf_single.a
%{gcclibdir}/libcaf_single.la
-%{gcclibdir}/libgfortranbegin.la
-%{gcclibdir}/libgfortranbegin.a
+#%{gcclibdir}/libgfortranbegin.la
+#%{gcclibdir}/libgfortranbegin.a
%{_infodir}/gfortran.info*
%{_mandir}/man1/g95.1*
%{_mandir}/man1/gfortran.1*
%{_libdir32}/libgfortran.la
%{gcclibdir}/32/libcaf_single.a
%{gcclibdir}/32/libcaf_single.la
-%{gcclibdir}/32/libgfortranbegin.la
-%{gcclibdir}/32/libgfortranbegin.a
+#%{gcclibdir}/32/libgfortranbegin.la
+#%{gcclibdir}/32/libgfortranbegin.a
%endif
%if %{with multilib2}
%{_libdirm2}/libgfortran.la
%{gcclibdir}/%{multilib2}/libcaf_single.a
%{gcclibdir}/%{multilib2}/libcaf_single.la
-%{gcclibdir}/%{multilib2}/libgfortranbegin.la
-%{gcclibdir}/%{multilib2}/libgfortranbegin.a
+#%{gcclibdir}/%{multilib2}/libgfortranbegin.la
+#%{gcclibdir}/%{multilib2}/libgfortranbegin.a
%endif
%files -n libgfortran
%defattr(644,root,root,755)
%doc libgfortran/{AUTHORS,README,ChangeLog}
%attr(755,root,root) %{_libdir}/libgfortran.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgfortran.so.3
+%attr(755,root,root) %ghost %{_libdir}/libgfortran.so.4
%files -n libgfortran-static
%defattr(644,root,root,755)
%files -n libgfortran-multilib-32
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libgfortran.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libgfortran.so.3
+%attr(755,root,root) %ghost %{_libdir32}/libgfortran.so.4
%files -n libgfortran-multilib-32-static
%defattr(644,root,root,755)
%files -n libgfortran-multilib-%{multilib2}
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libgfortran.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libgfortran.so.3
+%attr(755,root,root) %ghost %{_libdirm2}/libgfortran.so.4
%files -n libgfortran-multilib-%{multilib2}-static
%defattr(644,root,root,755)
%endif
%endif
-%if %{with java}
-%files java
-%defattr(644,root,root,755)
-%doc gcc/java/ChangeLog java-doc/*
-%attr(755,root,root) %{_bindir}/gappletviewer
-%attr(755,root,root) %{_bindir}/gc-analyze
-%attr(755,root,root) %{_bindir}/gcj
-%attr(755,root,root) %{_bindir}/gcj-dbtool
-%attr(755,root,root) %{_bindir}/gcjh
-%attr(755,root,root) %{_bindir}/gjar
-%attr(755,root,root) %{_bindir}/gjarsigner
-%attr(755,root,root) %{_bindir}/gjavah
-%attr(755,root,root) %{_bindir}/gkeytool
-%attr(755,root,root) %{_bindir}/gnative2ascii
-%attr(755,root,root) %{_bindir}/gorbd
-%attr(755,root,root) %{_bindir}/grmic
-%attr(755,root,root) %{_bindir}/grmid
-%attr(755,root,root) %{_bindir}/grmiregistry
-%attr(755,root,root) %{_bindir}/gserialver
-%attr(755,root,root) %{_bindir}/gtnameserv
-%attr(755,root,root) %{_bindir}/jcf-dump
-%attr(755,root,root) %{_bindir}/jv-convert
-%attr(755,root,root) %{_bindir}/rebuild-gcj-db
-%attr(755,root,root) %{_bindir}/*-gcj
-%attr(755,root,root) %{gcclibdir}/ecj1
-%attr(755,root,root) %{gcclibdir}/jc1
-%attr(755,root,root) %{gcclibdir}/jvgenmain
-%{_infodir}/cp-tools.info*
-%{_infodir}/gcj.info*
-%{_mandir}/man1/gappletviewer.1*
-%{_mandir}/man1/gc-analyze.1*
-%{_mandir}/man1/gcj.1*
-%{_mandir}/man1/gcj-dbtool.1*
-%{_mandir}/man1/gcjh.1*
-%{_mandir}/man1/gjar.1*
-%{_mandir}/man1/gjarsigner.1*
-%{_mandir}/man1/gjavah.1*
-%{_mandir}/man1/gkeytool.1*
-%{_mandir}/man1/gnative2ascii.1*
-%{_mandir}/man1/gorbd.1*
-%{_mandir}/man1/grmic.1*
-%{_mandir}/man1/grmid.1*
-%{_mandir}/man1/grmiregistry.1*
-%{_mandir}/man1/gserialver.1*
-%{_mandir}/man1/gtnameserv.1*
-%{_mandir}/man1/jcf-dump.1*
-%{_mandir}/man1/jv-convert.1*
-%{_mandir}/man1/rebuild-gcj-db*
-
-%if %{with python}
-%files java-aotcompile
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/aot-compile
-%dir %{py_sitescriptdir}/libjava
-%{py_sitescriptdir}/libjava/*.py[co]
-%{_mandir}/man1/aot-compile.1*
-%endif
-
-%files -n libgcj
-%defattr(644,root,root,755)
-%doc libjava/{ChangeLog,LIBGCJ_LICENSE,NEWS,README,THANKS}
-%attr(755,root,root) %{_bindir}/gij
-%attr(755,root,root) %{_libdir}/libgcj-tools.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgcj-tools.so.%{gcj_soname_ver}
-%attr(755,root,root) %{_libdir}/libgcj.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgcj.so.%{gcj_soname_ver}
-%attr(755,root,root) %{_libdir}/libgcj_bc.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgcj_bc.so.1
-%attr(755,root,root) %{_libdir}/libgcj_bc.so
-%attr(755,root,root) %{_libdir}/libgij.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgij.so.%{gcj_soname_ver}
-%{?with_x:%attr(755,root,root) %{_libdir}/lib-gnu-awt-xlib.so.*.*.*}
-%{?with_x:%attr(755,root,root) %ghost %{_libdir}/lib-gnu-awt-xlib.so.%{gcj_soname_ver}}
-%dir %{_libdir}/%{gcjdbexecdir}
-%{_libdir}/%{gcjdbexecdir}/classmap.db
-%{?with_mozilla:%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libgcjwebplugin.so}
-%{?with_alsa:%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libgjsmalsa.so*}
-%{?with_dssi:%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libgjsmdssi.so*}
-%{?with_gtk:%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libgtkpeer.so}
-%{?with_gtk:%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libjawt.so}
-%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libjavamath.so
-%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libjvm.so
-%{?with_qt:%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libqtpeer.so}
-%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libxmlj.so*
-%{_libdir}/logging.properties
-%{_javadir}/libgcj*.jar
-%{_javadir}/ecj.jar
-%{_mandir}/man1/gij.1*
-
-%files -n libgcj-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libgcj-tools.so
-%{_libdir}/libgcj-tools.la
-%attr(755,root,root) %{_libdir}/libgcj.so
-%{_libdir}/libgcj.la
-%attr(755,root,root) %{_libdir}/libgij.so
-%{_libdir}/libgij.la
-%if %{with x}
-%attr(755,root,root) %{_libdir}/lib-gnu-awt-xlib.so
-%{_libdir}/lib-gnu-awt-xlib.la
-%endif
-%{_libdir}/libgcj.spec
-%dir %{_libdir}/security
-%{_libdir}/security/*
-%{?with_alsa:%{_libdir}/%{gcjdbexecdir}/libgjsmalsa.la}
-%{?with_dssi:%{_libdir}/%{gcjdbexecdir}/libgjsmdssi.la}
-%{?with_gtk:%{_libdir}/%{gcjdbexecdir}/libgtkpeer.la}
-%{?with_gtk:%{_libdir}/%{gcjdbexecdir}/libjawt.la}
-%{_libdir}/%{gcjdbexecdir}/libjavamath.la
-%{_libdir}/%{gcjdbexecdir}/libjvm.la
-%{?with_qt:%{_libdir}/%{gcjdbexecdir}/libqtpeer.la}
-%{?with_mozilla:%{_libdir}/%{gcjdbexecdir}/libgcjwebplugin.la}
-%{_libdir}/%{gcjdbexecdir}/libxmlj.la
-%{gcclibdir}/include/gcj
-%{gcclibdir}/include/jawt.h
-%{gcclibdir}/include/jawt_md.h
-%{gcclibdir}/include/jni.h
-%{gcclibdir}/include/jni_md.h
-%{gcclibdir}/include/jvmpi.h
-%{_includedir}/c++/%{version}/java
-%{_includedir}/c++/%{version}/javax
-%{_includedir}/c++/%{version}/gcj
-%{_includedir}/c++/%{version}/gnu
-%{_includedir}/c++/%{version}/org
-%{_includedir}/c++/%{version}/sun
-%{_pkgconfigdir}/libgcj-%{major_ver}.pc
-
-%files -n libgcj-static
-%defattr(644,root,root,755)
-%{_libdir}/libgcj-tools.a
-%{_libdir}/libgcj.a
-%{_libdir}/libgcj_bc.a
-%{_libdir}/libgij.a
-%{?with_x:%{_libdir}/lib-gnu-awt-xlib.a}
-%{_libdir}/%{gcjdbexecdir}/libjvm.a
-%endif
-
%if %{with gcc_libffi}
%files -n libffi
%defattr(644,root,root,755)
-%doc libffi/{ChangeLog,ChangeLog.libgcj,LICENSE,README}
+%doc libffi/{ChangeLog,LICENSE,README}
%attr(755,root,root) %{_libdir}/libffi.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libffi.so.4
%defattr(644,root,root,755)
%doc gcc/go/gofrontend/{LICENSE,PATENTS,README}
%attr(755,root,root) %{_bindir}/gccgo
+%attr(755,root,root) %{_bindir}/go
+%attr(755,root,root) %{_bindir}/gofmt
+%attr(755,root,root) %{gcclibdir}/cgo
%attr(755,root,root) %{gcclibdir}/go1
%dir %{_libdir}/go
%{_libdir}/go/%{version}
+%{_mandir}/man1/go.1*
+%{_mandir}/man1/gofmt.1*
%{_mandir}/man1/gccgo.1*
%{_infodir}/gccgo.info*
%defattr(644,root,root,755)
%doc libgo/{LICENSE,PATENTS,README}
%attr(755,root,root) %{_libdir}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgo.so.5
+%attr(755,root,root) %ghost %{_libdir}/libgo.so.11
%files -n libgo-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libgo.so
%{_libdir}/libgo.la
%{_libdir}/libgobegin.a
+%{_libdir}/libgolibbegin.a
%files -n libgo-static
%defattr(644,root,root,755)
%files -n libgo-multilib-32
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libgo.so.5
+%attr(755,root,root) %ghost %{_libdir32}/libgo.so.11
%files -n libgo-multilib-32-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libgo.so
%{_libdir32}/libgo.la
%{_libdir32}/libgobegin.a
+%{_libdir32}/libgolibbegin.a
%files -n libgo-multilib-32-static
%defattr(644,root,root,755)
%files -n libgo-multilib-%{multilib2}
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.5
+%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.11
%files -n libgo-multilib-%{multilib2}-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libgo.so
%{_libdirm2}/libgo.la
%{_libdirm2}/libgobegin.a
+%{_libdirm2}/libgolibbegin.a
%files -n libgo-multilib-%{multilib2}-static
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc libsanitizer/ChangeLog* libsanitizer/LICENSE.TXT
%attr(755,root,root) %{_libdir}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libasan.so.1
+%attr(755,root,root) %ghost %{_libdir}/libasan.so.4
%files -n libasan-devel
%defattr(644,root,root,755)
%files -n libasan-multilib-32
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libasan.so.1
+%attr(755,root,root) %ghost %{_libdir32}/libasan.so.4
%files -n libasan-multilib-32-devel
%defattr(644,root,root,755)
%files -n libasan-multilib-%{multilib2}
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libasan.so.1
+%attr(755,root,root) %ghost %{_libdirm2}/libasan.so.4
%files -n libasan-multilib-%{multilib2}-devel
%defattr(644,root,root,755)
%files -n libtsan-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libtsan.so
+%{_libdir}/libtsan_preinit.o
%{_libdir}/libtsan.la
%files -n libtsan-static
%{_libdirm2}/libatomic.a
%endif
%endif
+
+%files gdb-plugin
+%defattr(644,root,root,755)
+%doc libcc1/ChangeLog*
+%attr(755,root,root) %{_libdir}/libcc1.so
+%attr(755,root,root) %{_libdir}/libcc1.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libcc1.so.0
+%attr(755,root,root) %{gcclibdir}/plugin/libcc1plugin.so.*
+%attr(755,root,root) %{gcclibdir}/plugin/libcp1plugin.so.*
+
+%files plugin-devel
+%defattr(644,root,root,755)
+%dir %{gcclibdir}/plugin
+%{gcclibdir}/plugin/gengtype
+%{gcclibdir}/plugin/gtype.state
+%{gcclibdir}/plugin/include
+%attr(755,root,root) %{gcclibdir}/plugin/libcc1plugin.la
+%attr(755,root,root) %{gcclibdir}/plugin/libcc1plugin.so
+%attr(755,root,root) %{gcclibdir}/plugin/libcp1plugin.la
+%attr(755,root,root) %{gcclibdir}/plugin/libcp1plugin.so