From 00cef947b33543f6e21233d389aa77501d6ab6b3 Mon Sep 17 00:00:00 2001 From: Antoine Damhet Date: Tue, 6 Oct 2020 09:03:37 +0200 Subject: [PATCH] update to 26 & patches from pull request Signed-off-by: Antoine Damhet --- .SRCINFO | 66 +-- 0001-deps-glad-Add-EGL.patch | 8 +- ...engl-Rename-gl-x11.c-to-gl-x11-glx.c.patch | 6 +- ...-libobs-opengl-Factor-out-GLX-winsys.patch | 6 +- ...-opengl-Introduce-the-X11-EGL-winsys.patch | 6 +- ...-deps-glad-Make-X11-required-as-well.patch | 6 +- ...Install-qtbase5-private-dev-on-Linux.patch | 12 +- ...e-X11-specific-code-to-obs-nix-x11.c.patch | 8 +- ...oduce-the-concept-of-a-Unix-platform.patch | 16 +- ...-UI-Set-the-Unix-platform-on-startup.patch | 8 +- ...ure-Fail-to-load-when-running-on-EGL.patch | 4 +- 0011-libobs-Add-a-Wayland-platform.patch | 26 +- ...y-to-use-the-platform-display-if-ava.patch | 4 +- ...gl-Introduce-an-EGL-Wayland-renderer.patch | 6 +- ...etrieve-Wayland-surface-from-QWindow.patch | 14 +- ...troy-display-when-becoming-invisible.patch | 8 +- ...-obs_display-when-QTToGSWindow-fails.patch | 12 +- ...Rename-callback-to-match-signal-name.patch | 4 +- ...gnore-Always-On-Top-on-Wayland-platf.patch | 10 +- ...play-CreateDisplay-public-and-allow-.patch | 6 +- ...ose-and-PlatformSurface-events-to-cr.patch | 16 +- ...-Don-t-create-native-widget-siblings.patch | 8 +- 0022-Cleanup-native-widgets.patch | 416 ++++++++++++++++++ ...Add-Linux-only-device_texture_create.patch | 8 +- ...deps-glad-Add-DMA-BUF-EGL-extensions.patch | 4 +- ...plement-DMA-BUF-importing-on-EGL-ren.patch | 6 +- PKGBUILD | 66 +-- 27 files changed, 588 insertions(+), 172 deletions(-) create mode 100644 0022-Cleanup-native-widgets.patch rename 0022-libobs-graphics-Add-Linux-only-device_texture_create.patch => 0023-libobs-graphics-Add-Linux-only-device_texture_create.patch (97%) rename 0023-deps-glad-Add-DMA-BUF-EGL-extensions.patch => 0024-deps-glad-Add-DMA-BUF-EGL-extensions.patch (98%) rename 0024-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch => 0025-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch (98%) diff --git a/.SRCINFO b/.SRCINFO index a02d905..49c9ea9 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,7 +1,7 @@ pkgbase = obs-studio-wayland pkgdesc = Free, open source software for live streaming and recording (with wayland patches) - pkgver = 25.0.8 - pkgrel = 6 + pkgver = 26.0.0 + pkgrel = 1 url = https://obsproject.com arch = x86_64 license = GPL2 @@ -33,8 +33,7 @@ pkgbase = obs-studio-wayland optdepends = wlrobs-hg: screen capture on wlroots compositors provides = obs-studio conflicts = obs-studio - source = obs-studio-25.0.8.tar.gz::https://github.com/jp9000/obs-studio/archive/25.0.8.tar.gz - source = https://github.com/obsproject/obs-studio/commit/8a1429e29ebd6bf31ad6ae63c6992e2c03893767.patch + source = obs-studio-26.0.0.tar.gz::https://github.com/jp9000/obs-studio/archive/26.0.0.tar.gz source = 0001-deps-glad-Add-EGL.patch source = 0002-libobs-opengl-Rename-gl-x11.c-to-gl-x11-glx.c.patch source = 0003-libobs-opengl-Factor-out-GLX-winsys.patch @@ -56,35 +55,36 @@ pkgbase = obs-studio-wayland source = 0019-UI-Make-OBSQTDisplay-CreateDisplay-public-and-allow-.patch source = 0020-UI-Check-for-Expose-and-PlatformSurface-events-to-cr.patch source = 0021-Don-t-create-native-widget-siblings.patch - source = 0022-libobs-graphics-Add-Linux-only-device_texture_create.patch - source = 0023-deps-glad-Add-DMA-BUF-EGL-extensions.patch - source = 0024-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch - sha512sums = a97c03dc218a4e03e48f6a7dc82b4a59ebeee2039f17be66bb847681ce9ff3d25e6e015be4af78fe44739f6fad5089b6e683d7657c2e4fde8e547df9a2594a08 - sha512sums = 1ff0e088eed61554268009f3d8c5a23c0888bfbe860d6cb288ddf348108446c152fd87e2cb8f54613a88378d8474550632c90f924005d5e0343bf1a801339ccc - sha512sums = 412c4121fc77af66a3e55650859becb6fb6d668369d8767729893e98fea8f6f8dde4ec9bc160041bb986f8a508f762cc68446e3c8cf5525a5b6fbfac1c1bf4fd - sha512sums = 6af84ddd3bb6953911840bd130606d8c1148cb6fc8e5750da480adb542813dc336f64056ffec8f07dc7467031e640842490b35fe89b39b621bf7db92d049743f - sha512sums = 6205323d409b1c583257540e4d51f6c2a2e456b06a6b6d4edacad8d53af05e40afdd283567d910cdff2d4d6d50677df1e78421c19505a85a71538ca108442de7 - sha512sums = be0d996ed92eccc4c7da354775b927b34c98f6863a16357c473e04e25a61cd3d73f128cedd154a2a3dfa321444f2884dc7f47f895cd9e2014df8d739837b01af - sha512sums = bd7bed1f8bfad7a3a3abc71d0d2db48fcdbe231a42ab16aaf95e81016e11446558bbcb9f18c91af1834c4fd90e692b0865ed23730715b7174545a500a29c1fb7 - sha512sums = bda1c8488083b9b76d0a7597f81d01621981803f2634a14fdb2bfcb1fa57638afd20956defb9269d234ddc7143755303d7ba21376ebfde034025ab8d2441162f - sha512sums = c378765fdcb271a6c98965f91a44d3a990184324a5b1fceb7094cf5333938e30bd09978e47837061bbc9edb2847a0c5e5aea84cf7d1e7a0f34a1ed49ada291d8 - sha512sums = 9abc8155aa02bb8ee50a32217ff58fa7bc001f070dbdc25c4837a13a5b76088eaf0b5bb76bb4d3cc66f820e1866236bbdece77739d3bd02df5e0e6ed2d8d6932 - sha512sums = 2b5ab097562b46d19844f80680604126171732fda60984fd6cc63c188e23f04961c255b16af544893b587d00c14c49a465791bf3ee4af19ecb55c9ac09494d13 - sha512sums = d4f62e5cd212379600f559612592b29d8114b33ecb7d42f2817369866872fe31a20e734b3c3468eaea040ab4b48b94581bda2a45a9b09b029eecdbffdb7a067d - sha512sums = fe359f670c5e427d457c4b7a820cfddf37558209ebbd48eb16ca44c7f5342ae1e96685411a51207d8c16ed56b903f5282b29d56b892c7507cae790a759f30c1c - sha512sums = 10210a00eac70214c7df82460dc8d8d795e7e4fd0f732effca4ccbc12fe23ee4826faa8d49eb8be5498e895a58c5a481dd46ebd1781489aa2f097827db11362e - sha512sums = 57dd96edb1cfc833aea7afa504877d5cb7c0676ec9cba3c8eb615125d5a6e74311ed28edde37a7c34cefb06009c850427e17bff01a09e5b260e4cd645b34449a - sha512sums = 3adfe5956a20b06e30bf69bc119f2db8ad336a9288fc5b06d4303429b61d8de58973d223e8a0a4aae8feb16c4ca0ff52796cee229def981b690508be099f70fc - sha512sums = 10bb8c05f7aeee664823d5c709d71d6bc2db0939e7749016fa42be1f64a4b9af9c1ef8f60257b92ab2d93947d258e357aaf95c205f95e45e65dbb4c8e88b05b5 - sha512sums = 03df24ecd1c07ac526a0597a0fa505e84048e40fa60b9871c384959f8916fe610dde715bea267ce2d69ff3fae205eae43179dddfe9b1eb242e670d8c9fef6206 - sha512sums = d9d3f2aa11c04caf4a2cb4c70cbf9735f2c56995039585359f1cd3d9518bfdef2440086b30cf54c7cbf52daa4b78b2a3120eadfdb0994e9309c4e5e5ca4b8698 - sha512sums = d3b6abe7b332d31b8b6297b17861bf65c8ea0442026e9ca5d57b3f0e1df302ca6cb3df95f94d1a11143d941443ea748c956eaeb29ce30068da12b5c9bea80432 - sha512sums = 8b3e0a9a53b2af54662ac23ea8a196506e7434061b0123c9fdc1632aee1f8137fd26151c5fa8ac99d1a794a3d1c67197bab81cc7886a3e903c3bf3d2f3ab8324 - sha512sums = 77a14e4a5f44d0f0e3895e1802c715907174a007c72b074005b17d6997098ac399e8d08b14c6aa9a3d307354e3f1b52d0640d64c3afd8598f260029b3b41a926 - sha512sums = a03f2b34847a74920c840131db046370502f6de53c9e27e81c1e3e8cb9dfeae2954cc86d1e874513192ab34c17dd54a7eafc9eadee8037aafa26e2d2d05b7c47 - sha512sums = b4f768da3974891e50322aed57cbcb228a0f6d54126163719ea41eeb9a9e6ffd7bff30cc3fb0af3e9e8a165d5b0d84d7beb5f442d316a98c79acdb24333687cb - sha512sums = 475129b7243db100d5a93e4efb099c32b0bde8c9950494618c2d1bd91e91d19d6e4a2699f071145da585527fd890324073cd03bb520baf80332bbeda533e7015 - sha512sums = a7bae3d40e67de1a7753cc11f8bbf1a8cf87d642797fc14771e349d66a0127f5a6f767d04b434c5414cc50ae68508e3f21213b500b3abad1ebbb1a3b510be6fd + source = 0022-Cleanup-native-widgets.patch + source = 0023-libobs-graphics-Add-Linux-only-device_texture_create.patch + source = 0024-deps-glad-Add-DMA-BUF-EGL-extensions.patch + source = 0025-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch + sha512sums = 54a8eadf7ded1d309987a5f677ea7513b96cf95b071fd2321c3e712097d872a5f724edf9aba7cfa9452884b79d230fd65d512647c8583ca71691894277ca89b1 + sha512sums = 456973a51bbb3e84974525de757bc3c88c67faf0c36366a6787b72b30ba978491bfb1161d5364cf7b0174ced1fe8b04c0e2e4c13c6f88c79dbeb151ce24eb38f + sha512sums = 231b518b34951924ba0f7da56379036cdf2d08e9259365e67f617ed458e21c4a2d5193e25200d6270bf74f462a9916085a3f3aa9f4edd35c8e501922bef6f1b6 + sha512sums = 3cdb29a4d3b639769758e8ea1d94a36baa89fec5e93110d1256ff275d83267c10f09888e6e29639d299e8322256d80ba19072519ae080bd461bc8cc2171e0405 + sha512sums = 57e430c1ea3945c0ad9a33414c32a35623f870b0c9aaf79fc3e03a00f1ad8e2c890c28e509bf241ecd73f573c367b33262b6291d82f519d0b5234a76c1d72f7d + sha512sums = 09d71bf1a2f3e96a6bbba05d34e77407520741f9b302471d515af8d37f3f221b68f5656fd3c88899786044813743eb765c4bfbeab33fd3faf4f9a738f44873a3 + sha512sums = 7bc1ea2d79b9c95f6fe12b77aa491f2072a2e417528ce95901b520fcfb80268dfd3bc14009b13932f833fbb7941427089b4e7d005b473863405f71c9a6c1987d + sha512sums = 19dfc1438743c18512190e663f313fcf0d0b11dbdff685e23f732c7234ce2b3b60c923c91035576979843f97a28ff9c877ffb9866b79e04a42e5c0df4988f762 + sha512sums = 00a37e551cfb9218df7e431b55e8d882244ce06a52c70b8dbff145493fedba0c19d9cc39cbc53c7c2ad0cf4e6886f1302bd0b7eb9ff0de31ff9938e060e35d7c + sha512sums = 075ba030b5b2ebb54213eebb34523cce48abf53118c3c21bca9bd6e40c984f3739e3581a0ee0cec0e63f42a496c1dc42fbf12a8714133c7b6ad0ee1027326e5b + sha512sums = d8aed1389391239a2e71525b66f9652958c8248a7bf9bfa5c296af72976c6d293635d16fed58a162e6a5228f15302530754619dd57c2db6156b9db631274762b + sha512sums = 25ba2513de78e335d8ba3c711fce9b0dfa2fe7d144a2ac8147fcf7a26a0dd9b69d26b1c809f519ddcb550d217fb2ceb8ff44f126dcd4913ffe9b624c00e17110 + sha512sums = 3333b94a266a21654b3fab1eff67cf370cacf942f4d8ff29680a868dd3748c664378a4de28ca62e2a21146b737ea197e641cdb8691b73743a030bc79a0044259 + sha512sums = b93cb4764e5330ea273370e577382240bc0f42f7b3e2916ba04b0e4a30fb20f3388d83fab1ede3204807f38927014945d6e2a374edb2040bed847b4ca2228977 + sha512sums = 049cc567be0ec4e7994762ce30d95f496f05dd4996b742ba4f6be746f0a2d7f1e92491eb07d9f71047dacd094e5c632147e81c0a71f91f857fd0eb36f0a085a4 + sha512sums = 58628d12e62bd0a2193425e5b4ec8a2cb8f843c17ed25c69ac867340c4438bead99d8b0aee1dda45238cad1c05c29d41d24e7b0931a6ef60c2ef8cdfe71045e4 + sha512sums = 08dc77ce5fd0452adbd260015aca618d3f2aa15ae8ed716e1349bbf4f67af293f1857fd2c50e79cde3cf00739605dc5bb240bcf1983e8229bc1c70453fd2d435 + sha512sums = 8842240e2e6c73cc2921e80c9fb1ff02dd6d916d50c448f467a10f8db754d65f09271f741853a61cb5c6de96b5804b9215e11e7d3e5fcffe283ea6358693ca56 + sha512sums = 7580a5aeb005e713a1bcb7f51d8088e6a55a417b17e034ffad98007278f4b00edc3433bb0c27ee7fcab4332c670318e26429d58e7e7e21c39d0f636d886f0573 + sha512sums = 5474e2ee6a83501a96d3b392c696eca272c022a2415546dcdc577cd9a245759024935bd71e762b2057db5cd4e7368c17fde55e77c529a299d22cd19ade9ae456 + sha512sums = d3591a8cb41c8cdad9519ae5c382de288151a697e27eeff4e7c31a8988f653c98b95b43a260cd3a3a72aa1b48d61b6c101c4b1c7060a1afbc83d0a15f66cbf02 + sha512sums = c8e7126f0cfb569553df57db294aa960429275758be1b723eba1428c2564ba1c02fd8c614a3a886b932e0466d7470aa10ab078426ec42e62c8fb4c5ebf59ed30 + sha512sums = 9481184036b937bef673c7bdcc3031d74ff037423f38f81708a428f7e25f5dd8a86efd55dd4d53b898d3fceb549640542f8fdf0724d98c102409d4bf1b5a39a4 + sha512sums = a9ebedad561e6c7bcf33858bf9e8fa71d331d3b95007675e7cd3edd640fb9b23a5ff956749198618c3350912eab82aa87a2d979016e891c12d1df580d28de081 + sha512sums = 29ff61d5b0519f072c38973c281dc176f6250d734619689544a6c47f6975cb0ec53f9b66550864b80b889c5626120df1b0b2f08f3f7056221f91ffed2ef495b6 + sha512sums = 028c6c012c6f73a172cb9fc11e7631261f33a4f8b4d86bbb55ad098cd1be64f00dcad623b90be7c0fabf3ff5ff86aeb60f4b2e5bee7cf4b055f905b018595b56 pkgname = obs-studio-wayland diff --git a/0001-deps-glad-Add-EGL.patch b/0001-deps-glad-Add-EGL.patch index f912564..7618f1b 100644 --- a/0001-deps-glad-Add-EGL.patch +++ b/0001-deps-glad-Add-EGL.patch @@ -1,7 +1,7 @@ -From 9ae80ef763534a7e74b286bfa8752f1862b3c965 Mon Sep 17 00:00:00 2001 +From 235b474bc274ac05b12ad3e7047ce3ac88b7b0f9 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Mon, 9 Mar 2020 13:10:16 -0300 -Subject: [PATCH 01/24] deps-glad: Add EGL +Subject: [PATCH 01/25] deps-glad: Add EGL The code is generated by https://glad.dav1d.de/ --- @@ -74,7 +74,7 @@ index 00000000..ee27cc90 + +mark_as_advanced(EGL_INCLUDE_DIRS EGL_LIBRARIES) diff --git a/deps/glad/CMakeLists.txt b/deps/glad/CMakeLists.txt -index 2c4cf13a..9cb7e8fd 100644 +index 17ccb9a9..60b3ad41 100644 --- a/deps/glad/CMakeLists.txt +++ b/deps/glad/CMakeLists.txt @@ -4,6 +4,7 @@ find_package(OpenGL) @@ -106,7 +106,7 @@ index 2c4cf13a..9cb7e8fd 100644 endif() add_library(glad SHARED -@@ -54,7 +59,9 @@ endif() +@@ -53,7 +58,9 @@ endif() if(NOT WIN32 AND NOT APPLE) set(glad_PLATFORM_DEPS diff --git a/0002-libobs-opengl-Rename-gl-x11.c-to-gl-x11-glx.c.patch b/0002-libobs-opengl-Rename-gl-x11.c-to-gl-x11-glx.c.patch index 652b6c2..9b22c83 100644 --- a/0002-libobs-opengl-Rename-gl-x11.c-to-gl-x11-glx.c.patch +++ b/0002-libobs-opengl-Rename-gl-x11.c-to-gl-x11-glx.c.patch @@ -1,7 +1,7 @@ -From 5e10b60ae82614cc6671864042f3629ce4743267 Mon Sep 17 00:00:00 2001 +From 79bd851cc2f7abec7524a55d60c75709ba61f932 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Mon, 9 Mar 2020 13:19:31 -0300 -Subject: [PATCH 02/24] libobs-opengl: Rename gl-x11.c to gl-x11-glx.c +Subject: [PATCH 02/25] libobs-opengl: Rename gl-x11.c to gl-x11-glx.c This is in preparation for the future abstraction layer (gl-x11-*) and also to match the actual name of the windowing system. When @@ -14,7 +14,7 @@ new file name matches that now. rename libobs-opengl/{gl-x11.c => gl-x11-glx.c} (100%) diff --git a/libobs-opengl/CMakeLists.txt b/libobs-opengl/CMakeLists.txt -index 1d53d518..776f1330 100644 +index c2fa4fd6..35bb5c65 100644 --- a/libobs-opengl/CMakeLists.txt +++ b/libobs-opengl/CMakeLists.txt @@ -49,7 +49,7 @@ else() #This needs to change to be more specific to get ready for Wayland diff --git a/0003-libobs-opengl-Factor-out-GLX-winsys.patch b/0003-libobs-opengl-Factor-out-GLX-winsys.patch index 870fa2a..ed961d9 100644 --- a/0003-libobs-opengl-Factor-out-GLX-winsys.patch +++ b/0003-libobs-opengl-Factor-out-GLX-winsys.patch @@ -1,7 +1,7 @@ -From 8ac176c96716a82ba889964425ef78bfcdbb3a2b Mon Sep 17 00:00:00 2001 +From 6f1e483a579755577020c4b426faa865f40eab8f Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Mon, 9 Mar 2020 16:46:37 -0300 -Subject: [PATCH 03/24] libobs-opengl: Factor out GLX winsys +Subject: [PATCH 03/25] libobs-opengl: Factor out GLX winsys Move the GLX-related code to gl-x11-glx, and introduce gl-nix as a winsys-agnostic abstraction layer. gl-nix serves as the runtime @@ -22,7 +22,7 @@ The gl-nix code was originally written by Jason Francis create mode 100644 libobs-opengl/gl-x11-glx.h diff --git a/libobs-opengl/CMakeLists.txt b/libobs-opengl/CMakeLists.txt -index 776f1330..50afb923 100644 +index 35bb5c65..6a4bb97d 100644 --- a/libobs-opengl/CMakeLists.txt +++ b/libobs-opengl/CMakeLists.txt @@ -49,6 +49,7 @@ else() #This needs to change to be more specific to get ready for Wayland diff --git a/0004-libobs-opengl-Introduce-the-X11-EGL-winsys.patch b/0004-libobs-opengl-Introduce-the-X11-EGL-winsys.patch index 564813f..cbec9cb 100644 --- a/0004-libobs-opengl-Introduce-the-X11-EGL-winsys.patch +++ b/0004-libobs-opengl-Introduce-the-X11-EGL-winsys.patch @@ -1,7 +1,7 @@ -From 25ae9766e63d059a10bdaa1ce267367e24e455d5 Mon Sep 17 00:00:00 2001 +From 584adb3b3cff20717501da1d99d8693655838a05 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Mon, 9 Mar 2020 17:35:49 -0300 -Subject: [PATCH 04/24] libobs-opengl: Introduce the X11/EGL winsys +Subject: [PATCH 04/25] libobs-opengl: Introduce the X11/EGL winsys Introduce the EGL/X11 winsys, and use it when the OBS_USE_EGL environment variable is defined. This variable is only temporary, for future commits @@ -18,7 +18,7 @@ All the EGL/X11 code is authored by Ivan Avdeev . create mode 100644 libobs-opengl/gl-x11-egl.h diff --git a/libobs-opengl/CMakeLists.txt b/libobs-opengl/CMakeLists.txt -index 50afb923..9c645c3d 100644 +index 6a4bb97d..973c5da3 100644 --- a/libobs-opengl/CMakeLists.txt +++ b/libobs-opengl/CMakeLists.txt @@ -50,6 +50,7 @@ else() #This needs to change to be more specific to get ready for Wayland diff --git a/0005-deps-glad-Make-X11-required-as-well.patch b/0005-deps-glad-Make-X11-required-as-well.patch index a2f07dc..10ead30 100644 --- a/0005-deps-glad-Make-X11-required-as-well.patch +++ b/0005-deps-glad-Make-X11-required-as-well.patch @@ -1,7 +1,7 @@ -From 3a3655510da3bee8c0314543e299a617c780efe6 Mon Sep 17 00:00:00 2001 +From 99ccd3f717f0f2325a3f4f607f387b4da6236880 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Sat, 11 Apr 2020 23:49:05 -0300 -Subject: [PATCH 05/24] deps/glad: Make X11 required as well +Subject: [PATCH 05/25] deps/glad: Make X11 required as well To keep consistency with the EGL line --- @@ -9,7 +9,7 @@ To keep consistency with the EGL line 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/glad/CMakeLists.txt b/deps/glad/CMakeLists.txt -index 9cb7e8fd..a31a5b91 100644 +index 60b3ad41..83f4efac 100644 --- a/deps/glad/CMakeLists.txt +++ b/deps/glad/CMakeLists.txt @@ -3,7 +3,7 @@ project(glad) diff --git a/0006-ci-Install-qtbase5-private-dev-on-Linux.patch b/0006-ci-Install-qtbase5-private-dev-on-Linux.patch index 049a3a3..b21989b 100644 --- a/0006-ci-Install-qtbase5-private-dev-on-Linux.patch +++ b/0006-ci-Install-qtbase5-private-dev-on-Linux.patch @@ -1,7 +1,7 @@ -From 0bbcf8f5989342a8dd5115a8792bec6706e5bc54 Mon Sep 17 00:00:00 2001 +From 986bb88baa8836c90abc0a3d621f98b6ade1f8d7 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Fri, 6 Mar 2020 16:22:01 -0300 -Subject: [PATCH 06/24] ci: Install qtbase5-private-dev on Linux +Subject: [PATCH 06/25] ci: Install qtbase5-private-dev on Linux List this dependency both under CI/install-dependencies-linux.sh, and .github/workflows/main.yml. @@ -11,17 +11,17 @@ List this dependency both under CI/install-dependencies-linux.sh, and 2 files changed, 2 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml -index 47c47101..008c3ee9 100644 +index 33552e05..e24d811f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml -@@ -176,6 +176,7 @@ jobs: +@@ -375,6 +375,7 @@ jobs: pkg-config \ python3-dev \ qtbase5-dev \ + qtbase5-private-dev \ libqt5svg5-dev \ - swig - - name: 'Install prerequisite: Chromium Embedded Framework' + swig \ + libcmocka-dev diff --git a/CI/install-dependencies-linux.sh b/CI/install-dependencies-linux.sh index 0d92fbf9..478f953a 100755 --- a/CI/install-dependencies-linux.sh diff --git a/0007-libobs-nix-Move-X11-specific-code-to-obs-nix-x11.c.patch b/0007-libobs-nix-Move-X11-specific-code-to-obs-nix-x11.c.patch index 15f9fa9..31e4a89 100644 --- a/0007-libobs-nix-Move-X11-specific-code-to-obs-nix-x11.c.patch +++ b/0007-libobs-nix-Move-X11-specific-code-to-obs-nix-x11.c.patch @@ -1,7 +1,7 @@ -From 1aa93bda22845acc9dabfd4f810ce88d649de041 Mon Sep 17 00:00:00 2001 +From fa8912d9e82334714646eb3e23047fb5f00026f6 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Fri, 6 Mar 2020 17:24:33 -0300 -Subject: [PATCH 07/24] libobs/nix: Move X11-specific code to obs-nix-x11.c +Subject: [PATCH 07/25] libobs/nix: Move X11-specific code to obs-nix-x11.c Currently, obs-nix.c is highly tied to the X11 display server. It includes X11 headers directly, and make use @@ -26,10 +26,10 @@ a new function to retrieve the X11 hotkeys vtable. create mode 100644 libobs/obs-nix.h diff --git a/libobs/CMakeLists.txt b/libobs/CMakeLists.txt -index 0b592d7a..1625363f 100644 +index 3702875e..e1765034 100644 --- a/libobs/CMakeLists.txt +++ b/libobs/CMakeLists.txt -@@ -180,6 +180,7 @@ elseif(APPLE) +@@ -181,6 +181,7 @@ elseif(APPLE) elseif(UNIX) set(libobs_PLATFORM_SOURCES obs-nix.c diff --git a/0008-libobs-Introduce-the-concept-of-a-Unix-platform.patch b/0008-libobs-Introduce-the-concept-of-a-Unix-platform.patch index b05c6a9..ecfbf0f 100644 --- a/0008-libobs-Introduce-the-concept-of-a-Unix-platform.patch +++ b/0008-libobs-Introduce-the-concept-of-a-Unix-platform.patch @@ -1,7 +1,7 @@ -From e4823815167d212426ad71d4f4a558c93928c623 Mon Sep 17 00:00:00 2001 +From 678cf335476375c701b6db87b3835f248f93d7dd Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Fri, 6 Mar 2020 17:50:41 -0300 -Subject: [PATCH 08/24] libobs: Introduce the concept of a Unix platform +Subject: [PATCH 08/25] libobs: Introduce the concept of a Unix platform This is a Unix-specific code. The only available platforms at this point are the X11/GLX and X11/EGL platforms. @@ -20,10 +20,10 @@ the only display that is set right now is the X11 display. create mode 100644 libobs/obs-nix-platform.h diff --git a/UI/obs-app.cpp b/UI/obs-app.cpp -index b6f0b7d5..cf9ecabf 100644 +index 408ba5e9..7afa2209 100644 --- a/UI/obs-app.cpp +++ b/UI/obs-app.cpp -@@ -54,6 +54,11 @@ +@@ -56,6 +56,11 @@ #include #endif @@ -35,7 +35,7 @@ index b6f0b7d5..cf9ecabf 100644 #include #include "ui-config.h" -@@ -1346,6 +1351,13 @@ bool OBSApp::OBSInit() +@@ -1369,6 +1374,13 @@ bool OBSApp::OBSInit() qRegisterMetaType(); @@ -50,10 +50,10 @@ index b6f0b7d5..cf9ecabf 100644 return false; diff --git a/libobs/CMakeLists.txt b/libobs/CMakeLists.txt -index 1625363f..489334c0 100644 +index e1765034..7a786350 100644 --- a/libobs/CMakeLists.txt +++ b/libobs/CMakeLists.txt -@@ -180,13 +180,18 @@ elseif(APPLE) +@@ -181,13 +181,18 @@ elseif(APPLE) elseif(UNIX) set(libobs_PLATFORM_SOURCES obs-nix.c @@ -72,7 +72,7 @@ index 1625363f..489334c0 100644 util/simde/check.h util/simde/hedley.h util/simde/mmx.h -@@ -197,6 +202,7 @@ elseif(UNIX) +@@ -198,6 +203,7 @@ elseif(UNIX) util/threading-posix.h) else() set(libobs_PLATFORM_HEADERS diff --git a/0009-UI-Set-the-Unix-platform-on-startup.patch b/0009-UI-Set-the-Unix-platform-on-startup.patch index 1ca0f83..19d48fb 100644 --- a/0009-UI-Set-the-Unix-platform-on-startup.patch +++ b/0009-UI-Set-the-Unix-platform-on-startup.patch @@ -1,7 +1,7 @@ -From f686f95d5577e39d1e230992db9667263a50b056 Mon Sep 17 00:00:00 2001 +From c5734b839a8e50e561d6ad42b3924e65800bdacf Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Tue, 7 Apr 2020 23:17:02 -0300 -Subject: [PATCH 09/24] UI: Set the Unix platform on startup +Subject: [PATCH 09/25] UI: Set the Unix platform on startup Move the OBS_USE_EGL environment variable check to obs-app.cpp, and set the OBS platform to be either OBS_NIX_PLATFORM_X11_GLX @@ -13,10 +13,10 @@ or OBS_NIX_PLATFORM_X11_EGL. 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/UI/obs-app.cpp b/UI/obs-app.cpp -index cf9ecabf..c62ba1da 100644 +index 7afa2209..2a8de8d9 100644 --- a/UI/obs-app.cpp +++ b/UI/obs-app.cpp -@@ -1354,6 +1354,10 @@ bool OBSApp::OBSInit() +@@ -1377,6 +1377,10 @@ bool OBSApp::OBSInit() #if !defined(_WIN32) && !defined(__APPLE__) obs_set_nix_platform(OBS_NIX_PLATFORM_X11_GLX); if (QApplication::platformName() == "xcb") { diff --git a/0010-linux-capture-Fail-to-load-when-running-on-EGL.patch b/0010-linux-capture-Fail-to-load-when-running-on-EGL.patch index 6582480..9ef1526 100644 --- a/0010-linux-capture-Fail-to-load-when-running-on-EGL.patch +++ b/0010-linux-capture-Fail-to-load-when-running-on-EGL.patch @@ -1,7 +1,7 @@ -From 74515c11cd2386041df09d40591b61ec232726c6 Mon Sep 17 00:00:00 2001 +From 2b169c0667bb779880557d361754220098081a39 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Wed, 8 Apr 2020 23:58:43 -0300 -Subject: [PATCH 10/24] linux-capture: Fail to load when running on EGL +Subject: [PATCH 10/25] linux-capture: Fail to load when running on EGL Right now, linux-capture hard-depends on GLX. Disable it when running under EGL. diff --git a/0011-libobs-Add-a-Wayland-platform.patch b/0011-libobs-Add-a-Wayland-platform.patch index baeba83..3a9d60d 100644 --- a/0011-libobs-Add-a-Wayland-platform.patch +++ b/0011-libobs-Add-a-Wayland-platform.patch @@ -1,7 +1,7 @@ -From 20b8264570f84ddc218b791643d26e168653ffbe Mon Sep 17 00:00:00 2001 +From eb2b38d24454b1fdd21cb8184a224cb9fa0579d3 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Fri, 6 Mar 2020 18:53:42 -0300 -Subject: [PATCH 11/24] libobs: Add a Wayland platform +Subject: [PATCH 11/25] libobs: Add a Wayland platform Introduce the OBS_NIX_PLATFORM_WAYLAND enum value, and try to detect it when OBS Studio runs by looking into the platform name. @@ -24,10 +24,10 @@ it when OBS Studio runs by looking into the platform name. create mode 100644 libobs/obs-nix-wayland.h diff --git a/CMakeLists.txt b/CMakeLists.txt -index b56c2bba..9ab530ce 100644 +index 5bdfe21f..7828c65a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -189,6 +189,8 @@ if(APPLE) +@@ -205,6 +205,8 @@ if(APPLE) list(APPEND CMAKE_INSTALL_RPATH "@loader_path/" "@executable_path/") elseif(UNIX) option(USE_XDG "Utilize XDG Base Directory Specification" ON) @@ -37,12 +37,12 @@ index b56c2bba..9ab530ce 100644 add_definitions(-DUSE_XDG) endif() diff --git a/UI/CMakeLists.txt b/UI/CMakeLists.txt -index a660f326..56195d7d 100644 +index df4d2645..ae689c95 100644 --- a/UI/CMakeLists.txt +++ b/UI/CMakeLists.txt -@@ -403,6 +403,11 @@ if (APPLE) - set_target_properties(obs PROPERTIES LINK_FLAGS "-pagezero_size 10000 -image_base 100000000") +@@ -408,6 +408,11 @@ if (APPLE) endif() + set_target_properties(obs PROPERTIES FOLDER "frontend") +if (ENABLE_WAYLAND) + find_package(Qt5Gui REQUIRED) @@ -53,10 +53,10 @@ index a660f326..56195d7d 100644 install_obs_core(obs) diff --git a/UI/obs-app.cpp b/UI/obs-app.cpp -index c62ba1da..8335c2ce 100644 +index 2a8de8d9..ce350f06 100644 --- a/UI/obs-app.cpp +++ b/UI/obs-app.cpp -@@ -57,6 +57,11 @@ +@@ -59,6 +59,11 @@ #if !defined(_WIN32) && !defined(__APPLE__) #include #include @@ -68,7 +68,7 @@ index c62ba1da..8335c2ce 100644 #endif #include -@@ -1360,6 +1365,18 @@ bool OBSApp::OBSInit() +@@ -1383,6 +1388,18 @@ bool OBSApp::OBSInit() } obs_set_nix_platform_display(QX11Info::display()); } @@ -172,7 +172,7 @@ index 00000000..377f0545 + +ENDIF () diff --git a/libobs-opengl/CMakeLists.txt b/libobs-opengl/CMakeLists.txt -index 9c645c3d..f84636cf 100644 +index 973c5da3..08e06f0d 100644 --- a/libobs-opengl/CMakeLists.txt +++ b/libobs-opengl/CMakeLists.txt @@ -32,7 +32,7 @@ elseif(APPLE) @@ -201,10 +201,10 @@ index 9ed3d198..581e16a4 100644 assert(gl_vtable != NULL); diff --git a/libobs/CMakeLists.txt b/libobs/CMakeLists.txt -index 489334c0..1cb1583b 100644 +index 7a786350..860ad1c8 100644 --- a/libobs/CMakeLists.txt +++ b/libobs/CMakeLists.txt -@@ -189,6 +189,21 @@ elseif(UNIX) +@@ -190,6 +190,21 @@ elseif(UNIX) set(libobs_PLATFORM_HEADERS obs-nix-platform.h) diff --git a/0012-libobs-opengl-Try-to-use-the-platform-display-if-ava.patch b/0012-libobs-opengl-Try-to-use-the-platform-display-if-ava.patch index c211e4a..ea12f25 100644 --- a/0012-libobs-opengl-Try-to-use-the-platform-display-if-ava.patch +++ b/0012-libobs-opengl-Try-to-use-the-platform-display-if-ava.patch @@ -1,7 +1,7 @@ -From a9847552f9b6034f78ce6aae2e4ad7a63a274c5a Mon Sep 17 00:00:00 2001 +From f867ce062bd6033291a7f1168804439f88929de5 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Sat, 11 Apr 2020 23:32:16 -0300 -Subject: [PATCH 12/24] libobs-opengl: Try to use the platform display if +Subject: [PATCH 12/25] libobs-opengl: Try to use the platform display if available We need to ensure we're running all X11 code on the same display. diff --git a/0013-libobs-opengl-Introduce-an-EGL-Wayland-renderer.patch b/0013-libobs-opengl-Introduce-an-EGL-Wayland-renderer.patch index 17b0ae6..4b41b0e 100644 --- a/0013-libobs-opengl-Introduce-an-EGL-Wayland-renderer.patch +++ b/0013-libobs-opengl-Introduce-an-EGL-Wayland-renderer.patch @@ -1,7 +1,7 @@ -From fc5b9a4e3f196e0795b1966b64b86d02e4cc1ecb Mon Sep 17 00:00:00 2001 +From 6969877f0d16864bfe0392f18de4310309372eb3 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Mon, 9 Mar 2020 21:09:11 -0300 -Subject: [PATCH 13/24] libobs-opengl: Introduce an EGL/Wayland renderer +Subject: [PATCH 13/25] libobs-opengl: Introduce an EGL/Wayland renderer Introduce a new Wayland/EGL renderer. --- @@ -15,7 +15,7 @@ Introduce a new Wayland/EGL renderer. create mode 100644 libobs-opengl/gl-wayland-egl.h diff --git a/libobs-opengl/CMakeLists.txt b/libobs-opengl/CMakeLists.txt -index f84636cf..0f694b6c 100644 +index 08e06f0d..6476e0be 100644 --- a/libobs-opengl/CMakeLists.txt +++ b/libobs-opengl/CMakeLists.txt @@ -52,6 +52,29 @@ else() diff --git a/0014-UI-Retrieve-Wayland-surface-from-QWindow.patch b/0014-UI-Retrieve-Wayland-surface-from-QWindow.patch index 6457bc3..ca26673 100644 --- a/0014-UI-Retrieve-Wayland-surface-from-QWindow.patch +++ b/0014-UI-Retrieve-Wayland-surface-from-QWindow.patch @@ -1,7 +1,7 @@ -From 925a05f9db662ceb3200997d085dbce682f74ffc Mon Sep 17 00:00:00 2001 +From ee7de65649ce502b68cd0b2a1da8cf15f016cc0d Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Mon, 9 Mar 2020 21:23:37 -0300 -Subject: [PATCH 14/24] UI: Retrieve Wayland surface from QWindow +Subject: [PATCH 14/25] UI: Retrieve Wayland surface from QWindow On Wayland, we want to query the window's underlying platform for the Wayland surface, instead of foolishly @@ -29,11 +29,11 @@ index 1bb97c7b..685ee6f9 100644 display = obs_display_create(&info, backgroundColor); diff --git a/UI/qt-wrappers.cpp b/UI/qt-wrappers.cpp -index e8a51d37..1485a181 100644 +index b9d00a78..040d1bb6 100644 --- a/UI/qt-wrappers.cpp +++ b/UI/qt-wrappers.cpp -@@ -27,9 +27,14 @@ - #include +@@ -28,9 +28,14 @@ + #include #if !defined(_WIN32) && !defined(__APPLE__) +#include @@ -47,7 +47,7 @@ index e8a51d37..1485a181 100644 static inline void OBSErrorBoxva(QWidget *parent, const char *msg, va_list args) { char full_message[4096]; -@@ -105,15 +110,28 @@ void OBSMessageBox::critical(QWidget *parent, const QString &title, +@@ -106,15 +111,28 @@ void OBSMessageBox::critical(QWidget *parent, const QString &title, mb.exec(); } @@ -82,7 +82,7 @@ index e8a51d37..1485a181 100644 } diff --git a/UI/qt-wrappers.hpp b/UI/qt-wrappers.hpp -index 69996deb..f191f8f9 100644 +index 71b11354..51c4f937 100644 --- a/UI/qt-wrappers.hpp +++ b/UI/qt-wrappers.hpp @@ -20,6 +20,7 @@ diff --git a/0015-UI-Destroy-display-when-becoming-invisible.patch b/0015-UI-Destroy-display-when-becoming-invisible.patch index 767ad35..4a1f22e 100644 --- a/0015-UI-Destroy-display-when-becoming-invisible.patch +++ b/0015-UI-Destroy-display-when-becoming-invisible.patch @@ -1,7 +1,7 @@ -From 810e7a1d5e547d25da3d62ecbb25a1dcb8990d2f Mon Sep 17 00:00:00 2001 +From 8c902a15e93978d9e1c61f559a076fe5ae606503 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Tue, 18 Aug 2020 19:38:29 -0300 -Subject: [PATCH 15/24] UI: Destroy display when becoming invisible +Subject: [PATCH 15/25] UI: Destroy display when becoming invisible When a window is made invisible, then visible again, the obs_display is reused. Turns out, QT destroys the wl_surface @@ -51,13 +51,13 @@ index 685ee6f9..fc83e0e0 100644 if (!display) { CreateDisplay(); diff --git a/UI/qt-display.hpp b/UI/qt-display.hpp -index a2e5a3ef..50f891f8 100644 +index 816d96bc..21308e70 100644 --- a/UI/qt-display.hpp +++ b/UI/qt-display.hpp @@ -25,6 +25,7 @@ signals: public: OBSQTDisplay(QWidget *parent = nullptr, - Qt::WindowFlags flags = nullptr); + Qt::WindowFlags flags = Qt::WindowFlags()); + ~OBSQTDisplay() { display = nullptr; } virtual QPaintEngine *paintEngine() const override; diff --git a/0016-UI-Don-t-create-obs_display-when-QTToGSWindow-fails.patch b/0016-UI-Don-t-create-obs_display-when-QTToGSWindow-fails.patch index 7c7a39e..5c3508d 100644 --- a/0016-UI-Don-t-create-obs_display-when-QTToGSWindow-fails.patch +++ b/0016-UI-Don-t-create-obs_display-when-QTToGSWindow-fails.patch @@ -1,7 +1,7 @@ -From 00fcdb6b5f8a01da49d3325884c2e17fa15a5110 Mon Sep 17 00:00:00 2001 +From 1e1f2a08d604ef81bf73584e89544b6002a8923b Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Wed, 19 Aug 2020 10:11:08 -0300 -Subject: [PATCH 16/24] UI: Don't create obs_display when QTToGSWindow fails +Subject: [PATCH 16/25] UI: Don't create obs_display when QTToGSWindow fails Right after showing the OBSQTDisplay widget, it may happen that a wl_surface is not yet created and attached to the window. When this @@ -30,10 +30,10 @@ index fc83e0e0..c00719ce 100644 display = obs_display_create(&info, backgroundColor); diff --git a/UI/qt-wrappers.cpp b/UI/qt-wrappers.cpp -index 1485a181..da5a8ef5 100644 +index 040d1bb6..446576f3 100644 --- a/UI/qt-wrappers.cpp +++ b/UI/qt-wrappers.cpp -@@ -110,8 +110,10 @@ void OBSMessageBox::critical(QWidget *parent, const QString &title, +@@ -111,8 +111,10 @@ void OBSMessageBox::critical(QWidget *parent, const QString &title, mb.exec(); } @@ -45,7 +45,7 @@ index 1485a181..da5a8ef5 100644 #ifdef _WIN32 gswindow.hwnd = (HWND)window->winId(); #elif __APPLE__ -@@ -129,10 +131,12 @@ void QTToGSWindow(QWindow *window, gs_window &gswindow) +@@ -130,10 +132,12 @@ void QTToGSWindow(QWindow *window, gs_window &gswindow) QGuiApplication::platformNativeInterface(); gswindow.display = native->nativeResourceForWindow("surface", window); @@ -59,7 +59,7 @@ index 1485a181..da5a8ef5 100644 uint32_t TranslateQtKeyboardEventModifiers(Qt::KeyboardModifiers mods) diff --git a/UI/qt-wrappers.hpp b/UI/qt-wrappers.hpp -index f191f8f9..cb244a74 100644 +index 51c4f937..604e67e0 100644 --- a/UI/qt-wrappers.hpp +++ b/UI/qt-wrappers.hpp @@ -56,7 +56,7 @@ public: diff --git a/0017-UI-Rename-callback-to-match-signal-name.patch b/0017-UI-Rename-callback-to-match-signal-name.patch index 8a2d411..148d8e0 100644 --- a/0017-UI-Rename-callback-to-match-signal-name.patch +++ b/0017-UI-Rename-callback-to-match-signal-name.patch @@ -1,7 +1,7 @@ -From 0c2fdafdb3c0b522732905632bb01e4ada33171c Mon Sep 17 00:00:00 2001 +From d6f5ba86a0ba2b11344e9ef1f8e0b043b9860dad Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Wed, 19 Aug 2020 13:08:01 -0300 -Subject: [PATCH 17/24] UI: Rename callback to match signal name +Subject: [PATCH 17/25] UI: Rename callback to match signal name The sizeChanged callback is connected to the screenChanged signal, and evidently the naming doesn't match. Rename the callback to diff --git a/0018-UI-Disable-and-ignore-Always-On-Top-on-Wayland-platf.patch b/0018-UI-Disable-and-ignore-Always-On-Top-on-Wayland-platf.patch index 90fac57..88a2dc0 100644 --- a/0018-UI-Disable-and-ignore-Always-On-Top-on-Wayland-platf.patch +++ b/0018-UI-Disable-and-ignore-Always-On-Top-on-Wayland-platf.patch @@ -1,7 +1,7 @@ -From 9b1439bc349d79874e0b446d156982c130e698f0 Mon Sep 17 00:00:00 2001 +From dbe3c133a386f7c4aae505d298d6d90d6f1407bf Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Wed, 19 Aug 2020 15:09:26 -0300 -Subject: [PATCH 18/24] UI: Disable and ignore Always On Top on Wayland +Subject: [PATCH 18/25] UI: Disable and ignore Always On Top on Wayland platforms This is a dangerous operation on Wayland, and is crashing not only @@ -15,10 +15,10 @@ option on the window menu. 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp -index 09304eb1..653ad93a 100644 +index a93b2136..de3d8856 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp -@@ -75,6 +75,10 @@ +@@ -78,6 +78,10 @@ #include @@ -29,7 +29,7 @@ index 09304eb1..653ad93a 100644 using namespace json11; using namespace std; -@@ -1713,9 +1717,22 @@ void OBSBasic::OBSInit() +@@ -1799,9 +1803,22 @@ void OBSBasic::OBSInit() bool alwaysOnTop = config_get_bool(App()->GlobalConfig(), "BasicWindow", "AlwaysOnTop"); diff --git a/0019-UI-Make-OBSQTDisplay-CreateDisplay-public-and-allow-.patch b/0019-UI-Make-OBSQTDisplay-CreateDisplay-public-and-allow-.patch index 74988c2..6370862 100644 --- a/0019-UI-Make-OBSQTDisplay-CreateDisplay-public-and-allow-.patch +++ b/0019-UI-Make-OBSQTDisplay-CreateDisplay-public-and-allow-.patch @@ -1,7 +1,7 @@ -From 721a2b85b798f09a8458ed23198e95019dcc9bae Mon Sep 17 00:00:00 2001 +From fd3cd8b1134bc069943e1a2012f138437d210046 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Thu, 20 Aug 2020 11:57:19 -0300 -Subject: [PATCH 19/24] UI: Make OBSQTDisplay::CreateDisplay() public and allow +Subject: [PATCH 19/25] UI: Make OBSQTDisplay::CreateDisplay() public and allow forcing creation This will be used by a new event filter, added only when running as a Wayland @@ -31,7 +31,7 @@ index feed5b6c..b230ab4e 100644 QSize size = GetPixelSize(this); diff --git a/UI/qt-display.hpp b/UI/qt-display.hpp -index 50f891f8..ac717b82 100644 +index 21308e70..c48c1267 100644 --- a/UI/qt-display.hpp +++ b/UI/qt-display.hpp @@ -13,8 +13,6 @@ class OBSQTDisplay : public QWidget { diff --git a/0020-UI-Check-for-Expose-and-PlatformSurface-events-to-cr.patch b/0020-UI-Check-for-Expose-and-PlatformSurface-events-to-cr.patch index 677ee1d..c9cb439 100644 --- a/0020-UI-Check-for-Expose-and-PlatformSurface-events-to-cr.patch +++ b/0020-UI-Check-for-Expose-and-PlatformSurface-events-to-cr.patch @@ -1,7 +1,7 @@ -From 656c0b68892d1ab455979c59dfef529924c57bff Mon Sep 17 00:00:00 2001 +From 8a8757b4b6ce1e74d68c9fe6a3f31fad906c0fe7 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Thu, 20 Aug 2020 11:58:45 -0300 -Subject: [PATCH 20/24] UI: Check for Expose and PlatformSurface events to +Subject: [PATCH 20/25] UI: Check for Expose and PlatformSurface events to create display This is a workaround for QWaylandWindow never becoming exposed, or @@ -9,14 +9,14 @@ receiving the QEvent::Expose [1]. [1] https://bugreports.qt.io/browse/QTBUG-86176 --- - UI/qt-display.cpp | 58 +++++++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 58 insertions(+) + UI/qt-display.cpp | 56 +++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 56 insertions(+) diff --git a/UI/qt-display.cpp b/UI/qt-display.cpp -index b230ab4e..4487d460 100644 +index b230ab4e..5d81c463 100644 --- a/UI/qt-display.cpp +++ b/UI/qt-display.cpp -@@ -10,6 +10,58 @@ +@@ -10,6 +10,56 @@ #ifdef ENABLE_WAYLAND #include @@ -35,7 +35,6 @@ index b230ab4e..4487d460 100644 + QPlatformSurfaceEvent *surfaceEvent; + + switch (event->type()) { -+#if QT_VERSION < QT_VERSION_CHECK(5, 15, 1) + case QEvent::PlatformSurface: + surfaceEvent = + static_cast(event); @@ -48,7 +47,6 @@ index b230ab4e..4487d460 100644 + else + mTimerId = startTimer(67); // Arbitrary + break; -+#endif + case QEvent::Expose: + createOBSDisplay(); + break; @@ -75,7 +73,7 @@ index b230ab4e..4487d460 100644 #endif static inline long long color_to_int(const QColor &color) -@@ -65,6 +117,12 @@ OBSQTDisplay::OBSQTDisplay(QWidget *parent, Qt::WindowFlags flags) +@@ -65,6 +115,12 @@ OBSQTDisplay::OBSQTDisplay(QWidget *parent, Qt::WindowFlags flags) connect(windowHandle(), &QWindow::visibleChanged, windowVisible); connect(windowHandle(), &QWindow::screenChanged, screenChanged); diff --git a/0021-Don-t-create-native-widget-siblings.patch b/0021-Don-t-create-native-widget-siblings.patch index ed30512..312d436 100644 --- a/0021-Don-t-create-native-widget-siblings.patch +++ b/0021-Don-t-create-native-widget-siblings.patch @@ -1,7 +1,7 @@ -From cbb48e4213f5666a8714a8d644f8f8fb1473d793 Mon Sep 17 00:00:00 2001 +From 6e20eb830789cdf33c24e13a36f4d860b777d7b3 Mon Sep 17 00:00:00 2001 From: David Edmundson Date: Wed, 16 Sep 2020 15:24:22 +0100 -Subject: [PATCH 21/24] Don't create native widget siblings +Subject: [PATCH 21/25] Don't create native widget siblings Native windows really only make sense for previews. They can be a new xcb_window or a wayland subsurface. @@ -20,10 +20,10 @@ This default behaviour can be turned off. Now only the native widgets 1 file changed, 1 insertion(+) diff --git a/UI/obs-app.cpp b/UI/obs-app.cpp -index 8335c2ce..44df67ad 100644 +index ce350f06..09f1ae60 100644 --- a/UI/obs-app.cpp +++ b/UI/obs-app.cpp -@@ -1353,6 +1353,7 @@ bool OBSApp::OBSInit() +@@ -1376,6 +1376,7 @@ bool OBSApp::OBSInit() ProfileScope("OBSApp::OBSInit"); setAttribute(Qt::AA_UseHighDpiPixmaps); diff --git a/0022-Cleanup-native-widgets.patch b/0022-Cleanup-native-widgets.patch new file mode 100644 index 0000000..d872e79 --- /dev/null +++ b/0022-Cleanup-native-widgets.patch @@ -0,0 +1,416 @@ +From 2544f356373bbcc58515be5ea012bcc6d22e7c03 Mon Sep 17 00:00:00 2001 +From: Georges Basile Stavracas Neto +Date: Sun, 20 Sep 2020 11:29:15 -0300 +Subject: [PATCH 22/25] Cleanup native widgets + +Some widgets are marked as native unnecessarily. Native widgets are +a bit more involving than regular ones, so remove this flag. + +Original patch by David Edmundson +--- + UI/forms/AutoConfigStreamPage.ui | 4 +-- + UI/forms/OBSAbout.ui | 2 +- + UI/forms/OBSBasic.ui | 12 +++---- + UI/forms/OBSBasicFilters.ui | 10 +++--- + UI/forms/OBSBasicInteraction.ui | 2 +- + UI/forms/OBSBasicSettings.ui | 36 +++++++++---------- + UI/forms/OBSBasicTransform.ui | 6 ++-- + .../source-toolbar/game-capture-toolbar.ui | 2 +- + UI/forms/source-toolbar/media-controls.ui | 2 +- + .../source-toolbar/text-source-toolbar.ui | 2 +- + 10 files changed, 39 insertions(+), 39 deletions(-) + +diff --git a/UI/forms/AutoConfigStreamPage.ui b/UI/forms/AutoConfigStreamPage.ui +index 7eec15fa..d7034d3f 100644 +--- a/UI/forms/AutoConfigStreamPage.ui ++++ b/UI/forms/AutoConfigStreamPage.ui +@@ -30,7 +30,7 @@ + 0 + + +- ++ + + + 0 +@@ -261,7 +261,7 @@ + + + +- ++ + + + 0 +diff --git a/UI/forms/OBSAbout.ui b/UI/forms/OBSAbout.ui +index 790a9656..28e3374b 100644 +--- a/UI/forms/OBSAbout.ui ++++ b/UI/forms/OBSAbout.ui +@@ -149,7 +149,7 @@ + + + +- ++ + + + 0 +diff --git a/UI/forms/OBSBasic.ui b/UI/forms/OBSBasic.ui +index 8cc20521..87f1f11b 100644 +--- a/UI/forms/OBSBasic.ui ++++ b/UI/forms/OBSBasic.ui +@@ -61,7 +61,7 @@ + 2 + + +- ++ + + + 0 +@@ -167,7 +167,7 @@ + + + +- ++ + + + 0 +@@ -196,7 +196,7 @@ + + + +- ++ + + + 0 +@@ -235,7 +235,7 @@ + 4 + + +- ++ + + + 0 +@@ -377,7 +377,7 @@ + + + +- ++ + + + 0 +@@ -1083,7 +1083,7 @@ + 4 + + +- ++ + + + 2 +diff --git a/UI/forms/OBSBasicFilters.ui b/UI/forms/OBSBasicFilters.ui +index 572a31f9..eaec7257 100644 +--- a/UI/forms/OBSBasicFilters.ui ++++ b/UI/forms/OBSBasicFilters.ui +@@ -22,7 +22,7 @@ + + + +- ++ + + + 0 +@@ -63,7 +63,7 @@ + + + +- ++ + + + 4 +@@ -198,7 +198,7 @@ + + + +- ++ + + + 0 +@@ -239,7 +239,7 @@ + + + +- ++ + + + 4 +@@ -373,7 +373,7 @@ + + + +- ++ + + + 0 +diff --git a/UI/forms/OBSBasicInteraction.ui b/UI/forms/OBSBasicInteraction.ui +index 65d313bc..419140cf 100644 +--- a/UI/forms/OBSBasicInteraction.ui ++++ b/UI/forms/OBSBasicInteraction.ui +@@ -18,7 +18,7 @@ + + + +- ++ + + + 0 +diff --git a/UI/forms/OBSBasicSettings.ui b/UI/forms/OBSBasicSettings.ui +index f4eaa36c..d813bc10 100644 +--- a/UI/forms/OBSBasicSettings.ui ++++ b/UI/forms/OBSBasicSettings.ui +@@ -169,7 +169,7 @@ + 9 + + +- ++ + + + +@@ -799,7 +799,7 @@ + 0 + + +- ++ + + + 0 +@@ -1021,7 +1021,7 @@ + + + +- ++ + + + 0 +@@ -1170,7 +1170,7 @@ + + + +- ++ + + + 0 +@@ -1268,7 +1268,7 @@ + 9 + + +- ++ + + + 0 +@@ -1792,7 +1792,7 @@ + + + +- ++ + + + 0 +@@ -1851,7 +1851,7 @@ + 9 + + +- ++ + + + 0 +@@ -1869,7 +1869,7 @@ + 0 + + +- ++ + + + 0 +@@ -1949,7 +1949,7 @@ + + + +- ++ + + + 0 +@@ -2043,7 +2043,7 @@ + 9 + + +- ++ + + + QFormLayout::AllNonFixedFieldsGrow +@@ -2113,7 +2113,7 @@ + 0 + + +- ++ + + + 0 +@@ -2267,7 +2267,7 @@ + + + +- ++ + + + 0 +@@ -2438,7 +2438,7 @@ + + + +- ++ + + + 0 +@@ -2719,7 +2719,7 @@ + + + +- ++ + + + 0 +@@ -2899,7 +2899,7 @@ + 0 + + +- ++ + + + 0 +@@ -3763,7 +3763,7 @@ + 9 + + +- ++ + + + +@@ -4619,7 +4619,7 @@ + 9 + + +- ++ + + + +@@ -5012,7 +5012,7 @@ + + + +- ++ + + true + +diff --git a/UI/forms/OBSBasicTransform.ui b/UI/forms/OBSBasicTransform.ui +index 971cd023..a12e4e73 100644 +--- a/UI/forms/OBSBasicTransform.ui ++++ b/UI/forms/OBSBasicTransform.ui +@@ -48,7 +48,7 @@ + + + +- ++ + + + 0 +@@ -149,7 +149,7 @@ + + + +- ++ + + + 0 +@@ -404,7 +404,7 @@ + + + +- ++ + + + 0 +diff --git a/UI/forms/source-toolbar/game-capture-toolbar.ui b/UI/forms/source-toolbar/game-capture-toolbar.ui +index b2206428..cf3d9500 100644 +--- a/UI/forms/source-toolbar/game-capture-toolbar.ui ++++ b/UI/forms/source-toolbar/game-capture-toolbar.ui +@@ -148,7 +148,7 @@ + + + +- ++ + + + 0 +diff --git a/UI/forms/source-toolbar/media-controls.ui b/UI/forms/source-toolbar/media-controls.ui +index 1133476a..f40f542b 100644 +--- a/UI/forms/source-toolbar/media-controls.ui ++++ b/UI/forms/source-toolbar/media-controls.ui +@@ -391,7 +391,7 @@ + + + +- ++ + + + 0 +diff --git a/UI/forms/source-toolbar/text-source-toolbar.ui b/UI/forms/source-toolbar/text-source-toolbar.ui +index 1b2ada18..46b23c61 100644 +--- a/UI/forms/source-toolbar/text-source-toolbar.ui ++++ b/UI/forms/source-toolbar/text-source-toolbar.ui +@@ -83,7 +83,7 @@ + + + +- ++ + + + 0 +-- +2.28.0 + diff --git a/0022-libobs-graphics-Add-Linux-only-device_texture_create.patch b/0023-libobs-graphics-Add-Linux-only-device_texture_create.patch similarity index 97% rename from 0022-libobs-graphics-Add-Linux-only-device_texture_create.patch rename to 0023-libobs-graphics-Add-Linux-only-device_texture_create.patch index d95dd35..f9f7f67 100644 --- a/0022-libobs-graphics-Add-Linux-only-device_texture_create.patch +++ b/0023-libobs-graphics-Add-Linux-only-device_texture_create.patch @@ -1,7 +1,7 @@ -From 5af41c0c15639b58491b573e6c00eb6e9c7272a2 Mon Sep 17 00:00:00 2001 +From ebefca8cedc271fcea12f85fe26521a40dc7baa8 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Thu, 12 Mar 2020 23:50:18 -0300 -Subject: [PATCH 22/24] libobs/graphics: Add Linux-only +Subject: [PATCH 23/25] libobs/graphics: Add Linux-only device_texture_create_from_dmabuf The implementation are stubs as of now @@ -221,10 +221,10 @@ index 4154688c..4e8f4e53 100644 }; diff --git a/libobs/graphics/graphics.c b/libobs/graphics/graphics.c -index 902ba4b6..ea403ac8 100644 +index e403edb0..a2785d82 100644 --- a/libobs/graphics/graphics.c +++ b/libobs/graphics/graphics.c -@@ -1358,6 +1358,25 @@ gs_texture_t *gs_texture_create(uint32_t width, uint32_t height, +@@ -1363,6 +1363,25 @@ gs_texture_t *gs_texture_create(uint32_t width, uint32_t height, levels, data, flags); } diff --git a/0023-deps-glad-Add-DMA-BUF-EGL-extensions.patch b/0024-deps-glad-Add-DMA-BUF-EGL-extensions.patch similarity index 98% rename from 0023-deps-glad-Add-DMA-BUF-EGL-extensions.patch rename to 0024-deps-glad-Add-DMA-BUF-EGL-extensions.patch index 0950205..93b3195 100644 --- a/0023-deps-glad-Add-DMA-BUF-EGL-extensions.patch +++ b/0024-deps-glad-Add-DMA-BUF-EGL-extensions.patch @@ -1,7 +1,7 @@ -From 17e54962b4de4008a52c7d54d5402752a6d6f0e7 Mon Sep 17 00:00:00 2001 +From 063ff409840692bbee85ea4d5d5e63446efe7596 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Thu, 12 Mar 2020 23:57:23 -0300 -Subject: [PATCH 23/24] deps-glad: Add DMA-BUF EGL extensions +Subject: [PATCH 24/25] deps-glad: Add DMA-BUF EGL extensions --- deps/glad/include/glad/glad_egl.h | 63 +++++++++++++++++++++++++++++-- diff --git a/0024-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch b/0025-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch similarity index 98% rename from 0024-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch rename to 0025-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch index 9c3f373..cecc49c 100644 --- a/0024-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch +++ b/0025-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch @@ -1,7 +1,7 @@ -From 54e6e2f92cfeb9375e281c958102d58d076295a1 Mon Sep 17 00:00:00 2001 +From d47bea7c915ea2c9d9b2f81724509760bd769df4 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Sat, 14 Mar 2020 14:26:02 -0300 -Subject: [PATCH 24/24] libobs-opengl: Implement DMA-BUF importing on EGL +Subject: [PATCH 25/25] libobs-opengl: Implement DMA-BUF importing on EGL renderers This is currently extremely limited. It only supports XRGB8888 @@ -17,7 +17,7 @@ DMA-BUFs for now, which seems to be a sensible default. create mode 100644 libobs-opengl/gl-egl-common.h diff --git a/libobs-opengl/CMakeLists.txt b/libobs-opengl/CMakeLists.txt -index 0f694b6c..c434c65f 100644 +index 6476e0be..d4179806 100644 --- a/libobs-opengl/CMakeLists.txt +++ b/libobs-opengl/CMakeLists.txt @@ -49,6 +49,7 @@ else() diff --git a/PKGBUILD b/PKGBUILD index 89d4019..2e9b25b 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -6,8 +6,8 @@ _pkgname=obs-studio pkgname=$_pkgname-wayland provides=("$_pkgname") conflicts=("$_pkgname") -pkgver=25.0.8 -pkgrel=6 +pkgver=26.0.0 +pkgrel=1 pkgdesc="Free, open source software for live streaming and recording (with wayland patches)" arch=('x86_64') url="https://obsproject.com" @@ -25,7 +25,6 @@ optdepends=('libfdk-aac: FDK AAC codec support' 'wlrobs-hg: screen capture on wlroots compositors') source=( $_pkgname-$pkgver.tar.gz::https://github.com/jp9000/obs-studio/archive/$pkgver.tar.gz - https://github.com/obsproject/obs-studio/commit/8a1429e29ebd6bf31ad6ae63c6992e2c03893767.patch 0001-deps-glad-Add-EGL.patch 0002-libobs-opengl-Rename-gl-x11.c-to-gl-x11-glx.c.patch 0003-libobs-opengl-Factor-out-GLX-winsys.patch @@ -47,36 +46,38 @@ source=( 0019-UI-Make-OBSQTDisplay-CreateDisplay-public-and-allow-.patch 0020-UI-Check-for-Expose-and-PlatformSurface-events-to-cr.patch 0021-Don-t-create-native-widget-siblings.patch - 0022-libobs-graphics-Add-Linux-only-device_texture_create.patch - 0023-deps-glad-Add-DMA-BUF-EGL-extensions.patch - 0024-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch + 0022-Cleanup-native-widgets.patch + 0023-libobs-graphics-Add-Linux-only-device_texture_create.patch + 0024-deps-glad-Add-DMA-BUF-EGL-extensions.patch + 0025-libobs-opengl-Implement-DMA-BUF-importing-on-EGL-ren.patch ) -sha512sums=('a97c03dc218a4e03e48f6a7dc82b4a59ebeee2039f17be66bb847681ce9ff3d25e6e015be4af78fe44739f6fad5089b6e683d7657c2e4fde8e547df9a2594a08' - '1ff0e088eed61554268009f3d8c5a23c0888bfbe860d6cb288ddf348108446c152fd87e2cb8f54613a88378d8474550632c90f924005d5e0343bf1a801339ccc' - '412c4121fc77af66a3e55650859becb6fb6d668369d8767729893e98fea8f6f8dde4ec9bc160041bb986f8a508f762cc68446e3c8cf5525a5b6fbfac1c1bf4fd' - '6af84ddd3bb6953911840bd130606d8c1148cb6fc8e5750da480adb542813dc336f64056ffec8f07dc7467031e640842490b35fe89b39b621bf7db92d049743f' - '6205323d409b1c583257540e4d51f6c2a2e456b06a6b6d4edacad8d53af05e40afdd283567d910cdff2d4d6d50677df1e78421c19505a85a71538ca108442de7' - 'be0d996ed92eccc4c7da354775b927b34c98f6863a16357c473e04e25a61cd3d73f128cedd154a2a3dfa321444f2884dc7f47f895cd9e2014df8d739837b01af' - 'bd7bed1f8bfad7a3a3abc71d0d2db48fcdbe231a42ab16aaf95e81016e11446558bbcb9f18c91af1834c4fd90e692b0865ed23730715b7174545a500a29c1fb7' - 'bda1c8488083b9b76d0a7597f81d01621981803f2634a14fdb2bfcb1fa57638afd20956defb9269d234ddc7143755303d7ba21376ebfde034025ab8d2441162f' - 'c378765fdcb271a6c98965f91a44d3a990184324a5b1fceb7094cf5333938e30bd09978e47837061bbc9edb2847a0c5e5aea84cf7d1e7a0f34a1ed49ada291d8' - '9abc8155aa02bb8ee50a32217ff58fa7bc001f070dbdc25c4837a13a5b76088eaf0b5bb76bb4d3cc66f820e1866236bbdece77739d3bd02df5e0e6ed2d8d6932' - '2b5ab097562b46d19844f80680604126171732fda60984fd6cc63c188e23f04961c255b16af544893b587d00c14c49a465791bf3ee4af19ecb55c9ac09494d13' - 'd4f62e5cd212379600f559612592b29d8114b33ecb7d42f2817369866872fe31a20e734b3c3468eaea040ab4b48b94581bda2a45a9b09b029eecdbffdb7a067d' - 'fe359f670c5e427d457c4b7a820cfddf37558209ebbd48eb16ca44c7f5342ae1e96685411a51207d8c16ed56b903f5282b29d56b892c7507cae790a759f30c1c' - '10210a00eac70214c7df82460dc8d8d795e7e4fd0f732effca4ccbc12fe23ee4826faa8d49eb8be5498e895a58c5a481dd46ebd1781489aa2f097827db11362e' - '57dd96edb1cfc833aea7afa504877d5cb7c0676ec9cba3c8eb615125d5a6e74311ed28edde37a7c34cefb06009c850427e17bff01a09e5b260e4cd645b34449a' - '3adfe5956a20b06e30bf69bc119f2db8ad336a9288fc5b06d4303429b61d8de58973d223e8a0a4aae8feb16c4ca0ff52796cee229def981b690508be099f70fc' - '10bb8c05f7aeee664823d5c709d71d6bc2db0939e7749016fa42be1f64a4b9af9c1ef8f60257b92ab2d93947d258e357aaf95c205f95e45e65dbb4c8e88b05b5' - '03df24ecd1c07ac526a0597a0fa505e84048e40fa60b9871c384959f8916fe610dde715bea267ce2d69ff3fae205eae43179dddfe9b1eb242e670d8c9fef6206' - 'd9d3f2aa11c04caf4a2cb4c70cbf9735f2c56995039585359f1cd3d9518bfdef2440086b30cf54c7cbf52daa4b78b2a3120eadfdb0994e9309c4e5e5ca4b8698' - 'd3b6abe7b332d31b8b6297b17861bf65c8ea0442026e9ca5d57b3f0e1df302ca6cb3df95f94d1a11143d941443ea748c956eaeb29ce30068da12b5c9bea80432' - '8b3e0a9a53b2af54662ac23ea8a196506e7434061b0123c9fdc1632aee1f8137fd26151c5fa8ac99d1a794a3d1c67197bab81cc7886a3e903c3bf3d2f3ab8324' - '77a14e4a5f44d0f0e3895e1802c715907174a007c72b074005b17d6997098ac399e8d08b14c6aa9a3d307354e3f1b52d0640d64c3afd8598f260029b3b41a926' - 'a03f2b34847a74920c840131db046370502f6de53c9e27e81c1e3e8cb9dfeae2954cc86d1e874513192ab34c17dd54a7eafc9eadee8037aafa26e2d2d05b7c47' - 'b4f768da3974891e50322aed57cbcb228a0f6d54126163719ea41eeb9a9e6ffd7bff30cc3fb0af3e9e8a165d5b0d84d7beb5f442d316a98c79acdb24333687cb' - '475129b7243db100d5a93e4efb099c32b0bde8c9950494618c2d1bd91e91d19d6e4a2699f071145da585527fd890324073cd03bb520baf80332bbeda533e7015' - 'a7bae3d40e67de1a7753cc11f8bbf1a8cf87d642797fc14771e349d66a0127f5a6f767d04b434c5414cc50ae68508e3f21213b500b3abad1ebbb1a3b510be6fd') +sha512sums=('54a8eadf7ded1d309987a5f677ea7513b96cf95b071fd2321c3e712097d872a5f724edf9aba7cfa9452884b79d230fd65d512647c8583ca71691894277ca89b1' + '456973a51bbb3e84974525de757bc3c88c67faf0c36366a6787b72b30ba978491bfb1161d5364cf7b0174ced1fe8b04c0e2e4c13c6f88c79dbeb151ce24eb38f' + '231b518b34951924ba0f7da56379036cdf2d08e9259365e67f617ed458e21c4a2d5193e25200d6270bf74f462a9916085a3f3aa9f4edd35c8e501922bef6f1b6' + '3cdb29a4d3b639769758e8ea1d94a36baa89fec5e93110d1256ff275d83267c10f09888e6e29639d299e8322256d80ba19072519ae080bd461bc8cc2171e0405' + '57e430c1ea3945c0ad9a33414c32a35623f870b0c9aaf79fc3e03a00f1ad8e2c890c28e509bf241ecd73f573c367b33262b6291d82f519d0b5234a76c1d72f7d' + '09d71bf1a2f3e96a6bbba05d34e77407520741f9b302471d515af8d37f3f221b68f5656fd3c88899786044813743eb765c4bfbeab33fd3faf4f9a738f44873a3' + '7bc1ea2d79b9c95f6fe12b77aa491f2072a2e417528ce95901b520fcfb80268dfd3bc14009b13932f833fbb7941427089b4e7d005b473863405f71c9a6c1987d' + '19dfc1438743c18512190e663f313fcf0d0b11dbdff685e23f732c7234ce2b3b60c923c91035576979843f97a28ff9c877ffb9866b79e04a42e5c0df4988f762' + '00a37e551cfb9218df7e431b55e8d882244ce06a52c70b8dbff145493fedba0c19d9cc39cbc53c7c2ad0cf4e6886f1302bd0b7eb9ff0de31ff9938e060e35d7c' + '075ba030b5b2ebb54213eebb34523cce48abf53118c3c21bca9bd6e40c984f3739e3581a0ee0cec0e63f42a496c1dc42fbf12a8714133c7b6ad0ee1027326e5b' + 'd8aed1389391239a2e71525b66f9652958c8248a7bf9bfa5c296af72976c6d293635d16fed58a162e6a5228f15302530754619dd57c2db6156b9db631274762b' + '25ba2513de78e335d8ba3c711fce9b0dfa2fe7d144a2ac8147fcf7a26a0dd9b69d26b1c809f519ddcb550d217fb2ceb8ff44f126dcd4913ffe9b624c00e17110' + '3333b94a266a21654b3fab1eff67cf370cacf942f4d8ff29680a868dd3748c664378a4de28ca62e2a21146b737ea197e641cdb8691b73743a030bc79a0044259' + 'b93cb4764e5330ea273370e577382240bc0f42f7b3e2916ba04b0e4a30fb20f3388d83fab1ede3204807f38927014945d6e2a374edb2040bed847b4ca2228977' + '049cc567be0ec4e7994762ce30d95f496f05dd4996b742ba4f6be746f0a2d7f1e92491eb07d9f71047dacd094e5c632147e81c0a71f91f857fd0eb36f0a085a4' + '58628d12e62bd0a2193425e5b4ec8a2cb8f843c17ed25c69ac867340c4438bead99d8b0aee1dda45238cad1c05c29d41d24e7b0931a6ef60c2ef8cdfe71045e4' + '08dc77ce5fd0452adbd260015aca618d3f2aa15ae8ed716e1349bbf4f67af293f1857fd2c50e79cde3cf00739605dc5bb240bcf1983e8229bc1c70453fd2d435' + '8842240e2e6c73cc2921e80c9fb1ff02dd6d916d50c448f467a10f8db754d65f09271f741853a61cb5c6de96b5804b9215e11e7d3e5fcffe283ea6358693ca56' + '7580a5aeb005e713a1bcb7f51d8088e6a55a417b17e034ffad98007278f4b00edc3433bb0c27ee7fcab4332c670318e26429d58e7e7e21c39d0f636d886f0573' + '5474e2ee6a83501a96d3b392c696eca272c022a2415546dcdc577cd9a245759024935bd71e762b2057db5cd4e7368c17fde55e77c529a299d22cd19ade9ae456' + 'd3591a8cb41c8cdad9519ae5c382de288151a697e27eeff4e7c31a8988f653c98b95b43a260cd3a3a72aa1b48d61b6c101c4b1c7060a1afbc83d0a15f66cbf02' + 'c8e7126f0cfb569553df57db294aa960429275758be1b723eba1428c2564ba1c02fd8c614a3a886b932e0466d7470aa10ab078426ec42e62c8fb4c5ebf59ed30' + '9481184036b937bef673c7bdcc3031d74ff037423f38f81708a428f7e25f5dd8a86efd55dd4d53b898d3fceb549640542f8fdf0724d98c102409d4bf1b5a39a4' + 'a9ebedad561e6c7bcf33858bf9e8fa71d331d3b95007675e7cd3edd640fb9b23a5ff956749198618c3350912eab82aa87a2d979016e891c12d1df580d28de081' + '29ff61d5b0519f072c38973c281dc176f6250d734619689544a6c47f6975cb0ec53f9b66550864b80b889c5626120df1b0b2f08f3f7056221f91ffed2ef495b6' + '028c6c012c6f73a172cb9fc11e7631261f33a4f8b4d86bbb55ad098cd1be64f00dcad623b90be7c0fabf3ff5ff86aeb60f4b2e5bee7cf4b055f905b018595b56') + prepare() { cd $_pkgname-$pkgver @@ -91,6 +92,7 @@ build() { mkdir -p build; cd build cmake -DCMAKE_INSTALL_PREFIX="/usr" \ + -DBUILD_CAPTIONS=ON \ -DOBS_VERSION_OVERRIDE="$pkgver-$pkgrel" .. make