X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=git-core.spec;h=f2ba365a2d4e694ed6ffaa6ebbfa94216ce6df40;hb=e21aea75770b4674983b6e58c90788f767133a06;hp=9fc5aea609e58c3c8833258b6d9ec624bb952716;hpb=db0325913e798d75b1caf83b9e98ed899bfa8719;p=packages%2Fgit-core.git diff --git a/git-core.spec b/git-core.spec index 9fc5aea..f2ba365 100644 --- a/git-core.spec +++ b/git-core.spec @@ -1,40 +1,46 @@ # # Conditional build: -%bcond_without tests # don't perform make test -%bcond_with tests_cvs -%bcond_without doc # skip building/packaging docs/manuals (takes some time) +%bcond_without tests # don't perform make test +%bcond_with tests_cvs # perform tests which use CVS +%bcond_without doc # skip building/packaging docs/manuals (takes some time) # %include /usr/lib/rpm/macros.perl -Summary: The stupid content tracker -Summary(pl.UTF-8): Prymitywne narzędzie do śledzenia treści +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.6.5 Release: 1 +Version: 1.7.5.3 License: GPL v2 Group: Development/Tools Source0: http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.bz2 -# Source0-md5: da86c1736c55edb9f446828581137b51 +# Source0-md5: 5b5a5e6c1c5c05db6b8dd33e6f3acea4 Source1: %{name}-gitweb.conf Source2: %{name}-gitweb-httpd.conf -Source3: %{name}.sysconfig -Source4: %{name}.inet -Source5: %{name}.init +Source3: %{name}-gitweb-lighttpd.conf +Source4: %{name}.sysconfig +Source5: %{name}.inet +Source6: %{name}.init +Patch0: %{name}-tests.patch +Patch1: %{name}-key-bindings.patch +Patch2: %{name}-sysconfdir.patch URL: http://git-scm.com/ BuildRequires: autoconf BuildRequires: automake BuildRequires: curl-devel -BuildRequires: docbook-dtd45-xml BuildRequires: expat-devel BuildRequires: gettext-devel BuildRequires: openssl-devel -BuildRequires: perl-Error +BuildRequires: perl-Error > 0.15 BuildRequires: perl-base -BuildRequires: python +BuildRequires: python-devel BuildRequires: rpm-perlprov >= 4.1-13 +BuildRequires: rpm-pythonprov BuildRequires: rpmbuild(macros) >= 1.264 +BuildRequires: tcl BuildRequires: zlib-devel %if %{with doc} BuildRequires: asciidoc >= 7.1.2-3 +BuildRequires: docbook-dtd45-xml BuildRequires: xmlto %endif %if %{with tests} @@ -51,9 +57,12 @@ Requires: findutils Requires: grep Requires: openssh-clients Requires: perl-Error +Requires: perl-Git = %{version}-%{release} Requires: sed Suggests: git-core-cvs Suggests: git-core-svn +Suggests: less +Suggests: rsync BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) # html docs have links to txt files @@ -67,14 +76,14 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description "git" can mean anything, depending on your mood. - - random three-letter combination that is pronounceable, and not - actually used by any common UNIX command. The fact that it is a - mispronunciation of "get" may or may not be relevant. - - stupid. contemptible and despicable. simple. Take your pick from the - dictionary of slang. - - "global information tracker": you're in a good mood, and it actually - works for you. Angels sing, and a light suddenly fills the room. - - "goddamn idiotic truckload of sh*t": when it breaks +- random three-letter combination that is pronounceable, and not + actually used by any common UNIX command. The fact that it is a + mispronunciation of "get" may or may not be relevant. +- stupid. contemptible and despicable. simple. Take your pick from the + dictionary of slang. +- "global information tracker": you're in a good mood, and it actually + works for you. Angels sing, and a light suddenly fills the room. +- "goddamn idiotic truckload of sh*t": when it breaks This is a stupid (but extremely fast) directory content manager. It doesn't do a whole lot, but what it 'does' do is track directory @@ -83,20 +92,34 @@ contents efficiently. %description -l pl.UTF-8 "git" może oznaczać cokolwiek, w zależności od nastroju. - - losową kombinację trzech liter, która jest wymawialna i właściwie - nie używana przez żadne popularne polecenie uniksowe. Fakt, że jest to - błędna pisownia słowa "get" może mieć lub nie mieć znaczenia. - - głupi, pogardliwy, prosty. Można wybrać ze słownika slangu. - - "global information tracker" (narzędzie do globalnego śledzenia - informacji) - jeśli jesteśmy w dobrym nastroju i git akurat działa. - Anioły śpiewają, a światło niespodziewanie wypełnia pokój. - - "goddamn idiotic truckload of sh*t" (przeklęty idiotyczny ładunek - g*) - kiedy się zepsuje. +- losową kombinację trzech liter, która jest wymawialna i właściwie + nie używana przez żadne popularne polecenie uniksowe. Fakt, że jest to + błędna pisownia słowa "get" może mieć lub nie mieć znaczenia. +- głupi, pogardliwy, prosty. Można wybrać ze słownika slangu. +- "global information tracker" (narzędzie do globalnego śledzenia + informacji) - jeśli jesteśmy w dobrym nastroju i git akurat działa. + Anioły śpiewają, a światło niespodziewanie wypełnia pokój. +- "goddamn idiotic truckload of sh*t" (przeklęty idiotyczny ładunek + g*) - kiedy się zepsuje. Jest to prymitywny (ale bardzo szybki) zarządca treści słownikowej. Nie robi wiele, ale to, co "robi", to wydajne śledzenie zawartości katalogu. +%package doc +Summary: Documentation for git-core +Summary(pl.UTF-8): Dokumentacja do git-core +Group: Documentation + +%description doc +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 @@ -140,6 +163,7 @@ do uruchomienia git-daemona w trybie usługi samodzielnej. Summary: Header files for git-core Summary(pl.UTF-8): Pliki nagłówkowe dla git-core Group: Development/Libraries +Requires: zlib-devel %description devel Header files for git-core. @@ -175,10 +199,12 @@ repozytorium gita. %package gitweb Summary: Web frontend to git -Summary(pl.UTF-8): Webowy frontend do git +Summary(pl.UTF-8): Frontend WWW do gita Group: Development/Tools Requires: %{name} = %{version}-%{release} Requires: webapps +Requires: webserver(alias) +Requires: webserver(cgi) %description gitweb This package provides a web interface for browsing git repositories. @@ -209,6 +235,8 @@ Summary(pl.UTF-8): Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git Group: Development/Tools Requires: %{name} = %{version}-%{release} Requires: tk +Requires: xdg-utils +Suggests: meld %description gui Displays changes in a repository or a selected set of commits. This @@ -231,19 +259,20 @@ repozytorium gita. %package svn Summary: Subversion support for Git -Summary(pl.UTF-8): Obsługa Subversion dla Git +Summary(pl.UTF-8): Obsługa Subversion dla Gita Group: Development/Tools Requires: %{name} = %{version}-%{release} +Requires: perl-Term-ReadKey %description svn Subversion support for Git. %description svn -l pl.UTF-8 -Obsługa Subversion dla Git. +Obsługa Subversion dla Gita. %package cvs Summary: CVS support for Git -Summary(pl.UTF-8): Obsługa CVS dla Git +Summary(pl.UTF-8): Obsługa CVS dla Gita Group: Development/Tools Requires: %{name} = %{version}-%{release} Requires: cvsps >= 2.1-2 @@ -253,7 +282,32 @@ Requires: rcs CVS support for Git. %description cvs -l pl.UTF-8 -Obsługa CVS dla Git. +Obsługa CVS dla Gita. + +%package arch +Summary: Git tools for importing Arch repositories +Summary(pl.UTF-8): Narzędzia Gita do importowania repozytoriów Archa +Group: Development/Tools +Requires: %{name} = %{version}-%{release} +Requires: tla + +%description arch +Git tools for importing Arch repositories. + +%description arch -l pl.UTF-8 +Narzędzia Gita do importowania repozytoriów Archa. + +%package email +Summary: Git tools for sending email +Summary(pl.UTF-8): Narzędzia Gita do wysyłania poczty +Group: Development/Tools +Requires: %{name} = %{version}-%{release} + +%description email +Git tools for sending email. + +%description email -l pl.UTF-8 +Narzędzia Gita do wysyłania poczty. %package -n bash-completion-git Summary: bash-completion for git @@ -271,7 +325,6 @@ Pakiet ten dostarcza bashowe uzupełnianie nazw dla gita. Summary: Perl interface to the Git version control system Summary(pl.UTF-8): Perlowy interfejs do systemu kontroli wersji Git Group: Development/Languages/Perl -Requires: %{name} = %{version}-%{release} Obsoletes: perl-git-core %description -n perl-Git @@ -288,6 +341,19 @@ dowolne polecenia Gita; w przyszłości interfejs udostępni także specjalne metody do łatwego wykonywania operacji nietrywialnych do wykonania przy użyciu ogólnego interfejsu poleceń. +%package -n python-Git +Summary: Python interface to the Git version control system +Summary(pl.UTF-8): Pythonowy interfejs do systemu kontroli wersji Git +Group: Development/Languages/Python + +%description -n python-Git +This module provides Python scripts easy way to interface the Git +version control system. + +%description -n python-Git -l pl.UTF-8 +Ten moduł umożliwia skryptom Pythonowym współpracę z systemem kontroli +wersji Git. + %package -n vim-syntax-gitcommit Summary: Vim syntax: gitcommit Summary(pl.UTF-8): Składnia dla Vima: gitcommit @@ -303,27 +369,34 @@ Ta wtyczka dostarcza podświetlanie składni dla treści commitów gita. %prep %setup -q -n git-%{version} +%patch0 -p1 +%patch1 -p0 +%patch2 -p1 %build %{__aclocal} %{__autoconf} %configure \ + --sysconfdir=%{_sysconfdir}/git-core \ --with-openssl +echo "BLK_SHA1=1" >> config.mak + %{__make} \ - BLK_SHA1=1 \ INSTALLDIRS=vendor \ GITWEB_CONFIG="%{webappdir}/gitweb.conf" \ GITWEB_PROJECTROOT="/var/lib/git" \ GITWEB_CSS="/gitweb/gitweb.css" \ GITWEB_LOGO="/gitweb/git-logo.png" \ - GITWEB_FAVICON="/gitweb/git-favicon.png" + GITWEB_FAVICON="/gitweb/git-favicon.png" \ + V=1 -%{?with_doc:%{__make} -C Documentation} +# use DOCBOOK_XSL_172=1 to fix 'the ".ft C" problem' in generated manpages. +%{?with_doc:%{__make} -C Documentation V=1 DOCBOOK_XSL_172=1} %if %{with tests} %if %{without tests_cvs} -rm t/t*cvs*.sh +rm t/t*cvs*.sh || : %endif %{__make} test %endif @@ -332,9 +405,12 @@ rm t/t*cvs*.sh rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_includedir}/%{name}/xdiff,%{_localstatedir}/lib/git} install -d $RPM_BUILD_ROOT{%{appdir},%{cgibindir},%{webappdir}} -install -d $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/syntax -install -d $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d install -d $RPM_BUILD_ROOT/etc/{sysconfig/rc-inetd,rc.d/init.d} +install -d $RPM_BUILD_ROOT%{_sysconfdir}/git-core +cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/git-core/gitconfig +[init] + templatedir = /etc/git-core/templates +EOF %{__make} install \ INSTALLDIRS=vendor \ @@ -345,17 +421,24 @@ install -d $RPM_BUILD_ROOT/etc/{sysconfig/rc-inetd,rc.d/init.d} DESTDIR=$RPM_BUILD_ROOT %endif +# copy templates except sample hooks +cp -a $RPM_BUILD_ROOT%{_datadir}/%{name}/templates $RPM_BUILD_ROOT%{_sysconfdir}/%{name} +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/templates/hooks/*.sample + # header files and lib -install *.h $RPM_BUILD_ROOT%{_includedir}/%{name} -install xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff -install libgit.a $RPM_BUILD_ROOT%{_libdir} -install xdiff/lib.a $RPM_BUILD_ROOT%{_libdir}/libgit_xdiff.a +cp -a *.h $RPM_BUILD_ROOT%{_includedir}/%{name} +cp -a compat $RPM_BUILD_ROOT%{_includedir}/%{name} +cp -a xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff +cp -a libgit.a $RPM_BUILD_ROOT%{_libdir} +cp -a xdiff/lib.a $RPM_BUILD_ROOT%{_libdir}/libgit_xdiff.a # bash completion -install contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d +install -d $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d +cp -a contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d # vim syntax -cat > $RPM_BUILD_ROOT/%{_datadir}/vim/vimfiles/syntax/gitcommit.vim << 'EOF' +install -d $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/syntax +cat > $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/syntax/gitcommit.vim << 'EOF' autocmd BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit autocmd BufNewFile,BufRead *.git/config,.gitconfig setf gitconfig autocmd BufNewFile,BufRead git-rebase-todo setf gitrebase @@ -370,29 +453,34 @@ autocmd BufNewFile,BufRead *.git/** EOF # gitweb -install gitweb/*.css gitweb/*.png $RPM_BUILD_ROOT%{appdir} -install gitweb/gitweb.cgi $RPM_BUILD_ROOT%{cgibindir} -install %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf -install %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf -install %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf +mv $RPM_BUILD_ROOT{%{appdir},%{cgibindir}}/gitweb.cgi +cp -a %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf +cp -a %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf +cp -a %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf +cp -a %{SOURCE3} $RPM_BUILD_ROOT%{webappdir}/lighttpd.conf # gitview -install contrib/gitview/gitview $RPM_BUILD_ROOT%{_bindir} +install -p contrib/gitview/gitview $RPM_BUILD_ROOT%{_bindir} # git-daemon related files -install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/git-daemon -install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon -install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon +cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/git-daemon +cp -a %{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 + # remove unneeded files -rm -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod -rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Git/.packlist -rm -f $RPM_BUILD_ROOT%{perl_vendorlib}/Error.pm -rm -f $RPM_BUILD_ROOT%{_mandir}/man3/private-Error.3* +rm $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod +rm $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Git/.packlist +%py_postclean %clean rm -rf $RPM_BUILD_ROOT @@ -427,12 +515,23 @@ fi %triggerun gitweb -- apache < 2.2.0, apache-base %webapp_unregister httpd %{webapp} +%triggerin gitweb -- lighttpd +%webapp_register lighttpd %{webapp} + +%triggerun gitweb -- lighttpd +%webapp_unregister lighttpd %{webapp} + %files %defattr(644,root,root,755) %doc README contrib +%attr(755,root,root) %{_bindir}/git +%attr(755,root,root) %{_bindir}/git-receive-pack +%attr(755,root,root) %{_bindir}/git-shell +%attr(755,root,root) %{_bindir}/git-upload-archive +%attr(755,root,root) %{_bindir}/git-upload-pack +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/git-core + %if %{with doc} -%doc Documentation/RelNotes* -%doc Documentation/*.html Documentation/howto Documentation/technical %{_mandir}/man1/git-*.1* %exclude %{_mandir}/man1/git-svn.1* %exclude %{_mandir}/man1/git-cvs*.1* @@ -446,21 +545,33 @@ fi %{_mandir}/man7/gitcore-tutorial.7* %{_mandir}/man7/gitdiffcore.7* %{_mandir}/man7/gitglossary.7* +%{_mandir}/man7/gitrevisions.7* %{_mandir}/man7/gittutorial-2.7* %{_mandir}/man7/gittutorial.7* %{_mandir}/man7/gitworkflows.7* %endif -%attr(755,root,root) %{_bindir}/git -%attr(755,root,root) %{_bindir}/git-* + %dir %{_libdir}/%{name} %attr(755,root,root) %{_libdir}/%{name}/*-* %attr(755,root,root) %{_libdir}/%{name}/git + %exclude %{_libdir}/%{name}/git-gui %exclude %{_libdir}/%{name}/git-svn +%exclude %{_libdir}/%{name}/git-archimport %exclude %{_libdir}/%{name}/git-cvs* +%exclude %{_libdir}/%{name}/*email* + %{_datadir}/%{name} + %{_localstatedir}/lib/git +%if %{with doc} +%files doc +%defattr(644,root,root,755) +%doc Documentation/RelNotes* +%doc Documentation/*.html Documentation/howto Documentation/technical +%endif + %files daemon-inetd %defattr(644,root,root,755) %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/git-daemon @@ -487,7 +598,11 @@ fi %dir %{_datadir}/gitk/lib/msgs %lang(de) %{_datadir}/gitk/lib/msgs/de.msg %lang(es) %{_datadir}/gitk/lib/msgs/es.msg +%lang(fr) %{_datadir}/gitk/lib/msgs/fr.msg +%lang(hu) %{_datadir}/gitk/lib/msgs/hu.msg %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(ru) %{_datadir}/gitk/lib/msgs/ru.msg %lang(sv) %{_datadir}/gitk/lib/msgs/sv.msg @@ -498,6 +613,7 @@ fi %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitweb.conf %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/apache.conf %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/httpd.conf +%config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/lighttpd.conf %attr(755,root,root) %{cgibindir}/gitweb.cgi %{appdir} @@ -517,14 +633,16 @@ fi %{_datadir}/git-gui/lib/*.js %{_datadir}/git-gui/lib/*.tcl %lang(de) %{_datadir}/git-gui/lib/msgs/de.msg +%lang(el) %{_datadir}/git-gui/lib/msgs/el.msg %lang(fr) %{_datadir}/git-gui/lib/msgs/fr.msg %lang(hu) %{_datadir}/git-gui/lib/msgs/hu.msg %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(ru) %{_datadir}/git-gui/lib/msgs/ru.msg %lang(sv) %{_datadir}/git-gui/lib/msgs/sv.msg -%lang(zh_cn) %{_datadir}/git-gui/lib/msgs/zh_cn.msg +%lang(zh_CN) %{_datadir}/git-gui/lib/msgs/zh_cn.msg %files svn %defattr(644,root,root,755) @@ -535,12 +653,27 @@ fi %files cvs %defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/git-cvsserver %attr(755,root,root) %{_libdir}/%{name}/git-cvs* %if %{with doc} %{_mandir}/man1/git-cvs*.1* %{_mandir}/man7/gitcvs-migration.7* %endif +%files arch +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/%{name}/git-archimport +%if %{with doc} +%{_mandir}/man1/git-archimport.1* +%endif + +%files email +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/%{name}/*email* +%if %{with doc} +%{_mandir}/man1/*email*.1* +%endif + %files -n bash-completion-git %defattr(644,root,root,755) %{_sysconfdir}/bash_completion.d/* @@ -550,7 +683,17 @@ fi %{perl_vendorlib}/Git.pm %{_mandir}/man3/Git.3pm* +%files -n python-Git +%defattr(644,root,root,755) +%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/git/*.py[co] +%if "%{py_ver}" > "2.4" +%{py_sitescriptdir}/git_remote_helpers*.egg-info +%endif + %files -n vim-syntax-gitcommit %defattr(644,root,root,755) %doc contrib/vim/README -%{_datadir}/vim/vimfiles/syntax/* +%{_datadir}/vim/vimfiles/syntax/*.vim