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