#
# spec file for package python-python-gflags
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

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


%define oldpython python
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name:           python-python-gflags
Version:        3.1.1
Release:        29.9
Url:            http://code.google.com/p/python-gflags
Summary:        Google Commandline Flags Module
License:        BSD-3-Clause
Group:          Development/Languages/Python
Source:         https://files.pythonhosted.org/packages/source/p/python-gflags/python-gflags-%{version}.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  %{python_module devel}
BuildRequires:  %{python_module setuptools}
BuildRequires:  fdupes
BuildRequires:  python-rpm-macros
%ifpython2
Provides:       %{oldpython}-gflags = %{version}
Obsoletes:      %{oldpython}-gflags < %{version}
%endif
BuildArch:      noarch
Requires(post):   update-alternatives
Requires(preun):  update-alternatives
%python_subpackages

%description
This project is the python equivalent of google-gflags, a Google commandline
flag implementation for C++. It is intended to be used in situations where a
project wants to mimic the command-line flag handling of a C++ app that uses
google-gflags, or for a Python app that, via swig or some other means, is
linked with a C++ app that uses google-gflags.

The gflags package contains a library that implements commandline flags
processing. As such it's a replacement for getopt(). It has increased
flexibility, including built-in support for Python types, and the ability to
define flags in the source file in which they're used. (This last is its major
difference from OptParse.)

%prep
%setup -q -n python-gflags-%{version}

%build
%python_build

%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
mv %{buildroot}%{_bindir}/gflags2man.py %{buildroot}%{_bindir}/gflags2man
%python_clone -a %{buildroot}%{_bindir}/gflags2man

%post
%python_install_alternative gflags2man

%preun
%python_uninstall_alternative gflags2man

%files %{python_files}
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog COPYING README
%python_alternative %{_bindir}/gflags2man
%{python_sitelib}/*

%changelog
* Sat May  6 2017 toddrme2178@gmail.com
- Don't provide python2-gflags, singlespec packages should use
  correct name.
* Wed Apr 26 2017 alarrosa@suse.com
- Provide python-gflags in the python2 package
* Tue Apr 25 2017 toddrme2178@gmail.com
- Fix URL.
* Tue Apr 25 2017 toddrme2178@gmail.com
- Update to version 3.1.1
  * Added PEP8 style method/function aliases.
- Update to version 3.1.0
  * Python3 compatibility
  * Removed UnrecognizedFlag exception.
  * Replaced flags.DuplicateFlag with flags.DuplicateFlagError.
  * Moved the validators.Error class to exceptions.ValidationError.
  * Renamed IllegalFlagValue to IllegalFlagValueError.
  * Removed MutualExclusionValidator class, in favor of flags.MarkFlagsAsMutualExclusive.
  * Removed FlagValues.AddValidator method.
  * Removed _helpers.GetMainModule.
  * Use xml.dom.minidom to create XML strings, instead of manual crafting.
  * Declared PEP8-style names.
  * Added examples.
- Update to version 3.0.7
  * Removed the unused method ShortestUniquePrefixes.
  * Removed _GetCallingModule function alias.
- Update to version 3.0.6
  * Declared pypi package classifiers.
  * Added support for CLIF flag processing (not included in python-gflags repo
    yet).
- Update to version 3.0.5
  * Added a warning when FLAGS.SetDefault is used after flags were parsed.
  * Added new function: MarkFlagsAsRequired.
- Update to version 3.0.4
  * One more fix for setup.py - this time about third_party package.
- Update to version 3.0.3
  * Fixed setup.py.
  * --noflag if argument is given is no longer allowed.
  * Python3 compatibility: removed need for cgi import.
  * Disallowed unparsed flag usage after FLAGS.Reset()
- Update to version 3.0.2
  * Fix MANIFEST.in to include all relevant files.
- Update to version 3.0.1
  * Some changes for python3 compatibility.
  * Automatically generate ordering operations for Flag.
  * Add optional comma compatibility to whitespace-separated list flags.
  * A lot of potentially backwards incompatible changes since 2.0.
  * This version is NOT recommended to use in production. Some of the files and
    documentation has been lost during export; this will be fixed in next
    versions.
- Fix source URL
- Implement single-spec version
* Thu Feb 13 2014 rschweikert@suse.com
- include in SLE 12 (FATE #316167)
* Thu Oct 24 2013 speilicke@suse.com
- Require python-setuptools instead of distribute (upstreams merged)
* Fri Aug  9 2013 rschweikert@suse.com
- update to version 2.0
  * Don't raise DuplicateFlag when re-importing a module (mmcdonald)
  * Changed the 'official' python-gflags email in setup.py/etc
  * Changed copyright text to reflect Google's relinquished ownership
  * Prepare gflags for python 3.x, keeping 2.4 compatibility (twouters)
  * If output is a tty, use terminal's width to wrap help-text (wiesmann)
  * PORTING: Fix ImportError for non-Unix platforms (kdeus)
  * PORTING: Run correctly when termios isn't available (shines)
  * Add unicode support to flags (csilvers)
* Thu Dec  8 2011 idonmez@suse.com
- Update tarball to upstream version (no code changes)
* Tue Nov 29 2011 saschpe@suse.de
- Set license to SDPX style (BSD-3-Clause)
* Mon May 23 2011 prusnak@opensuse.org
- updated to 1.6
* Tue Oct 26 2010 silas@sewell.ch
- Fix non-executable-script error
* Wed Oct 13 2010 silas@sewell.ch
- Initial package