git.spec.inon commit Merge branch 'mh/retag' (ef4de83)
   1# Pass --without docs to rpmbuild if you don't want the documentation
   2
   3%define python_path /usr/bin/python
   4
   5Name:           git
   6Version:        @@VERSION@@
   7Release:        1%{?dist}
   8Summary:        Git core and tools
   9License:        GPL
  10Group:          Development/Tools
  11URL:            http://kernel.org/pub/software/scm/git/
  12Source:         http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.gz
  13BuildRequires:  zlib-devel >= 1.2, openssl-devel, curl-devel, expat-devel  %{!?_without_docs:, xmlto, asciidoc > 6.0.3}
  14BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
  15Requires:       git-core, git-svn, git-cvs, git-arch, git-email, gitk, git-gui, perl-Git
  16
  17%description
  18Git is a fast, scalable, distributed revision control system with an
  19unusually rich command set that provides both high-level operations
  20and full access to internals.
  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
  28Obsoletes:      git-p4
  29%description core
  30Git is a fast, scalable, distributed revision control system with an
  31unusually rich command set that provides both high-level operations
  32and full access to internals.
  33
  34These are the core tools with minimal dependencies.
  35
  36%package svn
  37Summary:        Git tools for importing Subversion repositories
  38Group:          Development/Tools
  39Requires:       git-core = %{version}-%{release}, subversion
  40%description svn
  41Git tools for importing Subversion repositories.
  42
  43%package cvs
  44Summary:        Git tools for importing CVS repositories
  45Group:          Development/Tools
  46Requires:       git-core = %{version}-%{release}, cvs, cvsps
  47%description cvs
  48Git tools for importing CVS repositories.
  49
  50%package arch
  51Summary:        Git tools for importing Arch repositories
  52Group:          Development/Tools
  53Requires:       git-core = %{version}-%{release}, tla
  54%description arch
  55Git tools for importing Arch repositories.
  56
  57%package email
  58Summary:        Git tools for sending email
  59Group:          Development/Tools
  60Requires:       git-core = %{version}-%{release}
  61%description email
  62Git tools for sending email.
  63
  64%package gui
  65Summary:        Git GUI tool
  66Group:          Development/Tools
  67Requires:       git-core = %{version}-%{release}, tk >= 8.4
  68%description gui
  69Git GUI tool
  70
  71%package -n gitk
  72Summary:        Git revision tree visualiser ('gitk')
  73Group:          Development/Tools
  74Requires:       git-core = %{version}-%{release}, tk >= 8.4
  75%description -n gitk
  76Git revision tree visualiser ('gitk')
  77
  78%package -n perl-Git
  79Summary:        Perl interface to Git
  80Group:          Development/Libraries
  81Requires:       git-core = %{version}-%{release}
  82Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
  83BuildRequires:  perl(Error)
  84
  85%description -n perl-Git
  86Perl interface to Git
  87
  88%prep
  89%setup -q
  90
  91%build
  92make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" \
  93     ETC_GITCONFIG=/etc/gitconfig \
  94     prefix=%{_prefix} all %{!?_without_docs: doc}
  95
  96%install
  97rm -rf $RPM_BUILD_ROOT
  98make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" DESTDIR=$RPM_BUILD_ROOT \
  99     prefix=%{_prefix} mandir=%{_mandir} \
 100     ETC_GITCONFIG=/etc/gitconfig \
 101     PYTHON_PATH=%{python_path} \
 102     INSTALLDIRS=vendor 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%{_datadir}/git-gui/
 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 Documentation/howto}
 174%{!?_without_docs: %doc Documentation/technical}
 175
 176%changelog
 177* Sun Jul 15 2007 Sean Estabrooks <seanlkml@sympatico.ca>
 178- Removed p4import.
 179
 180* Tue Jun 26 2007 Quy Tonthat <qtonthat@gmail.com>
 181- Fixed problems looking for wrong manpages.
 182
 183* Thu Jun 21 2007 Shawn O. Pearce <spearce@spearce.org>
 184- Added documentation files for git-gui
 185
 186* Tue May 13 2007 Quy Tonthat <qtonthat@gmail.com>
 187- Added lib files for git-gui
 188- Added Documentation/technical (As needed by Git Users Manual)
 189
 190* Tue May 8 2007 Quy Tonthat <qtonthat@gmail.com>
 191- Added howto files
 192
 193* Tue Mar 27 2007 Eygene Ryabinkin <rea-git@codelabs.ru>
 194- Added the git-p4 package: Perforce import stuff.
 195
 196* Mon Feb 13 2007 Nicolas Pitre <nico@cam.org>
 197- Update core package description (Git isn't as stupid as it used to be)
 198
 199* Mon Feb 12 2007 Junio C Hamano <junkio@cox.net>
 200- Add git-gui and git-citool.
 201
 202* Mon Nov 14 2005 H. Peter Anvin <hpa@zytor.com> 0.99.9j-1
 203- Change subpackage names to git-<name> instead of git-core-<name>
 204- Create empty root package which brings in all subpackages
 205- Rename git-tk -> gitk
 206
 207* Thu Nov 10 2005 Chris Wright <chrisw@osdl.org> 0.99.9g-1
 208- zlib dependency fix
 209- Minor cleanups from split
 210- Move arch import to separate package as well
 211
 212* Tue Sep 27 2005 Jim Radford <radford@blackbean.org>
 213- Move programs with non-standard dependencies (svn, cvs, email)
 214  into separate packages
 215
 216* Tue Sep 27 2005 H. Peter Anvin <hpa@zytor.com>
 217- parallelize build
 218- COPTS -> CFLAGS
 219
 220* Fri Sep 16 2005 Chris Wright <chrisw@osdl.org> 0.99.6-1
 221- update to 0.99.6
 222
 223* Fri Sep 16 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
 224- Linus noticed that less is required, added to the dependencies
 225
 226* Sun Sep 11 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
 227- Updated dependencies
 228- Don't assume manpages are gzipped
 229
 230* Thu Aug 18 2005 Chris Wright <chrisw@osdl.org> 0.99.4-4
 231- drop sh_utils, sh-utils, diffutils, mktemp, and openssl Requires
 232- use RPM_OPT_FLAGS in spec file, drop patch0
 233
 234* Wed Aug 17 2005 Tom "spot" Callaway <tcallawa@redhat.com> 0.99.4-3
 235- use dist tag to differentiate between branches
 236- use rpm optflags by default (patch0)
 237- own %{_datadir}/git-core/
 238
 239* Mon Aug 15 2005 Chris Wright <chrisw@osdl.org>
 240- update spec file to fix Buildroot, Requires, and drop Vendor
 241
 242* Sun Aug 07 2005 Horst H. von Brand <vonbrand@inf.utfsm.cl>
 243- Redid the description
 244- Cut overlong make line, loosened changelog a bit
 245- I think Junio (or perhaps OSDL?) should be vendor...
 246
 247* Thu Jul 14 2005 Eric Biederman <ebiederm@xmission.com>
 248- Add the man pages, and the --without docs build option
 249
 250* Wed Jul 7 2005 Chris Wright <chris@osdl.org>
 251- initial git spec file