1
0
mirror of https://github.com/Interlisp/maiko.git synced 2026-03-01 17:35:54 +00:00

Add libbsd to ld library search for all makefile-linux* and makefile-init-linux*. Add libbsd to MAIKO_LIBRARIES (where appropriate) in CMakeLists.txt. This will support building maiko on Ubuntu 22.04 and Debian 12, where strlcat is found only in libbsd. For Ubuntu 24.04 and beyond and Debian 13 and beyond, strlcat is now in glibc (>2.38).

This commit is contained in:
Frank Halasz
2026-03-01 03:00:08 -08:00
parent d791b1d332
commit 97b84d4117
17 changed files with 38 additions and 33 deletions

View File

@@ -1,6 +1,5 @@
CMAKE_MINIMUM_REQUIRED(VERSION 3.15)
PROJECT(maiko C)
SET(CMAKE_EXPORT_COMPILE_COMMANDS ON)
SET(CMAKE_C_STANDARD 99)
@@ -37,6 +36,11 @@ IF(NEED_LIB_M)
SET(MAIKO_LIBRARIES m)
ENDIF()
CHECK_LIBRARY_EXISTS(bsd strlcat "" NEED_LIB_BSD)
IF(NEED_LIB_BSD)
SET(MAIKO_LIBRARIES ${MAIKO_LIBRARIES} bsd)
ENDIF()
SET (MAIKO_RELEASE 351 CACHE STRING "Release version to build. Release: 115, 200, 201, 210, 300, 350, 351")
SET_PROPERTY(CACHE MAIKO_RELEASE PROPERTY STRINGS 115 200 201 210 300 350 351)
@@ -448,6 +452,7 @@ ADD_CUSTOM_COMMAND(OUTPUT vdate.c
ADD_EXECUTABLE(lde src/ldeboot.c src/unixfork.c)
TARGET_COMPILE_DEFINITIONS(lde PRIVATE ${MAIKO_DEFINITIONS})
TARGET_INCLUDE_DIRECTORIES(lde PRIVATE inc)
TARGET_LINK_LIBRARIES(lde ${MAIKO_LIBRARIES})
IF(MAIKO_DISPLAY_X11)
# Tell it that the X11 launcher is available.
TARGET_COMPILE_DEFINITIONS(lde PRIVATE ${MAIKO_DISPLAY_X11_DEFINITIONS})

View File

@@ -21,8 +21,8 @@ OPTFLAGS = -O0 -g
DEBUGFLAGS =
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -21,8 +21,8 @@ OPTFLAGS = -O0 -g
DEBUGFLAGS =
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -21,8 +21,8 @@ OPTFLAGS = -O0 -g
DEBUGFLAGS =
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT -D__wsl1__
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -21,8 +21,8 @@ OPTFLAGS = -O0 -g
DEBUGFLAGS =
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=$(RELEASE) -DNOVERSION -DINIT -D__wsl1__
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -17,8 +17,8 @@ XFLAGS = -DSDL=2
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE)
LDFLAGS = -lm -lSDL2
LDELDFLAGS =
LDFLAGS = -lm -lSDL2 -lbsd
LDELDFLAGS = -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -19,8 +19,8 @@ XFLAGS = -DXWINDOW
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE)
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -17,8 +17,8 @@ SDLFLAGS = -DSDL=2
OPTFLAGS = -O2 -g3
DFLAGS = $(SDLFLAGS) -DRELEASE=$(RELEASE)
LDFLAGS = -lSDL2 -lm
LDELDFLAGS =
LDFLAGS = -lSDL2 -lm -lbsd
LDELDFLAGS = -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -19,8 +19,8 @@ XFLAGS = -DXWINDOW
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE)
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -17,8 +17,8 @@ XFLAGS = -DSDL=2
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE)
LDFLAGS = -lm -lSDL2
LDELDFLAGS =
LDFLAGS = -lm -lSDL2 -lbsd
LDELDFLAGS = -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -19,8 +19,8 @@ XFLAGS = -DXWINDOW
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE)
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -17,8 +17,8 @@ XFLAGS = -DSDL=2
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE)
LDFLAGS = -lm -lSDL2
LDELDFLAGS =
LDFLAGS = -lm -lSDL2 -lbsd
LDELDFLAGS = -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -20,8 +20,8 @@ XFLAGS = -DXWINDOW
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE)
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -17,8 +17,8 @@ SDLFLAGS = -DSDL=2
OPTFLAGS = -O2 -g3
DFLAGS = $(SDLFLAGS) -DRELEASE=$(RELEASE) -D__wsl1__
LDFLAGS = -lSDL2 -lm
LDELDFLAGS =
LDFLAGS = -lSDL2 -lm -lbsd
LDELDFLAGS = -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -19,8 +19,8 @@ XFLAGS = -DXWINDOW
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -D__wsl1__
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -17,8 +17,8 @@ XFLAGS = -DSDL=2
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -D__wsl1__
LDFLAGS = -lm -lSDL2
LDELDFLAGS =
LDFLAGS = -lm -lSDL2 -lbsd
LDELDFLAGS = -lbsd
OBJECTDIR = ../$(RELEASENAME)/

View File

@@ -20,8 +20,8 @@ XFLAGS = -DXWINDOW
OPTFLAGS = -O2 -g3
DFLAGS = $(XFLAGS) -DRELEASE=$(RELEASE) -D__wsl1__
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm -lbsd
OBJECTDIR = ../$(RELEASENAME)/