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