File bzrtools.spec of Package bzrtools

#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

%{!?python_sitelib: %define python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%{!?python_sitearch: %define python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}

# Oh the horrors of arch dependent noarch packages!
# (bzrlib is arch dependent.  Thus bzrlib plugins are also arch dependent.)
%define debug_package %{nil}

%define bzrver 2.6
%define bzrnextver 2.7

Name:           bzrtools
Version:        %{bzrver}.0
Release:        2
Summary:        A collection of utilities and plugins for Bazaar-NG

License:        GPL-2.0+
Url:            http://wiki.bazaar.canonical.com/BzrTools
Group:          Development/Tools
Source0:        https://launchpad.net/bzrtools/stable/%{version}/+download/%{name}-%{version}.tar.gz
Source1:        https://launchpad.net/bzrtools/stable/%{version}/+download/%{name}-%{version}.tar.gz.sig
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

BuildRequires:  python-devel
%if 0%{?suse_version}
BuildRequires:  build-mkbaselibs
%endif
# Bzrtools is meant to work with a version of bzr that is the same major
# version.  In addition to being incompatible with older bzr versions, it is
# also untested with bzrversion++ and may not work (depending on what has
# changed between releases.). But releases often lag behind slightly so
# we allow one revision difference, hoping that it will work..
Requires:       bzr <= %{bzrnextver}
Requires:       bzr >= %{bzrver}
Requires:       diff
Requires:       patch,

%description
BzrTools is a collection of plugins for Bazaar-NG (bzr).  Among the included
plugins are:
* rspush - uses rsync to push local changes to a remote server
* annotate - prints a file annotated with the revision next to each line
* baz-import - (Requres PyBaz) import an arch archive losslessly into bzr
* shelve/unshelve - allows you to undo some changes, commit, and restore
* clean-tree - remove unknown, ignored-junk, or unversioned files from the tree
* graph-ancestry - use dot to produce banch ancestry graphs
* shell - a bzr command interpreter with command completion
* patch - apply a patch to your tree from a file or URL

%prep
%setup -q -n %{name}


%build
CFLAGS="%{optflags}" python setup.py build


%install
python setup.py install --skip-build --root %{buildroot}
if test "%{python_sitelib}" != "%{python_sitearch}" ; then
    install -d %{buildroot}/%{python_sitearch}
    mv %{buildroot}/%{python_sitelib}/* %{buildroot}/%{python_sitearch}/
fi

# remove shebangs from all files as none should be executable scripts
sed -e '/^#!\//,1 d' -i %{buildroot}/%{python_sitearch}/bzrlib/plugins/bzrtools/*.py

%clean
rm -rf %{buildroot}


%files
%defattr(-,root,root,-)
%doc README NEWS COPYING
%{python_sitearch}/bzrlib/plugins/bzrtools
%dir %{python_sitearch}/bzrlib/
%dir %{python_sitearch}/bzrlib/plugins/
%{python_sitearch}/*.egg-info

%changelog
openSUSE Build Service is sponsored by