# Pass --without docs to rpmbuild if you don't want the documentation Name: git Version: @@VERSION@@ Release: 1%{?dist} Summary: Git core and tools License: GPL Group: Development/Tools URL: http://kernel.org/pub/software/scm/git/ Source: http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.gz BuildRequires: zlib-devel >= 1.2, openssl-devel, curl-devel, expat-devel %{!?_without_docs:, xmlto, asciidoc > 6.0.3} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires: git-core, git-svn, git-cvs, git-arch, git-email, gitk, git-gui, perl-Git %description Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. This is a dummy package which brings in all subpackages. %package core Summary: Core git tools Group: Development/Tools Requires: zlib >= 1.2, rsync, curl, less, openssh-clients, expat Obsoletes: git-p4 %description core Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. These are the core tools with minimal dependencies. %package svn Summary: Git tools for importing Subversion repositories Group: Development/Tools Requires: git-core = %{version}-%{release}, subversion %description svn Git tools for importing Subversion repositories. %package cvs Summary: Git tools for importing CVS repositories Group: Development/Tools Requires: git-core = %{version}-%{release}, cvs, cvsps %description cvs Git tools for importing CVS repositories. %package arch Summary: Git tools for importing Arch repositories Group: Development/Tools Requires: git-core = %{version}-%{release}, tla %description arch Git tools for importing Arch repositories. %package email Summary: Git tools for sending email Group: Development/Tools Requires: git-core = %{version}-%{release} %description email Git tools for sending email. %package gui Summary: Git GUI tool Group: Development/Tools Requires: git-core = %{version}-%{release}, tk >= 8.4 %description gui Git GUI tool %package -n gitk Summary: Git revision tree visualiser ('gitk') Group: Development/Tools Requires: git-core = %{version}-%{release}, tk >= 8.4 %description -n gitk Git revision tree visualiser ('gitk') %package -n perl-Git Summary: Perl interface to Git Group: Development/Libraries Requires: git-core = %{version}-%{release} Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) BuildRequires: perl(Error) %description -n perl-Git Perl interface to Git %define path_settings ETC_GITCONFIG=/etc/gitconfig prefix=%{_prefix} mandir=%{_mandir} htmldir=%{_docdir}/%{name}-core-%{version} %prep %setup -q %build make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" \ %{path_settings} \ all %{!?_without_docs: doc} %install rm -rf $RPM_BUILD_ROOT make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" DESTDIR=$RPM_BUILD_ROOT \ %{path_settings} \ INSTALLDIRS=vendor install %{!?_without_docs: install-doc} find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';' find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm -f {} ';' find $RPM_BUILD_ROOT -type f -name perllocal.pod -exec rm -f {} ';' (find $RPM_BUILD_ROOT%{_bindir} -type f | grep -vE "archimport|svn|cvs|email|gitk|git-gui|git-citool" | sed -e s@^$RPM_BUILD_ROOT@@) > bin-man-doc-files (find $RPM_BUILD_ROOT%{perl_vendorlib} -type f | sed -e s@^$RPM_BUILD_ROOT@@) >> perl-files %if %{!?_without_docs:1}0 (find $RPM_BUILD_ROOT%{_mandir} $RPM_BUILD_ROOT/Documentation -type f | grep -vE "archimport|svn|git-cvs|email|gitk|git-gui|git-citool" | sed -e s@^$RPM_BUILD_ROOT@@ -e 's/$/*/' ) >> bin-man-doc-files %else rm -rf $RPM_BUILD_ROOT%{_mandir} %endif %clean rm -rf $RPM_BUILD_ROOT %files # These are no files in the root package %files svn %defattr(-,root,root) %{_bindir}/*svn* %doc Documentation/*svn*.txt %{!?_without_docs: %{_mandir}/man1/*svn*.1*} %{!?_without_docs: %doc Documentation/*svn*.html } %files cvs %defattr(-,root,root) %doc Documentation/*git-cvs*.txt %{_bindir}/*cvs* %{!?_without_docs: %{_mandir}/man1/*cvs*.1*} %{!?_without_docs: %doc Documentation/*git-cvs*.html } %files arch %defattr(-,root,root) %doc Documentation/git-archimport.txt %{_bindir}/git-archimport %{!?_without_docs: %{_mandir}/man1/git-archimport.1*} %{!?_without_docs: %doc Documentation/git-archimport.html } %files email %defattr(-,root,root) %doc Documentation/*email*.txt %{_bindir}/*email* %{!?_without_docs: %{_mandir}/man1/*email*.1*} %{!?_without_docs: %doc Documentation/*email*.html } %files gui %defattr(-,root,root) %{_bindir}/git-gui %{_bindir}/git-citool %{_datadir}/git-gui/ %{!?_without_docs: %{_mandir}/man1/git-gui.1*} %{!?_without_docs: %doc Documentation/git-gui.html} %{!?_without_docs: %{_mandir}/man1/git-citool.1*} %{!?_without_docs: %doc Documentation/git-citool.html} %files -n gitk %defattr(-,root,root) %doc Documentation/*gitk*.txt %{_bindir}/*gitk* %{!?_without_docs: %{_mandir}/man1/*gitk*.1*} %{!?_without_docs: %doc Documentation/*gitk*.html } %files -n perl-Git -f perl-files %defattr(-,root,root) %files core -f bin-man-doc-files %defattr(-,root,root) %{_datadir}/git-core/ %doc README COPYING Documentation/*.txt %{!?_without_docs: %doc Documentation/*.html Documentation/howto} %{!?_without_docs: %doc Documentation/technical} %changelog * Wed Dec 12 2007 Junio C Hamano - Adjust htmldir to point at /usr/share/doc/git-core-$version/ * Sun Jul 15 2007 Sean Estabrooks - Removed p4import. * Tue Jun 26 2007 Quy Tonthat - Fixed problems looking for wrong manpages. * Thu Jun 21 2007 Shawn O. Pearce - Added documentation files for git-gui * Tue May 13 2007 Quy Tonthat - Added lib files for git-gui - Added Documentation/technical (As needed by Git Users Manual) * Tue May 8 2007 Quy Tonthat - Added howto files * Tue Mar 27 2007 Eygene Ryabinkin - Added the git-p4 package: Perforce import stuff. * Mon Feb 13 2007 Nicolas Pitre - Update core package description (Git isn't as stupid as it used to be) * Mon Feb 12 2007 Junio C Hamano - Add git-gui and git-citool. * Mon Nov 14 2005 H. Peter Anvin 0.99.9j-1 - Change subpackage names to git- instead of git-core- - Create empty root package which brings in all subpackages - Rename git-tk -> gitk * Thu Nov 10 2005 Chris Wright 0.99.9g-1 - zlib dependency fix - Minor cleanups from split - Move arch import to separate package as well * Tue Sep 27 2005 Jim Radford - Move programs with non-standard dependencies (svn, cvs, email) into separate packages * Tue Sep 27 2005 H. Peter Anvin - parallelize build - COPTS -> CFLAGS * Fri Sep 16 2005 Chris Wright 0.99.6-1 - update to 0.99.6 * Fri Sep 16 2005 Horst H. von Brand - Linus noticed that less is required, added to the dependencies * Sun Sep 11 2005 Horst H. von Brand - Updated dependencies - Don't assume manpages are gzipped * Thu Aug 18 2005 Chris Wright 0.99.4-4 - drop sh_utils, sh-utils, diffutils, mktemp, and openssl Requires - use RPM_OPT_FLAGS in spec file, drop patch0 * Wed Aug 17 2005 Tom "spot" Callaway 0.99.4-3 - use dist tag to differentiate between branches - use rpm optflags by default (patch0) - own %{_datadir}/git-core/ * Mon Aug 15 2005 Chris Wright - update spec file to fix Buildroot, Requires, and drop Vendor * Sun Aug 07 2005 Horst H. von Brand - Redid the description - Cut overlong make line, loosened changelog a bit - I think Junio (or perhaps OSDL?) should be vendor... * Thu Jul 14 2005 Eric Biederman - Add the man pages, and the --without docs build option * Wed Jul 7 2005 Chris Wright - initial git spec file