]> git.pld-linux.org Git - packages/git-core.git/blobdiff - git-core.spec
up to 2.9.0
[packages/git-core.git] / git-core.spec
index 9df695e276a4a8ec8e3202998e427e271c35cf10..a160b600690705b0284694c632e5c41ab6a59c36 100644 (file)
 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.9.1
+Version:       2.9.0
 Release:       1
 License:       GPL v2
 Group:         Development/Tools
-Source0:       http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.gz
-# Source0-md5: a71a1ee1418bd61d73182fba62b05fd3
+Source0:       http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
+# Source0-md5: 118ef1e3108ef0b858cd13b74395a59c
 Source1:       %{name}-gitweb.conf
 Source2:       %{name}-gitweb-httpd.conf
 Source3:       %{name}-gitweb-lighttpd.conf
@@ -36,7 +36,11 @@ 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
@@ -62,10 +66,16 @@ BuildRequires:      xmlto
 BuildRequires: cvs-gnu-client < 1.13
 BuildRequires: cvs-gnu-client >= 1.12
 %endif
-%{?with_tests_svn:BuildRequires:  subversion}
+%if %{with tests_svn}
+BuildRequires: perl-subversion
+BuildRequires: subversion
+%endif
 Conflicts:     pdksh < 5.2.14-46
 %endif
+# git-sh-setup: sane_grep
 Requires:      grep
+# git-pull: printf
+Requires:      coreutils
 Requires:      openssh-clients
 Requires:      perl-Error
 Requires:      perl-Git = %{version}-%{release}
@@ -87,6 +97,8 @@ 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
 
 %description
 "git" can mean anything, depending on your mood.
@@ -125,6 +137,9 @@ katalogu.
 Summary:       Documentation for git-core
 Summary(pl.UTF-8):     Dokumentacja do git-core
 Group:         Documentation
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description doc
 Documentation for git-core.
@@ -132,9 +147,6 @@ Documentation for git-core.
 %description doc -l pl.UTF-8
 Dokumentacja do git-core.
 
-%description doc -l fr.UTF-8
-Javadoc pour git-core.
-
 %package daemon-inetd
 Summary:       Files necessary to run git-daemon as an inetd service
 Summary(pl.UTF-8):     Pliki niezbędne do uruchomienia git-daemona w trybie usługi inetd
@@ -144,6 +156,9 @@ Requires:   setup >= 2.4.11-1
 Provides:      git-core-daemon
 Obsoletes:     git-core-daemon
 Obsoletes:     git-core-daemon-standalone
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description daemon-inetd
 Git-daemon is a really simple TCP git daemon that can serve git
@@ -163,6 +178,9 @@ Requires:   %{name} = %{version}-%{release}
 Provides:      git-core-daemon
 Obsoletes:     git-core-daemon
 Obsoletes:     git-core-daemon-inetd
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description daemon-standalone
 Git-daemon is a really simple TCP git daemon that can serve git
@@ -192,6 +210,9 @@ Summary(pl.UTF-8):  Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
 Group:         Development/Tools
 Requires:      %{name} = %{version}-%{release}
 Requires:      tk
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description gitk
 gitk displays changes in a repository or a selected set of commits.
@@ -222,6 +243,9 @@ Requires:   webserver(access)
 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.
@@ -239,6 +263,9 @@ 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.
@@ -254,6 +281,9 @@ Requires:   %{name} = %{version}-%{release}
 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
@@ -280,6 +310,9 @@ Summary(pl.UTF-8):  Narzędzia Gita do importowania repozytoriów Archa
 Group:         Development/Tools
 Requires:      %{name} = %{version}-%{release}
 Requires:      tla
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description arch
 Git tools for importing Arch repositories.
@@ -293,6 +326,9 @@ Summary(pl.UTF-8):  Narzędzia Gita do pracy z repozytoriami bzr
 Group:         Development/Tools
 Requires:      %{name} = %{version}-%{release}
 Requires:      bzr
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description bzr
 Git tools for working with bzr repositories.
@@ -307,6 +343,9 @@ Group:              Development/Tools
 Requires:      %{name} = %{version}-%{release}
 Requires:      cvsps >= 2.1-2
 Requires:      rcs
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description cvs
 CVS support for Git.
@@ -320,6 +359,9 @@ Summary(pl.UTF-8):  Narzędzia Gita do pracy z repozytoriami mercuriala
 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.
@@ -332,6 +374,9 @@ Summary:    Git tools for working with Perforce depots
 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.
@@ -386,6 +431,9 @@ Summary:    Perl interface to the Git version control system
 Summary(pl.UTF-8):     Perlowy interfejs do systemu kontroli wersji Git
 Group:         Development/Languages/Perl
 Obsoletes:     perl-git-core
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description -n perl-Git
 This module provides Perl scripts easy way to interface the Git
@@ -405,16 +453,23 @@ wykonania przy użyciu ogólnego interfejsu poleceń.
 Summary:       GNOME Keyring authentication provider for Git
 Summary(pl.UTF-8):     Moduł uwierzytelniający GNOME Keyring dla Git
 Group:         X11/Applications
+URL:           http://git-scm.com/docs/gitcredentials.html
 Requires:      %{name} = %{version}-%{release}
 
 %description -n gnome-keyring-git-core
 Authentication provider module for Git which allows git client to
 authenticate using GNOME Keyring.
 
+You need to register it with:
+- git config --global credential.helper gnome-keyring
+
 %description -n gnome-keyring-git-core -l pl.UTF-8
 Moduł uwierzytelniający dla Subversion pozwalający klientom git
 uwierzytelniać się przy użyciu mechanizmu GNOME Keyring.
 
+Moduł trzeba zarejestrować poleceniem:
+- git config --global credential.helper gnome-keyring
+
 %prep
 %setup -q -n git-%{version}
 %patch0 -p1
@@ -425,6 +480,9 @@ uwierzytelniać się przy użyciu mechanizmu GNOME Keyring.
 
 %{__rm} {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore
 
+# we build things in contrib but want to have it clean for doc purporses, too
+cp -a contrib contrib-doc
+
 %build
 %{__aclocal}
 %{__autoconf}
@@ -498,18 +556,16 @@ 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}
 
 %{__make} -C contrib/subtree install \
-       libexecdir=%{_libdir}/%{name} \
+       libexecdir=%{gitcoredir} \
        DESTDIR=$RPM_BUILD_ROOT
 
 %if %{with doc}
-%{__make} -C contrib/subtree install-doc \
+%{__make} -C contrib/subtree install-man \
        DESTDIR=$RPM_BUILD_ROOT
 %endif
 
 %if %{with gnome_keyring}
-install -p contrib/credential/gnome-keyring/git-credential-gnome-keyring $RPM_BUILD_ROOT%{_libdir}/%{name}
-# Remove built binary files, otherwise they will be installed in doc
-%{__make} -C contrib/credential/gnome-keyring clean
+install -p contrib/credential/gnome-keyring/git-credential-gnome-keyring $RPM_BUILD_ROOT%{gitcoredir}
 %endif
 
 # bash completion
@@ -521,7 +577,7 @@ install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
 cp -p contrib/completion/git-prompt.sh $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
 
 # Install bzr and hg remote helpers from contrib
-install -p contrib/remote-helpers/git-remote-{bzr,hg} $RPM_BUILD_ROOT%{_libdir}/%{name}
+install -p contrib/remote-helpers/git-remote-{bzr,hg} $RPM_BUILD_ROOT%{gitcoredir}
 
 # gitweb
 mv $RPM_BUILD_ROOT{%{appdir},%{cgibindir}}/gitweb.cgi
@@ -541,14 +597,31 @@ cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
 
 # paths cleanup
-sed -e 's,@libdir@,%{_libdir},g' -i $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
-sed -e 's,@libdir@,%{_libdir},g' -i $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
-
-# hardlink
-ln -f $RPM_BUILD_ROOT%{_bindir}/{git,git-receive-pack}
-ln -f $RPM_BUILD_ROOT%{_bindir}/{git,git-upload-archive}
-ln -f $RPM_BUILD_ROOT{%{_libdir}/%{name},%{_bindir}}/git-shell
-ln -f $RPM_BUILD_ROOT{%{_libdir}/%{name},%{_bindir}}/git-upload-pack
+sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
+sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
+
+# same file, link
+ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-receive-pack
+ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-upload-archive
+ln -sf ../..%{gitcoredir}/git-shell $RPM_BUILD_ROOT%{_bindir}/git-shell
+ln -sf ../..%{gitcoredir}/git-upload-pack $RPM_BUILD_ROOT%{_bindir}/git-upload-pack
+ln -sf ../..%{gitcoredir}/git $RPM_BUILD_ROOT%{_bindir}/git
+
+# convert all hardlinks to symlinks, as rpm fails to calculate it properly
+# requiring excessive free space when it may not be available
+# https://bugs.launchpad.net/pld-linux/+bug/1176337
+find $RPM_BUILD_ROOT%{gitcoredir} -samefile $RPM_BUILD_ROOT%{gitcoredir}/git > files
+for f in $(cat files); do
+       f=${f#$RPM_BUILD_ROOT%{gitcoredir}/}
+       test $f = git && continue
+       ln -snf git $RPM_BUILD_ROOT%{gitcoredir}/$f
+done
+
+# few others
+ln -snf git-gui $RPM_BUILD_ROOT%{gitcoredir}/git-citool
+ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-https
+ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftp
+ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftps
 
 # remove unneeded files
 %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
@@ -599,7 +672,7 @@ fi
 
 %files -f git.lang
 %defattr(644,root,root,755)
-%doc README contrib
+%doc README.md contrib-doc
 %attr(755,root,root) %{_bindir}/git
 %attr(755,root,root) %{_bindir}/git-receive-pack
 %attr(755,root,root) %{_bindir}/git-shell
@@ -625,6 +698,7 @@ fi
 %{_mandir}/man7/gitcore-tutorial.7*
 %{_mandir}/man7/gitcredentials.7*
 %{_mandir}/man7/gitdiffcore.7*
+%{_mandir}/man7/giteveryday.7*
 %{_mandir}/man7/gitglossary.7*
 %{_mandir}/man7/gitnamespaces.7*
 %{_mandir}/man7/gitrevisions.7*
@@ -633,30 +707,30 @@ fi
 %{_mandir}/man7/gitworkflows.7*
 %endif
 
-%dir %{_libdir}/%{name}
-%attr(755,root,root) %{_libdir}/%{name}/*-*
-%attr(755,root,root) %{_libdir}/%{name}/git
-%dir %{_libdir}/%{name}/mergetools
-%{_libdir}/%{name}/mergetools/*
+%dir %{gitcoredir}
+%attr(755,root,root) %{gitcoredir}/*-*
+%attr(755,root,root) %{gitcoredir}/git
+%dir %{gitcoredir}/mergetools
+%{gitcoredir}/mergetools/*
 
 %{_datadir}/%{name}
 %{_localstatedir}/lib/git
 
 # subpackages
-%exclude %{_libdir}/%{name}/*email*
-%exclude %{_libdir}/%{name}/*p4*
-%exclude %{_libdir}/%{name}/git-archimport
-%exclude %{_libdir}/%{name}/git-cvs*
-%exclude %{_libdir}/%{name}/git-gui
-%exclude %{_libdir}/%{name}/git-imap-send
-%exclude %{_libdir}/%{name}/git-instaweb
-%exclude %{_libdir}/%{name}/git-remote-bzr
-%exclude %{_libdir}/%{name}/git-remote-hg
-%exclude %{_libdir}/%{name}/git-remote-testsvn
-%exclude %{_libdir}/%{name}/git-svn
-%exclude %{_libdir}/%{name}/mergetools/p4merge
+%exclude %{gitcoredir}/*email*
+%exclude %{gitcoredir}/*p4*
+%exclude %{gitcoredir}/git-archimport
+%exclude %{gitcoredir}/git-cvs*
+%exclude %{gitcoredir}/git-gui
+%exclude %{gitcoredir}/git-imap-send
+%exclude %{gitcoredir}/git-instaweb
+%exclude %{gitcoredir}/git-remote-bzr
+%exclude %{gitcoredir}/git-remote-hg
+%exclude %{gitcoredir}/git-remote-testsvn
+%exclude %{gitcoredir}/git-svn
+%exclude %{gitcoredir}/mergetools/p4merge
 %if %{with gnome_keyring}
-%exclude %{_libdir}/%{name}/git-credential-gnome-keyring
+%exclude %{gitcoredir}/git-credential-gnome-keyring
 %endif
 
 %if %{with doc}
@@ -691,6 +765,7 @@ fi
 %dir %{_datadir}/gitk/lib
 %dir %{_datadir}/gitk/lib/msgs
 %lang(bg) %{_datadir}/gitk/lib/msgs/bg.msg
+%lang(ca) %{_datadir}/gitk/lib/msgs/ca.msg
 %lang(de) %{_datadir}/gitk/lib/msgs/de.msg
 %lang(es) %{_datadir}/gitk/lib/msgs/es.msg
 %lang(fr) %{_datadir}/gitk/lib/msgs/fr.msg
@@ -700,6 +775,7 @@ fi
 %lang(pt_BR) %{_datadir}/gitk/lib/msgs/pt_br.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
 
 %files gitweb
 %defattr(644,root,root,755)
@@ -712,7 +788,7 @@ fi
 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitolite.pl
 %attr(755,root,root) %{cgibindir}/gitweb.cgi
 %{appdir}
-%attr(755,root,root) %{_libdir}/%{name}/git-instaweb
+%attr(755,root,root) %{gitcoredir}/git-instaweb
 %if %{with doc}
 %{_mandir}/man1/gitweb.1*
 %{_mandir}/man5/gitweb.conf.5*
@@ -725,7 +801,7 @@ fi
 
 %files gui
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/git-gui
+%attr(755,root,root) %{gitcoredir}/git-gui
 %dir %{_datadir}/git-gui
 %dir %{_datadir}/git-gui/lib
 %dir %{_datadir}/git-gui/lib/msgs
@@ -744,23 +820,24 @@ fi
 %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
 
 %files arch
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/git-archimport
+%attr(755,root,root) %{gitcoredir}/git-archimport
 %if %{with doc}
 %{_mandir}/man1/git-archimport.1*
 %endif
 
 %files bzr
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/git-remote-bzr
+%attr(755,root,root) %{gitcoredir}/git-remote-bzr
 
 %files cvs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/git-cvsserver
-%attr(755,root,root) %{_libdir}/%{name}/git-cvs*
+%attr(755,root,root) %{gitcoredir}/git-cvs*
 %if %{with doc}
 %{_mandir}/man1/git-cvs*.1*
 %{_mandir}/man7/gitcvs-migration.7*
@@ -768,27 +845,33 @@ fi
 
 %files hg
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/git-remote-hg
+%attr(755,root,root) %{gitcoredir}/git-remote-hg
 
 %files p4
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/git-p4
-%attr(755,root,root) %{_libdir}/%{name}/mergetools/p4merge
+%attr(755,root,root) %{gitcoredir}/git-p4
+%attr(755,root,root) %{gitcoredir}/mergetools/p4merge
 
 %files svn
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/git-svn
-%attr(755,root,root) %{_libdir}/%{name}/git-remote-testsvn
+%attr(755,root,root) %{gitcoredir}/git-svn
+%attr(755,root,root) %{gitcoredir}/git-remote-testsvn
 %{perl_vendorlib}/Git/SVN
 %{perl_vendorlib}/Git/SVN.pm
 %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)
-%attr(755,root,root) %{_libdir}/%{name}/git-imap-send
-%attr(755,root,root) %{_libdir}/%{name}/*email*
+%attr(755,root,root) %{gitcoredir}/git-imap-send
+%attr(755,root,root) %{gitcoredir}/*email*
 %if %{with doc}
 %{_mandir}/man1/*email*.1*
 %{_mandir}/man1/*imap-send*.1*
@@ -804,10 +887,11 @@ fi
 %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
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/git-credential-gnome-keyring
+%attr(755,root,root) %{gitcoredir}/git-credential-gnome-keyring
 %endif
This page took 0.12328 seconds and 4 git commands to generate.