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