SDL3/SDL2.spec
2022-04-03 11:08:17 +03:00

117 lines
3.2 KiB
RPMSpec

%define oversion 0.18.2
%define api 2.0
%define major 0
%define libname %mklibname %{name}_ %{api} %{major}
%define devname %mklibname %{name} -d
Summary: Simple DirectMedia Layer
Name: SDL2
Version: 2.0.20
Release: 1
License: Zlib
Group: System/Libraries
Url: http://www.libsdl.org/
Source0: http://www.libsdl.org/release/%{name}-%{version}.tar.gz
Source1: FindSDL2.cmake
# Keep major stable, should be 0
Patch1: SDL2-2.0.16-soversion.patch
BuildRequires: cmake
BuildRequires: nas-devel
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libpipewire-0.3)
BuildRequires: pkgconfig(samplerate)
BuildRequires: pkgconfig(sndio)
BuildRequires: pkgconfig(libusb)
BuildRequires: pkgconfig(udev)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-cursor)
BuildRequires: pkgconfig(wayland-egl)
BuildRequires: pkgconfig(wayland-protocols)
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(xcursor)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xkbcommon)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xscrnsaver)
BuildRequires: pkgconfig(xxf86vm)
BuildRequires: pkgconfig(zlib)
BuildRequires: vulkan-devel
%description
This is the Simple DirectMedia Layer, a generic API that provides low level
access to audio, keyboard, mouse, and display framebuffer across multiple
platforms.
#----------------------------------------------------------------------------
%package -n %{libname}
Summary: Main library for %{name}
Group: System/Libraries
%description -n %{libname}
This package contains the library needed to run programs dynamically
linked with %{name}.
%files -n %{libname}
%doc README.md README-SDL.txt CREDITS.txt LICENSE.txt BUGS.txt WhatsNew.txt
%{_libdir}/libSDL2-%{api}.so.%{major}
%{_libdir}/libSDL2-%{api}.so.%{oversion}
#----------------------------------------------------------------------------
%package -n %{devname}
Summary: Headers for developing programs that will use %{name}
Group: Development/C
Requires: %{libname} = %{EVRD}
Provides: %{name}-devel = %{EVRD}
%description -n %{devname}
This package contains the headers that programmers will need to develop
applications which will use %{name}.
%files -n %{devname}
%doc README.md README-SDL.txt CREDITS.txt LICENSE.txt BUGS.txt WhatsNew.txt
%{_bindir}/sdl2-config
%dir %{_libdir}/cmake/SDL2/
%{_libdir}/cmake/SDL2/*
%{_libdir}/pkgconfig/sdl2.pc
%{_libdir}/*.so
%{_libdir}/libSDL2main.a
%{_datadir}/cmake/Modules/FindSDL2.cmake
%dir %{_includedir}/SDL2
%{_includedir}/SDL2/*.h
%{_datadir}/aclocal/sdl2.m4
#----------------------------------------------------------------------------
%prep
%autosetup -p1
%build
%cmake \
%ifnarch %{ix86} %{x86_64}
-DSSEMATH:BOOL=OFF \
%endif
%ifarch znver1
-DSSEMATH:BOOL=ON \
%endif
-DESD:BOOL=OFF \
-DESD_SHARED:BOOL=OFF \
-DSDL_STATIC:BOOL=OFF \
-DVIDEO_VULKAN:BOOL=ON \
-DRPATH:BOOL=OFF
%make_build
%install
%make_install -C build
install -m644 %{SOURCE1} -D %{buildroot}%{_datadir}/cmake/Modules/FindSDL2.cmake