[arch-commits] Commit in nageru/repos (4 files)

Antonio Rojas arojas at archlinux.org
Sat May 23 22:09:27 UTC 2020


    Date: Saturday, May 23, 2020 @ 22:09:27
  Author: arojas
Revision: 632665

archrelease: copy trunk to community-staging-x86_64

Added:
  nageru/repos/community-staging-x86_64/
  nageru/repos/community-staging-x86_64/PKGBUILD
    (from rev 632664, nageru/trunk/PKGBUILD)
  nageru/repos/community-staging-x86_64/luajit-patch.patch
    (from rev 632664, nageru/trunk/luajit-patch.patch)
  nageru/repos/community-staging-x86_64/meson-options.patch
    (from rev 632664, nageru/trunk/meson-options.patch)

---------------------+
 PKGBUILD            |   43 +++++++++++++++++++
 luajit-patch.patch  |  113 ++++++++++++++++++++++++++++++++++++++++++++++++++
 meson-options.patch |   13 +++++
 3 files changed, 169 insertions(+)

Copied: nageru/repos/community-staging-x86_64/PKGBUILD (from rev 632664, nageru/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2020-05-23 22:09:27 UTC (rev 632665)
@@ -0,0 +1,43 @@
+# Maintainer: Morten Linderud <foxboron at archlinux.org>
+
+pkgname=nageru
+pkgver=1.8.6
+pkgrel=6
+pkgdesc="live video mixer, based around the standard M/E workflow."
+arch=(x86_64)
+url="https://nageru.sesse.net/"
+license=('GPL3')
+depends=('libmicrohttpd' 'ffmpeg' 'libx264' 'protobuf' 
+         'movit' 'bmusb' 'qcustomplot' 'pciutils' 'zita-resampler'
+         'sqlite3' 'luajit' 'cmake')
+makedepends=('meson' 'eigen')
+source=("https://nageru.sesse.net/nageru-${pkgver}.tar.gz"
+        "meson-options.patch"
+        "luajit-patch.patch")
+sha256sums=('67dcb070a23589f624d7067c4b09fe11faa9b1c756b884c50473545fdf7817b3'
+            '1bb7d87d6d6359ffe95d605c29ff5f73728929d9393498b74fdf36c6469fdaba'
+            '480c4de61188684fc8d1727a2e3ec615d33892234e8466db8011589e9277bdf7')
+
+prepare() {
+    cd "$pkgname-$pkgver"
+    patch -Np1 -i "${srcdir}/luajit-patch.patch"
+    patch -Np1 -i "${srcdir}/meson-options.patch"
+}
+
+build() {
+  cd "$pkgname-$pkgver"
+  arch-meson ../build
+  ninja -v -C ../build
+}
+
+check() {
+  cd "$pkgname-$pkgver"
+  ninja -C ../build test
+}
+
+package() {
+  cd "$pkgname-$pkgver"
+  DESTDIR="$pkgdir" ninja -C ../build install
+}
+
+# vim:set ts=2 sw=2 et:

Copied: nageru/repos/community-staging-x86_64/luajit-patch.patch (from rev 632664, nageru/trunk/luajit-patch.patch)
===================================================================
--- community-staging-x86_64/luajit-patch.patch	                        (rev 0)
+++ community-staging-x86_64/luajit-patch.patch	2020-05-23 22:09:27 UTC (rev 632665)
@@ -0,0 +1,113 @@
+diff --git a/README b/README
+index ed86214..86eb42a 100644
+--- a/README
++++ b/README
+@@ -70,7 +70,7 @@ Nageru currently needs:
+  - libzita-resampler, for resampling sound sources so that they are in sync
+    between sources, and also for oversampling for the peak meter.
+ 
+- - LuaJIT, for driving the theme engine. You will need at least version 2.1.
++ - LuaJIT, for driving the theme engine.
+ 
+  - libjpeg, for encoding MJPEG streams when VA-API JPEG support is not
+    available.
+@@ -257,3 +257,27 @@ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
++
++
++Marked parts of theme.cpp (Lua shims):
++
++The MIT License (MIT)
++
++Copyright (c) 2013 Hisham Muhammad
++
++Permission is hereby granted, free of charge, to any person obtaining a copy of
++this software and associated documentation files (the "Software"), to deal in
++the Software without restriction, including without limitation the rights to
++use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
++the Software, and to permit persons to whom the Software is furnished to do so,
++subject to the following conditions:
++
++The above copyright notice and this permission notice shall be included in all
++copies or substantial portions of the Software.
++
++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
++FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
++COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
++IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+diff --git a/nageru/theme.cpp b/nageru/theme.cpp
+index dc73c2c..43174fa 100644
+--- a/nageru/theme.cpp
++++ b/nageru/theme.cpp
+@@ -41,6 +41,67 @@
+ #include "pbo_frame_allocator.h"
+ #include "scene.h"
+ 
++#if !defined LUA_VERSION_NUM || LUA_VERSION_NUM==501
++
++// Compatibility shims for LuaJIT 2.0 (LuaJIT 2.1 implements the entire Lua 5.2 API).
++// Adapted from https://github.com/keplerproject/lua-compat-5.2/blob/master/c-api/compat-5.2.c
++// and licensed as follows:
++//
++// The MIT License (MIT)
++//
++// Copyright (c) 2013 Hisham Muhammad
++//
++// Permission is hereby granted, free of charge, to any person obtaining a copy of
++// this software and associated documentation files (the "Software"), to deal in
++// the Software without restriction, including without limitation the rights to
++// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
++// the Software, and to permit persons to whom the Software is furnished to do so,
++// subject to the following conditions:
++//
++// The above copyright notice and this permission notice shall be included in all
++// copies or substantial portions of the Software.
++//
++// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
++// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
++// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
++// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++
++/*
++** Adapted from Lua 5.2.0
++*/
++void luaL_setfuncs(lua_State *L, const luaL_Reg *l, int nup) {
++	luaL_checkstack(L, nup+1, "too many upvalues");
++	for (; l->name != NULL; l++) {  /* fill the table with given functions */
++		int i;
++		lua_pushstring(L, l->name);
++		for (i = 0; i < nup; i++)  /* copy upvalues to the top */
++			lua_pushvalue(L, -(nup + 1));
++		lua_pushcclosure(L, l->func, nup);  /* closure with those upvalues */
++		lua_settable(L, -(nup + 3)); /* table must be below the upvalues, the name and the closure */
++	}
++	lua_pop(L, nup);  /* remove upvalues */
++}
++
++void *luaL_testudata(lua_State *L, int i, const char *tname) {
++	void *p = lua_touserdata(L, i);
++	luaL_checkstack(L, 2, "not enough stack slots");
++	if (p == NULL || !lua_getmetatable(L, i))
++		return NULL;
++	else {
++		int res = 0;
++		luaL_getmetatable(L, tname);
++		res = lua_rawequal(L, -1, -2);
++		lua_pop(L, 2);
++		if (!res)
++			p = NULL;
++	}
++	return p;
++}
++
++#endif
++
+ class Mixer;
+ 
+ namespace movit {

Copied: nageru/repos/community-staging-x86_64/meson-options.patch (from rev 632664, nageru/trunk/meson-options.patch)
===================================================================
--- community-staging-x86_64/meson-options.patch	                        (rev 0)
+++ community-staging-x86_64/meson-options.patch	2020-05-23 22:09:27 UTC (rev 632665)
@@ -0,0 +1,13 @@
+diff --git a/meson.build b/meson.build
+index 1540b19..b959ca5 100644
+--- a/meson.build
++++ b/meson.build
+@@ -306,7 +306,7 @@ futatabi_shader_srcs = bin2h_gen.process(shaders)
+ futatabi_srcs += futatabi_shader_srcs
+ 
+ executable('futatabi', futatabi_srcs,
+-	dependencies: [shareddep, qt5deps, libjpegdep, movitdep, libmicrohttpddep, protobufdep, sqlite3dep, vax11dep, vadrmdep, x11dep, libavformatdep, libavcodecdep, libavutildep, libswscaledep],
++	dependencies: [shareddep, qt5deps, libjpegdep, movitdep, libmicrohttpddep, protobufdep, sqlite3dep, vax11dep, vadrmdep, x11dep, threaddep, libavformatdep, libavcodecdep, libavutildep, libswscaledep],
+ 	link_with: shared,
+ 	include_directories: [include_directories('futatabi')],
+ 	install: true)


More information about the arch-commits mailing list