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

127 lines
3.9 KiB
RPMSpec

#
# spec file for package libnvidia-egl-wayland
#
# Copyright (c) 2021 SUSE LLC
#
# 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 https://bugs.opensuse.org/
#
%define so_ver 1
# Common info
Name: libnvidia-egl-wayland
%define lname libnvidia-egl-wayland%{so_ver}
Version: 1.1.7
Release: 0
URL: https://github.com/NVIDIA/egl-wayland
Summary: The EGLStream-based Wayland external platform
License: MIT
Group: Development/Libraries/Other
# Build-time parameters
BuildRequires: gcc-c++
BuildRequires: meson >= 0.50
BuildRequires: ninja
BuildRequires: pkg-config
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(eglexternalplatform) >= 1.1
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-egl-backend) >= 3
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(wayland-server)
BuildRequires: pkgconfig(x11)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
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
Summary: Development package for %{name}
Group: Development/Languages/C and C++
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
%changelog