Sophie

Sophie

distrib > Mandriva > 2009.1 > x86_64 > media > main-updates-src > by-pkgid > 28cbd38c6189b8f32a73c766a2195a71 > files > 5

git-1.6.2.5-0.2mdv2009.1.src.rpm


%define libname %mklibname git

Summary: Global Information Tracker
Name: git
Epoch: 1
Version: 1.6.2.5
%define subrel 2
Release: %mkrel 0
Source0: http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.bz2
Source1: http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.bz2.sign
Source2: gitweb.conf
Patch0: git-1.6.2.5-daemon-extra-args.patch
Patch1: git-1.6.2.5-CVE-2010-2542.diff
License: GPLv2
Group: Development/Other
Url: http://git-scm.com/
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires: openssl-devel
BuildRequires: zlib-devel
BuildRequires: curl-devel
BuildRequires: expat-devel
BuildRequires: asciidoc
BuildRequires: xmlto
BuildRequires: dos2unix
BuildRequires: perl-CGI
Requires: git-core = %{epoch}:%{version}
Requires: gitk = %{epoch}:%{version}
Requires: git-svn = %{epoch}:%{version}
Suggests: git-cvs = %{epoch}:%{version}
Requires: git-email = %{epoch}:%{version}
Suggests: git-arch = %{epoch}:%{version}
Suggests: git-core-oldies = %{epoch}:%{version}
Obsoletes: linus-git < 1.5.4.3-2
Provides: linus-git

%description
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. It is intended to be the base of an efficient,
distributed source code management system. This package includes
rudimentary tools that can be used as a SCM, but you should look
elsewhere for tools for ordinary humans layered on top of this.

This is a dummy package which brings in all subpackages.


%package -n git-core
Summary: Global Information Tracker
Group: Development/Other
Requires: diffutils
Requires: rsync
Requires: less
Requires: openssh-clients
Conflicts: git < 4.3.20-15
Obsoletes: gitcompletion
Provides: gitcompletion

%description -n git-core
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. It is intended to be the base of an efficient,
distributed source code management system. This package includes
rudimentary tools that can be used as a SCM, but you should look
elsewhere for tools for ordinary humans layered on top of this.

This are the core tools with minimal dependencies.

You may want to install subversion, cpsps and/or tla to import
repositories from other VCS.


%package -n gitk
Summary: Git revision tree visualiser
Group: Development/Other
Requires: git-core = %{epoch}:%{version}
Requires: tk >= 8.4
Requires: tcl >= 8.4

%description -n gitk
Git revision tree visualiser.

%package -n gitview
Summary: Git graphical revision tree visualiser
Group: Development/Other
Requires: git-core = %{epoch}:%{version}
Requires: python-cairo
Requires: pygtk2.0
Requires: python-gtksourceview

%description -n gitview
Git graphical revision tree visualiser.

%package -n %libname-devel	
Summary: Git development files	
Group: Development/Other	
Provides: git-devel = %version-%release	
 	 	
%description -n %libname-devel	
Development files for git.

%package -n git-svn
Summary:        Git tools for importing Subversion repositories
Group:          Development/Other
Requires:       git-core = %{epoch}:%{version}-%{release}, subversion
%description -n git-svn
Git tools for importing Subversion repositories.

%package -n git-cvs
Summary:        Git tools for importing CVS repositories
Group:          Development/Other
Requires:       git-core = %{epoch}:%{version}-%{release}
Suggests: 	cvs, cvsps
%description -n git-cvs
Git tools for importing CVS repositories.

%package -n git-arch
Summary:        Git tools for importing Arch repositories
Group:          Development/Other
Requires:       git-core = %{epoch}:%{version}-%{release}
Suggests:	tla
%description -n git-arch
Git tools for importing Arch repositories.

%package -n git-email
Summary:        Git tools for sending email
Group:          Development/Other
Requires:       git-core = %{epoch}:%{version}-%{release}
%description -n git-email
Git tools for sending email.

%package -n perl-Git
Summary:        Perl interface to Git
Group:          Development/Perl
Requires:       git-core = %{epoch}:%{version}-%{release}

%description -n perl-Git
Perl interface to Git

%package -n git-core-oldies
Summary:	Git obsolete commands, bound to extinction
Group:		Development/Other
Requires:	git-core = %{epoch}:%{version}-%{release}

%description -n git-core-oldies
Git obsolete commands, bound to extinction

%package -n gitweb
Summary:	cgi-bin script for browse a git repository with web browser
Group:		System/Servers
Requires:	git-core = %{epoch}:%{version}-%{release}

%description -n gitweb
cgi-bin script for browse a git repository with web browser.

%prep
%setup -q -n git-%{version}
%patch0 -p1 -b .CVE-2009-2108
%patch1 -p0 -b .CVE-2010-2542

# remove borring file
rm -f Documentation/.gitignore
# prefix gitweb css/png files with /gitweb
perl -pi -e 's!^(GITWEB_CSS|GITWEB_LOGO|GITWEB_FAVICON) = !$1 = /gitweb/!' Makefile

%build
# same flags and prefix must be passed for make test too
%define git_make_params prefix=%{_prefix} gitexecdir=%{_libdir}/git-core CFLAGS="$RPM_OPT_FLAGS" GITWEB_CONFIG=%{_sysconfdir}/gitweb.conf DOCBOOK_XSL_172=1 MANPAGE_XSL=callouts.xsl
%make %git_make_params all doc gitweb/gitweb.cgi

# convert end of line to make rpmlint happy
dos2unix Documentation/*.html

# Produce RelNotes.txt.gz
# protect from it ever coming into existence from upstream (should be preferred)
cd Documentation
find . -name RelNotes.\* | grep -q RelNotes\\. 2>/dev/null && exit 1
# sed trick changes "-x.y.z.txt" to "-x.y.z.0.txt" for ordering, then undoes it
relnotesls="`find . -name 'RelNotes-*' | sed 's/\(-[0-9]\.[0-9]\.[0-9]\)\.txt/\1.0.txt/' | sort -nr | sed 's/\(-[0-9]\.[0-9]\.[0-9]\)\.0\.txt/\1.txt/'`"
# use awk to print a newline before each RelNotes header
awk 'FNR == 1 { print "" } { print }' $relnotesls | gzip -9c >RelNotes.txt.gz

%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_bindir}
%makeinstall_std prefix=%{_prefix} gitexecdir=%{_libdir}/git-core  CFLAGS="$RPM_OPT_FLAGS"
make install-doc prefix=%{_prefix} gitexecdir=%{_libdir}/git-core   DESTDIR=$RPM_BUILD_ROOT
install -m 755 contrib/gitview/gitview %buildroot%{_bindir}

mkdir -p %{buildroot}%{_includedir}/git
cp *.h %{buildroot}%{_includedir}/git

mkdir -p %{buildroot}%{_libdir}
install -m 644 libgit.a %buildroot%{_libdir}/libgit.a

mv %{buildroot}/%{_prefix}/lib/perl5/site_perl %{buildroot}/%{_prefix}/lib/perl5/vendor_perl
rm -f %{buildroot}/%{perl_vendorlib}/Error.pm

mkdir -p %{buildroot}%{_var}/www/cgi-bin/gitweb/
cp gitweb/gitweb.cgi %{buildroot}%{_var}/www/cgi-bin/
mkdir -p %{buildroot}%{_var}/www/gitweb/
cp gitweb/*.css gitweb/*.png %{buildroot}%{_var}/www/gitweb
mkdir -p %{buildroot}%{_sysconfdir}
install -m644 %{SOURCE2} %{buildroot}%{_sysconfdir}/gitweb.conf
# apache configuration
mkdir -p %{buildroot}%{_webappconfdir}
cat > %{buildroot}%{_webappconfdir}/gitweb.conf <<EOF
# gitweb configuration
Alias /gitweb %{_var}/www/gitweb

<Directory %{_var}/www/gitweb>
    Allow from all
</Directory>
EOF

# fix .sp in man files
find %{buildroot}/%{_mandir} -type f | xargs perl -e 's/\.sp$/\n\.sp/g' -pi

# emacs VC backend:
mkdir -p %{buildroot}{%_datadir/emacs/site-lisp,/etc/emacs/site-start.d}
install -m 644 contrib/emacs/*.el %{buildroot}%_datadir/emacs/site-lisp
cat >%{buildroot}/etc/emacs/site-start.d/vc_git.el <<EOF
(add-to-list 'vc-handled-backends 'GIT)
EOF

# install bash-completion file
mkdir -p  %{buildroot}%_sysconfdir/bash_completion.d
install -m644 contrib/completion/git-completion.bash %{buildroot}%_sysconfdir/bash_completion.d/

%check
LC_ALL=C %make %git_make_params test

%clean
rm -rf $RPM_BUILD_ROOT

%post -n gitweb
%{_post_webapp}

%postun -n gitweb
%{_postun_webapp}

%files
# no file in the main package

%files -n git-core
%defattr(-,root,root,0755)
/etc/emacs/site-start.d/*
/etc/bash_completion.d/*
%_datadir/emacs/site-lisp/*
%{_bindir}/git
%{_bindir}/git-*
%{_libdir}/git-core
%exclude %{_libdir}/git-core/*svn*
%exclude %{_libdir}/git-core/*cvs*
%exclude %{_libdir}/git-core/git-archimport
%exclude %{_libdir}/git-core/*email*
# %exclude %{_bindir}/git-merge-recursive-old
%{_datadir}/git-core
%{_datadir}/git-gui
# %exclude %{_datadir}/git-core/python
%{_mandir}/*/git-*
%{_mandir}/*/git.*
%{_mandir}/*/gitattributes*
%{_mandir}/*/gitignore*
%{_mandir}/*/gitmodules*
%{_mandir}/*/gitcli*
%{_mandir}/*/githooks*
%{_mandir}/*/gitrepository*
%{_mandir}/*/*tutorial*
%{_mandir}/*/*glossary*
%{_mandir}/*/gitdiffcore*
%{_mandir}/*/gitworkflows*
%exclude %{_mandir}/man1/*svn*.1*
%exclude %{_mandir}/man1/*cvs*.1*
%exclude %{_mandir}/man7/*cvs*.7*
%exclude %{_mandir}/man1/*email*.1*
%exclude %{_mandir}/man1/git-archimport.1*
%doc README Documentation/*.html Documentation/howto Documentation/technical Documentation/RelNotes.txt.gz

%files -n gitk
%defattr(-,root,root,0755)
%{_bindir}/gitk
%{_mandir}/*/gitk*
%{_datadir}/gitk
%doc README

%files -n gitview
%defattr(-,root,root,0755)
%doc contrib/gitview/gitview.txt
%{_bindir}/gitview

%files -n %{libname}-devel	
%defattr(-,root,root,0755)
%{_includedir}/git
%{_libdir}/libgit.a

%files -n git-svn
%defattr(-,root,root)
%{_libdir}/git-core/*svn*
%{_mandir}/man1/*svn*.1*
# %doc Documentation/*svn*.txt
# %doc Documentation/*svn*.html

%files -n git-cvs
%defattr(-,root,root)
%{_libdir}/git-core/*cvs*
%{_mandir}/man1/*cvs*.1*
%{_mandir}/man7/*cvs*.7*
# %doc Documentation/*git-cvs*.txt
# %doc Documentation/*git-cvs*.html

%files -n git-arch
%defattr(-,root,root)
%{_libdir}/git-core/git-archimport
%{_mandir}/man1/git-archimport.1*
# %doc Documentation/git-archimport.txt
# %doc Documentation/git-archimport.html

%files -n git-email
%defattr(-,root,root)
%{_libdir}/git-core/*email*
%{_mandir}/man1/*email*.1*
# %doc Documentation/*email*.txt
# %doc Documentation/*email*.html

%files -n perl-Git
%defattr(-,root,root)
%{perl_vendorlib}/*
%{_mandir}/man3/*
# /usr/lib/perl5/site_perl/5.8.8/Git.pm
# /usr/local/share/man/man3/Git.3pm

%files -n git-core-oldies
%defattr(-,root,root,0755)
# %{_bindir}/git-merge-recursive-old
# %{_datadir}/git-core/python

%files -n gitweb
%defattr(-,root,root,0755)
%doc gitweb/INSTALL gitweb/README
%config(noreplace) %{_sysconfdir}/gitweb.conf
%config(noreplace) %{_webappconfdir}/gitweb.conf
%{_var}/www/cgi-bin/gitweb.cgi
%{_var}/www/gitweb


%changelog
* Sun Oct 03 2010 Oden Eriksson <oeriksson@mandriva.com> 1:1.6.2.5-0.2mdv2009.1
- P1: security fix for CVE-2010-2542

* Fri Jul 17 2009 Oden Eriksson <oeriksson@mandriva.com> 1:1.6.2.5-0.1mdv2009.1
- 1.6.2.5
- P0: security fix for CVE-2009-2108 (fedora)

* Thu Apr 23 2009 Frederic Crozat <fcrozat@mandriva.com> 1:1.6.2.4-3mdv2009.1
+ Revision: 368847
- Do not hard depend on git-cvs and git-arch
- replace hard dependencies on tla / cvs / cvsps for git-arch/git-cvs, use suggests (they are in contrib)

* Mon Apr 20 2009 Gustavo De Nardin <gustavodn@mandriva.com> 1:1.6.2.4-2mdv2009.1
+ Revision: 368353
- produce a RelNotes.txt.gz with all RelNotes, and include it as doc

* Mon Apr 20 2009 Gustavo De Nardin <gustavodn@mandriva.com> 1:1.6.2.4-1mdv2009.1
+ Revision: 368245
- new version 1.6.2.4, maintenance branch

* Mon Apr 13 2009 Gustavo De Nardin <gustavodn@mandriva.com> 1:1.6.2.3-1mdv2009.1
+ Revision: 366818
- new version 1.6.2.3, maintenance branch

* Sat Apr 04 2009 Gustavo De Nardin <gustavodn@mandriva.com> 1:1.6.2.2-1mdv2009.1
+ Revision: 363961
- new version 1.6.2.2, maintenance branch
- use same parameters for 'make all' and 'make test', otherwise git is
  all rebuilt for 'make test'

* Mon Mar 16 2009 Frederik Himpe <fhimpe@mandriva.org> 1:1.6.2.1-1mdv2009.1
+ Revision: 355717
- update to new version 1.6.2.1

* Wed Mar 04 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 1:1.6.2-1mdv2009.1
+ Revision: 348469
- Updated to version 1.6.2
- Reenable make test.

* Mon Feb 09 2009 Andrey Borzenkov <arvidjaar@mandriva.org> 1:1.6.1.3-2mdv2009.1
+ Revision: 338927
- fix manpage generation
  * define DOCBOOK_XSL_172 to avoid broken "unfix" for older docbook
  * force MANPAGE_XSL=callouts.xsl because manpage-1.72.xsl breaks
  manpages in different place

* Sun Feb 08 2009 Frederik Himpe <fhimpe@mandriva.org> 1:1.6.1.3-1mdv2009.1
+ Revision: 338501
- update to new version 1.6.1.3

* Fri Jan 30 2009 Frederic Crozat <fcrozat@mandriva.com> 1:1.6.1.2-1mdv2009.1
+ Revision: 335599
- Release 1.6.1.2
- Release 1.6.1.2

* Thu Jan 15 2009 Frederic Crozat <fcrozat@mandriva.com> 1:1.6.1-1mdv2009.1
+ Revision: 329922
- Add missing manpage
- Release 1.6.1
- Update url
- disable check, fails with svn 1.5.5

* Fri Dec 19 2008 Frederic Crozat <fcrozat@mandriva.com> 1:1.6.0.5-1mdv2009.1
+ Revision: 316134
- Release 1.6.0.5

* Thu Nov 13 2008 Frederic Crozat <fcrozat@mandriva.com> 1:1.6.0.4-1mdv2009.1
+ Revision: 302714
- Release 1.6.0.4

* Sat Sep 13 2008 Frederik Himpe <fhimpe@mandriva.org> 1:1.6.0.2-1mdv2009.0
+ Revision: 284550
- Update to new bugfix release 1.6.0.2

* Thu Aug 28 2008 Frederic Crozat <fcrozat@mandriva.com> 1:1.6.0.1-2mdv2009.0
+ Revision: 276802
- Do no install vim completion file, it is now provided by vim-common >= 7.2

* Mon Aug 25 2008 Frederik Himpe <fhimpe@mandriva.org> 1:1.6.0.1-1mdv2009.0
+ Revision: 276034
- Update to version 1.6.0.1

* Thu Aug 21 2008 Frederic Crozat <fcrozat@mandriva.com> 1:1.6.0-1mdv2009.0
+ Revision: 274672
- Release 1.6.0

* Sun Aug 10 2008 Olivier Blin <oblin@mandriva.com> 1:1.5.6.5-2mdv2009.0
+ Revision: 270238
- rebuild because some binary packages have been eaten by the BogeySystem

* Fri Aug 08 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 1:1.5.6.5-1mdv2009.0
+ Revision: 269053
- Updated to version 1.5.6.5

* Tue Jul 22 2008 Frederic Crozat <fcrozat@mandriva.com> 1:1.5.6.4-1mdv2009.0
+ Revision: 240125
- Release 1.5.6.4
- obsolete gitcompletion package

* Mon Jun 23 2008 Frederic Crozat <fcrozat@mandriva.com> 1:1.5.6-1mdv2009.0
+ Revision: 227982
- Release 1.5.6
- Clean requirement

* Thu Jun 12 2008 Anssi Hannula <anssi@mandriva.org> 1:1.5.4.3-4mdv2009.0
+ Revision: 218614
- fix versioned requires

* Wed Jun 11 2008 Anssi Hannula <anssi@mandriva.org> 1:1.5.4.3-3mdv2009.0
+ Revision: 218150
- fix obsoletes versioning
- remove conflict with old version of itself, that is implicit

  + Paulo Andrade <pcpa@mandriva.com.br>
    - Rename linus-git to git, to match package name.
    - Besides renaming to git, also "provides" linus-git.
    - Rename spec file.
    - Rename linus-git package to just git, and based on changes made to original
      git package, allow both to be installed.

  + Emmanuel Andry <eandry@mandriva.org>
    - gitk requires tcl (#37661)

* Mon Feb 25 2008 Frederik Himpe <fhimpe@mandriva.org> 1.5.4.3-1mdv2008.1
+ Revision: 174935
- New upstream version

* Mon Feb 18 2008 Frederik Himpe <fhimpe@mandriva.org> 1.5.4.2-1mdv2008.1
+ Revision: 172006
- New upstream version
- New license policy

* Mon Feb 11 2008 Frederic Crozat <fcrozat@mandriva.com> 1.5.4.1-1mdv2008.1
+ Revision: 165231
- Release 1.5.4.1

* Mon Jan 21 2008 Thierry Vignaud <tvignaud@mandriva.com> 1.5.3.5-7mdv2008.1
+ Revision: 155646
- rebuild for new perl
- kill re-definition of %%buildroot on Pixel's request

  + Pixel <pixel@mandriva.com>
    - rebuild for perl-5.10.0

  + Olivier Blin <oblin@mandriva.com>
    - restore BuildRoot

* Mon Nov 19 2007 Olivier Blin <oblin@mandriva.com> 1.5.3.5-4mdv2008.1
+ Revision: 110190
- do not require gitview (and thus pygtk2) in main package

* Mon Nov 12 2007 Thierry Vignaud <tvignaud@mandriva.com> 1.5.3.5-3mdv2008.1
+ Revision: 108187
- really rebuild for lzma permissions issue (#35309)

* Tue Nov 06 2007 Thierry Vignaud <tvignaud@mandriva.com> 1.5.3.5-2mdv2008.1
+ Revision: 106501
- rebuild for lzma permissions issue (#35309)

* Thu Nov 01 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 1.5.3.5-1mdv2008.1
+ Revision: 104693
- Updated to version 1.5.3.5.

* Mon Sep 24 2007 Arnaud Patard <apatard@mandriva.com> 1.5.3.2-1mdv2008.0
+ Revision: 92674
- Update to 1.5.3.2
- Add perl-CGI as buildreq. Needed for gitweb tests.

  + Frederic Crozat <fcrozat@mandriva.com>
    - Release 1.5.3.1

* Tue Aug 21 2007 Gaëtan Lehmann <glehmann@mandriva.org> 1.5.2.5-1mdv2008.0
+ Revision: 68256
- 1.5.2.5

  + Gustavo De Nardin <gustavodn@mandriva.com>
    - don't need rcs anymore

* Mon Jul 30 2007 Gustavo De Nardin <gustavodn@mandriva.com> 1.5.2.4-2mdv2008.0
+ Revision: 56649
- added Requires: curl for git-core, as at least git-ls-remote uses it

* Tue Jul 24 2007 Gaëtan Lehmann <glehmann@mandriva.org> 1.5.2.4-1mdv2008.0
+ Revision: 55071
- 1.5.2.4 (but still don't fix buil problem with last docbook)
- 1.5.2.3

* Thu Jun 28 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 1.5.2.2-1mdv2008.0
+ Revision: 45444
- Fixed some group categories that doesn't exist in our rpmlint.
- Updated to version 1.5.2.2.

* Sun Jun 10 2007 Gaëtan Lehmann <glehmann@mandriva.org> 1.5.2.1-1mdv2008.0
+ Revision: 37919
- 1.5.2.1

* Fri Jun 01 2007 Olivier Blin <oblin@mandriva.com> 1.5.2-3mdv2008.0
+ Revision: 33693
- install css/png files in /var/www/gitweb (they were unusable in cgi-bin directory)
- pass prefix and CFLAGS to install/test rules (so that make does not rebuild all files)

* Thu May 24 2007 Frederic Crozat <fcrozat@mandriva.com> 1.5.2-2mdv2008.0
+ Revision: 30779
- Create a gitweb package and add a default config file for it too

* Wed May 23 2007 Frederic Crozat <fcrozat@mandriva.com> 1.5.2-1mdv2008.0
+ Revision: 30074
- Release 1.5.2

* Fri May 11 2007 Frederic Crozat <fcrozat@mandriva.com> 1.5.1.4-2mdv2008.0
+ Revision: 26273
- install bash_completion and vim syntax files

* Wed May 09 2007 Nicolas Lécureuil <neoclust@mandriva.org> 1.5.1.4-1mdv2008.0
+ Revision: 25424
- New version 1.5.1.4

* Wed Apr 25 2007 Frederic Crozat <fcrozat@mandriva.com> 1.5.1.2-1mdv2008.0
+ Revision: 18248
- Release 1.5.1.2

* Wed Apr 25 2007 Frederic Crozat <fcrozat@mandriva.com> 1.5.1-1mdv2008.0
+ Revision: 18240
- Release 1.5.1


* Sat Nov 04 2006 Stefan van der Eijk <stefan@mandriva.org> 4.3.20-13mdv2007.0
+ Revision: 76519
- rebuild for signature
- rebuild
- Import git

* Wed Sep 20 2006 Nicolas Lécureuil <neoclust@mandriva.org> 4.3.20-14mdv2007.0
- Use mkrel
- Rebuild

* Sat Dec 31 2005 Mandriva Linux Team <http://www.mandrivaexpert.com/> 4.3.20-10mdk
- Rebuild