ffab6bbfd44fe2a745840869252fbb2f5254b07b
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, git-gui, 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 gui
67Summary: Git GUI tool
68Group: Development/Tools
69Requires: git-core = %{version}-%{release}, tk >= 8.4
70%description gui
71Git GUI tool
72
73%package -n gitk
74Summary: Git revision tree visualiser ('gitk')
75Group: Development/Tools
76Requires: git-core = %{version}-%{release}, tk >= 8.4
77%description -n gitk
78Git revision tree visualiser ('gitk')
79
80%package -n perl-Git
81Summary: Perl interface to Git
82Group: Development/Libraries
83Requires: git-core = %{version}-%{release}
84Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
85BuildRequires: perl(Error)
86
87%description -n perl-Git
88Perl interface to Git
89
90%prep
91%setup -q
92
93%build
94make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" WITH_OWN_SUBPROCESS_PY=YesPlease \
95 prefix=%{_prefix} all %{!?_without_docs: doc}
96
97%install
98rm -rf $RPM_BUILD_ROOT
99make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" DESTDIR=$RPM_BUILD_ROOT \
100 WITH_OWN_SUBPROCESS_PY=YesPlease \
101 prefix=%{_prefix} mandir=%{_mandir} INSTALLDIRS=vendor \
102 install %{!?_without_docs: install-doc}
103find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';'
104find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm -f {} ';'
105find $RPM_BUILD_ROOT -type f -name perllocal.pod -exec rm -f {} ';'
106
107(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
108(find $RPM_BUILD_ROOT%{perl_vendorlib} -type f | sed -e s@^$RPM_BUILD_ROOT@@) >> perl-files
109%if %{!?_without_docs:1}0
110(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
111%else
112rm -rf $RPM_BUILD_ROOT%{_mandir}
113%endif
114
115%clean
116rm -rf $RPM_BUILD_ROOT
117
118%files
119# These are no files in the root package
120
121%files svn
122%defattr(-,root,root)
123%{_bindir}/*svn*
124%doc Documentation/*svn*.txt
125%{!?_without_docs: %{_mandir}/man1/*svn*.1*}
126%{!?_without_docs: %doc Documentation/*svn*.html }
127
128%files cvs
129%defattr(-,root,root)
130%doc Documentation/*git-cvs*.txt
131%{_bindir}/*cvs*
132%{!?_without_docs: %{_mandir}/man1/*cvs*.1*}
133%{!?_without_docs: %doc Documentation/*git-cvs*.html }
134
135%files arch
136%defattr(-,root,root)
137%doc Documentation/git-archimport.txt
138%{_bindir}/git-archimport
139%{!?_without_docs: %{_mandir}/man1/git-archimport.1*}
140%{!?_without_docs: %doc Documentation/git-archimport.html }
141
142%files email
143%defattr(-,root,root)
144%doc Documentation/*email*.txt
145%{_bindir}/*email*
146%{!?_without_docs: %{_mandir}/man1/*email*.1*}
147%{!?_without_docs: %doc Documentation/*email*.html }
148
149%files gui
150%defattr(-,root,root)
151%{_bindir}/git-gui
152%{_bindir}/git-citool
153# Not Yet...
154# %{!?_without_docs: %{_mandir}/man1/git-gui.1}
155# %{!?_without_docs: %doc Documentation/git-gui.html}
156# %{!?_without_docs: %{_mandir}/man1/git-citool.1}
157# %{!?_without_docs: %doc Documentation/git-citool.html}
158
159%files -n gitk
160%defattr(-,root,root)
161%doc Documentation/*gitk*.txt
162%{_bindir}/*gitk*
163%{!?_without_docs: %{_mandir}/man1/*gitk*.1*}
164%{!?_without_docs: %doc Documentation/*gitk*.html }
165
166%files -n perl-Git -f perl-files
167%defattr(-,root,root)
168
169%files core -f bin-man-doc-files
170%defattr(-,root,root)
171%{_datadir}/git-core/
172%doc README COPYING Documentation/*.txt
173%{!?_without_docs: %doc Documentation/*.html }
174
175%changelog
176* Mon Feb 12 2007 Junio C Hamano <junkio@cox.net>
177- Add git-gui and git-citool.
178
179* Mon Nov 14 2005 H. Peter Anvin <hpa@zytor.com> 0.99.9j-1
180- Change subpackage names to git-<name> instead of git-core-<name>
181- Create empty root package which brings in all subpackages
182- Rename git-tk -> gitk
183
184* Thu Nov 10 2005 Chris Wright <chrisw@osdl.org> 0.99.9g-1
185- zlib dependency fix
186- Minor cleanups from split
187- Move arch import to separate package as well
188
189* Tue Sep 27 2005 Jim Radford <radford@blackbean.org>
190- Move programs with non-standard dependencies (svn, cvs, email)
191 into separate packages
192
193* Tue Sep 27 2005 H. Peter Anvin <hpa@zytor.com>
194- parallelize build
195- COPTS -> CFLAGS
196
197* Fri Sep 16 2005 Chris Wright <chrisw@osdl.org> 0.99.6-1
198- update to 0.99.6
199
200* Fri Sep 16 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
201- Linus noticed that less is required, added to the dependencies
202
203* Sun Sep 11 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
204- Updated dependencies
205- Don't assume manpages are gzipped
206
207* Thu Aug 18 2005 Chris Wright <chrisw@osdl.org> 0.99.4-4
208- drop sh_utils, sh-utils, diffutils, mktemp, and openssl Requires
209- use RPM_OPT_FLAGS in spec file, drop patch0
210
211* Wed Aug 17 2005 Tom "spot" Callaway <tcallawa@redhat.com> 0.99.4-3
212- use dist tag to differentiate between branches
213- use rpm optflags by default (patch0)
214- own %{_datadir}/git-core/
215
216* Mon Aug 15 2005 Chris Wright <chrisw@osdl.org>
217- update spec file to fix Buildroot, Requires, and drop Vendor
218
219* Sun Aug 07 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
220- Redid the description
221- Cut overlong make line, loosened changelog a bit
222- I think Junio (or perhaps OSDL?) should be vendor...
223
224* Thu Jul 14 2005 Eric Biederman <ebiederm@xmission.com>
225- Add the man pages, and the --without docs build option
226
227* Wed Jul 7 2005 Chris Wright <chris@osdl.org>
228- initial git spec file