Thursday, November 12, 2020

Re: [macppc] www/luakit is not BROKEN anymore

On Thu, Nov 12, 2020 at 08:09:32AM +0100, Stefan Hagen wrote:
> Charlene Wendling wrote:
> > On Wed, 11 Nov 2020 21:30:36 +0100
> > Stefan Hagen wrote:
> >
> > > Charlene Wendling wrote:
> > > > The latest Luakit update fix the build on macppc [0]. There is no
> > > > runtime issue with the fixed webkitgtk4.
> > > >
> > > > OK?
> > >
> > > I've attached you the latest luakit with the missing dependencies
> > > for the test suite. So "make test" should work in the luakit port
> > > dir.
> > >
> > > The image_css test fails here more often than not. But everything
> > > else should succeed.
> >
> > It builds and works well on macppc. Tests are passing, excepted a few
> > who are failing due to expected timeout, and they call git (that should
> > be patched out).
>
> OK from my side then.
>
> Below is the current version including your change and with
> NO_TESTS = yes, because the test dependencies are not yet imported.
>

I commited the test dependencies (now I had a second ok from someone. thanks cwen@).

Here an updated diff for luakit.

As cwen@ noted, the git call in tests could be annoying in some
situations. So I patched it out. Maybe it could be done conditionally
if a ".git" directory exists.

Stefan, are you fine with this diff ? it is based on your.

Charlene, is it ok for you ?

Thanks.
--
Sebastien Marie


Index: Makefile
===================================================================
RCS file: /cvs/ports/www/luakit/Makefile,v
retrieving revision 1.27
diff -u -p -r1.27 Makefile
--- Makefile 17 Sep 2020 18:20:14 -0000 1.27
+++ Makefile 12 Nov 2020 10:07:12 -0000
@@ -1,13 +1,10 @@
# $OpenBSD: Makefile,v 1.27 2020/09/17 18:20:14 semarie Exp $

-BROKEN-powerpc = help2man: can't get `--help' info from ./luakit
-
COMMENT = fast, small, webkit based browser written in lua

GH_ACCOUNT = luakit
-GH_TAGNAME = 2.2
GH_PROJECT = luakit
-REVISION = 1
+GH_TAGNAME = 2.2.1

EPOCH = 1

@@ -31,8 +28,6 @@ WANTLIB += pangocairo-1.0 pthread soup-2

MODULES = lang/lua

-NO_TEST = Yes
-
BUILD_DEPENDS = devel/help2man \
devel/luafs

@@ -42,6 +37,11 @@ RUN_DEPENDS = devel/desktop-file-utils \

LIB_DEPENDS = lang/luajit \
www/webkitgtk4
+
+TEST_DEPENDS = devel/luassert \
+ devel/luacheck
+
+TEST_TARGET = run-tests

# webkit browsing
RUN_DEPENDS += multimedia/gstreamer1/plugins-good \
Index: distinfo
===================================================================
RCS file: /cvs/ports/www/luakit/distinfo,v
retrieving revision 1.10
diff -u -p -r1.10 distinfo
--- distinfo 23 Aug 2020 22:00:39 -0000 1.10
+++ distinfo 12 Nov 2020 10:07:12 -0000
@@ -1,2 +1,2 @@
-SHA256 (luakit-2.2.tar.gz) = cEkpoySYSv4kbGMmNmfrHWTAYLT390ztWf7F1ALDd9w=
-SIZE (luakit-2.2.tar.gz) = 488550
+SHA256 (luakit-2.2.1.tar.gz) = 81NZ9YY/q+K51Cb00+9tKc5bs7rHtMjggkJC+JhoyA4=
+SIZE (luakit-2.2.1.tar.gz) = 488845
Index: patches/patch-common_ipc_c
===================================================================
RCS file: patches/patch-common_ipc_c
diff -N patches/patch-common_ipc_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-common_ipc_c 12 Nov 2020 10:07:12 -0000
@@ -0,0 +1,31 @@
+$OpenBSD$
+
+NetBSD EOF fix
+
+Index: common/ipc.c
+--- common/ipc.c.orig
++++ common/ipc.c
+@@ -21,6 +21,7 @@
+ #include "common/lualib.h"
+ #include "common/luaserialize.h"
+ #include "common/ipc.h"
++#include "log.h"
+
+ /* Prototypes for ipc_recv_... functions */
+ #define X(name) void ipc_recv_##name(ipc_endpoint_t *ipc, const void *msg, guint length);
+@@ -138,6 +139,15 @@ ipc_recv_and_dispatch_or_enqueue(ipc_endpoint_t *ipc)
+ case G_IO_STATUS_AGAIN:
+ return;
+ case G_IO_STATUS_EOF:
++ verbose("g_io_channel_read_chars(): End Of File received");
++ /* OSX and NetBSD are sending EOF on nonblocking channels first.
++ * These requests can be ignored. They should end up in
++ * recv_hup(), but unfortunately they do not.
++ *
++ * If we do not close the socket, glib will continue to
++ * call the G_IO_IN handler.
++ */
++ g_atomic_int_dec_and_test(&ipc->refcount);
+ return;
+ case G_IO_STATUS_ERROR:
+ if (!g_str_equal(ipc->name, "UI"))
Index: patches/patch-lib_session_lua
===================================================================
RCS file: patches/patch-lib_session_lua
diff -N patches/patch-lib_session_lua
--- patches/patch-lib_session_lua 17 Sep 2020 18:20:14 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,36 +0,0 @@
-$OpenBSD: patch-lib_session_lua,v 1.1 2020/09/17 18:20:14 semarie Exp $
-Use os.remove() instead of spawning rm(1) process.
-
-Backport https://github.com/luakit/luakit/commit/4b22c18d5eb5594136091b7b615dc8f9ded0e32f
-Index
: lib/session.lua
---- lib/session.lua.orig
-+++ lib/session.lua
-@@ -19,10 +19,6 @@ local _M = {}
-
- lousy.signal.setup(_M, true)
-
--local function rm(file)
-- luakit.spawn(string.format("rm %q", file))
--end
--
- --- Path to session file.
- -- @type string
- -- @readwrite
-@@ -82,7 +78,7 @@ _M.save = function (file)
- io.close(fh)
- os.rename(tempfile, file)
- else
-- rm(file)
-+ os.remove(file)
- end
- end
-
-@@ -220,7 +216,7 @@ window.add_signal("init", function (w)
- local num_windows = #lousy.util.table.values(window.bywidget)
- -- Remove the recovery session on a successful exit
- if num_windows == 0 and os.exists(_M.recovery_file) then
-- rm(_M.recovery_file)
-+ os.remove(_M.recovery_file)
- end
- end)
-
Index: patches/patch-tests_run_test_lua
===================================================================
RCS file: patches/patch-tests_run_test_lua
diff -N patches/patch-tests_run_test_lua
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-tests_run_test_lua 12 Nov 2020 10:07:12 -0000
@@ -0,0 +1,32 @@
+$OpenBSD$
+Remove git usage in tests. The tarball isn't a git checkout and the output could be too verbose if /usr/ports in a git checkout.
+
+Index: tests/run_test.lua
+--- tests/run_test.lua.orig
++++ tests/run_test.lua
+@@ -186,25 +186,6 @@ if not pcall(require, "luassert") then
+ os.exit(1)
+ end
+
+--- Check for untracked files in Git
+-do
+- local untracked = {}
+- local f = io.popen("git ls-files --others --exclude-standard")
+- for line in f:lines() do
+- table.insert(untracked, line)
+- end
+- f:close()
+-
+- if #untracked > 0 then
+- local c_yellow = string.char(27) .. "[0;33m"
+- local c_reset = string.char(27) .. "[0;0m"
+- print(c_yellow .. "WARN" .. c_reset .. " The following files are untracked:")
+- for _, line in ipairs(untracked) do
+- print(" " .. line)
+- end
+- end
+-end
+-
+ -- Find a free server number
+ -- Does have a race condition...
+ for i=0,math.huge do

No comments:

Post a Comment