update our spec sheet

This commit is contained in:
Thomas Crider
2022-08-01 18:09:50 -06:00
parent edbb5f6c42
commit 26affc4e8c

View File

@@ -1,45 +1,31 @@
%undefine __cmake_in_source_build %undefine __cmake_in_source_build
# bytecompile with Python 3 # bytecompile with Python 3
%global __python %{__python3} %global __python %{__python3}
%global __brp_check_rpaths %{nil}
%define version_string 27.2.4 %define version_string 28.0.0
%global build_timestamp 3%(date +"%Y%m%d") %global build_timestamp %(date +"%Y%m%d")
%global rel_build %{build_timestamp}.%{shortcommit}%{?dist} %global rel_build %{build_timestamp}.%{shortcommit}%{?dist}
# obs version and commit # obs version and commit
%define commit b65ee7e7fbca05e6c4bfd55b7ff721150b3c0735 %define commit fd7c23b2003b27676e9687646ba2fd293fd44603
%global shortcommit %(c=%{commit}; echo ${c:0:7}) %global shortcommit %(c=%{commit}; echo ${c:0:7})
# vst version and commit
%global commit1 8ad3f64e702ac4f1799b209a511620eb1d096a01
%global shortcommit1 %(c=%{commit1}; echo ${c:0:7})
# browser version and commit
%global commit2 1dee0a19052161cf900bcd54b3012a2bb1ef0f60
%global shortcommit2 %(c=%{commit2}; echo ${c:0:7})
# vulkan capture version and commit
%global commit3 e03e997b2f484f67391ac03f802ac7abfc327b26
%global shortcommit3 %(c=%{commit3}; echo ${c:0:7})
Name: obs-studio Name: obs-studio
Version: %{version_string} Version: %{version_string}
Release: %{rel_build} Release: 3.%{rel_build}
Summary: Open Broadcaster Software Studio Summary: Open Broadcaster Software Studio
License: GPLv2+ License: GPLv2+
URL: https://obsproject.com/ URL: https://obsproject.com/
Source0: https://github.com/obsproject/obs-studio/archive/%{name}-%{version}.tar.gz Source0: https://github.com/obsproject/obs-studio/archive/%{commit}/%{name}-%{shortcommit}.tar.gz
Source1: https://github.com/obsproject/obs-vst/archive/%{commit1}/obs-vst-%{shortcommit1}.tar.gz Source1: https://cdn-fastly.obsproject.com/downloads/cef_binary_4638_linux64.tar.bz2
Source2: https://github.com/obsproject/obs-browser/archive/%{commit2}/obs-browser-%{shortcommit2}.tar.gz Patch0: hevc-vaapi.patch
Source3: https://cdn-fastly.obsproject.com/downloads/cef_binary_4638_linux64.tar.bz2 Patch1: add-plugins.patch
Source4: https://github.com/nowrep/obs-vkcapture/archive/%{commit3}/obs-vkcapture-%{shortcommit3}.tar.gz Patch2: 6207.patch
Patch3: 0001-Revert-UI-Enforce-Fusion-Qt-style-on-Linux.patch
Patch0: hevc-vaapi.diff
Patch1: vkcapture.diff
BuildRequires: gcc BuildRequires: gcc
BuildRequires: git
BuildRequires: cmake >= 3.0 BuildRequires: cmake >= 3.0
BuildRequires: ninja-build BuildRequires: ninja-build
BuildRequires: libappstream-glib BuildRequires: libappstream-glib
@@ -53,9 +39,13 @@ BuildRequires: freetype-devel
BuildRequires: pipewire-jack-audio-connection-kit-devel BuildRequires: pipewire-jack-audio-connection-kit-devel
BuildRequires: jansson-devel BuildRequires: jansson-devel
BuildRequires: libcurl-devel BuildRequires: libcurl-devel
BuildRequires: libdrm-devel
BuildRequires: libaom-devel
BuildRequires: libftl-devel BuildRequires: libftl-devel
BuildRequires: libGL-devel BuildRequires: libGL-devel
BuildRequires: libv4l-devel BuildRequires: libv4l-devel
BuildRequires: librist-devel
BuildRequires: srt-devel
BuildRequires: libX11-devel BuildRequires: libX11-devel
BuildRequires: libxcb-devel BuildRequires: libxcb-devel
BuildRequires: libXcomposite-devel BuildRequires: libXcomposite-devel
@@ -89,11 +79,16 @@ BuildRequires: at-spi2-atk-devel
BuildRequires: libXdamage BuildRequires: libXdamage
BuildRequires: libXrandr BuildRequires: libXrandr
BuildRequires: at-spi2-core BuildRequires: at-spi2-core
BuildRequires: libajantv2
Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Requires: ffmpeg Requires: ffmpeg
Requires: x264 Requires: x264
Requires: gstreamer1-vaapi
Requires: obs-studio-gstreamer-vaapi
Requires: obs-studio-gamecapture%{?_isa}
Requires: obs-studio-gamecapture
%description %description
Open Broadcaster Software is free and open source Open Broadcaster Software is free and open source
@@ -115,42 +110,52 @@ Header files for Open Broadcaster Software
%prep %prep
%setup -n obs-studio-%{version} -q %setup -n obs-studio-%{commit} -q
patch -Np1 < %{PATCH0}
patch -Np1 < %{PATCH1}
patch -Np1 < %{PATCH2}
patch -Np1 < %{PATCH3}
# rpmlint reports E: hardcoded-library-path # rpmlint reports E: hardcoded-library-path
# replace OBS_MULTIARCH_SUFFIX by LIB_SUFFIX # replace OBS_MULTIARCH_SUFFIX by LIB_SUFFIX
sed -i 's|OBS_MULTIARCH_SUFFIX|LIB_SUFFIX|g' cmake/Modules/ObsHelpers.cmake sed -i 's|OBS_MULTIARCH_SUFFIX|LIB_SUFFIX|g' cmake/Modules/ObsHelpers.cmake
# Prepare plugins/obs-vst # Prepare plugins/obs-vkcapture
tar -xf %{SOURCE1} -C plugins/obs-vst --strip-components=1 git clone --recurse-submodules https://github.com/nowrep/obs-vkcapture plugins/obs-vkcapture
# Prepare plugins/obs-websocket
git clone --recurse-submodules https://github.com/obsproject/obs-websocket plugins/obs-websocket
# Prepare plugins/streamfx
git clone --recurse-submodules --depth 1 --branch 0.12.0a45 https://github.com/Xaymar/obs-StreamFX plugins/streamfx
# Prepare plugins/obs-browser # Prepare plugins/obs-browser
tar -xf %{SOURCE2} -C plugins/obs-browser --strip-components=1 git clone --recurse-submodules https://github.com/obsproject/obs-browser plugins/obs-browser
# Prepare plugins/obs-source-record
git clone --recurse-submodules https://github.com/exeldro/obs-source-record plugins/obs-source-record
# Prepare CEF source for obs-browser # Prepare CEF source for obs-browser
tar -xf %{SOURCE3} -C ../ tar -xf %{SOURCE1} -C ../
# Prepare plugins/obs-vkcapture
mkdir -p plugins/obs-vkcapture
tar -xf %{SOURCE4} -C plugins/obs-vkcapture --strip-components=1
patch -Np1 < %{PATCH0}
patch -Np1 < %{PATCH1}
%build %build
%cmake -DOBS_VERSION_OVERRIDE=%{version} \ %cmake -DOBS_VERSION_OVERRIDE=%{version} \
-DUNIX_STRUCTURE=1 -GNinja \ -DUNIX_STRUCTURE=1 -GNinja \
-DCEF_ROOT_DIR=../cef_binary_4638_linux64 \ -DCEF_ROOT_DIR=../cef_binary_4638_linux64 \
-DStreamFX_ENABLE_CLANG=OFF \
%if ! %{with lua_scripting} %if ! %{with lua_scripting}
-DDISABLE_LUA=ON \ -DDISABLE_LUA=ON \
%endif %endif
-DOpenGL_GL_PREFERENCE=GLVND -DOpenGL_GL_PREFERENCE=GLVND
%cmake_build %cmake_build
%install %install
%cmake_install %cmake_install
# Add missing files to enable the build of obs-ndi # Add missing files to enable the build of obs-ndi
mkdir -p %{buildroot}%{_libdir}/cmake/LibObs/
install -Dm644 UI/obs-frontend-api/obs-frontend-api.h %{buildroot}%{_includedir}/obs/ install -Dm644 UI/obs-frontend-api/obs-frontend-api.h %{buildroot}%{_includedir}/obs/
install -Dm644 cmake/external/ObsPluginHelpers.cmake %{buildroot}%{_libdir}/cmake/LibObs/ install -Dm644 cmake/external/ObsPluginHelpers.cmake %{buildroot}%{_libdir}/cmake/LibObs/
@@ -179,17 +184,8 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.appdata
%files libs %files libs
%{_libdir}/obs-plugins/ %{_libdir}/obs-plugins/
%{_libdir}/obs-scripting/ %{_libdir}/obs-scripting/
%{_libdir}/libobs-scripting.so %{_libdir}/*.so
%{_libdir}/libobs-frontend-api.so %{_libdir}/*.so.*
%{_libdir}/libobs-frontend-api.so.0
%{_libdir}/libobs-frontend-api.so.0.0
%{_libdir}/libobs-opengl.so
%{_libdir}/libobs-opengl.so.0
%{_libdir}/libobs-opengl.so.0.0
%{_libdir}/libobs.so
%{_libdir}/libobs.so.0
%{_libdir}/libobsglad.so
%{_libdir}/libobsglad.so.0
%files devel %files devel
%{_libdir}/cmake/LibObs/ %{_libdir}/cmake/LibObs/
@@ -197,6 +193,21 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.appdata
%{_includedir}/obs/ %{_includedir}/obs/
%changelog %changelog
* Sat Jul 23 2022 Leigh Scott <leigh123linux@gmail.com> - 27.2.4-4
- Rebuild for new qt5
* Sat Jun 25 2022 Robert-André Mauchin <zebob.m@gmail.com> - 27.2.4-3
- Rebuilt for Python 3.11
* Sun Jun 12 2022 Sérgio Basto <sergio@serjux.com> - 27.2.4-2
- Mass rebuild for x264-0.164
* Mon Apr 11 2022 Leigh Scott <leigh123linux@gmail.com> - 27.2.4-1
- Update to 27.2.4
* Thu Mar 31 2022 Leigh Scott <leigh123linux@gmail.com> - 27.2.1-2
- Rebuild for new qt
* Sat Feb 26 2022 Neal Gompa <ngompa@fedoraproject.org> - 27.2.1-1 * Sat Feb 26 2022 Neal Gompa <ngompa@fedoraproject.org> - 27.2.1-1
- Update to 27.2.1 - Update to 27.2.1
- Disable Lua scripting for POWER to fix ppc64le build - Disable Lua scripting for POWER to fix ppc64le build