Blob Blame History Raw
# It's not strictly necessary to conditionalize this but it's a reminder of
# when it can go away
%if 0%{?rhel} && 0%{?rhel} < 6
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
%endif

# All package versioning is found here:
# the actual version is composed from these below, including leading 0 for release candidates
#   bzrmajor:  main bzr version
#   Version: bzr version, add subrelease version here
#   bzrrc: release candidate version, if any, line starts with % for rc, # for stable releas (no %).
#   release: rpm subrelease (0.N for rc candidates, N for stable releases)
%global bzrmajor 2.5
%global bzrminor .1
#global bzrrc b6
%global release 14

Name:           bzr
Version:        %{bzrmajor}%{?bzrminor}
Release:        %{release}%{?bzrrc:.}%{?bzrrc}%{?dist}
Summary:        Friendly distributed version control system

Group:          Development/Tools
License:        GPLv2+
URL:            http://www.bazaar-vcs.org/
Source0:        https://launchpad.net/%{name}/%{bzrmajor}/%{version}%{?bzrrc}/+download/%{name}-%{version}%{?bzrrc}.tar.gz
Source1:        https://launchpad.net/%{name}/%{bzrmajor}/%{version}%{?bzrrc}/+download/%{name}-%{version}%{?bzrrc}.tar.gz.sig
Source2:        bzr-icon-64.png
# Fixed upstream here: https://bugs.launchpad.net/bzr/+bug/1182124
Patch0:         bzr-cve2013-2099.patch
# Fix for gpg signing when no gpg agent is present:
# https://bugs.launchpad.net/ubuntu/+source/bzr/+bug/1014570
Patch1: bzr-gpg-no-agent-error.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:  python2-devel zlib-devel
# For building documents
BuildRequires:  python-sphinx
BuildRequires:  gettext
BuildRequires: Cython
%if 0%{?fedora} || (0%{?rhel} && 0%{?rhel} <= 6)
Requires:   python-paramiko
%endif
# Workaround Bug #230223 otherwise this would be a soft dependency
Requires:   python-pycurl
# ElementTree is part of python2.5 so only needed for EL-5
%if 0%{?rhel} && 0%{?rhel} <= 5
BuildRequires:   python-elementtree
Requires:   python-elementtree
%endif

%description
Bazaar is a distributed revision control system that is powerful, friendly,
and scalable.  It is the successor of Baz-1.x which, in turn, was
a user-friendly reimplementation of GNU Arch.

%package doc
Summary:        Documentation for Bazaar
Group:          Documentation
%if 0%{?fedora} > 9
BuildArch:      noarch
%endif
Requires:       %{name} = %{version}-%{release}

%description doc
This package contains the documentation for the Bazaar version control system.

%prep
%setup -q -n %{name}-%{version}%{?bzrrc}
%patch0 -p1
%patch1 -p1


sed -i '1{/#![[:space:]]*\/usr\/bin\/\(python\|env\)/d}' bzrlib/_patiencediff_py.py
sed -i '1{/#![[:space:]]*\/usr\/bin\/\(python\|env\)/d}' bzrlib/weave.py

# Remove Cython generated .c files
find . -name '*_pyx.c' -exec rm \{\} \;

%build
# RHEL and Fedora < 19 have a distutils bug that doesn't add this
# automatically: https://bugzilla.redhat.com/show_bug.cgi?id=849994
%if (0%{?fedora} && 0%{?fedora} < 19) || (0%{?rhel} && 0%{?rhel} < 8)
export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
%endif
CFLAGS="$RPM_OPT_FLAGS" %{__python} setup.py build

chmod a-x contrib/bash/bzrbashprompt.sh

# Build documents
make docs-sphinx

%install
rm -rf $RPM_BUILD_ROOT
%{__python} setup.py install --skip-build --install-data %{_datadir} --root $RPM_BUILD_ROOT
chmod -R a+rX contrib
chmod 0644 contrib/debian/init.d
chmod 0644 contrib/bzr_ssh_path_limiter
chmod 0644 contrib/bzr_access
chmod 0755 $RPM_BUILD_ROOT%{python_sitearch}/bzrlib/*.so

install -d $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/
install -m 0644 contrib/bash/bzr $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/
rm contrib/bash/bzr

# This is included in %doc, remove redundancy here
#rm -rf $RPM_BUILD_ROOT%{python_sitearch}/bzrlib/doc/

# Use independently packaged python-elementtree instead
rm -rf $RPM_BUILD_ROOT%{python_sitearch}/bzrlib/util/elementtree/

# Install documents
install -d $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-doc-%{version}/
install -d $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-doc-%{version}/pdf
cd doc
for dir in *; do
    if [ -d $dir/_build/html ]; then
        cp -R $dir/_build/html $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-doc-%{version}/$dir
        rm -f $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-doc-%{version}/$dir/.buildinfo 
        rm -f $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-doc-%{version}/$dir/_static/$dir/Makefile
        find $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-doc-%{version}/$dir -name '*.pdf' | while read pdf; do
            ln $pdf $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-doc-%{version}/pdf/
        done
    fi
done
cd ..

install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -m 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/pixmaps/bzr.png

%find_lang bzr

%clean
rm -rf $RPM_BUILD_ROOT


%files -f bzr.lang
%defattr(-,root,root,-)
%doc NEWS README TODO COPYING.txt contrib/
%{_bindir}/bzr
%{_mandir}/man1/*
%{python_sitearch}/bzrlib/
%{_sysconfdir}/bash_completion.d/
%{_datadir}/pixmaps/bzr.png
%if 0%{?fedora} || 0%{?rhel} > 5
%{python_sitearch}/*.egg-info
%endif

%files doc
%defattr(-,root,root,-)
%doc %{_defaultdocdir}/%{name}-doc-%{version}/*

%changelog
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 2.5.1-14
- Mass rebuild 2014-01-24

* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 2.5.1-13
- Mass rebuild 2013-12-27

* Tue May 28 2013 Toshio Kuratomi <toshio@fedoraproject.org> - 2.5.1-12
- Patch for failure to gpg sign commits with no gpg-agent 
  https://bugzilla.redhat.com/show_bug.cgi?id=905087

* Tue May 28 2013 Toshio Kuratomi <toshio@fedoraproject.org> - 2.5.1-11
- BuildRequires Cython so that the C extensions are built from their original sources.

* Tue May 28 2013 Ondrej Oprala <ooprala@redhat.com - 2.5.1-10
- Conditionally add -fno-strict-aliasing to CFLAGS

* Tue May 28 2013 Ondrej Oprala <ooprala@redhat.com - 2.5.1-9
- Add gettext to BuildRequires

* Mon May 27 2013 Ondrej Oprala <ooprala@redhat.com> - 2.5.1-8
- Fix conditional include of python-paramiko

* Fri May 24 2013 Ondrej Oprala <ooprala@redhat.com> - 2.5.1-7
- Turn off strict aliasing in CFLAGS

* Fri May 24 2013 Ondrej Oprala <ooprala@redhat.com> - 2.5.1-6
- Add condition not to include python-paramiko in RHEL7 and above

* Fri May 24 2013 Ondrej Oprala <ooprala@redhat.com> - 2.5.1-5
- Fix unpackaged files error

* Thu May 23 2013 Toshio Kuratomi <toshio@fedoraproject.org> - 2.5.1-4
- Patch for CVE-2013-2099
- Trim changelog

* Thu Apr 25 2013 Ondrej Oprala <ooprala@redhat.com - 2.5.1-6
- Turn off strict aliasing in CFLAGS

* Thu Apr 25 2013 Ondrej Oprala <ooprala@redhat.com - 2.5.1-5
- Add condition not to include python-paramiko in RHEL7 and above

* Thu Apr 25 2013 Ondrej Oprala <ooprala@redhat.com - 2.5.1-4
- Fix unpackaged files error

* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Wed May 30 2012 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.5.1-1
- Upstream 2.5.1 bugfix release

* Fri Feb 24 2012 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.5.0-1
- Upstream 2.5.0 stable release

* Thu Feb 23 2012 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.5-0.3.b5
- Upstream 2.5b6 release

* Sun Feb  5 2012 Michel Salim <salimma@fedoraproject.org> - 2.5-0.2.b5
- Fix problem in generating documentation

* Tue Jan 17 2012 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.5-0.1.b5
- 2.5b5 final beta release of bzr 2.5

* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Thu Nov 03 2011 Henrik Nordstrom <henrik@henriknordstorm.net> - 2.4.2-1
- Upstream 2.4.2 bugfix release

* Fri Sep 09 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.4.1-1
- Upstream 2.4.1 bugfix release

* Fri Aug 12 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.4.0-1
- Upstream 2.4.0 release

* Sun Jul 31 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.4-0.5.b5
- Rebuilt for dependency changes

* Tue Jul 12 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.4-0.4.b5
- Upstream 2.4b5 release

* Tue May 31 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.4-0.3.b3
- Upstream 2.4b3 release

* Thu Apr 28 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.4-0.2.b2
- Upstream 2.4b2 release

* Sun Mar 20 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.4-0.1.b1
- Upstream 2.4b1 release

* Sun Mar 20 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.3.1-1
- Upstream 2.3.1 bugfix release

* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Fri Feb 04 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.3.0-1
- Upstream 2.3.0 stable release

* Wed Jan 26 2011 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.3-0.4.b5
- Upstream 2.3b5 release

* Thu Dec 02 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.3-0.3.b4
- Upstream 2.3b4 release

* Sat Nov 06 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.3-0.2.b3
- Upstream 2.3b3 release

* Fri Oct 29 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.3-0.1.b2
- Upstream 2.3b2 release

* Wed Sep 29 2010 jkeating - 2.2.1-3
- Rebuilt for gcc bug 634757

* Sun Sep 21 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.2.1-2
- Backport bzr.dev rev 5439 change fixing lp: branch references
  (Toshio Kuratomi)

* Sun Sep 21 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.2.1-1
- Upstream 2.2.1 bugfix release

* Sat Aug 21 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.2.0-1
- Upstream 2.2.0 release

* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 2.2-0.10.b4
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild

* Fri Jul 16 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.2-0.9.b4
- Upstream 2.2b4 release

* Mon May 31 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.2-0.8.b3
- Upstream 2.2b3 release

* Mon May 31 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 2.2-0.6.b1
- Add an icon for bzr.  This lets the gtk and qbzr plugins share the same icon
  for things like associating an image with a file type.

* Tue Apr 13 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 2.2-0.5.b1
- Clean up rhel/fedora conditionals bz#537254

* Mon Apr 12 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 2.2-0.4.b1
- Clean up some rpmlint warnings

* Mon Apr 12 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 2.2-0.3.b1
- Fixes so this spec file will also build on EL-5
- define => global

* Thu Apr 01 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.2-0.1.b1
- Upstream 2.2b1 beta release

* Tue Mar 30 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.1.1-1
- Upstream 2.1.1 bugfix release

* Wed Mar 03 2010 Henrik Nordstrom <henrik@henriknordstrom.net> -  2.1.0-1
- Update to 2.1.0

* Sat Feb 06 2010 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.1.0-0.6.rc2
- Build HTML documentation and package in separate bzr-doc package
  (Bug #562392, Patch by Cheese Lee)

* Fri Feb 05 2010 Henrik Nordstrom <henrik@henriknordstrom.net> -  2.1.0-0.5.rc2
- Update to 2.1.0rc2

* Thu Dec 17 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.1.0-0.4.b4
- Update to 2.1.0b4

* Wed Oct 28 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.1.0-0.1.b1
- Highlights for this release include support for `bzr+ssh://host/~/homedir`
  style urls, finer control over the plugin search path via extended
  BZR_PLUGIN_PATH syntax, visible warnings when extension modules fail to
  load, and improved error handling during unlocking.

* Fri Sep 25 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.0.0-1
- Update to 2.0.0

* Thu Sep 10 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 2.0-0.1rc2
- Update to 2.0rc2 with new default repository format 2a

* Wed Aug 26 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.18-1
- Update to 1.18

* Thu Aug 20 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.18-0.1.rc1
- Update to 1.18rc1

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.17-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Mon Jul 20 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.17-1
- Update to 1.17

* Mon Jul 13 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.17-0.1.rc1
- Update to 1.17rc1

* Fri Jun 26 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.16.1-1
- Update to 1.16.1

* Thu Jun 18 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.16-1
- Update to 1.16

* Wed Jun 10 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.15.1-1
- Update to 1.15.1

* Sat May 23 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.15-2
- Update to 1.15final

* Sat May 16 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.15-0.1.rc1
- Update to 1.15rc1

* Sat May 02 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.14.1-1
- Update to 1.14.1

* Wed Apr 29 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.14-1
- Update to 1.14

* Mon Apr 20 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.14-0.3.rc2
- Update to 1.14rc2

* Sat Apr 11 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.14-0.2.rc1
- Correct build dependencies

* Thu Apr 09 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.14-0.1.rc1
- Update to 1.14rc1

* Tue Mar 24 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.13.1-1
- Update to 1.13.1

* Mon Mar 16 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.13-1
- Update to 1.13

* Tue Mar 10 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.13-0.1.rc1
- Update to 1.13rc1

* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Fri Feb 13 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.12-1
- Update to 1.12

* Tue Feb 10 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.12-0.1.rc1
- Update to 1.12rc1

* Mon Jan 19 2009 Henrik Nordstrom <henrik@henriknordstrom.net> - 1.11-1
- Update to 1.11

* Wed Dec 10 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.10-1
- Update to 1.10

* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 1.9-2
- Rebuild for Python 2.6

* Thu Nov 13 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.9-1
- Update to 1.9

* Thu Sep 25 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.7-1
- 1.7 Final

* Wed Sep 3 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.7-0.1.rc2
- 1.7rc2
- Remove executable permission from a %%doc file

* Wed Sep 3 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.6.1-0.1.rc2
- New upstream bugfix release.

* Thu May 21 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.5-2
- Upload tarball.

* Wed May 21 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.5-1
- Update to 1.5.

* Thu May 15 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.4-2
- Workaround upstream Bug# 230223 by Requiring python-pycurl.

* Mon May 5 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.4-1
- Update to 1.4.

* Sun Apr 27 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.3.1-1
- Paramiko/sftp backport from 1.4.0. bz#444325
- Update to 1.3.1 final.

* Sat Apr 4 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.3.1-0.1.rc1
- Update to 1.3.1rc1 to fix a bug when you have a pack based remote repo and
  knit based local branch.

* Wed Mar 26 2008 Warren Togami <wtogami@redhat.com> - 1.3-1
- Update to 1.3.

* Mon Feb 25 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.2-1
- Update to 1.2.

* Fri Feb 8 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 1.1-2
- Rebuild for new gcc.

* Mon Jan 21 2008 Toshio Kuratomi <a.badger@gmail.com> - 1.1-1
- Upstream 1.1 bugfix and performance enhancement release.
- Enable bash completion script from the contrib directory.

* Thu Dec 13 2007 Toshio Kuratomi <a.badger@gmail.com> - 1.0-1
- Update to 1.0 final.

* Tue Dec 11 2007 Toshio Kuratomi <a.badger@gmail.com> - 1.0-0.1.rc3
- Update to 1.0rc3
- The new rawhide python package generates egg-info files.

* Fri Nov 30 2007 Toshio Kuratomi <a.badger@gmail.com> - 1.0-0.1.rc2
- Update to 1.0rc2

* Tue Aug 28 2007 Toshio Kuratomi <a.badger@gmail.com> - 0.91-1
- Update to 0.91.
  + Fixes some issues with using tag-enabled branches.

* Tue Aug 28 2007 Toshio Kuratomi <a.badger@gmail.com> - 0.90-1
- Update to 0.90

* Mon Aug 27 2007 Toshio Kuratomi <a.badger@gmail.com> - 0.90-0.1.rc1
- Update to 0.90rc1.
- 0.90 contains some pyrex code to speed things up.  bzr is now arch specific.
- Update license tag.

* Wed Jul 25 2007 Warren Togami <wtogami@redhat.com> - 0.18-1
- Update to 0.18.

* Tue Jun 26 2007 Warren Togami <wtogami@redhat.com>  - 0.17-2
- Update to 0.17.

* Tue May 08 2007 Toshio Kuratomi <toshio@tiki-lounge.com> - 0.16-1
- Update to 0.16.

* Thu Mar 22 2007 Toshio Kuratomi <toshio@tiki-lounge.com> - 0.15-1
- Update to 0.15.
- Simplify the %%files list.

* Tue Jan 23 2007 Toshio Kuratomi <toshio@tiki-lounge.com> - 0.14-1
- Update to 0.14