%bcond_without doc # skip building/packaging docs/manuals (takes some time)
%bcond_without pcre # perl-compatible regexes support
%bcond_without gnome_keyring # build without gnome keyring support
+%bcond_without tk # build without the Tcl/Tk interface
# for AC: --without doc --without gnome_keyring --without tests
Summary: Distributed version control system focused on speed, effectivity and usability
Summary(pl.UTF-8): Rozproszony system śledzenia treści skupiony na szybkości, wydajności i użyteczności
Name: git-core
-Version: 2.8.3
+Version: 2.14.0
Release: 1
License: GPL v2
Group: Development/Tools
Source0: http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
-# Source0-md5: 4a9bda9f14e9c5ce3e7a416e43b74a1b
+# Source0-md5: 8422cbf87b85e1a5e8e2cbca49333f84
Source1: %{name}-gitweb.conf
Source2: %{name}-gitweb-httpd.conf
Source3: %{name}-gitweb-lighttpd.conf
Source5: %{name}.inet
Source6: %{name}.init
Source7: gitolite.pl
-Patch0: %{name}-tests.patch
-Patch1: %{name}-key-bindings.patch
-Patch2: %{name}-sysconfdir.patch
-Patch3: cherry-picked-commitlog.patch
-Patch4: %{name}-svn-exit-errors.patch
+Patch0: %{name}-key-bindings.patch
+Patch1: %{name}-sysconfdir.patch
+Patch2: cherry-picked-commitlog.patch
URL: http://git-scm.com/
BuildRequires: autoconf >= 2.59
BuildRequires: automake
BuildRequires: curl-devel
BuildRequires: expat-devel
+%if "%{pld_release}" == "ac"
+BuildRequires: gettext-devel
+%else
BuildRequires: gettext-tools
+%endif
%if %{with gnome_keyring}
BuildRequires: libgnome-keyring-devel
BuildRequires: pkgconfig
%endif
BuildRequires: openssl-devel
-%{?with_pcre:BuildRequires: pcre-devel}
+%{?with_pcre:BuildRequires: pcre2-8-devel}
BuildRequires: perl-Error > 0.15
BuildRequires: perl-base
BuildRequires: python-devel
BuildRequires: rpm-perlprov >= 4.1-13
BuildRequires: rpm-pythonprov
BuildRequires: rpmbuild(macros) >= 1.673
-BuildRequires: tcl
+%if %{with tk}
+# wish
+BuildRequires: tk
+%endif
BuildRequires: zlib-devel
%if %{with doc}
BuildRequires: asciidoc >= 7.1.2-3
Requires: grep
# git-pull: printf
Requires: coreutils
-Requires: openssh-clients
Requires: perl-Error
Requires: perl-Git = %{version}-%{release}
Requires: sed
Suggests: git-core-p4
Suggests: git-core-svn
Suggests: less
+Suggests: openssh-clients
Suggests: rsync
+Obsoletes: git-core-gitview
Obsoletes: python-Git
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define webappdir %{_sysconfdir}/webapps/%{webapp}
%define appdir %{_datadir}/%{webapp}
%define cgibindir %{_prefix}/lib/cgi-bin
-%define gitcoredir %{_prefix}/lib/%{name}
-%define _libexecdir %{_prefix}/lib
+%define gitcoredir %{_libdir}/%{name}
%description
"git" can mean anything, depending on your mood.
Requires: webserver(alias)
Requires: webserver(cgi)
Suggests: webserver(setenv)
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
%description gitweb
This package provides a web interface for browsing git repositories.
%description gitweb -l pl.UTF-8
Pakiet ten dostarcza interfejs WWW do przeglądania repozytoriów gita.
-%package gitview
-Summary: A GTK+ based repository browser for git
-Summary(pl.UTF-8): Oparta na GTK+ przeglądarka repozytorium gita
-Group: Development/Tools
-Requires: %{name} = %{version}-%{release}
-Requires: python >= 1:2.4
-Requires: python-pycairo >= 1.0
-Requires: python-pygobject
-Requires: python-pygtk-gtk >= 2:2.8
-Suggests: python-gnome-desktop-gtksourceview
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
-
-%description gitview
-A GTK+ based repository browser for git.
-
-%description gitview -l pl.UTF-8
-Oparta na GTK+ przeglądarka repozytorium gita.
-
%package gui
Summary: Tcl/Tk interface to the Git version control system
Summary(pl.UTF-8): Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
Requires: tk
Requires: xdg-utils
Suggests: meld
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
%description gui
Displays changes in a repository or a selected set of commits. This
Group: Development/Tools
Requires: %{name} = %{version}-%{release}
Requires: tla
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
%description arch
Git tools for importing Arch repositories.
Group: Development/Tools
Requires: %{name} = %{version}-%{release}
Requires: bzr
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
%description bzr
Git tools for working with bzr repositories.
Requires: %{name} = %{version}-%{release}
Requires: cvsps >= 2.1-2
Requires: rcs
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
%description cvs
CVS support for Git.
Group: Development/Tools
Requires: %{name} = %{version}-%{release}
Requires: mercurial >= 1.8
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
%description hg
Git tools for working with mercurial repositories.
Summary(pl.UTF-8): Narzędzia Gita do pracy z magazynami Perforce'a
Group: Development/Tools
Requires: %{name} = %{version}-%{release}
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
%description p4
Git tools for working with Perforce depots.
Summary(pl.UTF-8): Narzędzia Gita do wysyłania poczty
Group: Development/Tools
Requires: %{name} = %{version}-%{release}
+Suggests: perl-Net-SMTP-SSL
%description email
Git tools for sending email.
%prep
%setup -q -n git-%{version}
-%patch0 -p1
-%patch1 -p0
+%patch0 -p0
+%patch1 -p1
%patch2 -p1
-%patch3 -p1
-%patch4 -p1
%{__rm} {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore
%{__autoconf}
%configure \
--sysconfdir=%{_sysconfdir}/git-core \
- %{?with_pcre:--with-libpcre} \
+ %{?with_pcre:--with-libpcre2} \
--with-openssl
echo "BLK_SHA1=1" >> config.mak
cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
cp -p %{SOURCE3} $RPM_BUILD_ROOT%{webappdir}/lighttpd.conf
-# gitview
-install -p contrib/gitview/gitview $RPM_BUILD_ROOT%{_bindir}
-
# git-daemon related files
cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/git-daemon
cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
%{_mandir}/man7/gitglossary.7*
%{_mandir}/man7/gitnamespaces.7*
%{_mandir}/man7/gitrevisions.7*
+%{_mandir}/man7/gitsubmodules.7*
%{_mandir}/man7/gittutorial-2.7*
%{_mandir}/man7/gittutorial.7*
%{_mandir}/man7/gitworkflows.7*
%{_libdir}/libgit.a
%{_libdir}/libgit_xdiff.a
+%if %{with tk}
%files gitk
%defattr(644,root,root,755)
%if %{with doc}
%lang(it) %{_datadir}/gitk/lib/msgs/it.msg
%lang(ja) %{_datadir}/gitk/lib/msgs/ja.msg
%lang(pt_BR) %{_datadir}/gitk/lib/msgs/pt_br.msg
+%lang(pt_PT) %{_datadir}/gitk/lib/msgs/pt_pt.msg
%lang(ru) %{_datadir}/gitk/lib/msgs/ru.msg
%lang(sv) %{_datadir}/gitk/lib/msgs/sv.msg
%lang(vi) %{_datadir}/gitk/lib/msgs/vi.msg
+%endif
%files gitweb
%defattr(644,root,root,755)
%{_mandir}/man5/gitweb.conf.5*
%endif
-%files gitview
-%defattr(644,root,root,755)
-%doc contrib/gitview/gitview.txt
-%attr(755,root,root) %{_bindir}/gitview
-
+%if %{with tk}
%files gui
%defattr(644,root,root,755)
%attr(755,root,root) %{gitcoredir}/git-gui
%lang(it) %{_datadir}/git-gui/lib/msgs/it.msg
%lang(ja) %{_datadir}/git-gui/lib/msgs/ja.msg
%lang(nb) %{_datadir}/git-gui/lib/msgs/nb.msg
-%lang(pt_br) %{_datadir}/git-gui/lib/msgs/pt_br.msg
+%lang(pt) %{_datadir}/git-gui/lib/msgs/pt_pt.msg
+%lang(pt_BR) %{_datadir}/git-gui/lib/msgs/pt_br.msg
%lang(ru) %{_datadir}/git-gui/lib/msgs/ru.msg
%lang(sv) %{_datadir}/git-gui/lib/msgs/sv.msg
%lang(vi) %{_datadir}/git-gui/lib/msgs/vi.msg
%lang(zh_CN) %{_datadir}/git-gui/lib/msgs/zh_cn.msg
+%endif
%files arch
%defattr(644,root,root,755)
%if %{with doc}
%{_mandir}/man1/git-svn.1*
%endif
+%{_mandir}/man3/Git::SVN::Editor.3pm*
+%{_mandir}/man3/Git::SVN::Fetcher.3pm*
+%{_mandir}/man3/Git::SVN::Memoize::YAML.3pm*
+%{_mandir}/man3/Git::SVN::Prompt.3pm*
+%{_mandir}/man3/Git::SVN::Ra.3pm*
+%{_mandir}/man3/Git::SVN::Utils.3pm*
%files email
%defattr(644,root,root,755)
%dir %{perl_vendorlib}/Git
%{perl_vendorlib}/Git/I18N.pm
%{perl_vendorlib}/Git/IndexInfo.pm
-%{_mandir}/man3/Git*.3pm*
+%{_mandir}/man3/Git.3pm*
+%{_mandir}/man3/Git::I18N.3pm*
%if %{with gnome_keyring}
%files -n gnome-keyring-git-core