SDL3/SDL3.spec

135 lines
3.4 KiB
RPMSpec
Raw Permalink Normal View History

2024-12-20 14:57:52 +00:00
%define oversion %(echo %{version} |cut -d. -f2- |sed "s/^/0./" |sed "s/\\./00./2")
%define api 3.0
%define major 0
%define libname %mklibname %{name}_ %{api} %{major}
%define devname %mklibname %{name} -d
Summary: Simple DirectMedia Layer
Name: SDL3
2025-02-07 09:46:40 +00:00
Version: 3.2.4
2024-12-20 14:57:52 +00:00
Release: 1
License: Zlib
Group: System/Libraries
URL: https://www.libsdl.org
2025-02-03 10:20:34 +00:00
Source0: https://github.com/libsdl-org/SDL/releases/download/release-%{version}/%{name}-%{version}.tar.gz
2024-12-20 14:57:52 +00:00
# Keep major stable, should be 0
BuildRequires: cmake
2024-12-24 09:54:30 +00:00
BuildRequires: xz
2024-12-20 14:57:52 +00:00
%ifarch %{x86_64} %{ix86} %{armx}
BuildRequires: nas-devel
%endif
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(libpulse)
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: pkgconfig(vulkan)
2024-12-20 22:52:10 +00:00
BuildRequires: pkgconfig(openssl3.3)
2024-12-20 14:57:52 +00:00
%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}
2025-02-05 20:57:22 +00:00
%doc README.md BUGS.txt WhatsNew.txt
2024-12-20 14:57:52 +00:00
%doc LICENSE.txt
2024-12-20 22:28:42 +00:00
%{_libdir}/lib%{name}.so.*
2024-12-20 14:57:52 +00:00
#----------------------------------------------------------------------------
%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}
2025-02-05 19:37:46 +00:00
%doc README.md BUGS.txt WhatsNew.txt
2024-12-20 14:57:52 +00:00
%doc LICENSE.txt
%{_includedir}/%{name}
%{_libdir}/cmake/%{name}
%{_libdir}/lib%{name}*.a
2024-12-20 22:28:42 +00:00
%{_libdir}/pkgconfig/*.pc
2024-12-20 14:57:52 +00:00
%{_libdir}/*.so
#----------------------------------------------------------------------------
%prep
%setup -q
2024-12-20 22:28:42 +00:00
cat > sdl3.pc << EOF
prefix=%{_prefix}
exec_prefix=${prefix}
libdir=%{_libdir}
includedir=%{_includedir}
Name: sdl3
Description: %{summary}
URL: %{url}
Version: %{version}
Libs: -lSDL3
EOF
2024-12-20 14:57:52 +00:00
%build
%cmake \
-DCMAKE_BUILD_TYPE=Release \
-DESD:BOOL=OFF \
-DESD_SHARED:BOOL=OFF \
-DRPATH:BOOL=OFF \
-DSDL_STATIC:BOOL=OFF \
%ifnarch %{ix86} %{x86_64}
-DSSEMATH:BOOL=OFF \
%endif
%ifarch znver1
-DSSEMATH:BOOL=ON \
%endif
-DVIDEO_VULKAN:BOOL=ON
%make_build
%install
%make_install -C build
rm -rf %{buildroot}%{_datadir}/licenses
2024-12-20 22:28:42 +00:00
# erase rpath in pkgconfig
rm -f %{buildroot}%{_libdir}/pkgconfig/sdl3.pc
install -Dm0644 sdl3.pc %{buildroot}%{_libdir}/pkgconfig/sdl3.pc