Wednesday, November 01, 2023

Re: bulk without syscall(2) results

On Wed, Nov 01, 2023 at 06:48:18PM -0700, Greg Steuck wrote:
> Theo Buehler <tb@theobuehler.org> writes:
>
> > print/luametatex
> >
> > Doesn't seem to be linked to anything, but might be better to fix anyway:
> >
> > /tmp/pobj/luametatex-2.10.08/luametatex-2.10.08/source/libraries/mimalloc/src/prim/unix/prim.c:67:10: warning: implicit declaration of function 'syscall' is invalid in C99 [-Wimplicit-function-declaration]
> > return syscall(SYS_open,fpath,open_flags,0);
> > ^
> > /tmp/pobj/luametatex-2.10.08/luametatex-2.10.08/source/libraries/mimalloc/src/prim/unix/prim.c:70:10: warning: implicit declaration of function 'syscall' is invalid in C99 [-Wimplicit-function-declaration]
> > return syscall(SYS_read,fd,buf,bufsize);
> > ^
> > /tmp/pobj/luametatex-2.10.08/luametatex-2.10.08/source/libraries/mimalloc/src/prim/unix/prim.c:73:10: warning: implicit declaration of function 'syscall' is invalid in C99 [-Wimplicit-function-declaration]
> > return syscall(SYS_close,fd);
> > ^
> > /tmp/pobj/luametatex-2.10.08/luametatex-2.10.08/source/libraries/mimalloc/src/prim/unix/prim.c:76:10: warning: implicit declaration of function 'syscall' is invalid in C99 [-Wimplicit-function-declaration]
> > return syscall(SYS_access,fpath,mode);
>
> I tested that the attached builds/installs, but my system isn't
> syscall-free.
>
> Unfortunately I can't effectively verify without removing syscall from
> my libc. The port code defines these static functions that invoke
> syscall unconditionally, then only uses them in code guarded with linux
> defines. So, like you said, the change below has no effect on the
> produced object files.

Thanks. The patch makes sense and the warnings on syscall go away.
There's now a missing "#include <fcntl.h>" though:

/usr/ports/pobj/luametatex-2.10.08/luametatex-2.10.08/source/libraries/mimalloc/src/prim/unix/prim.c:82:10: warning: implicit declaration of function 'open' is invalid in C99 [-Wimplicit-function-declaration]
return open(fpath,open_flags);

>
> Thanks
> Greg
>
> From f0d81de3cedf6c8fe4aae78384cb97622b3dc1de Mon Sep 17 00:00:00 2001
> From: Greg Steuck <greg@nest.cx>
> Date: Wed, 1 Nov 2023 18:36:57 -0700
> Subject: [PATCH] print/luametatex: avoid direct syscall
>
> ---
> print/luametatex/Makefile | 1 +
> ...-source_libraries_mimalloc_src_prim_unix_prim_c | 14 ++++++++++++++
> 2 files changed, 15 insertions(+)
> create mode 100644 print/luametatex/patches/patch-source_libraries_mimalloc_src_prim_unix_prim_c
>
> diff --git a/print/luametatex/Makefile b/print/luametatex/Makefile
> index 7c1e346bd1a..0ba665893c4 100644
> --- a/print/luametatex/Makefile
> +++ b/print/luametatex/Makefile
> @@ -1,6 +1,7 @@
> COMMENT = TeX engine for ConTeXt
>
> V = 2.10.08
> +REVISION = 0
> PKGNAME = luametatex-${V}
>
> GH_ACCOUNT = contextgarden
> diff --git a/print/luametatex/patches/patch-source_libraries_mimalloc_src_prim_unix_prim_c b/print/luametatex/patches/patch-source_libraries_mimalloc_src_prim_unix_prim_c
> new file mode 100644
> index 00000000000..9ce5b73d15c
> --- /dev/null
> +++ b/print/luametatex/patches/patch-source_libraries_mimalloc_src_prim_unix_prim_c
> @@ -0,0 +1,14 @@
> +Use proper libc stubs instead of direct syscalls on OpenBSD
> +
> +Index: source/libraries/mimalloc/src/prim/unix/prim.c
> +--- source/libraries/mimalloc/src/prim/unix/prim.c.orig
> ++++ source/libraries/mimalloc/src/prim/unix/prim.c
> +@@ -50,7 +50,7 @@ terms of the MIT license. A copy of the license can be
> + #include <sys/sysctl.h>
> +

No comments:

Post a Comment