1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-20 20:09:11 +00:00

New port: audio/squeezelite

Lightweight headless squeezebox player for Logitech Media Server

WWW: https://github.com/ralph-irving/squeezelite

PR:		247041
Submitted by:	Joachim Werner <jockl@pianojockl.org>
This commit is contained in:
Tobias C. Berner 2020-08-15 05:46:18 +00:00
parent 936bb763fb
commit d9e4991718
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=544911
8 changed files with 152 additions and 0 deletions

View File

@ -773,6 +773,7 @@
SUBDIR += spotify-tui
SUBDIR += spotifyd
SUBDIR += squash
SUBDIR += squeezelite
SUBDIR += sratom
SUBDIR += stegosaurus-lv2
SUBDIR += stk

View File

@ -0,0 +1,57 @@
# Created by: jockl <jockl@pianojockl.org>
# $FreeBSD$
PORTNAME= squeezelite
PORTVERSION= 1.9.7.1253
CATEGORIES= audio
MAINTAINER= jockl@pianojockl.org
COMMENT= Lightweight headless squeezebox player for Logitech Media Server
LICENSE= GPLv3
LIB_DEPENDS= libfaad.so:audio/faad \
libportaudio.so:audio/portaudio \
libmpg123.so:audio/mpg123 \
libasound.so:audio/alsa-lib \
libFLAC.so:audio/flac \
libvorbis.so:audio/libvorbis \
libogg.so:audio/libogg
USES= gmake ssl
USE_GITHUB= yes
GH_ACCOUNT= ralph-irving
GH_PROJECT= squeezelite
GH_TAGNAME= 7b13fd9
OPTIONS_DEFINE= SSL FFMPEG RESAMPLE DSD SELFPIPE OPUS LINKALL
OPTIONS_DEFAULT=SSL RESAMPLE FFMPEG DSD LINKALL
RESAMPLE_DESC= Resampling
SELFPIPE_DESC= Selfpipe
LINKALL_DESC= Link all libraries at build time
DSD_DESC= Direct Stream Digital
SSL_VARS= MENV+=" -DUSE_SSL -DNO_SSL_SYM"
RESAMPLE_VARS= MENV+=" -DRESAMPLE"
FFMPEG_VARS= MENV+=" -DFFMPEG"
DSD_VARS= MENV+=" -DDSD"
VISEXPORT_VARS= MENV+=" -DVISEXPORT"
LINKALL_VARS= MENV+=" -DLINKALL"
SELFPIPE_VARS= MENV+=" -DSELFPIPE"
OPUS_VARS= MENV+=" -DOPUS"
MAKE_ENV= OPTS="-DGPIO ${MENV}"
OPUS_LIB_DEPENDS= libopusfile.so:audio/opusfile \
libopus.so:audio/opus
FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg
RESAMPLE_LIB_DEPENDS= libsoxr.so:audio/libsoxr
PLIST_FILES= bin/${PORTNAME} \
man/man1/${PORTNAME}.1.gz
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
${INSTALL_MAN} ${WRKSRC}/doc/${PORTNAME}.1 ${STAGEDIR}${MANPREFIX}/man/man1
.include <bsd.port.mk>

View File

@ -0,0 +1,3 @@
TIMESTAMP = 1591519528
SHA256 (ralph-irving-squeezelite-1.9.7.1253-7b13fd9_GH0.tar.gz) = c79c5194d3ac39c4c11b0489c12a4158c6aff86eef4b5042494ad34393ebae0c
SIZE (ralph-irving-squeezelite-1.9.7.1253-7b13fd9_GH0.tar.gz) = 166420

View File

@ -0,0 +1,28 @@
--- Makefile.orig 2020-06-04 15:03:39 UTC
+++ Makefile
@@ -1,3 +1,7 @@
+# FreeBSD's portaudio lives in usr/local
+CPPFLAGS = -I/usr/local/include -I/usr/local/include/portaudio2 -I/usr/local/include/opus
+LDFLAGS = -L/usr/local/lib /usr/local/lib/libportaudio.a -lm
+
#Cross compile support - create a Makefile which defines these three variables and then includes this Makefile...
CFLAGS ?= -Wall -fPIC -O2
CFLAGS += -fcommon
@@ -24,7 +28,7 @@ OPT_PULSEAUDIO = -DPULSEAUDIO
SOURCES = \
main.c slimproto.c buffer.c stream.c utils.c \
output.c output_alsa.c output_pa.c output_stdout.c output_pack.c output_pulse.c decode.c \
- flac.c pcm.c mad.c vorbis.c mpg.c
+ flac.c pcm.c vorbis.c mpg.c
SOURCES_DSD = dsd.c dop.c dsd2pcm/dsd2pcm.c
SOURCES_FF = ffmpeg.c
@@ -45,7 +49,7 @@ LINK_PULSEAUDIO = -lpulse
LINK_SSL = -lssl -lcrypto
LINK_ALAC = -lalac
-LINKALL = -lmad -lmpg123 -lFLAC -lvorbisfile -lvorbis -logg
+LINKALL = -lmpg123 -lFLAC -lvorbisfile -lvorbis -logg
LINKALL_FF = -lavformat -lavcodec -lavutil
LINKALL_RESAMPLE = -lsoxr
LINKALL_IR = -llirc_client

View File

@ -0,0 +1,15 @@
--- decode.c.orig 2020-06-07 11:02:26 UTC
+++ decode.c
@@ -183,11 +183,7 @@ void decode_init(log_level level, const char *include_
if (!strstr(exclude_codecs, "pcm") && (!include_codecs || (order_codecs = strstr(include_codecs, "pcm"))))
sort_codecs((include_codecs ? order_codecs - include_codecs : i), register_pcm());
- // try mad then mpg for mp3 unless command line option passed
- if (!(strstr(exclude_codecs, "mp3") || strstr(exclude_codecs, "mad")) &&
- (!include_codecs || (order_codecs = strstr(include_codecs, "mp3")) || (order_codecs = strstr(include_codecs, "mad"))))
- sort_codecs((include_codecs ? order_codecs - include_codecs : i), register_mad());
- else if (!(strstr(exclude_codecs, "mp3") || strstr(exclude_codecs, "mpg")) &&
+ if (!(strstr(exclude_codecs, "mp3") || strstr(exclude_codecs, "mpg")) &&
(!include_codecs || (order_codecs = strstr(include_codecs, "mp3")) || (order_codecs = strstr(include_codecs, "mpg"))))
sort_codecs((include_codecs ? order_codecs - include_codecs : i), register_mpg());

View File

@ -0,0 +1,11 @@
--- main.c.orig 2020-06-07 11:03:18 UTC
+++ main.c
@@ -51,7 +51,7 @@
#else
#define CODECS_DSD ""
#endif
-#define CODECS_MP3 " (mad,mpg for specific mp3 codec)"
+#define CODECS_MP3 ""
#define CODECS CODECS_BASE CODECS_AAC CODECS_FF CODECS_OPUS CODECS_DSD CODECS_MP3

View File

@ -0,0 +1,34 @@
--- squeezelite.h.orig 2020-06-07 11:03:51 UTC
+++ squeezelite.h
@@ -191,7 +191,6 @@
#if LINUX
#define LIBFLAC "libFLAC.so.8"
-#define LIBMAD "libmad.so.0"
#define LIBMPG "libmpg123.so.0"
#define LIBVORBIS "libvorbisfile.so.3"
#define LIBOPUS "libopusfile.so.0"
@@ -206,7 +205,6 @@
#if OSX
#define LIBFLAC "libFLAC.8.dylib"
-#define LIBMAD "libmad.0.dylib"
#define LIBMPG "libmpg123.0.dylib"
#define LIBVORBIS "libvorbisfile.3.dylib"
#define LIBTREMOR "libvorbisidec.1.dylib"
@@ -220,7 +218,6 @@
#if WIN
#define LIBFLAC "libFLAC.dll"
-#define LIBMAD "libmad-0.dll"
#define LIBMPG "libmpg123-0.dll"
#define LIBVORBIS "libvorbisfile.dll"
#define LIBOPUS "libopusfile-0.dll"
@@ -234,7 +231,6 @@
#if FREEBSD
#define LIBFLAC "libFLAC.so.8"
-#define LIBMAD "libmad.so.0"
#define LIBMPG "libmpg123.so.0"
#define LIBVORBIS "libvorbisfile.so.3"
#define LIBTREMOR "libvorbisidec.so.1"

View File

@ -0,0 +1,3 @@
Lightweight headless squeezebox player for Logitech Media Server
WWW: https://github.com/ralph-irving/squeezelite