libyui/libyui.spec

237 lines
6.9 KiB
RPMSpec

Name: libyui
Version: 4.4.8
Release: 2mamba
Summary: A widget abstraction library providing Qt, GTK and ncurses frontends
Group: System/Libraries
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://github.com/libyui/libyui
Source: https://github.com/libyui/libyui.git/%{version}/libyui-%{version}.tar.bz2
License: GPL, LGPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libQt5X11Extras-devel
BuildRequires: libgcc
BuildRequires: libgraphviz-devel
BuildRequires: libncurses-devel
BuildRequires: libperl
BuildRequires: libpython3-devel
BuildRequires: libruby-devel
BuildRequires: libstdc++6-devel
BuildRequires: libyui-mga-devel
BuildRequires: perl-devel
BuildRequires: qt5-qtbase-devel
## AUTOBUILDREQ-END
%if "%{stage1}" != "1"
BuildRequires: libyui-mga-devel
%endif
%description
Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends. Originally it was developed for YaST but it can be used in any independent project.
%package devel
Group: Development/Libraries
Summary: Development files for %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description devel
This package contains libraries and header files for developing applications that use %{name}.
%package qt
Group: System/Libraries
Summary: Qt (graphical) user interface of %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description qt
Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends.
This package contains the Qt user interface shared libraries of %{name}.
%package qtgraph
Group: System/Libraries
Summary: Qt (graphical) user interface of %{name}
Requires: %{name}-qt = %{?epoch:%epoch:}%{version}-%{release}
%description qtgraph
Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends.
This package contains the Qt user interface shared libraries of %{name}.
%package qt-devel
Group: Development/Libraries
Summary: Development files for %{name}-qt
Requires: %{name}-devel = %{?epoch:%epoch:}%{version}-%{release}
Requires: %{name}-qt = %{?epoch:%epoch:}%{version}-%{release}
Requires: %{name}-qtgraph = %{?epoch:%epoch:}%{version}-%{release}
%description qt-devel
This package contains libraries and header files for developing applications that use %{name}-qt.
%package ncurses
Group: System/Libraries
Summary: ncurses user interface of %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description ncurses
Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends.
This package contains the ncurses user interface shared libraries of %{name}.
%package ncurses-devel
Group: Development/Libraries
Summary: Development files for %{name}-ncurses
Requires: %{name}-devel = %{?epoch:%epoch:}%{version}-%{release}
Requires: %{name}-ncurses = %{?epoch:%epoch:}%{version}-%{release}
%description ncurses-devel
This package contains libraries and header files for developing applications that use %{name}-ncurses.
%package tools
Group: Applications/Development
Summary: Utility applications for %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description tools
This package contains utility applications for %{name}.
%package -n perl-yui
Group: System/Libraries/Perl
Summary: Perl bindings to %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description -n perl-yui
Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends.
This package contains the Perl bindings to %{name}.
%package -n python-yui
Group: System/Libraries/Python
Summary: Python bindings to %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description -n python-yui
Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends.
This package contains the Python bindings to %{name}.
%package -n ruby-yui
Group: System/Libraries
Summary: Ruby bindings to %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description -n ruby-yui
Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends.
This package contains the Ruby bindings to %{name}.
%debug_package
%prep
%setup -q
#-D -T
#:<< _EOF
sed -i "s|ncursesw/||" libyui-ncurses/src/*
%build
#:<< _EOF
for pkgname in libyui libyui-qt libyui-qt-graph libyui-ncurses libyui-bindings;do
cd ${pkgname}
%cmake -d build \
-DWERROR=FALSE \
-DBUILD_EXAMPLES=OFF \
-DWITH_MGA=ON \
-DWITH_MONO=OFF \
-DPYTHON_EXECUTABLE=%{__python3} \
-DPYTHON_LIBRARY=%{_libdir}/libpython3.7m.so \
-DPYTHON_INCLUDE_DIR=%{python3_inc} \
-DPYTHON_SITEDIR=%{python3_sitearch} \
-DPYTHON_LIB_DIR=%{python3_sitelib}
%make
cd ../..
done
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
for pkgname in libyui libyui-qt libyui-qt-graph libyui-ncurses libyui-bindings;do
cd ${pkgname}
%makeinstall -C build
cd ..
done
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root)
%{_libdir}/libyui.so.*
%doc COPYING.*
%files devel
%defattr(-,root,root)
%dir %{_includedir}/yui
%{_includedir}/yui/*
%{_libdir}/libyui.so
%dir %{_datadir}/libyui/buildtools
%{_datadir}/libyui/buildtools/*
%{_libdir}/pkgconfig/libyui.pc
%doc README.md
%files qt
%defattr(-,root,root)
%{_libdir}/yui/libyui-qt.so.*
%files qtgraph
%defattr(-,root,root)
%{_libdir}/yui/libyui-qt-graph.so.*
%files qt-devel
%defattr(-,root,root)
%dir %{_includedir}/yui/qt
%{_includedir}/yui/qt/*
%dir %{_includedir}/yui/qt-graph
%{_includedir}/yui/qt-graph/*
%{_libdir}/yui/libyui-qt.so
%{_libdir}/yui/libyui-qt-graph.so
%{_libdir}/pkgconfig/libyui-qt.pc
%files ncurses
%defattr(-,root,root)
%{_libdir}/yui/libyui-ncurses.so.*
%files ncurses-devel
%defattr(-,root,root)
%{_libdir}/yui/libyui-ncurses.so
%dir %{_includedir}/yui/ncurses
%{_includedir}/yui/ncurses/*
%{_libdir}/pkgconfig/libyui-ncurses.pc
%files tools
%defattr(-,root,root)
%{_bindir}/libyui-terminal
%files -n perl-yui
%defattr(-,root,root)
%{perl_vendorarch}/yui.so
%{perl_vendorlib}/yui.pm
%files -n python-yui
%defattr(-,root,root)
%{python3_sitearch}/_yui.so
%{python3_sitearch}/yui.py
%files -n ruby-yui
%defattr(-,root,root)
%{_libdir}/ruby/vendor_ruby/*/*/_yui.so
%changelog
* Sat Jan 14 2023 Silvan Calarco <silvan.calarco@mambasoft.it> 4.4.8-2mamba
- fix linking to python 3.11 instead of 3.7
* Fri Jan 13 2023 Automatic Build System <autodist@mambasoft.it> 4.4.8-1mamba
- automatic version update by autodist
* Thu Nov 10 2022 Silvan Calarco <silvan.calarco@mambasoft.it> 4.3.3-2mamba
- added bindings subpackages
* Thu Nov 10 2022 Silvan Calarco <silvan.calarco@mambasoft.it> 4.3.3-1mamba
- package created using the webbuild interface