%bcond_with tests_cvs # perform tests which use CVS
%bcond_without tests_svn # perform tests which use subversion
%bcond_without doc # skip building/packaging docs/manuals (takes some time)
+%bcond_without pcre # perl-compatible regexes support
%include /usr/lib/rpm/macros.perl
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: 1.8.0.1
-Release: 3
+Version: 1.8.4
+Release: 1
License: GPL v2
Group: Development/Tools
Source0: http://git-core.googlecode.com/files/git-%{version}.tar.gz
-# Source0-md5: 3d598a31bd8ff04f6a72c65a4cd015a8
+# Source0-md5: 355768a1c70d0cb4fedf4b598ac1375b
Source1: %{name}-gitweb.conf
-Source2: %{name}-gitweb-httpd.conf
+Source2: %{name}-gitweb-apache.conf
Source3: %{name}-gitweb-lighttpd.conf
Source4: %{name}.sysconfig
Source5: %{name}.inet
Source6: %{name}.init
+Source7: %{name}-gitweb-httpd.conf
Patch0: %{name}-tests.patch
Patch1: %{name}-key-bindings.patch
Patch2: %{name}-sysconfdir.patch
+Patch3: cherry-picked-commitlog.patch
+Patch4: %{name}-svn-serf.patch
+Patch5: %{name}-svn-exit-errors.patch
URL: http://git-scm.com/
BuildRequires: autoconf >= 2.59
BuildRequires: automake
BuildRequires: expat-devel
BuildRequires: gettext-devel
BuildRequires: openssl-devel
+%{?with_pcre:BuildRequires: pcre-devel}
BuildRequires: perl-Error > 0.15
BuildRequires: perl-base
BuildRequires: python-devel
%define webappdir %{_sysconfdir}/webapps/%{webapp}
%define appdir %{_datadir}/%{webapp}
%define cgibindir %{_prefix}/lib/cgi-bin
+%define bash_compdir %{_datadir}/bash-completion/completions
%description
"git" can mean anything, depending on your mood.
Requires: webserver(alias)
Requires: webserver(cgi)
Suggests: webserver(setenv)
+Conflicts: apache-base < 2.4.0-1
%description gitweb
This package provides a web interface for browsing git repositories.
Summary(pl.UTF-8): bashowe uzupełnianie nazw dla gita
Group: Applications/Shells
Requires: %{name} = %{version}-%{release}
-Requires: bash-completion
+Requires: bash-completion >= 2.0
%description -n bash-completion-git
This package provides bash-completion for git.
%patch0 -p1
%patch1 -p0
%patch2 -p1
+%patch3 -p1
+%patch4 -p1
%build
%{__aclocal}
%{__autoconf}
%configure \
--sysconfdir=%{_sysconfdir}/git-core \
+ %{?with_pcre:--with-libpcre} \
--with-openssl
echo "BLK_SHA1=1" >> config.mak
cp -p *.h $RPM_BUILD_ROOT%{_includedir}/%{name}
cp -a compat $RPM_BUILD_ROOT%{_includedir}/%{name}
cp -p xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff
+install -d $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
+cp -p block-sha1/sha1.h $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
cp -p libgit.a $RPM_BUILD_ROOT%{_libdir}
cp -p xdiff/lib.a $RPM_BUILD_ROOT%{_libdir}/libgit_xdiff.a
+cp -p {Makefile,config.mak,config.mak.autogen,config.mak.uname} $RPM_BUILD_ROOT%{_includedir}/%{name}
# bash completion
-install -d $RPM_BUILD_ROOT/etc/bash_completion.d
-cp -p contrib/completion/git-completion.bash $RPM_BUILD_ROOT/etc/bash_completion.d
+install -d $RPM_BUILD_ROOT%{bash_compdir}
+cp -p contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{bash_compdir}/git
# vim syntax
install -d $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/syntax
ln -s %{cgibindir}/gitweb.cgi $RPM_BUILD_ROOT%{appdir}/gitweb.cgi
cp -p %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf
cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf
-cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
+cp -p %{SOURCE7} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
cp -p %{SOURCE3} $RPM_BUILD_ROOT%{webappdir}/lighttpd.conf
# gitview
%triggerun gitweb -- apache1 < 1.3.37-3, apache1-base
%webapp_unregister apache %{webapp}
-%triggerin gitweb -- apache < 2.2.0, apache-base
+%triggerin gitweb -- apache-base
%webapp_register httpd %{webapp}
-%triggerun gitweb -- apache < 2.2.0, apache-base
+%triggerun gitweb -- apache-base
%webapp_unregister httpd %{webapp}
%triggerin gitweb -- lighttpd
%exclude %{_mandir}/man1/git-archimport.1*
%exclude %{_mandir}/man1/git-svn.1*
%exclude %{_mandir}/man1/git-cvs*.1*
+%exclude %{_mandir}/man1/git-imap-send*.1*
%exclude %{_mandir}/man1/*email*.1*
-%exclude %{_mandir}/man1/git-remote-helpers.1*
+%exclude %{_mandir}/man1/gitremote-helpers.1*
%{_mandir}/man1/git.1*
%{_mandir}/man5/gitattributes.5*
%{_mandir}/man5/githooks.5*
%exclude %{_libdir}/%{name}/git-svn
%exclude %{_libdir}/%{name}/git-archimport
%exclude %{_libdir}/%{name}/git-cvs*
+%exclude %{_libdir}/%{name}/git-imap-send
%exclude %{_libdir}/%{name}/git-instaweb
-%exclude %{_libdir}/%{name}/git-remote-testgit
+%exclude %{_libdir}/%{name}/git-remote-testsvn
%exclude %{_libdir}/%{name}/*email*
%{_datadir}/%{name}
%files svn
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/git-svn
+%attr(755,root,root) %{_libdir}/%{name}/git-remote-testsvn
%{perl_vendorlib}/Git/SVN
%{perl_vendorlib}/Git/SVN.pm
%if %{with doc}
%files email
%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/%{name}/git-imap-send
%attr(755,root,root) %{_libdir}/%{name}/*email*
%if %{with doc}
%{_mandir}/man1/*email*.1*
+%{_mandir}/man1/*imap-send*.1*
%endif
%files -n bash-completion-git
%defattr(644,root,root,755)
-/etc/bash_completion.d/git-completion.bash
+%{bash_compdir}/git
%files -n perl-Git
%defattr(644,root,root,755)
%files -n python-Git
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/git-remote-testgit
%dir %{py_sitescriptdir}/git_remote_helpers
%{py_sitescriptdir}/git_remote_helpers/*.py[co]
%dir %{py_sitescriptdir}/git_remote_helpers/git
%{py_sitescriptdir}/git_remote_helpers*.egg-info
%endif
%if %{with doc}
-%{_mandir}/man1/git-remote-helpers.1*
+%{_mandir}/man1/gitremote-helpers.1*
%endif
%files -n vim-syntax-gitcommit