Tarantool development patches archive
 help / color / mirror / Atom feed
* [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system
@ 2026-10-26 13:24 Sergey Bronnikov via Tarantool-patches
  2026-10-26 13:24 ` [Tarantool-patches] [PATCH luajit 1/3] cmake: omit -ldl for OpenBSD in SetTargetFlags() Sergey Bronnikov via Tarantool-patches
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Sergey Bronnikov via Tarantool-patches @ 2026-10-26 13:24 UTC (permalink / raw)
  To: tarantool-patches, Sergey Kaplun, e.temirgaleev

Hello,

the patch series contains fixes for the build system for the
OpenBSD port. Merging these patches will allow them to be removed
from the port.

Branch: https://github.com/tarantool/luajit/tree/ligurio/gh-xxxx-openbsd-fixes
OpenBSD port (with passed CI): https://github.com/ligurio/openbsd-wip/tree/239f52ecb288069c951f436ffd63ee6c4de55986/databases/tarantool/patches

Sergey Bronnikov (3):
  cmake: omit -ldl for OpenBSD in SetTargetFlags()
  cmake: allow using CMake build system in OpenBSD
  cmake: make Git optional in SetVersion()

 CMakeLists.txt             | 3 ++-
 cmake/SetTargetFlags.cmake | 3 +++
 cmake/SetVersion.cmake     | 2 +-
 3 files changed, 6 insertions(+), 2 deletions(-)

-- 
2.56.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Tarantool-patches] [PATCH luajit 1/3] cmake: omit -ldl for OpenBSD in SetTargetFlags()
  2026-10-26 13:24 [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system Sergey Bronnikov via Tarantool-patches
@ 2026-10-26 13:24 ` Sergey Bronnikov via Tarantool-patches
  2026-10-26 13:25 ` [Tarantool-patches] [PATCH luajit 2/3] cmake: allow using CMake build system in OpenBSD Sergey Bronnikov via Tarantool-patches
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Sergey Bronnikov via Tarantool-patches @ 2026-10-26 13:24 UTC (permalink / raw)
  To: tarantool-patches, Sergey Kaplun, e.temirgaleev; +Cc: Sergey Bronnikov

From: Sergey Bronnikov <segreyb@tarantool.org>

LuaJIT links with -ldl, which does not exist on OpenBSD (dlopen()
is in libc). The patch fixes that.

Needed for the OpenBSD port.
---
 cmake/SetTargetFlags.cmake | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/cmake/SetTargetFlags.cmake b/cmake/SetTargetFlags.cmake
index a0f9d45a..67cb6231 100644
--- a/cmake/SetTargetFlags.cmake
+++ b/cmake/SetTargetFlags.cmake
@@ -48,6 +48,9 @@ endif()
 
 if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
   AppendFlags(TARGET_SHARED_FLAGS -undefined dynamic_lookup)
+elseif(CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
+  # OpenBSD has no libdl, its functionality lives in libc.
+  AppendFlags(TARGET_BIN_FLAGS -Wl,-E)
 else() # Linux and FreeBSD.
   AppendFlags(TARGET_BIN_FLAGS -Wl,-E)
   list(APPEND TARGET_LIBS dl)
-- 
2.56.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Tarantool-patches] [PATCH luajit 2/3] cmake: allow using CMake build system in OpenBSD
  2026-10-26 13:24 [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system Sergey Bronnikov via Tarantool-patches
  2026-10-26 13:24 ` [Tarantool-patches] [PATCH luajit 1/3] cmake: omit -ldl for OpenBSD in SetTargetFlags() Sergey Bronnikov via Tarantool-patches
@ 2026-10-26 13:25 ` Sergey Bronnikov via Tarantool-patches
  2026-10-26 13:25 ` [Tarantool-patches] [PATCH luajit 3/3] cmake: make Git optional in SetVersion() Sergey Bronnikov via Tarantool-patches
  2026-10-29 14:58 ` [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system Sergey Kaplun via Tarantool-patches
  3 siblings, 0 replies; 5+ messages in thread
From: Sergey Bronnikov via Tarantool-patches @ 2026-10-26 13:25 UTC (permalink / raw)
  To: tarantool-patches, Sergey Kaplun, e.temirgaleev; +Cc: Sergey Bronnikov

From: Sergey Bronnikov <segreyb@tarantool.org>

The bundled LuaJIT CMake build refuses any host but
Linux/Darwin/FreeBSD ("Please use the old build system"); accept
OpenBSD. The patch fixes that.

Needed for the OpenBSD port.
---
 CMakeLists.txt | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 73f46835..091d5b70 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -27,7 +27,8 @@ project(LuaJIT C)
 if(NOT(
    CMAKE_SYSTEM_NAME STREQUAL "Linux" OR
    CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR
-   CMAKE_SYSTEM_NAME STREQUAL "FreeBSD"
+   CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR
+   CMAKE_SYSTEM_NAME STREQUAL "OpenBSD"
 ))
   message(FATAL_ERROR
     "Please use the old build system:\n\tmake -f Makefile.original <options>"
-- 
2.56.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Tarantool-patches] [PATCH luajit 3/3] cmake: make Git optional in SetVersion()
  2026-10-26 13:24 [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system Sergey Bronnikov via Tarantool-patches
  2026-10-26 13:24 ` [Tarantool-patches] [PATCH luajit 1/3] cmake: omit -ldl for OpenBSD in SetTargetFlags() Sergey Bronnikov via Tarantool-patches
  2026-10-26 13:25 ` [Tarantool-patches] [PATCH luajit 2/3] cmake: allow using CMake build system in OpenBSD Sergey Bronnikov via Tarantool-patches
@ 2026-10-26 13:25 ` Sergey Bronnikov via Tarantool-patches
  2026-10-29 14:58 ` [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system Sergey Kaplun via Tarantool-patches
  3 siblings, 0 replies; 5+ messages in thread
From: Sergey Bronnikov via Tarantool-patches @ 2026-10-26 13:25 UTC (permalink / raw)
  To: tarantool-patches, Sergey Kaplun, e.temirgaleev; +Cc: Sergey Bronnikov

From: Sergey Bronnikov <segreyb@tarantool.org>

SetVersion.cmake requires the Git package even when there is no
.git (as in the release tarball); make the lookup optional to
avoid a build dependency on Git.

Needed for the OpenBSD port.
---
 cmake/SetVersion.cmake | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cmake/SetVersion.cmake b/cmake/SetVersion.cmake
index e169b211..1cfabc2c 100644
--- a/cmake/SetVersion.cmake
+++ b/cmake/SetVersion.cmake
@@ -4,7 +4,7 @@
 # Copyright (C) 2015-2020 IPONWEB Ltd.
 
 function(SetVersion version majver minver patchver tweakver prerel)
-  find_package(Git QUIET REQUIRED)
+  find_package(Git QUIET)
   if(EXISTS ${CMAKE_SOURCE_DIR}/.git AND Git_FOUND)
     # Read version from the project's VCS and store the result
     # into version.
-- 
2.56.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system
  2026-10-26 13:24 [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system Sergey Bronnikov via Tarantool-patches
                   ` (2 preceding siblings ...)
  2026-10-26 13:25 ` [Tarantool-patches] [PATCH luajit 3/3] cmake: make Git optional in SetVersion() Sergey Bronnikov via Tarantool-patches
@ 2026-10-29 14:58 ` Sergey Kaplun via Tarantool-patches
  3 siblings, 0 replies; 5+ messages in thread
From: Sergey Kaplun via Tarantool-patches @ 2026-10-29 14:58 UTC (permalink / raw)
  To: Sergey Bronnikov; +Cc: tarantool-patches

Hi, Sergey!
Thanks for the patch set!
I see no flaws.

Side note: I can't verify the build since I have no OpenBSD system.

-- 
Best regards,
Sergey Kaplun

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-10-29 14:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-26 13:24 [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system Sergey Bronnikov via Tarantool-patches
2026-10-26 13:24 ` [Tarantool-patches] [PATCH luajit 1/3] cmake: omit -ldl for OpenBSD in SetTargetFlags() Sergey Bronnikov via Tarantool-patches
2026-10-26 13:25 ` [Tarantool-patches] [PATCH luajit 2/3] cmake: allow using CMake build system in OpenBSD Sergey Bronnikov via Tarantool-patches
2026-10-26 13:25 ` [Tarantool-patches] [PATCH luajit 3/3] cmake: make Git optional in SetVersion() Sergey Bronnikov via Tarantool-patches
2026-10-29 14:58 ` [Tarantool-patches] [PATCH luajit 0/3] OpenBSD support in a build system Sergey Kaplun via Tarantool-patches

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox