127 lines
3.4 KiB
Makefile
127 lines
3.4 KiB
Makefile
PORTNAME= openal-soft
|
|
PORTVERSION= 1.25.2
|
|
CATEGORIES= audio
|
|
MASTER_SITES= https://openal-soft.org/openal-releases/
|
|
|
|
MAINTAINER= multimedia@FreeBSD.org
|
|
COMMENT= Software implementation of the OpenAL specification
|
|
WWW= https://openal-soft.org/
|
|
|
|
LICENSE= LGPL20+
|
|
LICENSE_FILE= ${WRKSRC}/COPYING
|
|
|
|
USES= cmake compiler:c++20-lang pkgconfig tar:bzip2
|
|
USE_LDCONFIG= yes
|
|
|
|
CMAKE_ARGS= -DCMAKE_INSTALL_DATADIR:STRING="${PREFIX}/etc"
|
|
CMAKE_ON= ALSOFT_BACKEND_WAVE
|
|
CMAKE_OFF= ALSOFT_BACKEND_ALSA \
|
|
ALSOFT_DLOPEN \
|
|
ALSOFT_EXAMPLES \
|
|
ALSOFT_ENABLE_MODULES \
|
|
ALSOFT_REQUIRE_SOLARIS \
|
|
ALSOFT_RTKIT \
|
|
CMAKE_CXX_SCAN_FOR_MODULES
|
|
|
|
# Use pthread instead of C11 threads
|
|
CFLAGS+= -D__STDC_NO_THREADS__
|
|
# do not link with librt and libdl.
|
|
LDFLAGS+= -Wl,--as-needed
|
|
LDFLAGS_i386= -Wl,-z,notext
|
|
|
|
PLIST_SUB= SOVERSION=${PORTVERSION}
|
|
|
|
OPTIONS_DEFINE= CONFIG EXAMPLES JACK OSS PIPEWIRE PORTAUDIO \
|
|
PULSEAUDIO SNDIO UTILS
|
|
OPTIONS_DEFINE_aarch64= SIMD
|
|
OPTIONS_DEFINE_amd64= SIMD
|
|
OPTIONS_DEFINE_i386= SIMD
|
|
OPTIONS_DEFAULT= OSS UTILS
|
|
OPTIONS_DEFAULT_aarch64=SIMD
|
|
OPTIONS_DEFAULT_amd64= SIMD
|
|
OPTIONS_DEFAULT_i386= SIMD
|
|
OPTIONS_RADIO= SDL
|
|
OPTIONS_RADIO_SDL= SDL2 SDL3
|
|
OPTIONS_SUB= yes
|
|
|
|
CONFIG_DESC= Install configuration utility (needs Qt6)
|
|
RTKIT_DESC= Real-time priority support (Linux only, requires D-Bus)
|
|
SDL2_DESC= ${SDL_DESC} v2
|
|
SDL3_DESC= ${SDL_DESC} v3
|
|
UTILS_DESC= Build and install utility programs
|
|
|
|
CONFIG_IMPLIES= UTILS
|
|
CONFIG_USES= qt:6
|
|
CONFIG_USE= QT=base
|
|
CONFIG_CMAKE_BOOL_OFF= ALSOFT_NO_CONFIG_UTIL
|
|
|
|
JACK_LIB_DEPENDS= libjack.so:audio/jack
|
|
JACK_CMAKE_BOOL= ALSOFT_BACKEND_JACK ALSOFT_REQUIRE_JACK
|
|
|
|
OSS_CMAKE_BOOL= ALSOFT_BACKEND_OSS ALSOFT_REQUIRE_OSS
|
|
|
|
PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire
|
|
PIPEWIRE_USES= localbase:ldflags
|
|
PIPEWIRE_CMAKE_BOOL= ALSOFT_BACKEND_PIPEWIRE ALSOFT_REQUIRE_PIPEWIRE
|
|
|
|
PORTAUDIO_LIB_DEPENDS= libportaudio.so:audio/portaudio
|
|
PORTAUDIO_CMAKE_BOOL= ALSOFT_BACKEND_PORTAUDIO ALSOFT_REQUIRE_PORTAUDIO
|
|
|
|
PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
|
|
PULSEAUDIO_CMAKE_BOOL= ALSOFT_BACKEND_PULSEAUDIO ALSOFT_REQUIRE_PULSEAUDIO
|
|
|
|
SDL2_USES= sdl
|
|
SDL2_USE= SDL=sdl2
|
|
SDL2_CMAKE_BOOL= ALSOFT_BACKEND_SDL2 ALSOFT_REQUIRE_SDL2
|
|
|
|
SDL3_USES= sdl
|
|
SDL3_USE= SDL=sdl3
|
|
SDL3_CMAKE_BOOL= ALSOFT_BACKEND_SDL3 ALSOFT_REQUIRE_SDL3
|
|
|
|
SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio
|
|
SNDIO_CMAKE_BOOL= ALSOFT_BACKEND_SNDIO ALSOFT_REQUIRE_SNDIO
|
|
|
|
UTILS_LIB_DEPENDS= libmysofa.so:audio/libmysofa
|
|
UTILS_CMAKE_BOOL= ALSOFT_UTILS
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if ${PORT_OPTIONS:MSIMD}
|
|
. if !${MACHINE_CPU:Msse}
|
|
CMAKE_OFF+= ALSOFT_CPUEXT_SSE
|
|
. endif
|
|
. if !${MACHINE_CPU:Msse2}
|
|
CMAKE_OFF+= ALSOFT_CPUEXT_SSE2
|
|
. endif
|
|
. if !${MACHINE_CPU:Msse3}
|
|
CMAKE_OFF+= ALSOFT_CPUEXT_SSE3
|
|
. endif
|
|
. if !${MACHINE_CPU:Msse41}
|
|
CMAKE_OFF+= ALSOFT_CPUEXT_SSE4_1
|
|
. endif
|
|
.else
|
|
CMAKE_OFF+= ALSOFT_CPUEXT_NEON \
|
|
ALSOFT_CPUEXT_SSE \
|
|
ALSOFT_CPUEXT_SSE2 \
|
|
ALSOFT_CPUEXT_SSE3 \
|
|
ALSOFT_CPUEXT_SSE4_1
|
|
.endif
|
|
|
|
# The following is actually meant for lld 15.0 and later, but the ports
|
|
# framework does not support LINKER_TYPE and LINKER_VERSION yet.
|
|
.if ${COMPILER_TYPE} == "clang"
|
|
# Turn off checking of dynamic relocations, to avoid lld diagnostics about
|
|
# possibly incorrect addend values.
|
|
LDFLAGS_i386+= -Wl,--no-check-dynamic-relocations
|
|
.endif
|
|
|
|
post-patch:
|
|
@${REINPLACE_CMD} 's|/etc/openal|${ETCDIR}|' \
|
|
${WRKSRC}/alc/alconfig.cpp
|
|
|
|
post-install-EXAMPLES-on:
|
|
(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . \
|
|
${STAGEDIR}${EXAMPLESDIR})
|
|
|
|
.include <bsd.port.post.mk>
|