## START: Set by rpmautospec
## (rpmautospec version 0.6.3)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 1;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec

%global pypi_name glfw

Name:           python-%{pypi_name}
Version:        2.7.0
Release:        %{autorelease}
Summary:        A ctypes-based wrapper for GLFW3

%global forgeurl https://github.com/FlorianRhiem/pyGLFW
%forgemeta

License:        MIT
URL:            %forgeurl
Source:         %forgesource

BuildArch:      noarch
BuildRequires:  python3-devel
BuildRequires:  glfw

%global _description %{expand:
This module provides Python bindings for GLFW (on GitHub: glfw/glfw).
It is a ctypes wrapper which keeps very close to the original GLFW API,
except for:

- function names use the pythonic `words_with_underscores` notation
  instead of `camelCase`
- `GLFW_` and `glfw` prefixes have been removed, as their function is
  replaced by the module namespace (you can use `from glfw.GLFW import *`
  if you prefer the naming convention used by the GLFW C API)
- structs have been replaced with Python sequences and namedtuples
- functions like `glfwGetMonitors` return a list instead of a pointer
  and an object count
- Gamma ramps use floats between 0.0 and 1.0 instead of unsigned shorts
  (use `glfw.NORMALIZE_GAMMA_RAMPS=False` to disable this)
- GLFW errors are reported as glfw.GLFWError warnings if no error
  callback is set (use `glfw.ERROR_REPORTING=False` to disable this,
  set it to `warn` instead to issue warnings, set it to `log` to log it
  using the `glfw` logger or set it to a dict to define the behavior
  for specific error codes)
- instead of a sequence for `GLFWimage` structs, PIL/pillow `Image`
  objects can be used}

%description %_description


%package -n python3-%{pypi_name}
Summary:        %{summary}
Requires:       glfw

%description -n python3-%{pypi_name} %_description


%prep
%forgeautosetup -p1


%generate_buildrequires
%pyproject_buildrequires


%build
%pyproject_wheel


%install
%pyproject_install
%pyproject_save_files -l %{pypi_name}


%check
# Upstream does not provide tests
%pyproject_check_import


%files -n python3-%{pypi_name} -f %{pyproject_files}
%doc README.rst CHANGELOG.md


%changelog
## START: Generated by rpmautospec
* Tue May 28 2024 Sandro <devel@penguinpee.nl> - 2.7.0-1
- Initial package
## END: Generated by rpmautospec