#!/bin/sh
set -e
+url=git://gcc.gnu.org/git/gcc.git
package=gcc
-svn=svn://gcc.gnu.org/svn/$package
-branch=branches/$package-9-branch
-tag=tags/${package}_9_2_0_release
+tag=releases/gcc-9.3.0
+branch=releases/gcc-9
out=$package-branch.diff
+repo=$package.git
# use filterdiff, etc to exclude bad chunks from diff
filter() {
- # remove revno's for smaller diffs
- # replace svn nonexistend with '0' date, so patch will know that file needs to be removed from disk
- sed -e 's,^\([-+]\{3\} .*\)\t(revision [0-9]\+)$,\1,' | \
- sed -e 's,^\([-+]\{3\} .*\t\)(nonexistent)$,\11970-01-01 01:00:00.000000000 +0100,'
+ cat
}
-old=$svn/$tag
-new=$svn/$branch
-echo >&2 "Running diff: $old -> $new"
-LC_ALL=C svn diff -x --ignore-eol-style --force --old=$old --new=$new > $out.svn.tmp
-filter < $out.svn.tmp > $out.tmp
-rm -f $out.svn.tmp
+if [ ! -d $repo ]; then
+ git clone --bare $url -b $branch $repo
+fi
+
+cd $repo
+ git fetch origin +$branch:$branch +refs/tags/$tag:refs/tags/$tag
+ git log -p --reverse $tag..$branch ":(exclude)doc/doc-*" ":(exclude)test" ":(exclude).*" | filter > ../$out.tmp
+cd ..
if cmp -s $out{,.tmp}; then
echo >&2 "No new diffs..."
# Stable is: any major_ver and minor_ver >= 1.0
# For TLD we usually use gcc when minor_ver >= 2.0 (first bugfix release or later)
%define major_ver 9
-%define minor_ver 2.0
+%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: 3
+Release: 1
Epoch: 6
License: GPL v3+
Group: Development/Languages
Source0: https://ftp.gnu.org/pub/gnu/gcc/gcc-%{version}/%{name}-%{version}.tar.xz
-# Source0-md5: 3818ad8600447f05349098232c2ddc78
+# Source0-md5: d00a144b771ddeb021b61aa205b7e345
Source1: %{name}-optimize-la.pl
# check libffi version with libffi/configure.ac
Source3: libffi.pc.in
Source4: branch.sh
# use branch.sh to update gcc-branch.diff
Patch100: %{name}-branch.diff
-# Patch100-md5: ccf474139f5a06cbb0aca5ce0e2bd0d8
+# Patch100-md5: bff200e336c5c7b6ac21b2266dffd18d
Patch0: %{name}-info.patch
Patch2: %{name}-nodebug.patch
Patch3: %{name}-ada-link.patch
BuildRequires: autoconf >= 2.64
%{?with_tests:BuildRequires: autogen >= 5.5.4}
BuildRequires: automake >= 1:1.11.1
-BuildRequires: binutils >= 3:2.23
+BuildRequires: binutils >= 3:2.30
BuildRequires: bison
BuildRequires: chrpath >= 0.13-2
%{?with_tests:BuildRequires: dejagnu >= 1.4.4}
BuildRequires: xz
BuildRequires: zlib-devel
BuildConflicts: pdksh < 5.2.14-50
-Requires: binutils >= 3:2.23
+Requires: binutils >= 3:2.30
Requires: gmp >= 4.3.2
Requires: isl >= 0.15
Requires: libgcc = %{epoch}:%{version}-%{release}
%prep
%setup -q
-%patch100 -p0 -E
+%patch100 -p1
%patch0 -p1
%patch2 -p1
%patch3 -p1