%global debug_package %{nil}

%if 0%{?fedora} >= 35
%bcond_without guile30
%else
%bcond_with guile30
%endif

%global srcname opengl

Name:           guile-%{srcname}
Version:        0.2.0
Release:        1%{?dist}
Summary:        An OpenGL interface for GNU Guile

License:        GPLv3
URL:            https://www.gnu.org/software/guile-opengl/
Source0:        https://git.savannah.gnu.org/cgit/guile-opengl.git/snapshot/guile-opengl-%{version}.tar.gz

BuildRequires:  /usr/bin/autoreconf /usr/bin/aclocal
BuildRequires:  libtool

%global _description %{expand:
GNU Guile-OpenGL is a library providing access to the OpenGL graphics
API from GNU Guile.}

%description %_description


%package -n guile22-%{srcname}
Summary:        An OpenGL interface for GNU Guile
BuildRequires:  guile22-devel
Requires:       guile22
Recommends:     guile-%{srcname}-doc

%description -n guile22-%{srcname} %_description


%if %{with guile30}
%package -n guile30-%{srcname}
Summary:        An OpenGL interface for GNU Guile
BuildRequires:  guile30-devel
Requires:       guile30
Recommends:     guile-%{srcname}-doc

%description -n guile30-%{srcname} %_description
%endif


%package doc
Summary:        Documentation for guile-opengl
BuildRequires:  texinfo

%description doc %_description


%prep
%setup -qc
mv guile-opengl-%{version} guile22

%if %{with guile30}
cp -a guile22 guile30
%endif


%build
pushd guile22
autoreconf --install
%configure GUILE_EFFECTIVE_VERSION=2.2 \
           GUILE=/usr/bin/guile2.2 \
           GUILD=/usr/bin/guild2.2 \
           GUILE_CONFIG=/usr/bin/guile-config2.2
%make_build
popd

%if %{with guile30}
pushd guile30
autoreconf --install
%configure GUILE_EFFECTIVE_VERSION=3.0 \
           GUILE=/usr/bin/guile3.0 \
           GUILD=/usr/bin/guild3.0 \
           GUILE_CONFIG=/usr/bin/guile-config3.0
%make_build
popd
%endif


%install
rm -rf $RPM_BUILD_ROOT

pushd guile22
%make_install
popd

%if %{with guile30}
pushd guile30
%make_install
popd
%endif

find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'

rm %{buildroot}/%{_infodir}/dir


%files -n guile22-%{srcname}
%license guile22/COPYING guile22/COPYING.LESSER guile22/LICENSE
%doc guile22/AUTHORS guile22/ChangeLog guile22/NEWS guile22/README guile22/TODO guile22/examples
%{_libdir}/guile/2.2/site-ccache/gl.go
%{_libdir}/guile/2.2/site-ccache/gl
%{_libdir}/guile/2.2/site-ccache/glu.go
%{_libdir}/guile/2.2/site-ccache/glu
%{_libdir}/guile/2.2/site-ccache/glut.go
%{_libdir}/guile/2.2/site-ccache/glut
%{_libdir}/guile/2.2/site-ccache/glx.go
%{_libdir}/guile/2.2/site-ccache/glx
%{_datadir}/guile/site/2.2/gl.scm
%{_datadir}/guile/site/2.2/gl
%{_datadir}/guile/site/2.2/glu.scm
%{_datadir}/guile/site/2.2/glu
%{_datadir}/guile/site/2.2/glut.scm
%{_datadir}/guile/site/2.2/glut
%{_datadir}/guile/site/2.2/glx.scm
%{_datadir}/guile/site/2.2/glx

%if %{with guile30}
%files -n guile30-%{srcname}
%license guile30/COPYING guile30/COPYING.LESSER guile30/LICENSE
%doc guile30/AUTHORS guile30/ChangeLog guile30/NEWS guile30/README guile30/TODO guile30/examples
%{_libdir}/guile/3.0/site-ccache/gl.go
%{_libdir}/guile/3.0/site-ccache/gl
%{_libdir}/guile/3.0/site-ccache/glu.go
%{_libdir}/guile/3.0/site-ccache/glu
%{_libdir}/guile/3.0/site-ccache/glut.go
%{_libdir}/guile/3.0/site-ccache/glut
%{_libdir}/guile/3.0/site-ccache/glx.go
%{_libdir}/guile/3.0/site-ccache/glx
%{_datadir}/guile/site/3.0/gl.scm
%{_datadir}/guile/site/3.0/gl
%{_datadir}/guile/site/3.0/glu.scm
%{_datadir}/guile/site/3.0/glu
%{_datadir}/guile/site/3.0/glut.scm
%{_datadir}/guile/site/3.0/glut
%{_datadir}/guile/site/3.0/glx.scm
%{_datadir}/guile/site/3.0/glx
%endif

%files doc
%{_infodir}/*