9b1217ac3f2a39f352e0b4046ceac9d438e4ac95
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, rcs, curl, less, openssh-clients, python >= 2.3, 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} DESTDIR=$RPM_BUILD_ROOT WITH_OWN_SUBPROCESS_PY=YesPlease \
93 prefix=%{_prefix} mandir=%{_mandir} INSTALLDIRS=vendor \
94 install %{!?_without_docs: install-doc}
95find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';'
96find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm -f {} ';'
97find $RPM_BUILD_ROOT -type f -name perllocal.pod -exec rm -f {} ';'
98
99(find $RPM_BUILD_ROOT%{_bindir} -type f | grep -vE "arch|svn|cvs|email|gitk" | sed -e s@^$RPM_BUILD_ROOT@@) > bin-man-doc-files
100(find $RPM_BUILD_ROOT%{perl_vendorlib} -type f | sed -e s@^$RPM_BUILD_ROOT@@) >> perl-files
101%if %{!?_without_docs:1}0
102(find $RPM_BUILD_ROOT%{_mandir} $RPM_BUILD_ROOT/Documentation -type f | grep -vE "arch|svn|git-cvs|email|gitk" | sed -e s@^$RPM_BUILD_ROOT@@ -e 's/$/*/' ) >> bin-man-doc-files
103%else
104rm -rf $RPM_BUILD_ROOT%{_mandir}
105%endif
106
107%clean
108rm -rf $RPM_BUILD_ROOT
109
110%files
111# These are no files in the root package
112
113%files svn
114%defattr(-,root,root)
115%{_bindir}/*svn*
116%doc Documentation/*svn*.txt
117%{!?_without_docs: %{_mandir}/man1/*svn*.1*}
118%{!?_without_docs: %doc Documentation/*svn*.html }
119
120%files cvs
121%defattr(-,root,root)
122%doc Documentation/*git-cvs*.txt
123%{_bindir}/*cvs*
124%{!?_without_docs: %{_mandir}/man1/*cvs*.1*}
125%{!?_without_docs: %doc Documentation/*git-cvs*.html }
126
127%files arch
128%defattr(-,root,root)
129%doc Documentation/*arch*.txt
130%{_bindir}/*arch*
131%{!?_without_docs: %{_mandir}/man1/*arch*.1*}
132%{!?_without_docs: %doc Documentation/*arch*.html }
133
134%files email
135%defattr(-,root,root)
136%doc Documentation/*email*.txt
137%{_bindir}/*email*
138%{!?_without_docs: %{_mandir}/man1/*email*.1*}
139%{!?_without_docs: %doc Documentation/*email*.html }
140
141%files -n gitk
142%defattr(-,root,root)
143%doc Documentation/*gitk*.txt
144%{_bindir}/*gitk*
145%{!?_without_docs: %{_mandir}/man1/*gitk*.1*}
146%{!?_without_docs: %doc Documentation/*gitk*.html }
147
148%files -n perl-Git -f perl-files
149%defattr(-,root,root)
150
151%files core -f bin-man-doc-files
152%defattr(-,root,root)
153%{_datadir}/git-core/
154%doc README COPYING Documentation/*.txt
155%{!?_without_docs: %doc Documentation/*.html }
156
157%changelog
158* Mon Nov 14 2005 H. Peter Anvin <hpa@zytor.com> 0.99.9j-1
159- Change subpackage names to git-<name> instead of git-core-<name>
160- Create empty root package which brings in all subpackages
161- Rename git-tk -> gitk
162
163* Thu Nov 10 2005 Chris Wright <chrisw@osdl.org> 0.99.9g-1
164- zlib dependency fix
165- Minor cleanups from split
166- Move arch import to separate package as well
167
168* Tue Sep 27 2005 Jim Radford <radford@blackbean.org>
169- Move programs with non-standard dependencies (svn, cvs, email)
170 into separate packages
171
172* Tue Sep 27 2005 H. Peter Anvin <hpa@zytor.com>
173- parallelize build
174- COPTS -> CFLAGS
175
176* Fri Sep 16 2005 Chris Wright <chrisw@osdl.org> 0.99.6-1
177- update to 0.99.6
178
179* Fri Sep 16 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
180- Linus noticed that less is required, added to the dependencies
181
182* Sun Sep 11 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
183- Updated dependencies
184- Don't assume manpages are gzipped
185
186* Thu Aug 18 2005 Chris Wright <chrisw@osdl.org> 0.99.4-4
187- drop sh_utils, sh-utils, diffutils, mktemp, and openssl Requires
188- use RPM_OPT_FLAGS in spec file, drop patch0
189
190* Wed Aug 17 2005 Tom "spot" Callaway <tcallawa@redhat.com> 0.99.4-3
191- use dist tag to differentiate between branches
192- use rpm optflags by default (patch0)
193- own %{_datadir}/git-core/
194
195* Mon Aug 15 2005 Chris Wright <chrisw@osdl.org>
196- update spec file to fix Buildroot, Requires, and drop Vendor
197
198* Sun Aug 07 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
199- Redid the description
200- Cut overlong make line, loosened changelog a bit
201- I think Junio (or perhaps OSDL?) should be vendor...
202
203* Thu Jul 14 2005 Eric Biederman <ebiederm@xmission.com>
204- Add the man pages, and the --without docs build option
205
206* Wed Jul 7 2005 Chris Wright <chris@osdl.org>
207- initial git spec file