X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=git-core.spec;h=fb83f59b83d65c63421dac031182550717ae699e;hb=refs%2Ftags%2Fauto%2Fth%2Fgit-core-1_5_2_2-3;hp=e02c9c1e0cb2e1dd68a67a26cd3fb1a4e22b9640;hpb=3ef3115f5c9f75877299e209745d97bde3a02e75;p=packages%2Fgit-core.git diff --git a/git-core.spec b/git-core.spec index e02c9c1..fb83f59 100644 --- a/git-core.spec +++ b/git-core.spec @@ -1,23 +1,49 @@ +# +# Conditional build: +%bcond_without tests # don't perform make test +# +%include /usr/lib/rpm/macros.perl Summary: The stupid content tracker -Summary(pl): Prymitywne narzêdzie do ¶ledzenia tre¶ci +Summary(pl.UTF-8): Prymitywne narzędzie do śledzenia treści Name: git-core -Version: 1.2.5 -Release: 1 +Version: 1.5.2.2 +Release: 3 License: GPL v2 Group: Development/Tools Source0: http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.bz2 -# Source0-md5: ef33e2b1f4d37452b7aa24f34bce5159 +# Source0-md5: 846940654b703ec5c8de4ee388cb4d08 +Source1: %{name}-gitweb.conf +Source2: %{name}-gitweb-httpd.conf URL: http://git.or.cz/ BuildRequires: asciidoc +BuildRequires: autoconf +BuildRequires: automake BuildRequires: curl-devel BuildRequires: expat-devel BuildRequires: openssl-devel +BuildRequires: perl-Error BuildRequires: perl-base BuildRequires: python +BuildRequires: rpm-perlprov >= 4.1-13 +BuildRequires: rpmbuild(macros) >= 1.264 BuildRequires: xmlto BuildRequires: zlib-devel +Requires: coreutils +Requires: curl +Requires: diffutils +Requires: findutils +Requires: grep +Requires: openssh-clients +Requires: perl-Error +Requires: rcs +Requires: sed BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%define webapp gitweb +%define webappdir %{_sysconfdir}/webapps/%{webapp} +%define appdir %{_datadir}/%{webapp} +%define cgibindir %{_prefix}/lib/cgi-bin + %description "git" can mean anything, depending on your mood. @@ -34,54 +60,192 @@ 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 contents efficiently. -%description -l pl -"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. - -Jest to prymitywny (ale bardzo szybki) zarz±dca tre¶ci s³ownikowej. -Nie robi wiele, ale to, co "robi", to wydajne ¶ledzenie zawarto¶ci +%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. + +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 devel +Summary: Header files for git-core +Summary(pl.UTF-8): Pliki nagłówkowe dla git-core +Group: Development/Libraries + +%description devel +Header files for git-core. + +%description devel -l pl.UTF-8 +Pliki nagłówkowe dla git-core. + +%package gitk +Summary: Tcl/Tk interface to the Git version control system +Summary(pl.UTF-8): Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git +Group: Development/Tools +Requires: %{name} = %{version}-%{release} +Requires: tk + +%description gitk +Displays changes in a repository or a selected set of commits. This +includes visualizing the commit graph, showing information related to +each commit, and the files in the trees of each revision. + +Historically, gitk was the first repository browser. It's written in +Tcl/Tk and started off in a separate repository but was later merged +into the main git repository. + +%description gitk -l pl.UTF-8 +Wyświetla zmiany w repozytorium lub wybranym zbiorze commitów. +Oznacza to wizualizację grafu commitów, wyświetlanie informacji +związanych z każdym z commitów oraz listę plików dla każdej +rewizji. + +Z punktu widzenia historii, gitk był pierwszą przeglądarką +repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany +w osobnym repozytorium, ale z czasem został włączony do głównego +repozytorium git. + +%package gitweb +Summary: Web frontend to git +Summary(pl.UTF-8): Webowy frontend do git +Group: Development/Tools +Requires: %{name} = %{version}-%{release} +Requires: webapps + +%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 git. + +%package -n perl-Git +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 +This module provides Perl scripts easy way to interface the Git +version control system. The modules have an easy and well-tested way +to call arbitrary Git commands; in the future, the interface will also +provide specialized methods for doing easily operations which are not +totally trivial to do over the generic command interface. + +%description -n perl-Git -l pl.UTF-8 +Ten moduł umożliwia skryptom Perla współpracę z systemem kontroli +wersji Git. W łatwy i dobrze przetestowany sposób pozwala +wywoływać 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ń. + %prep %setup -q -n git-%{version} %build +%{__aclocal} +%{__autoconf} +%configure \ + --with-openssl + %{__make} \ - prefix=%{_prefix} \ - CC="%{__cc}" \ - CFLAGS="%{rpmcflags}" \ - LDFLAGS="%{rpmldflags}" + 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" %{__make} -C Documentation +%{?with_tests:%{__make} test} + %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT{%{_includedir}/%{name}/xdiff,%{_sharedstatedir}/git} +install -d $RPM_BUILD_ROOT{%{appdir},%{cgibindir},%{webappdir}} %{__make} install \ - prefix=%{_prefix} \ + INSTALLDIRS=vendor \ DESTDIR=$RPM_BUILD_ROOT %{__make} -C Documentation install \ - prefix=%{_prefix} \ - mandir=%{_mandir} \ DESTDIR=$RPM_BUILD_ROOT +install *.h $RPM_BUILD_ROOT%{_includedir}/%{name} +install xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff + +# 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 + +# remove unneeded files +rm -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod +rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Git/.packlist + %clean rm -rf $RPM_BUILD_ROOT +%triggerin gitweb -- apache1 < 1.3.37-3, apache1-base +%webapp_register apache %{webapp} + +%triggerun gitweb -- apache1 < 1.3.37-3, apache1-base +%webapp_unregister apache %{webapp} + +%triggerin gitweb -- apache < 2.2.0, apache-base +%webapp_register httpd %{webapp} + +%triggerun gitweb -- apache < 2.2.0, apache-base +%webapp_unregister httpd %{webapp} + %files %defattr(644,root,root,755) -%doc README Documentation/*.html Documentation/howto Documentation/technical +%doc README Documentation/{[!g]*,g[!i]*,git,git[!k]*}.html Documentation/howto Documentation/technical %attr(755,root,root) %{_bindir}/* %{_mandir}/man*/* -%dir %{_datadir}/%{name} -%{_datadir}/%{name}/* +%{_datadir}/%{name} +%{_datadir}/git-gui +%{_sharedstatedir}/git +%exclude %{_bindir}/gitk +%exclude %{_mandir}/man1/gitk.1* +%exclude %{_mandir}/man3/* + +%files devel +%defattr(644,root,root,755) +%{_includedir}/* + +%files gitk +%defattr(644,root,root,755) +%doc Documentation/gitk.html +%attr(755,root,root) %{_bindir}/gitk +%{_mandir}/man1/gitk.1* + +%files gitweb +%defattr(644,root,root,755) +%doc gitweb/{README,INSTALL} +%dir %{webappdir} +%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 +%attr(755,root,root) %{cgibindir}/gitweb.cgi +%{appdir} + +%files -n perl-Git +%defattr(644,root,root,755) +%{perl_vendorlib}/Git.pm +%{_mandir}/man3/*