Files
ports/audio/virtual_oss_bluetooth/Makefile
Christos Margiolis 2dcc66e8c6 audio/virtual_oss_bluetooth: New port
src commit 9cab9fde5eda ("virtual_oss: Port to base") includes the
bluetooth backend, however the backend also has a HAVE_LIBAV ifdef,
which, if set, enables libav support, which depends on
multimedia/gstreamer1-libav. While we could build the non-libav parts
from base and the libav ones as a port, we instead build the whole
backend as a port to avoid unnecessary complexity. The reason for that
being that building from base would install the backend in
/usr/lib/virtual_oss/voss_bt.so, and the port would install _another_
voss_bt.so, but this time in /usr/local/lib/virtual_oss/voss_bt.so,
which would create conflicts.

The port simply builds the files from src, which is not ideal, as this
means that the src repo needs to be present in the system in order for
the port to build, but this way we can avoid version mismatches and
ifdef hell as the project progresses.

Note that this is an extension for the base system virtual_oss, and not
audio/virtual_oss.

Sponsored by:	The FreeBSD Foundation
Reviewed by:	arrowd
Differential Revision:	https://reviews.freebsd.org/D52426
2025-09-30 17:39:28 +02:00

42 lines
928 B
Makefile

PORTNAME= virtual_oss_bluetooth
DISTVERSION= ${OSVERSION}
CATEGORIES= audio
DISTFILES=
MAINTAINER= christos@FreeBSD.org
COMMENT= Bluetooth backend for virtual_oss
WWW= https://freebsd.org
LICENSE= BSD2CLAUSE
USES= pathfix uidfix
USE_LDCONFIG= yes
OPTIONS_DEFINE= LIBAV
OPTIONS_DEFAULT=
LIBAV_DESC= Build with libav support for AAC audio
LIBAV_LIB_DEPENDS= libavdevice.so:multimedia/gstreamer1-libav \
libavutil.so:multimedia/gstreamer1-libav \
libavcodec.so:multimedia/gstreamer1-libav \
libavformat.so:multimedia/gstreamer1-libav
LIBAV_MAKE_ENV= HAVE_LIBAV=YES
MAKE_ENV= LIBDIR=${PREFIX}/lib \
MAKEOBJDIRPREFIX=${WRKDIR}
WRKSRC= ${SRC_BASE}/lib/virtual_oss/bt
PLIST_FILES= lib/virtual_oss/voss_bt.so
pre-install:
${MKDIR} ${STAGEDIR}${PREFIX}/lib/virtual_oss
.include <bsd.port.pre.mk>
.if !exists(${WRKSRC})
IGNORE= requires FreeBSD source files in ${SRC_BASE}
.endif
.include <bsd.port.post.mk>