diff options
author | Jimi Huotari <chiitoo@gentoo.org> | 2024-08-11 17:47:26 +0300 |
---|---|---|
committer | Jimi Huotari <chiitoo@gentoo.org> | 2024-08-22 09:49:53 +0300 |
commit | 35e147e12f01668914a0d2e7c3e4407cc373c371 (patch) | |
tree | ceea2652311e0366a77f30c03fd431563725eaa7 /media-video | |
parent | kde-apps/kbruch: add kcrash dep (diff) | |
download | gentoo-35e147e12f01668914a0d2e7c3e4407cc373c371.tar.gz gentoo-35e147e12f01668914a0d2e7c3e4407cc373c371.tar.bz2 gentoo-35e147e12f01668914a0d2e7c3e4407cc373c371.zip |
media-video/obs-studio: migrate to "new modern CMake path"
- Use the "new modern CMake path" and tweak CMake switches accordingly.
- Drop USE="ssl" since it is no longer optional (and unconditionally
depend on 'mbedtls').
- Add USE="sndio" to enable sndio support.
- Add python 3.13 and remove 3.9 compatibility.
- Enable both, "legacy ffmpeg" and the new, "native" nvenc with
USE="nvenc".
- Tweak formatting on lines longer than 120 characters.
- Add USE="test-input" for building and installing test sources.
- De-wire up tests, since upstream did not bring building unit tests
along with the latest CMake changes, as they are "unmaintained and
not supported for a very long time" [1].
1. https://github.com/obsproject/obs-studio/issues/11115
Signed-off-by: Jimi Huotari <chiitoo@gentoo.org>
Diffstat (limited to 'media-video')
-rw-r--r-- | media-video/obs-studio/metadata.xml | 3 | ||||
-rw-r--r-- | media-video/obs-studio/obs-studio-9999.ebuild | 33 |
2 files changed, 19 insertions, 17 deletions
diff --git a/media-video/obs-studio/metadata.xml b/media-video/obs-studio/metadata.xml index 2e6e1d188e06..be051ff610c3 100644 --- a/media-video/obs-studio/metadata.xml +++ b/media-video/obs-studio/metadata.xml @@ -19,8 +19,9 @@ <flag name="pipewire">Build with PipeWire support.</flag> <flag name="python">Build with scripting support for Python 3.</flag> <flag name="qsv">Build with Intel Quick Sync Video support.</flag> + <flag name="sndio">Build with sndio support.</flag> <flag name="speex">Build with Speex noise suppression filter support.</flag> - <flag name="ssl">Build with TLS/SSL support for RTMPS connections.</flag> + <flag name="test-input">Build and install input sources used for testing.</flag> <flag name="vlc">Build with VLC media source support.</flag> <flag name="websocket">Build with WebSocket API support.</flag> </use> diff --git a/media-video/obs-studio/obs-studio-9999.ebuild b/media-video/obs-studio/obs-studio-9999.ebuild index 957534cb13d4..efd7033f58ab 100644 --- a/media-video/obs-studio/obs-studio-9999.ebuild +++ b/media-video/obs-studio/obs-studio-9999.ebuild @@ -5,7 +5,7 @@ EAPI=8 CMAKE_REMOVE_MODULES_LIST=( FindFreetype ) LUA_COMPAT=( luajit ) -PYTHON_COMPAT=( python3_{9..12} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit cmake flag-o-matic lua-single optfeature python-single-r1 xdg @@ -26,9 +26,12 @@ if [[ ${PV} == 9999 ]]; then ) else SRC_URI=" - https://github.com/obsproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz - https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz - https://github.com/obsproject/obs-websocket/archive/${OBS_WEBSOCKET_COMMIT}.tar.gz -> obs-websocket-${OBS_WEBSOCKET_COMMIT}.tar.gz + https://github.com/obsproject/${PN}/archive/${PV}.tar.gz + -> ${P}.tar.gz + https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz + -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz + https://github.com/obsproject/obs-websocket/archive/${OBS_WEBSOCKET_COMMIT}.tar.gz + -> obs-websocket-${OBS_WEBSOCKET_COMMIT}.tar.gz " KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" fi @@ -39,9 +42,8 @@ LICENSE="Boost-1.0 GPL-2+ MIT Unlicense" SLOT="0" IUSE=" +alsa browser decklink fdk jack lua mpegts nvenc pipewire pulseaudio - python qsv speex +ssl test truetype v4l vlc wayland websocket + python qsv sndio speex test-input truetype v4l vlc wayland websocket " -RESTRICT="!test? ( test )" REQUIRED_USE=" browser? ( || ( alsa pulseaudio ) ) lua? ( ${LUA_REQUIRED_USE} ) @@ -66,6 +68,7 @@ DEPEND=" media-libs/x264:= media-video/ffmpeg:=[nvenc?,opus,x264] net-misc/curl + net-libs/mbedtls:= sys-apps/dbus sys-apps/pciutils sys-apps/util-linux @@ -116,9 +119,8 @@ DEPEND=" pulseaudio? ( media-libs/libpulse ) python? ( ${PYTHON_DEPS} ) qsv? ( media-libs/libvpl ) + sndio? ( media-sound/sndio ) speex? ( media-libs/speexdsp ) - ssl? ( net-libs/mbedtls:= ) - test? ( dev-util/cmocka ) truetype? ( media-libs/fontconfig media-libs/freetype @@ -189,32 +191,31 @@ src_configure() { local libdir=$(get_libdir) local mycmakeargs=( $(usev browser -DCEF_ROOT_DIR=../${CEF_DIR}) - -DCALM_DEPRECATION=ON - -DCCACHE_SUPPORT=OFF -DENABLE_ALSA=$(usex alsa) -DENABLE_AJA=OFF -DENABLE_BROWSER=$(usex browser) + -DENABLE_CCACHE=OFF -DENABLE_DECKLINK=$(usex decklink) + -DENABLE_FFMPEG_NVENC=$(usex nvenc) -DENABLE_FREETYPE=$(usex truetype) -DENABLE_JACK=$(usex jack) -DENABLE_LIBFDK=$(usex fdk) - -DENABLE_NATIVE_NVENC=OFF -DENABLE_NEW_MPEGTS_OUTPUT=$(usex mpegts) + -DENABLE_NVENC=$(usex nvenc) -DENABLE_PIPEWIRE=$(usex pipewire) -DENABLE_PULSEAUDIO=$(usex pulseaudio) -DENABLE_QSV11=$(usex qsv) -DENABLE_RNNOISE=ON - -DENABLE_RTMPS=$(usex ssl ON OFF) # Needed for bug 880861 + -DENABLE_SNDIO=$(usex sndio) -DENABLE_SPEEXDSP=$(usex speex) - -DENABLE_UNIT_TESTS=$(usex test) + -DENABLE_TEST_INPUT=$(usex test-input) -DENABLE_V4L2=$(usex v4l) -DENABLE_VLC=$(usex vlc) -DENABLE_VST=ON -DENABLE_WAYLAND=$(usex wayland) -DENABLE_WEBRTC=OFF # Requires libdatachannel. -DENABLE_WEBSOCKET=$(usex websocket) - -DOBS_MULTIARCH_SUFFIX=${libdir#lib} - -DUNIX_STRUCTURE=1 + -DOBS_CMAKE_VERSION=3 ) if [[ ${PV} != 9999 ]]; then @@ -233,7 +234,7 @@ src_configure() { mycmakeargs+=( -DENABLE_SCRIPTING=OFF ) fi - if use browser && use ssl; then + if use browser; then mycmakeargs+=( -DENABLE_WHATSNEW=ON ) else mycmakeargs+=( -DENABLE_WHATSNEW=OFF ) |