COMMENT =		cross-platform multimedia library

V =			3.4.16
DISTNAME =		SDL3-${V}
PKGNAME =		${DISTNAME:L}
REVISION =		1

SHARED_LIBS +=		SDL3                      0.1 # 3.4.0

CATEGORIES =		devel
HOMEPAGE =		https://libsdl.org/
MAINTAINER =		Thomas Frohwein <thfr@openbsd.org>

# zlib
PERMIT_PACKAGE =	Yes

WANTLIB += EGL X11 Xcursor Xext Xfixes Xi Xrandr Xrender Xss Xtst drm
WANTLIB += fribidi gbm iconv m pthread sndio usbhid wayland-client
WANTLIB += wayland-cursor wayland-egl xkbcommon

SITES =			https://libsdl.org/release/ \
			https://github.com/libsdl-org/SDL/releases/download/release-${V}/

MODULES =		devel/cmake
MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib -L${X11BASE}/lib -liconv

BUILD_DEPENDS =		devel/sdl2:patch \
			wayland/libinput-openbsd
LIB_DEPENDS =		converters/libiconv \
			devel/fribidi \
			wayland/wayland \
			x11/xkbcommon

CONFIGURE_ARGS =	-DSDL_ALSA=OFF \
			-DSDL_DBUS=OFF \
			-DSDL_DEPS_SHARED=OFF \
			-DSDL_HAPTIC=OFF \
			-DSDL_HIDAPI=OFF \
			-DSDL_INSTALL=ON \
			-DSDL_JACK=OFF \
			-DSDL_LIBUDEV=OFF \
			-DSDL_PIPEWIRE=OFF \
			-DSDL_PULSEAUDIO=OFF \
			-DSDL_SNDIO_SHARED=OFF \
			-DSDL_VULKAN=ON \
			-DSDL_WAYLAND=ON \
			-DSDL_WAYLAND_SHARED=OFF \
			-DSDL_X11_SHARED=OFF \
			-DHAVE_GCC_WDOCUMENTATION=OFF \
			-DHAVE_GCC_WDOCUMENTATION_UNKNOWN_COMMAND=OFF

# building tests adds build dependency on graphics/ffmpeg
CONFIGURE_ARGS +=	-DSDL_TESTS=OFF

CFLAGS +=		-I${LOCALBASE}/include -I${X11BASE}/include

post-extract:
	ln -sf ${WRKDIR}/devel/sdl2/*/src/joystick/SDL_gamecontrollerdb.h \
		${WRKSRC}/src/joystick/SDL_gamepad_db.h
	sed -i 's/s_ControllerMappings/s_GamepadMappings/g' \
		${WRKSRC}/src/joystick/SDL_gamepad_db.h

.include <bsd.port.mk>
