1# Pass --without docs to rpmbuild if you don't want the documentation 2Name: git 3Version: @@VERSION@@ 4Release:1%{?dist} 5Summary: Git core and tools 6License: GPL 7Group: Development/Tools 8URL: http://kernel.org/pub/software/scm/git/ 9Source: http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.gz 10BuildRequires: zlib-devel >=1.2, openssl-devel, curl-devel, expat-devel %{!?_without_docs:, xmlto, asciidoc > 6.0.3} 11BuildRoot:%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u}-n) 12Requires: git-core, git-svn, git-cvs, git-arch, git-email, gitk, perl-Git 13 14%description 15This is a stupid (but extremely fast) directory content manager. It 16doesn't do a whole lot, but what it _does_ do is track directory 17contents efficiently. It is intended to be the base of an efficient, 18distributed source code management system. This package includes 19rudimentary tools that can be used as a SCM, but you should look 20elsewhere for tools for ordinary humans layered on top of this. 21 22This is a dummy package which brings in all subpackages. 23 24%package core 25Summary: Core git tools 26Group: Development/Tools 27Requires: zlib >=1.2, rsync, curl, less, openssh-clients, expat 28%description core 29This is a stupid (but extremely fast) directory content manager. It 30doesn't do a whole lot, but what it _does_ do is track directory 31contents efficiently. It is intended to be the base of an efficient, 32distributed source code management system. This package includes 33rudimentary tools that can be used as a SCM, but you should look 34elsewhere for tools for ordinary humans layered on top of this. 35 36These are the core tools with minimal dependencies. 37 38%package svn 39Summary: Git tools for importing Subversion repositories 40Group: Development/Tools 41Requires: git-core =%{version}-%{release}, subversion 42%description svn 43Git tools for importing Subversion repositories. 44 45%package cvs 46Summary: Git tools for importing CVS repositories 47Group: Development/Tools 48Requires: git-core =%{version}-%{release}, cvs, cvsps 49%description cvs 50Git tools for importing CVS repositories. 51 52%package arch 53Summary: Git tools for importing Arch repositories 54Group: Development/Tools 55Requires: git-core =%{version}-%{release}, tla 56%description arch 57Git tools for importing Arch repositories. 58 59%package email 60Summary: Git tools for sending email 61Group: Development/Tools 62Requires: git-core =%{version}-%{release} 63%description email 64Git tools for sending email. 65 66%package-n gitk 67Summary: Git revision tree visualiser ('gitk') 68Group: Development/Tools 69Requires: git-core =%{version}-%{release}, tk >=8.4 70%description-n gitk 71Git revision tree visualiser ('gitk') 72 73%package-n perl-Git 74Summary: Perl interface to Git 75Group: Development/Libraries 76Requires: git-core =%{version}-%{release} 77Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl}-V:version`";echo $version)) 78BuildRequires: perl(Error) 79 80%description-n perl-Git 81Perl interface to Git 82 83%prep 84%setup-q 85 86%build 87make%{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" WITH_OWN_SUBPROCESS_PY=YesPlease \ 88 prefix=%{_prefix} all %{!?_without_docs: doc} 89 90%install 91rm-rf $RPM_BUILD_ROOT 92make%{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" DESTDIR=$RPM_BUILD_ROOT \ 93 WITH_OWN_SUBPROCESS_PY=YesPlease \ 94 prefix=%{_prefix} mandir=%{_mandir} INSTALLDIRS=vendor \ 95install%{!?_without_docs: install-doc} 96find $RPM_BUILD_ROOT -type f -name .packlist -exec rm-f {} ';' 97find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm-f {} ';' 98find $RPM_BUILD_ROOT -type f -name perllocal.pod -exec rm-f {} ';' 99 100(find $RPM_BUILD_ROOT%{_bindir}-type f | grep -vE "archimport|svn|cvs|email|gitk" | sed -e s@^$RPM_BUILD_ROOT@@) > bin-man-doc-files 101(find $RPM_BUILD_ROOT%{perl_vendorlib}-type f | sed -e s@^$RPM_BUILD_ROOT@@) >> perl-files 102%if%{!?_without_docs:1}0 103(find $RPM_BUILD_ROOT%{_mandir} $RPM_BUILD_ROOT/Documentation -type f | grep -vE "archimport|svn|git-cvs|email|gitk" | sed -e s@^$RPM_BUILD_ROOT@@ -e 's/$/*/' ) >> bin-man-doc-files 104%else 105rm-rf $RPM_BUILD_ROOT%{_mandir} 106%endif 107 108%clean 109rm-rf $RPM_BUILD_ROOT 110 111%files 112# These are no files in the root package 113 114%files svn 115%defattr(-,root,root) 116%{_bindir}/*svn* 117%doc Documentation/*svn*.txt 118%{!?_without_docs: %{_mandir}/man1/*svn*.1*} 119%{!?_without_docs: %doc Documentation/*svn*.html } 120 121%files cvs 122%defattr(-,root,root) 123%doc Documentation/*git-cvs*.txt 124%{_bindir}/*cvs* 125%{!?_without_docs: %{_mandir}/man1/*cvs*.1*} 126%{!?_without_docs: %doc Documentation/*git-cvs*.html } 127 128%files arch 129%defattr(-,root,root) 130%doc Documentation/git-archimport.txt 131%{_bindir}/git-archimport 132%{!?_without_docs: %{_mandir}/man1/git-archimport.1*} 133%{!?_without_docs: %doc Documentation/git-archimport.html } 134 135%files email 136%defattr(-,root,root) 137%doc Documentation/*email*.txt 138%{_bindir}/*email* 139%{!?_without_docs: %{_mandir}/man1/*email*.1*} 140%{!?_without_docs: %doc Documentation/*email*.html } 141 142%files-n gitk 143%defattr(-,root,root) 144%doc Documentation/*gitk*.txt 145%{_bindir}/*gitk* 146%{!?_without_docs: %{_mandir}/man1/*gitk*.1*} 147%{!?_without_docs: %doc Documentation/*gitk*.html } 148 149%files-n perl-Git -f perl-files 150%defattr(-,root,root) 151 152%files core -f bin-man-doc-files 153%defattr(-,root,root) 154%{_datadir}/git-core/ 155%doc README COPYING Documentation/*.txt 156%{!?_without_docs: %doc Documentation/*.html } 157 158%changelog 159* Mon Nov 14 2005 H. Peter Anvin <hpa@zytor.com>0.99.9j-1 160- Change subpackage names to git-<name> instead of git-core-<name> 161- Create empty root package which brings in all subpackages 162- Rename git-tk -> gitk 163 164* Thu Nov 10 2005 Chris Wright <chrisw@osdl.org>0.99.9g-1 165- zlib dependency fix 166- Minor cleanups from split 167- Move arch import to separate package as well 168 169* Tue Sep 27 2005 Jim Radford <radford@blackbean.org> 170- Move programs with non-standard dependencies (svn, cvs, email) 171 into separate packages 172 173* Tue Sep 27 2005 H. Peter Anvin <hpa@zytor.com> 174- parallelize build 175- COPTS -> CFLAGS 176 177* Fri Sep 16 2005 Chris Wright <chrisw@osdl.org>0.99.6-1 178- update to 0.99.6 179 180* Fri Sep 16 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl> 181- Linus noticed that less is required, added to the dependencies 182 183* Sun Sep 11 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl> 184- Updated dependencies 185- Don't assume manpages are gzipped 186 187* Thu Aug 18 2005 Chris Wright <chrisw@osdl.org>0.99.4-4 188- drop sh_utils, sh-utils, diffutils, mktemp, and openssl Requires 189- use RPM_OPT_FLAGS in spec file, drop patch0 190 191* Wed Aug 17 2005 Tom "spot" Callaway <tcallawa@redhat.com>0.99.4-3 192- use dist tag to differentiate between branches 193- use rpm optflags by default (patch0) 194- own %{_datadir}/git-core/ 195 196* Mon Aug 15 2005 Chris Wright <chrisw@osdl.org> 197- update spec file to fix Buildroot,Requires, and drop Vendor 198 199* Sun Aug 07 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl> 200- Redid the description 201- Cut overlong make line, loosened changelog a bit 202- I think Junio (or perhaps OSDL?) should be vendor... 203 204* Thu Jul 14 2005 Eric Biederman <ebiederm@xmission.com> 205- Add the man pages, and the --without docs build option 206 207* Wed Jul 7 2005 Chris Wright <chris@osdl.org> 208- initial git spec file