blob: 91c8462b7dae171247c40db7f7b5b36d2c0633a1 [file] [log] [blame]
Chris Wright0867b012005-11-11 01:10:29 -08001# Pass --without docs to rpmbuild if you don't want the documentation
Eygene Ryabinkinfaced1a2007-03-29 14:07:47 +04002
Junio C Hamano27dedf02005-11-16 21:32:44 -08003Name: git
Chris Wrighta9db2972005-07-07 13:09:50 -07004Version: @@VERSION@@
Chris Wright0e604712005-09-16 13:38:49 -07005Release: 1%{?dist}
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -05006Summary: Core git tools
Chris Wrighta9db2972005-07-07 13:09:50 -07007License: GPL
8Group: Development/Tools
9URL: http://kernel.org/pub/software/scm/git/
10Source: http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.gz
James Bowese94a45d2008-02-04 08:13:07 -050011BuildRequires: zlib-devel >= 1.2, openssl-devel, curl-devel, expat-devel, gettext %{!?_without_docs:, xmlto, asciidoc > 6.0.3}
Chris Wright0e604712005-09-16 13:38:49 -070012BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
James Bowes42616332008-01-06 12:35:02 -050013
James Bowes42616332008-01-06 12:35:02 -050014Requires: perl-Git = %{version}-%{release}
Junio C Hamano4744d722008-06-15 13:47:14 -070015Requires: zlib >= 1.2, rsync, less, openssh-clients, expat
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050016Provides: git-core = %{version}-%{release}
17Obsoletes: git-core <= 1.5.4.2
18Obsoletes: git-p4
Chris Wrighta9db2972005-07-07 13:09:50 -070019
20%description
Nicolas Pitree19b91b2007-02-13 11:39:01 -050021Git is a fast, scalable, distributed revision control system with an
22unusually rich command set that provides both high-level operations
23and full access to internals.
Chris Wrighta9db2972005-07-07 13:09:50 -070024
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050025The git rpm installs the core tools with minimal dependencies. To
26install all git packages, including tools for integrating with other
27SCMs, install the git-all meta-package.
Junio C Hamano27dedf02005-11-16 21:32:44 -080028
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050029%package all
30Summary: Meta-package to pull in all git tools
Junio C Hamano27dedf02005-11-16 21:32:44 -080031Group: Development/Tools
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050032Requires: git = %{version}-%{release}
33Requires: git-svn = %{version}-%{release}
34Requires: git-cvs = %{version}-%{release}
35Requires: git-arch = %{version}-%{release}
36Requires: git-email = %{version}-%{release}
37Requires: gitk = %{version}-%{release}
Junio C Hamano88202b92010-06-30 15:49:07 -070038Requires: gitweb = %{version}-%{release}
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050039Requires: git-gui = %{version}-%{release}
40Obsoletes: git <= 1.5.4.2
41
42%description all
Nicolas Pitree19b91b2007-02-13 11:39:01 -050043Git is a fast, scalable, distributed revision control system with an
44unusually rich command set that provides both high-level operations
45and full access to internals.
Junio C Hamano27dedf02005-11-16 21:32:44 -080046
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050047This is a dummy package which brings in all subpackages.
Junio C Hamano27dedf02005-11-16 21:32:44 -080048
Jim Radford7d4de592005-11-05 11:38:02 -080049%package svn
Chris Wright0867b012005-11-11 01:10:29 -080050Summary: Git tools for importing Subversion repositories
Jim Radford7d4de592005-11-05 11:38:02 -080051Group: Development/Tools
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050052Requires: git = %{version}-%{release}, subversion
Jim Radford7d4de592005-11-05 11:38:02 -080053%description svn
54Git tools for importing Subversion repositories.
55
56%package cvs
Chris Wright0867b012005-11-11 01:10:29 -080057Summary: Git tools for importing CVS repositories
Jim Radford7d4de592005-11-05 11:38:02 -080058Group: Development/Tools
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050059Requires: git = %{version}-%{release}, cvs, cvsps
Jim Radford7d4de592005-11-05 11:38:02 -080060%description cvs
61Git tools for importing CVS repositories.
62
Chris Wright0867b012005-11-11 01:10:29 -080063%package arch
64Summary: Git tools for importing Arch repositories
Jim Radford7d4de592005-11-05 11:38:02 -080065Group: Development/Tools
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050066Requires: git = %{version}-%{release}, tla
Chris Wright0867b012005-11-11 01:10:29 -080067%description arch
68Git tools for importing Arch repositories.
69
70%package email
71Summary: Git tools for sending email
72Group: Development/Tools
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050073Requires: git = %{version}-%{release}
Jim Radford7d4de592005-11-05 11:38:02 -080074%description email
75Git tools for sending email.
76
Junio C Hamano92360532007-02-12 16:28:15 -080077%package gui
78Summary: Git GUI tool
79Group: Development/Tools
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050080Requires: git = %{version}-%{release}, tk >= 8.4
Junio C Hamano92360532007-02-12 16:28:15 -080081%description gui
82Git GUI tool
83
Junio C Hamano27dedf02005-11-16 21:32:44 -080084%package -n gitk
Thomas Matysikba1dbb62005-11-13 17:58:02 +130085Summary: Git revision tree visualiser ('gitk')
86Group: Development/Tools
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -050087Requires: git = %{version}-%{release}, tk >= 8.4
Junio C Hamano27dedf02005-11-16 21:32:44 -080088%description -n gitk
Thomas Matysikba1dbb62005-11-13 17:58:02 +130089Git revision tree visualiser ('gitk')
90
Junio C Hamano88202b92010-06-30 15:49:07 -070091%package -n gitweb
92Summary: Git web interface
93Group: Development/Tools
94Requires: git = %{version}-%{release}
95%description -n gitweb
96Browsing git repository on the web
97
Pavel Roskinb9795602006-06-30 01:09:28 -040098%package -n perl-Git
99Summary: Perl interface to Git
100Group: Development/Libraries
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -0500101Requires: git = %{version}-%{release}
Pavel Roskinb9795602006-06-30 01:09:28 -0400102Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
103BuildRequires: perl(Error)
104
105%description -n perl-Git
106Perl interface to Git
107
David J. Mellorab2fdb32009-02-04 20:14:29 -0800108%define path_settings ETC_GITCONFIG=/etc/gitconfig prefix=%{_prefix} mandir=%{_mandir} htmldir=%{_docdir}/%{name}-%{version}
Junio C Hamano9f7a3c12010-01-31 11:11:16 -0800109%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
Junio C Hamano39bf13f2007-12-12 14:00:24 -0800110
Chris Wrighta9db2972005-07-07 13:09:50 -0700111%prep
112%setup -q
113
114%build
Sean21ad5442007-07-15 15:51:01 -0400115make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" \
Junio C Hamano39bf13f2007-12-12 14:00:24 -0800116 %{path_settings} \
117 all %{!?_without_docs: doc}
Chris Wrighta9db2972005-07-07 13:09:50 -0700118
119%install
120rm -rf $RPM_BUILD_ROOT
Horst H. von Brand0b2958a2007-02-06 16:08:55 -0300121make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" DESTDIR=$RPM_BUILD_ROOT \
Junio C Hamano39bf13f2007-12-12 14:00:24 -0800122 %{path_settings} \
Brian Gernhardt52509292007-03-27 12:03:43 -0400123 INSTALLDIRS=vendor install %{!?_without_docs: install-doc}
Junio C Hamanoa9c7c432010-01-30 09:45:11 -0800124test ! -d $RPM_BUILD_ROOT%{python_sitelib} || rm -fr $RPM_BUILD_ROOT%{python_sitelib}
Pavel Roskinb9795602006-06-30 01:09:28 -0400125find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';'
126find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm -f {} ';'
127find $RPM_BUILD_ROOT -type f -name perllocal.pod -exec rm -f {} ';'
Chris Wrighta9db2972005-07-07 13:09:50 -0700128
Sean21ad5442007-07-15 15:51:01 -0400129(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
Nguyễn Thái Ngọc Duyf28ac702007-11-28 23:21:57 +0700130(find $RPM_BUILD_ROOT%{_libexecdir}/git-core -type f | grep -vE "archimport|svn|cvs|email|gitk|git-gui|git-citool" | sed -e s@^$RPM_BUILD_ROOT@@) >> bin-man-doc-files
Junio C Hamano0503f9c2006-10-11 07:57:17 +0000131(find $RPM_BUILD_ROOT%{perl_vendorlib} -type f | sed -e s@^$RPM_BUILD_ROOT@@) >> perl-files
Jim Radford7d4de592005-11-05 11:38:02 -0800132%if %{!?_without_docs:1}0
Sean21ad5442007-07-15 15:51:01 -0400133(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
Pavel Roskin1434dbc2006-06-30 01:09:26 -0400134%else
135rm -rf $RPM_BUILD_ROOT%{_mandir}
Jim Radford7d4de592005-11-05 11:38:02 -0800136%endif
137
Ian Ward Comfort3bfdf872010-03-26 01:39:57 -0700138mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
139install -m 644 -T contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/git
140
Chris Wrighta9db2972005-07-07 13:09:50 -0700141%clean
142rm -rf $RPM_BUILD_ROOT
143
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -0500144%files -f bin-man-doc-files
145%defattr(-,root,root)
146%{_datadir}/git-core/
147%doc README COPYING Documentation/*.txt
148%{!?_without_docs: %doc Documentation/*.html Documentation/howto}
149%{!?_without_docs: %doc Documentation/technical}
Ian Ward Comfort3bfdf872010-03-26 01:39:57 -0700150%{_sysconfdir}/bash_completion.d
Junio C Hamano27dedf02005-11-16 21:32:44 -0800151
Jim Radford7d4de592005-11-05 11:38:02 -0800152%files svn
Chris Wright0867b012005-11-11 01:10:29 -0800153%defattr(-,root,root)
Nguyễn Thái Ngọc Duyf28ac702007-11-28 23:21:57 +0700154%{_libexecdir}/git-core/*svn*
Chris Wright0867b012005-11-11 01:10:29 -0800155%doc Documentation/*svn*.txt
Jim Radford7d4de592005-11-05 11:38:02 -0800156%{!?_without_docs: %{_mandir}/man1/*svn*.1*}
Chris Wright0867b012005-11-11 01:10:29 -0800157%{!?_without_docs: %doc Documentation/*svn*.html }
Jim Radford7d4de592005-11-05 11:38:02 -0800158
159%files cvs
Chris Wright0867b012005-11-11 01:10:29 -0800160%defattr(-,root,root)
161%doc Documentation/*git-cvs*.txt
Quy Tonthatf1f15fb2008-09-13 02:22:44 +1000162%{_bindir}/git-cvsserver
Nguyễn Thái Ngọc Duyf28ac702007-11-28 23:21:57 +0700163%{_libexecdir}/git-core/*cvs*
Jim Radford7d4de592005-11-05 11:38:02 -0800164%{!?_without_docs: %{_mandir}/man1/*cvs*.1*}
Chris Wright0867b012005-11-11 01:10:29 -0800165%{!?_without_docs: %doc Documentation/*git-cvs*.html }
166
167%files arch
168%defattr(-,root,root)
Junio C Hamanoa4e3bdd2006-10-24 23:55:46 -0700169%doc Documentation/git-archimport.txt
Nguyễn Thái Ngọc Duyf28ac702007-11-28 23:21:57 +0700170%{_libexecdir}/git-core/git-archimport
Junio C Hamanoa4e3bdd2006-10-24 23:55:46 -0700171%{!?_without_docs: %{_mandir}/man1/git-archimport.1*}
172%{!?_without_docs: %doc Documentation/git-archimport.html }
Jim Radford7d4de592005-11-05 11:38:02 -0800173
174%files email
Chris Wright0867b012005-11-11 01:10:29 -0800175%defattr(-,root,root)
176%doc Documentation/*email*.txt
Nguyễn Thái Ngọc Duyf28ac702007-11-28 23:21:57 +0700177%{_libexecdir}/git-core/*email*
Jim Radford7d4de592005-11-05 11:38:02 -0800178%{!?_without_docs: %{_mandir}/man1/*email*.1*}
Chris Wright0867b012005-11-11 01:10:29 -0800179%{!?_without_docs: %doc Documentation/*email*.html }
Jim Radford7d4de592005-11-05 11:38:02 -0800180
Junio C Hamano92360532007-02-12 16:28:15 -0800181%files gui
182%defattr(-,root,root)
Nguyễn Thái Ngọc Duyf28ac702007-11-28 23:21:57 +0700183%{_libexecdir}/git-core/git-gui
184%{_libexecdir}/git-core/git-citool
Junio C Hamanoaaab7ea2008-12-01 00:53:54 -0800185%{_libexecdir}/git-core/git-gui--askpass
Quy Tonthat7b6e0eb2007-05-10 17:03:15 +1000186%{_datadir}/git-gui/
Quy Tonthat4fb8c802007-06-27 01:39:07 +1000187%{!?_without_docs: %{_mandir}/man1/git-gui.1*}
Shawn O. Pearce37cd4f72007-06-21 00:51:00 -0400188%{!?_without_docs: %doc Documentation/git-gui.html}
Quy Tonthat4fb8c802007-06-27 01:39:07 +1000189%{!?_without_docs: %{_mandir}/man1/git-citool.1*}
Shawn O. Pearce37cd4f72007-06-21 00:51:00 -0400190%{!?_without_docs: %doc Documentation/git-citool.html}
Junio C Hamano92360532007-02-12 16:28:15 -0800191
Junio C Hamano27dedf02005-11-16 21:32:44 -0800192%files -n gitk
Thomas Matysikba1dbb62005-11-13 17:58:02 +1300193%defattr(-,root,root)
194%doc Documentation/*gitk*.txt
195%{_bindir}/*gitk*
Junio C Hamanoa5d7e3a2008-01-11 21:40:15 -0800196%{_datadir}/gitk/
Thomas Matysikba1dbb62005-11-13 17:58:02 +1300197%{!?_without_docs: %{_mandir}/man1/*gitk*.1*}
198%{!?_without_docs: %doc Documentation/*gitk*.html }
199
Junio C Hamano88202b92010-06-30 15:49:07 -0700200%files -n gitweb
201%defattr(-,root,root)
202%{_datadir}/gitweb
203
Pavel Roskinb9795602006-06-30 01:09:28 -0400204%files -n perl-Git -f perl-files
205%defattr(-,root,root)
206
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -0500207%files all
208# No files for you!
Chris Wrighta9db2972005-07-07 13:09:50 -0700209
210%changelog
Junio C Hamano88202b92010-06-30 15:49:07 -0700211* Wed Jun 30 2010 Junio C Hamano <gitster@pobox.com>
212- Add 'gitweb' subpackage.
213
Ian Ward Comfort3bfdf872010-03-26 01:39:57 -0700214* Fri Mar 26 2010 Ian Ward Comfort <icomfort@stanford.edu>
215- Ship bash completion support from contrib/ in the core package.
216
Junio C Hamano9f7a3c12010-01-31 11:11:16 -0800217* Sun Jan 31 2010 Junio C Hamano <gitster@pobox.com>
218- Do not use %define inside %{!?...} construct.
219
Junio C Hamanoa9c7c432010-01-30 09:45:11 -0800220* Sat Jan 30 2010 Junio C Hamano <gitster@pobox.com>
221- We don't ship Python bits until a real foreign scm interface comes.
222
David J. Mellorab2fdb32009-02-04 20:14:29 -0800223* Mon Feb 04 2009 David J. Mellor <dmellor@whistlingcat.com>
224- fixed broken git help -w after renaming the git-core package to git.
225
Quy Tonthatf1f15fb2008-09-13 02:22:44 +1000226* Fri Sep 12 2008 Quy Tonthat <qtonthat@gmail.com>
227- move git-cvsserver to bindir.
228
Junio C Hamano4744d722008-06-15 13:47:14 -0700229* Sun Jun 15 2008 Junio C Hamano <gitster@pobox.com>
230- Remove curl from Requires list.
231
Kristian Høgsberg7c33d3a2008-02-18 18:11:21 -0500232* Fri Feb 15 2008 Kristian Høgsberg <krh@redhat.com>
233- Rename git-core to just git and rename meta package from git to git-all.
234
James Bowese94a45d2008-02-04 08:13:07 -0500235* Sun Feb 03 2008 James Bowes <jbowes@dangerouslyinc.com>
236- Add a BuildRequires for gettext
237
Junio C Hamanoa5d7e3a2008-01-11 21:40:15 -0800238* Fri Jan 11 2008 Junio C Hamano <gitster@pobox.com>
239- Include gitk message files
240
James Bowes42616332008-01-06 12:35:02 -0500241* Sun Jan 06 2008 James Bowes <jbowes@dangerouslyinc.com>
242- Make the metapackage require the same version of the subpackages.
243
Junio C Hamano39bf13f2007-12-12 14:00:24 -0800244* Wed Dec 12 2007 Junio C Hamano <gitster@pobox.com>
245- Adjust htmldir to point at /usr/share/doc/git-core-$version/
246
Sean21ad5442007-07-15 15:51:01 -0400247* Sun Jul 15 2007 Sean Estabrooks <seanlkml@sympatico.ca>
248- Removed p4import.
249
Quy Tonthat4fb8c802007-06-27 01:39:07 +1000250* Tue Jun 26 2007 Quy Tonthat <qtonthat@gmail.com>
251- Fixed problems looking for wrong manpages.
252
Shawn O. Pearce37cd4f72007-06-21 00:51:00 -0400253* Thu Jun 21 2007 Shawn O. Pearce <spearce@spearce.org>
254- Added documentation files for git-gui
255
Quy Tonthatb24dd512007-05-13 21:41:45 +1000256* Tue May 13 2007 Quy Tonthat <qtonthat@gmail.com>
257- Added lib files for git-gui
258- Added Documentation/technical (As needed by Git Users Manual)
259
Quy Tonthat22f09582007-05-09 00:19:41 +1000260* Tue May 8 2007 Quy Tonthat <qtonthat@gmail.com>
261- Added howto files
262
Eygene Ryabinkin7a585c02007-03-27 15:25:15 +0400263* Tue Mar 27 2007 Eygene Ryabinkin <rea-git@codelabs.ru>
264- Added the git-p4 package: Perforce import stuff.
265
Nicolas Pitre03aa8ff2009-09-14 02:41:16 -0400266* Mon Feb 13 2007 Nicolas Pitre <nico@fluxnic.net>
Nicolas Pitree19b91b2007-02-13 11:39:01 -0500267- Update core package description (Git isn't as stupid as it used to be)
268
Junio C Hamano92360532007-02-12 16:28:15 -0800269* Mon Feb 12 2007 Junio C Hamano <junkio@cox.net>
270- Add git-gui and git-citool.
271
Junio C Hamano27dedf02005-11-16 21:32:44 -0800272* Mon Nov 14 2005 H. Peter Anvin <hpa@zytor.com> 0.99.9j-1
273- Change subpackage names to git-<name> instead of git-core-<name>
274- Create empty root package which brings in all subpackages
275- Rename git-tk -> gitk
276
Chris Wright0867b012005-11-11 01:10:29 -0800277* Thu Nov 10 2005 Chris Wright <chrisw@osdl.org> 0.99.9g-1
278- zlib dependency fix
279- Minor cleanups from split
280- Move arch import to separate package as well
281
Jim Radford7d4de592005-11-05 11:38:02 -0800282* Tue Sep 27 2005 Jim Radford <radford@blackbean.org>
283- Move programs with non-standard dependencies (svn, cvs, email)
284 into separate packages
285
H. Peter Anvin8fc7ba82005-09-27 09:01:08 -0700286* Tue Sep 27 2005 H. Peter Anvin <hpa@zytor.com>
287- parallelize build
H. Peter Anvine8f71fc2005-09-27 09:02:24 -0700288- COPTS -> CFLAGS
H. Peter Anvin8fc7ba82005-09-27 09:01:08 -0700289
Chris Wright0e604712005-09-16 13:38:49 -0700290* Fri Sep 16 2005 Chris Wright <chrisw@osdl.org> 0.99.6-1
291- update to 0.99.6
292
Horst von Brandc6ae6152005-09-16 00:08:24 -0400293* Fri Sep 16 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
294- Linus noticed that less is required, added to the dependencies
295
Horst von Brand663a5ed2005-09-11 20:00:49 -0400296* Sun Sep 11 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
297- Updated dependencies
298- Don't assume manpages are gzipped
299
Chris Wright0e604712005-09-16 13:38:49 -0700300* Thu Aug 18 2005 Chris Wright <chrisw@osdl.org> 0.99.4-4
301- drop sh_utils, sh-utils, diffutils, mktemp, and openssl Requires
302- use RPM_OPT_FLAGS in spec file, drop patch0
303
304* Wed Aug 17 2005 Tom "spot" Callaway <tcallawa@redhat.com> 0.99.4-3
305- use dist tag to differentiate between branches
306- use rpm optflags by default (patch0)
307- own %{_datadir}/git-core/
308
309* Mon Aug 15 2005 Chris Wright <chrisw@osdl.org>
310- update spec file to fix Buildroot, Requires, and drop Vendor
311
Horst von Brand24db8452005-08-07 23:18:19 -0400312* Sun Aug 07 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
313- Redid the description
314- Cut overlong make line, loosened changelog a bit
315- I think Junio (or perhaps OSDL?) should be vendor...
316
Eric W. Biederman49ce3d02005-07-14 19:24:23 -0600317* Thu Jul 14 2005 Eric Biederman <ebiederm@xmission.com>
318- Add the man pages, and the --without docs build option
Horst von Brand24db8452005-08-07 23:18:19 -0400319
Chris Wrighta9db2972005-07-07 13:09:50 -0700320* Wed Jul 7 2005 Chris Wright <chris@osdl.org>
321- initial git spec file