Created attachment 244989 [details] [patch] lang/emilua QA: - portlint -AC: ok (yes, I really need a specific version of GCC) - portclippy: ok
which platforms have you tested `poudriere testport` on
(In reply to Mina Galić from comment #1) Sorry, I couldn't test it with poudriere. I tested only on my x86-64 machine and on my Raspiberry PI, both using FreeBSD 13.2.
Thank you for your submission. Please check the following items on your patch: - The indentation is a bit wonky. You can use portfmt to auto-indent a port Makefile - Do the git hashes for the github dependencies correspond to tagged versions? If yes, it would be great if you could replace them with the tag names. - you should be able to use the /... syntax in GH_TUPLE to automatically have the dependencies moved into the right places, e.g. breese:trial.protocol:79149f6:trial_protocol/subprojects/trial-protocol - do not use REINPLACE_CMD for static replacements. Instead, supply patch files. You can use "make makepatch" to have them automatically generated, if you left copies of the originals with a .orig suffix. - Please expand pkg-descr to at least 3 lines. Perhaps say a bit more about the project and what makes it interesting! - check if devel/cmake-core suffices for getting cmake. This removes the need to build the entire cmake documentation as a dependency. A build test on arm64 FreeBSD 13.2 fails as the luajit binary is for some reason a dead link. Not sure what the problem is. Maybe a bug in luajit-openresty's port? Please check these issues and resubmit if appropriate.
Please check if you can address the other issues I raised, too. I can commit a fix for bug #273986 when committing this port, but only if you produce a workable patch.
Comment on attachment 244989 [details] [patch] lang/emilua From 89de8a82b89fd3131b4f82987ab4786e8949cbc8 Mon Sep 17 00:00:00 2001 From: Valter Nazianzeno <manipuladordedados@gmail.com> Date: Thu, 21 Sep 2023 20:45:09 -0300 Subject: [PATCH] [NEW PORT] lang/emilua: Lua execution engine with support for async IO and flexible threading layout --- lang/emilua/Makefile | 54 ++++++ lang/emilua/distinfo | 7 + lang/emilua/emilua/Makefile | 54 ++++++ lang/emilua/emilua/distinfo | 7 + lang/emilua/emilua/files/patch-meson.build | 10 ++ lang/emilua/emilua/files/patch-src_mutex.cpp | 10 ++ lang/emilua/emilua/pkg-descr | 4 + lang/emilua/emilua/pkg-plist | 166 +++++++++++++++++++ lang/emilua/files/patch-meson.build | 10 ++ lang/emilua/files/patch-src_mutex.cpp | 10 ++ lang/emilua/pkg-descr | 4 + lang/emilua/pkg-plist | 166 +++++++++++++++++++ 12 files changed, 502 insertions(+) create mode 100644 lang/emilua/Makefile create mode 100644 lang/emilua/distinfo create mode 100644 lang/emilua/emilua/Makefile create mode 100644 lang/emilua/emilua/distinfo create mode 100644 lang/emilua/emilua/files/patch-meson.build create mode 100644 lang/emilua/emilua/files/patch-src_mutex.cpp create mode 100644 lang/emilua/emilua/pkg-descr create mode 100644 lang/emilua/emilua/pkg-plist create mode 100644 lang/emilua/files/patch-meson.build create mode 100644 lang/emilua/files/patch-src_mutex.cpp create mode 100644 lang/emilua/pkg-descr create mode 100644 lang/emilua/pkg-plist diff --git a/lang/emilua/Makefile b/lang/emilua/Makefile new file mode 100644 index 000000000000..3e052d711d15 --- /dev/null +++ b/lang/emilua/Makefile @@ -0,0 +1,54 @@ +PORTNAME= emilua +DISTVERSIONPREFIX= v +DISTVERSION= 0.4.3 +CATEGORIES= lang devel + +MAINTAINER= manipuladordedados@gmail.com +COMMENT= Lua execution engine +WWW= https://emilua.org + +LICENSE= BSL +LICENSE_FILE= ${WRKSRC}/LICENSE_1_0.txt + +ONLY_FOR_ARCHS= aarch64 amd64 +ONLY_FOR_ARCHS_REASON= the software structures have not yet been ported + +BUILD_DEPENDS= asciidoctor:textproc/rubygem-asciidoctor \ + boost-libs>0:devel/boost-libs \ + cmake:devel/cmake-core \ + gawk:lang/gawk \ + gperf:devel/gperf \ + re2c:devel/re2c \ + xxd:sysutils/xxd +LIB_DEPENDS= libfmt.so:devel/libfmt \ + libserd-0.so:devel/serd \ + libsord-0.so:devel/sord + +USES= localbase luajit:luajit-openresty meson ncurses pathfix \ + pkgconfig ssl +USE_GCC= 12 +USE_GITHUB= nodefault +GH_TUPLE= BoostGSoC14:boost.http:93ae527c89ffc517862e1f5f54c8a257278f1195:emilua_http/subprojects/emilua-http \ + breese:trial.protocol:79149f6:trial_protocol/subprojects/trial-protocol +USE_GITLAB= yes + +MESON_ARGS= --buildtype=plain \ + --wrap-mode=nodownload \ + -Db_pch=false \ + -Denable_http=true \ + -Denable_manpages=true \ + -Denable_tests=true + +LDFLAGS+= -static-libstdc++ + +post-extract: + ${CP} ${WRKSRC}/subprojects/packagefiles/emilua-http/meson.build \ + ${WRKSRC}/subprojects/emilua-http/ + ${CP} ${WRKSRC}/subprojects/packagefiles/trial.protocol/meson.build \ + ${WRKSRC}/subprojects/trial-protocol/ + +post-install: + ${MV} ${STAGEDIR}${PREFIX}/man/man3em/* \ + ${STAGEDIR}${PREFIX}/man/man3/ + +.include <bsd.port.mk> diff --git a/lang/emilua/distinfo b/lang/emilua/distinfo new file mode 100644 index 000000000000..182313668fd7 --- /dev/null +++ b/lang/emilua/distinfo @@ -0,0 +1,7 @@ +TIMESTAMP = 1694922832 +SHA256 (BoostGSoC14-boost.http-93ae527c89ffc517862e1f5f54c8a257278f1195_GH0.tar.gz) = 4e90417806c285348d968183072918e86d7fd7d7db5affb63ec03faee92ed8ed +SIZE (BoostGSoC14-boost.http-93ae527c89ffc517862e1f5f54c8a257278f1195_GH0.tar.gz) = 237404 +SHA256 (breese-trial.protocol-79149f6_GH0.tar.gz) = ea82ba7736a2c6ae94e72587a454d3380517ed764df89e2297e6fac2acdeac03 +SIZE (breese-trial.protocol-79149f6_GH0.tar.gz) = 255698 +SHA256 (emilua-v0.4.3.tar.bz2) = 8e3ca114a3c71c985dfb8d84171a145bf245a679b5228dad27ce301ba899b15c +SIZE (emilua-v0.4.3.tar.bz2) = 313696 diff --git a/lang/emilua/emilua/Makefile b/lang/emilua/emilua/Makefile new file mode 100644 index 000000000000..3e052d711d15 --- /dev/null +++ b/lang/emilua/emilua/Makefile @@ -0,0 +1,54 @@ +PORTNAME= emilua +DISTVERSIONPREFIX= v +DISTVERSION= 0.4.3 +CATEGORIES= lang devel + +MAINTAINER= manipuladordedados@gmail.com +COMMENT= Lua execution engine +WWW= https://emilua.org + +LICENSE= BSL +LICENSE_FILE= ${WRKSRC}/LICENSE_1_0.txt + +ONLY_FOR_ARCHS= aarch64 amd64 +ONLY_FOR_ARCHS_REASON= the software structures have not yet been ported + +BUILD_DEPENDS= asciidoctor:textproc/rubygem-asciidoctor \ + boost-libs>0:devel/boost-libs \ + cmake:devel/cmake-core \ + gawk:lang/gawk \ + gperf:devel/gperf \ + re2c:devel/re2c \ + xxd:sysutils/xxd +LIB_DEPENDS= libfmt.so:devel/libfmt \ + libserd-0.so:devel/serd \ + libsord-0.so:devel/sord + +USES= localbase luajit:luajit-openresty meson ncurses pathfix \ + pkgconfig ssl +USE_GCC= 12 +USE_GITHUB= nodefault +GH_TUPLE= BoostGSoC14:boost.http:93ae527c89ffc517862e1f5f54c8a257278f1195:emilua_http/subprojects/emilua-http \ + breese:trial.protocol:79149f6:trial_protocol/subprojects/trial-protocol +USE_GITLAB= yes + +MESON_ARGS= --buildtype=plain \ + --wrap-mode=nodownload \ + -Db_pch=false \ + -Denable_http=true \ + -Denable_manpages=true \ + -Denable_tests=true + +LDFLAGS+= -static-libstdc++ + +post-extract: + ${CP} ${WRKSRC}/subprojects/packagefiles/emilua-http/meson.build \ + ${WRKSRC}/subprojects/emilua-http/ + ${CP} ${WRKSRC}/subprojects/packagefiles/trial.protocol/meson.build \ + ${WRKSRC}/subprojects/trial-protocol/ + +post-install: + ${MV} ${STAGEDIR}${PREFIX}/man/man3em/* \ + ${STAGEDIR}${PREFIX}/man/man3/ + +.include <bsd.port.mk> diff --git a/lang/emilua/emilua/distinfo b/lang/emilua/emilua/distinfo new file mode 100644 index 000000000000..182313668fd7 --- /dev/null +++ b/lang/emilua/emilua/distinfo @@ -0,0 +1,7 @@ +TIMESTAMP = 1694922832 +SHA256 (BoostGSoC14-boost.http-93ae527c89ffc517862e1f5f54c8a257278f1195_GH0.tar.gz) = 4e90417806c285348d968183072918e86d7fd7d7db5affb63ec03faee92ed8ed +SIZE (BoostGSoC14-boost.http-93ae527c89ffc517862e1f5f54c8a257278f1195_GH0.tar.gz) = 237404 +SHA256 (breese-trial.protocol-79149f6_GH0.tar.gz) = ea82ba7736a2c6ae94e72587a454d3380517ed764df89e2297e6fac2acdeac03 +SIZE (breese-trial.protocol-79149f6_GH0.tar.gz) = 255698 +SHA256 (emilua-v0.4.3.tar.bz2) = 8e3ca114a3c71c985dfb8d84171a145bf245a679b5228dad27ce301ba899b15c +SIZE (emilua-v0.4.3.tar.bz2) = 313696 diff --git a/lang/emilua/emilua/files/patch-meson.build b/lang/emilua/emilua/files/patch-meson.build new file mode 100644 index 000000000000..ff22d20b73bc --- /dev/null +++ b/lang/emilua/emilua/files/patch-meson.build @@ -0,0 +1,10 @@ +--- meson.build.orig 2023-05-01 18:05:51 UTC ++++ meson.build +@@ -31,7 +31,6 @@ luajit = dependency('luajit', version : '>=2.0.5') + boost = dependency( + 'boost', + version : '>=1.80', +- modules : boost_modules, + ) + fmt = dependency('fmt', version : '>=8.0') + serd = dependency('serd-0') diff --git a/lang/emilua/emilua/files/patch-src_mutex.cpp b/lang/emilua/emilua/files/patch-src_mutex.cpp new file mode 100644 index 000000000000..efcafa0015a9 --- /dev/null +++ b/lang/emilua/emilua/files/patch-src_mutex.cpp @@ -0,0 +1,10 @@ +--- src/mutex.cpp.orig 2023-05-01 18:05:51 UTC ++++ src/mutex.cpp +@@ -4,6 +4,7 @@ + file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) */ + + EMILUA_GPERF_DECLS_BEGIN(includes) ++#define FMT_HEADER_ONLY + #include <fmt/format.h> + + #include <emilua/mutex.hpp> diff --git a/lang/emilua/emilua/pkg-descr b/lang/emilua/emilua/pkg-descr new file mode 100644 index 000000000000..fa5812a8dd14 --- /dev/null +++ b/lang/emilua/emilua/pkg-descr @@ -0,0 +1,4 @@ +Emilua strives to be the most complete execution engine for Lua. +Whether you want single-VM concurrency support to exploit complex +async IO interactions or multi-VM support to exploit possible parallelism +your needs should be covered. diff --git a/lang/emilua/emilua/pkg-plist b/lang/emilua/emilua/pkg-plist new file mode 100644 index 000000000000..447a35ec025d --- /dev/null +++ b/lang/emilua/emilua/pkg-plist @@ -0,0 +1,166 @@ +bin/emilua +include/emilua/actor.hpp +include/emilua/asio_error.hpp +include/emilua/async_base.hpp +include/emilua/byte_span.hpp +include/emilua/condition_variable.hpp +include/emilua/config.h +include/emilua/core.hpp +include/emilua/detail/core.hpp +include/emilua/fiber.hpp +include/emilua/file.hpp +include/emilua/file_descriptor.hpp +include/emilua/filesystem.hpp +include/emilua/generic_error.hpp +include/emilua/http.hpp +include/emilua/ip.hpp +include/emilua/json.hpp +include/emilua/linux_namespaces.hpp +include/emilua/lua_shim.hpp +include/emilua/modules.re +include/emilua/mutex.hpp +include/emilua/pipe.hpp +include/emilua/plugin.hpp +include/emilua/regex.hpp +include/emilua/scope_cleanup.hpp +include/emilua/serial_port.hpp +include/emilua/socket_base.hpp +include/emilua/state.hpp +include/emilua/stream.hpp +include/emilua/system.hpp +include/emilua/time.hpp +include/emilua/tls.hpp +include/emilua/unix.hpp +include/emilua/websocket.hpp +include/emilua/windows.hpp +libdata/pkgconfig/emilua.pc +libexec/emilua/emilua_gperf.awk +man/man1/emilua.1.gz +man/man3/asio_error.3em.gz +man/man3/byte_span.3em.gz +man/man3/condition_variable.3em.gz +man/man3/file.open_flag.3em.gz +man/man3/file.random_access.3em.gz +man/man3/file.read_all_at.3em.gz +man/man3/file.read_at_least_at.3em.gz +man/man3/file.stream.3em.gz +man/man3/file.write_all_at.3em.gz +man/man3/file.write_at_least_at.3em.gz +man/man3/file_descriptor.3em.gz +man/man3/filesystem.absolute.3em.gz +man/man3/filesystem.canonical.3em.gz +man/man3/filesystem.cap_get_file.3em.gz +man/man3/filesystem.cap_set_file.3em.gz +man/man3/filesystem.chmod.3em.gz +man/man3/filesystem.clock.3em.gz +man/man3/filesystem.copy.3em.gz +man/man3/filesystem.copy_file.3em.gz +man/man3/filesystem.copy_symlink.3em.gz +man/man3/filesystem.create_directory.3em.gz +man/man3/filesystem.create_hard_link.3em.gz +man/man3/filesystem.create_symlink.3em.gz +man/man3/filesystem.current_working_directory.3em.gz +man/man3/filesystem.directory_entry.3em.gz +man/man3/filesystem.directory_iterator.3em.gz +man/man3/filesystem.equivalent.3em.gz +man/man3/filesystem.file_size.3em.gz +man/man3/filesystem.hard_link_count.3em.gz +man/man3/filesystem.is_empty.3em.gz +man/man3/filesystem.last_write_time.3em.gz +man/man3/filesystem.path.3em.gz +man/man3/filesystem.proximate.3em.gz +man/man3/filesystem.read_symlink.3em.gz +man/man3/filesystem.recursive_directory_iterator.3em.gz +man/man3/filesystem.relative.3em.gz +man/man3/filesystem.remove.3em.gz +man/man3/filesystem.rename.3em.gz +man/man3/filesystem.resize_file.3em.gz +man/man3/filesystem.space.3em.gz +man/man3/filesystem.status.3em.gz +man/man3/filesystem.temp_directory_path.3em.gz +man/man3/filesystem.umask.3em.gz +man/man3/filesystem.weakly_canonical.3em.gz +man/man3/generic_error.3em.gz +man/man3/http.headers.3em.gz +man/man3/http.request.3em.gz +man/man3/http.response.3em.gz +man/man3/http.socket.3em.gz +man/man3/ip.address.3em.gz +man/man3/ip.address_info_flag.3em.gz +man/man3/ip.connect.3em.gz +man/man3/ip.get_address_info.3em.gz +man/man3/ip.get_name_info.3em.gz +man/man3/ip.host_name.3em.gz +man/man3/ip.message_flag.3em.gz +man/man3/ip.tcp.acceptor.3em.gz +man/man3/ip.tcp.socket.3em.gz +man/man3/ip.toendpoint.3em.gz +man/man3/ip.tostring.3em.gz +man/man3/ip.udp.socket.3em.gz +man/man3/json.3em.gz +man/man3/json.writer.3em.gz +man/man3/mutex.3em.gz +man/man3/pipe.pair.3em.gz +man/man3/pipe.read_stream.3em.gz +man/man3/pipe.write_stream.3em.gz +man/man3/regex.3em.gz +man/man3/serial_port.3em.gz +man/man3/stream.read_all.3em.gz +man/man3/stream.read_at_least.3em.gz +man/man3/stream.scanner.3em.gz +man/man3/stream.write_all.3em.gz +man/man3/stream.write_at_least.3em.gz +man/man3/system.arguments.3em.gz +man/man3/system.environment.3em.gz +man/man3/system.err.3em.gz +man/man3/system.exit.3em.gz +man/man3/system.getgroups.3em.gz +man/man3/system.getpgid.3em.gz +man/man3/system.getpgrp.3em.gz +man/man3/system.getpid.3em.gz +man/man3/system.getppid.3em.gz +man/man3/system.getresgid.3em.gz +man/man3/system.getresuid.3em.gz +man/man3/system.getsid.3em.gz +man/man3/system.in_.3em.gz +man/man3/system.kill.3em.gz +man/man3/system.linux_capabilities.3em.gz +man/man3/system.out.3em.gz +man/man3/system.setgroups.3em.gz +man/man3/system.setpgid.3em.gz +man/man3/system.setresgid.3em.gz +man/man3/system.setresuid.3em.gz +man/man3/system.setsid.3em.gz +man/man3/system.signal.3em.gz +man/man3/system.signal.default.3em.gz +man/man3/system.signal.ignore.3em.gz +man/man3/system.signal.raise.3em.gz +man/man3/system.signal.set.3em.gz +man/man3/system.spawn.3em.gz +man/man3/time.high_resolution_clock.3em.gz +man/man3/time.sleep.3em.gz +man/man3/time.steady_clock.3em.gz +man/man3/time.steady_timer.3em.gz +man/man3/time.system_clock.3em.gz +man/man3/time.system_timer.3em.gz +man/man3/tls.context.3em.gz +man/man3/tls.context_flag.3em.gz +man/man3/tls.socket.3em.gz +man/man3/unix.datagram_socket.3em.gz +man/man3/unix.message_flag.3em.gz +man/man3/unix.seqpacket_acceptor.3em.gz +man/man3/unix.seqpacket_socket.3em.gz +man/man3/unix.stream_acceptor.3em.gz +man/man3/unix.stream_socket.3em.gz +man/man3/websocket.3em.gz +man/man7/emilua-actor.7.gz +man/man7/emilua-alternatives.7.gz +man/man7/emilua-errors.7.gz +man/man7/emilua-fiber.7.gz +man/man7/emilua-getting-started.7.gz +man/man7/emilua-internals.7.gz +man/man7/emilua-interruption.7.gz +man/man7/emilua-linux_namespaces.7.gz +man/man7/emilua-lua51.7.gz +man/man7/emilua-modules.7.gz +man/man7/emilua-streams.7.gz diff --git a/lang/emilua/files/patch-meson.build b/lang/emilua/files/patch-meson.build new file mode 100644 index 000000000000..ff22d20b73bc --- /dev/null +++ b/lang/emilua/files/patch-meson.build @@ -0,0 +1,10 @@ +--- meson.build.orig 2023-05-01 18:05:51 UTC ++++ meson.build +@@ -31,7 +31,6 @@ luajit = dependency('luajit', version : '>=2.0.5') + boost = dependency( + 'boost', + version : '>=1.80', +- modules : boost_modules, + ) + fmt = dependency('fmt', version : '>=8.0') + serd = dependency('serd-0') diff --git a/lang/emilua/files/patch-src_mutex.cpp b/lang/emilua/files/patch-src_mutex.cpp new file mode 100644 index 000000000000..efcafa0015a9 --- /dev/null +++ b/lang/emilua/files/patch-src_mutex.cpp @@ -0,0 +1,10 @@ +--- src/mutex.cpp.orig 2023-05-01 18:05:51 UTC ++++ src/mutex.cpp +@@ -4,6 +4,7 @@ + file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) */ + + EMILUA_GPERF_DECLS_BEGIN(includes) ++#define FMT_HEADER_ONLY + #include <fmt/format.h> + + #include <emilua/mutex.hpp> diff --git a/lang/emilua/pkg-descr b/lang/emilua/pkg-descr new file mode 100644 index 000000000000..fa5812a8dd14 --- /dev/null +++ b/lang/emilua/pkg-descr @@ -0,0 +1,4 @@ +Emilua strives to be the most complete execution engine for Lua. +Whether you want single-VM concurrency support to exploit complex +async IO interactions or multi-VM support to exploit possible parallelism +your needs should be covered. diff --git a/lang/emilua/pkg-plist b/lang/emilua/pkg-plist new file mode 100644 index 000000000000..447a35ec025d --- /dev/null +++ b/lang/emilua/pkg-plist @@ -0,0 +1,166 @@ +bin/emilua +include/emilua/actor.hpp +include/emilua/asio_error.hpp +include/emilua/async_base.hpp +include/emilua/byte_span.hpp +include/emilua/condition_variable.hpp +include/emilua/config.h +include/emilua/core.hpp +include/emilua/detail/core.hpp +include/emilua/fiber.hpp +include/emilua/file.hpp +include/emilua/file_descriptor.hpp +include/emilua/filesystem.hpp +include/emilua/generic_error.hpp +include/emilua/http.hpp +include/emilua/ip.hpp +include/emilua/json.hpp +include/emilua/linux_namespaces.hpp +include/emilua/lua_shim.hpp +include/emilua/modules.re +include/emilua/mutex.hpp +include/emilua/pipe.hpp +include/emilua/plugin.hpp +include/emilua/regex.hpp +include/emilua/scope_cleanup.hpp +include/emilua/serial_port.hpp +include/emilua/socket_base.hpp +include/emilua/state.hpp +include/emilua/stream.hpp +include/emilua/system.hpp +include/emilua/time.hpp +include/emilua/tls.hpp +include/emilua/unix.hpp +include/emilua/websocket.hpp +include/emilua/windows.hpp +libdata/pkgconfig/emilua.pc +libexec/emilua/emilua_gperf.awk +man/man1/emilua.1.gz +man/man3/asio_error.3em.gz +man/man3/byte_span.3em.gz +man/man3/condition_variable.3em.gz +man/man3/file.open_flag.3em.gz +man/man3/file.random_access.3em.gz +man/man3/file.read_all_at.3em.gz +man/man3/file.read_at_least_at.3em.gz +man/man3/file.stream.3em.gz +man/man3/file.write_all_at.3em.gz +man/man3/file.write_at_least_at.3em.gz +man/man3/file_descriptor.3em.gz +man/man3/filesystem.absolute.3em.gz +man/man3/filesystem.canonical.3em.gz +man/man3/filesystem.cap_get_file.3em.gz +man/man3/filesystem.cap_set_file.3em.gz +man/man3/filesystem.chmod.3em.gz +man/man3/filesystem.clock.3em.gz +man/man3/filesystem.copy.3em.gz +man/man3/filesystem.copy_file.3em.gz +man/man3/filesystem.copy_symlink.3em.gz +man/man3/filesystem.create_directory.3em.gz +man/man3/filesystem.create_hard_link.3em.gz +man/man3/filesystem.create_symlink.3em.gz +man/man3/filesystem.current_working_directory.3em.gz +man/man3/filesystem.directory_entry.3em.gz +man/man3/filesystem.directory_iterator.3em.gz +man/man3/filesystem.equivalent.3em.gz +man/man3/filesystem.file_size.3em.gz +man/man3/filesystem.hard_link_count.3em.gz +man/man3/filesystem.is_empty.3em.gz +man/man3/filesystem.last_write_time.3em.gz +man/man3/filesystem.path.3em.gz +man/man3/filesystem.proximate.3em.gz +man/man3/filesystem.read_symlink.3em.gz +man/man3/filesystem.recursive_directory_iterator.3em.gz +man/man3/filesystem.relative.3em.gz +man/man3/filesystem.remove.3em.gz +man/man3/filesystem.rename.3em.gz +man/man3/filesystem.resize_file.3em.gz +man/man3/filesystem.space.3em.gz +man/man3/filesystem.status.3em.gz +man/man3/filesystem.temp_directory_path.3em.gz +man/man3/filesystem.umask.3em.gz +man/man3/filesystem.weakly_canonical.3em.gz +man/man3/generic_error.3em.gz +man/man3/http.headers.3em.gz +man/man3/http.request.3em.gz +man/man3/http.response.3em.gz +man/man3/http.socket.3em.gz +man/man3/ip.address.3em.gz +man/man3/ip.address_info_flag.3em.gz +man/man3/ip.connect.3em.gz +man/man3/ip.get_address_info.3em.gz +man/man3/ip.get_name_info.3em.gz +man/man3/ip.host_name.3em.gz +man/man3/ip.message_flag.3em.gz +man/man3/ip.tcp.acceptor.3em.gz +man/man3/ip.tcp.socket.3em.gz +man/man3/ip.toendpoint.3em.gz +man/man3/ip.tostring.3em.gz +man/man3/ip.udp.socket.3em.gz +man/man3/json.3em.gz +man/man3/json.writer.3em.gz +man/man3/mutex.3em.gz +man/man3/pipe.pair.3em.gz +man/man3/pipe.read_stream.3em.gz +man/man3/pipe.write_stream.3em.gz +man/man3/regex.3em.gz +man/man3/serial_port.3em.gz +man/man3/stream.read_all.3em.gz +man/man3/stream.read_at_least.3em.gz +man/man3/stream.scanner.3em.gz +man/man3/stream.write_all.3em.gz +man/man3/stream.write_at_least.3em.gz +man/man3/system.arguments.3em.gz +man/man3/system.environment.3em.gz +man/man3/system.err.3em.gz +man/man3/system.exit.3em.gz +man/man3/system.getgroups.3em.gz +man/man3/system.getpgid.3em.gz +man/man3/system.getpgrp.3em.gz +man/man3/system.getpid.3em.gz +man/man3/system.getppid.3em.gz +man/man3/system.getresgid.3em.gz +man/man3/system.getresuid.3em.gz +man/man3/system.getsid.3em.gz +man/man3/system.in_.3em.gz +man/man3/system.kill.3em.gz +man/man3/system.linux_capabilities.3em.gz +man/man3/system.out.3em.gz +man/man3/system.setgroups.3em.gz +man/man3/system.setpgid.3em.gz +man/man3/system.setresgid.3em.gz +man/man3/system.setresuid.3em.gz +man/man3/system.setsid.3em.gz +man/man3/system.signal.3em.gz +man/man3/system.signal.default.3em.gz +man/man3/system.signal.ignore.3em.gz +man/man3/system.signal.raise.3em.gz +man/man3/system.signal.set.3em.gz +man/man3/system.spawn.3em.gz +man/man3/time.high_resolution_clock.3em.gz +man/man3/time.sleep.3em.gz +man/man3/time.steady_clock.3em.gz +man/man3/time.steady_timer.3em.gz +man/man3/time.system_clock.3em.gz +man/man3/time.system_timer.3em.gz +man/man3/tls.context.3em.gz +man/man3/tls.context_flag.3em.gz +man/man3/tls.socket.3em.gz +man/man3/unix.datagram_socket.3em.gz +man/man3/unix.message_flag.3em.gz +man/man3/unix.seqpacket_acceptor.3em.gz +man/man3/unix.seqpacket_socket.3em.gz +man/man3/unix.stream_acceptor.3em.gz +man/man3/unix.stream_socket.3em.gz +man/man3/websocket.3em.gz +man/man7/emilua-actor.7.gz +man/man7/emilua-alternatives.7.gz +man/man7/emilua-errors.7.gz +man/man7/emilua-fiber.7.gz +man/man7/emilua-getting-started.7.gz +man/man7/emilua-internals.7.gz +man/man7/emilua-interruption.7.gz +man/man7/emilua-linux_namespaces.7.gz +man/man7/emilua-lua51.7.gz +man/man7/emilua-modules.7.gz +man/man7/emilua-streams.7.gz -- 2.42.0
(In reply to Robert Clausecker from comment #4) Oh sorry. My changes are ready but I thought I couldn't send them yet until the luajit-openresty bug was fixed. Thank you for the tips.
Created attachment 245103 [details] lang/emilua: Lua execution engine with support for async IO and flexible threading layout
I made a mistake when using the interface and ended up posting the patch as a comment there, I'm sorry about that.
(In reply to Valter Nazianzeno from comment #8) Please check your patch. It seems to contain emilua twice, once in lang/emilua and once in lang/emilua/emilua. Also, could you check the issue with the git commit hashes vs tags?
Created attachment 245104 [details] lang/emilua: Lua execution engine with support for async IO and flexible threading layout
(In reply to Robert Clausecker from comment #9) Sorry for the confusion on the patch. About the tags/commits. My dependencies use specific commits, that's why I'm using them, they don't have any specific tags.
Build fails on arm64 amd64 FreeBSD 12.4 and 13.2: Program bash ksh found: NO meson.build:192:16: ERROR: Program 'bash ksh' not found or not executable A full log can be found at /wrkdirs/usr/ports/lang/emilua/work/emilua-v0.4.3/_build/meson-logs/meson-log.txt WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated. ===> Script "configure" failed unexpectedly. Note that we do not have bash in the default install on FreeBSD. Either check if /bin/sh does the trick, or add a BUILD_DEPENDS on bash or ksh.
Created attachment 245105 [details] lang/emilua: Lua execution engine with support for async IO and flexible threading layout Turns out that tcsh works fine with the current version. Thanks!
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=cc75996f708359e0b29da6d329e2645812e9895f commit cc75996f708359e0b29da6d329e2645812e9895f Author: Valter Nazianzeno <manipuladordedados@gmail.com> AuthorDate: 2023-09-22 04:29:38 +0000 Commit: Robert Clausecker <fuz@FreeBSD.org> CommitDate: 2023-09-22 04:56:49 +0000 lang/emilua: Lua execution engine with support for async IO and flexible threading layout Emilua strives to be the most complete execution engine for Lua. Whether you want single-VM concurrency support to exploit complex async IO interactions or multi-VM support to exploit possible parallelism your needs should be covered. WWW: https://emilua.org PR: 273922 lang/Makefile | 1 + lang/emilua/Makefile (new) | 55 +++++++++ lang/emilua/distinfo (new) | 7 ++ lang/emilua/files/patch-meson.build (new) | 19 ++++ lang/emilua/files/patch-src_mutex.cpp (new) | 10 ++ lang/emilua/pkg-descr (new) | 4 + lang/emilua/pkg-plist (new) | 166 ++++++++++++++++++++++++++++ 7 files changed, 262 insertions(+)
Thank you for your contribution.