libnvidia-egl-wayland/libnvidia-egl-wayland.spec

107 lines
3.1 KiB
RPMSpec

%define so_ver 1
# Common info
Name: libnvidia-egl-wayland
%define lname libnvidia-egl-wayland%{so_ver}
Version: 1.1.7
Release: 0
License: MIT
Group: Development/Libraries/Other
URL: https://github.com/NVIDIA/egl-wayland
Summary: The EGLStream-based Wayland external platform
# Build-time parameters
BuildRequires: gcc-c++
BuildRequires: meson >= 0.50 ninja
BuildRequires: pkg-config
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(eglexternalplatform) >= 1.1
BuildRequires: pkgconfig(wayland-server)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(wayland-egl-backend) >= 3
BuildRequires: pkgconfig(x11)
BuildRoot: %{_tmppath}/%{name}-root
Source: egl-wayland-%{version}.tar.gz
%description
This is an implementation of a EGL External Platform library to add client-side
Wayland support to EGL on top of EGLDevice and EGLStream families of extensions.
This library implements an EGL External Platform interface to work along with
EGL drivers that support the external platform mechanism.
%package -n %lname
Summary: The EGLStream-based Wayland external platform
Group: Development/Libraries/Other
%description -n %lname
This is an implementation of a EGL External Platform library to add client-side
Wayland support to EGL on top of EGLDevice and EGLStream families of extensions.
This library implements an EGL External Platform interface to work along with
EGL drivers that support the external platform mechanism.
%package -n libnvidia-egl-wayland-devel
Group: Development/Languages/C and C++
Summary: Development package for %{name}
Requires: %{lname} = %{version}-%{release}
%description -n libnvidia-egl-wayland-devel
This is an implementation of a EGL External Platform library to add client-side
Wayland support to EGL on top of EGLDevice and EGLStream families of extensions.
This library implements an EGL External Platform interface to work along with
EGL drivers that support the external platform mechanism.
This package provides headers and libraries required to build software
using %{name}.
%prep
%setup -q -n egl-wayland-%{version}%{?extraver}
%build
_CFLAGS='%{optflags}'
_LDFLAGS='-Wl,--strip-all -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro'
meson setup build \
--buildtype=release \
--optimization=2 \
--strip \
\
--prefix=%{_prefix} \
--libdir=%{_libdir} \
--default-library=shared \
\
-Db_lto=true \
-Db_ndebug=if-release \
-Dc_args="$_CFLAGS" \
-Dc_link_args="$_LDFLAGS"
ninja -v -C build %{?_smp_mflags}
%install
DESTDIR=%{buildroot} ninja -C build install
%clean
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
%post -n %lname -p /sbin/ldconfig
%postun -n %lname -p /sbin/ldconfig
%files -n %lname
%defattr(-,root,root)
%license COPYING
%doc README.md
%{_libdir}/libnvidia-egl-wayland.so.%{so_ver}*
%{_datadir}/wayland-eglstream/
%files -n libnvidia-egl-wayland-devel
%defattr(-,root,root)
%license COPYING
%doc README.md
%{_libdir}/libnvidia-egl-wayland.so
%{_libdir}/pkgconfig/wayland-eglstream.pc
%{_datadir}/pkgconfig/wayland-eglstream-protocols.pc