multimedia/lms: Add options STB, MAGICK for image library
This fixes SEGV when transcoding is activated for subsonic API when using STB as image library. PR: 268487
This commit is contained in:
parent
9b5d863eb7
commit
34dce7ec4d
@ -1,6 +1,7 @@
|
||||
PORTNAME= lms
|
||||
DISTVERSIONPREFIX= v
|
||||
DISTVERSION= 3.34.0
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= multimedia
|
||||
|
||||
MAINTAINER= yuri@FreeBSD.org
|
||||
@ -10,12 +11,10 @@ WWW= https://github.com/epoupon/lms
|
||||
LICENSE= GPLv3
|
||||
LICENSE_FILE= ${WRKSRC}/COPYING
|
||||
|
||||
BUILD_DEPENDS= googletest>0:devel/googletest \
|
||||
${LOCALBASE}/include/stb/stb_image.h:devel/stb
|
||||
BUILD_DEPENDS= googletest>0:devel/googletest
|
||||
LIB_DEPENDS= libavformat.so:multimedia/ffmpeg \
|
||||
libboost_system.so:devel/boost-libs \
|
||||
libconfig++.so:devel/libconfig \
|
||||
libGraphicsMagick.so:graphics/GraphicsMagick \
|
||||
libtag.so:audio/taglib \
|
||||
libwthttp.so:www/wt
|
||||
RUN_DEPENDS= ffmpeg:multimedia/ffmpeg
|
||||
@ -32,6 +31,19 @@ USE_RC_SUBR= ${PORTNAME}
|
||||
|
||||
PLIST_SUB= USER="${USER}" GROUP="${GROUP}"
|
||||
|
||||
OPTIONS_RADIO= IMAGE_LIB
|
||||
OPTIONS_RADIO_IMAGE_LIB= STB MAGICK
|
||||
OPTIONS_DEFAULT= MAGICK
|
||||
|
||||
STB_DESC= Use STB as image library (uses less memory)
|
||||
STB_BUILD_DEPENDS= ${LOCALBASE}/include/stb/stb_image.h:devel/stb
|
||||
STB_CMAKE_BOOL= FREEBSD_USE_STB
|
||||
STB_BROKEN= bug#268487 (crash when transcoding is activated for subsonic API when using STB as image library)
|
||||
|
||||
MAGICK_DESC= Use GraphicsMagick++ as image library
|
||||
MAGICK_LIB_DEPENDS= libGraphicsMagick.so:graphics/GraphicsMagick
|
||||
MAGICK_CMAKE_BOOL= FREEBSD_USE_MAGICK
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's|"/etc/lms.conf"|"${PREFIX}/etc/lms.conf"|' \
|
||||
${WRKSRC}/src/lms/main.cpp \
|
||||
|
19
multimedia/lms/files/patch-CMakeLists.txt
Normal file
19
multimedia/lms/files/patch-CMakeLists.txt
Normal file
@ -0,0 +1,19 @@
|
||||
--- CMakeLists.txt.orig 2022-12-22 07:55:50 UTC
|
||||
+++ CMakeLists.txt
|
||||
@@ -19,10 +19,14 @@ find_package(Boost REQUIRED COMPONENTS system program_
|
||||
find_package(Wt REQUIRED COMPONENTS Wt Dbo DboSqlite3 HTTP)
|
||||
pkg_check_modules(Taglib REQUIRED IMPORTED_TARGET taglib)
|
||||
pkg_check_modules(Config++ REQUIRED IMPORTED_TARGET libconfig++)
|
||||
-pkg_check_modules(GraphicsMagick++ IMPORTED_TARGET GraphicsMagick++)
|
||||
+if (FREEBSD_USE_MAGICK)
|
||||
+ pkg_check_modules(GraphicsMagick++ IMPORTED_TARGET GraphicsMagick++)
|
||||
+endif()
|
||||
pkg_check_modules(LIBAV IMPORTED_TARGET libavcodec libavutil libavformat)
|
||||
find_package(PAM)
|
||||
-find_package(STB)
|
||||
+if (FREEBSD_USE_STB)
|
||||
+ find_package(STB)
|
||||
+endif()
|
||||
|
||||
# WT
|
||||
if (NOT Wt_FOUND)
|
@ -1,18 +0,0 @@
|
||||
--- src/libs/utils/impl/ChildProcess.cpp.orig 2022-02-02 17:25:04 UTC
|
||||
+++ src/libs/utils/impl/ChildProcess.cpp
|
||||
@@ -68,6 +68,7 @@ ChildProcess::ChildProcess(boost::asio::io_context& io
|
||||
if (res < 0)
|
||||
throw SystemException {errno, "pipe2 failed!"};
|
||||
|
||||
+#if !defined(__FreeBSD__) // see https://github.com/epoupon/lms/issues/144
|
||||
{
|
||||
#if defined(__linux__) && defined(F_SETPIPE_SZ)
|
||||
// Just a hint here to prevent the writer from writing too many bytes ahead of the reader
|
||||
@@ -79,6 +80,7 @@ ChildProcess::ChildProcess(boost::asio::io_context& io
|
||||
throw SystemException {errno, "fcntl failed!"};
|
||||
#endif
|
||||
}
|
||||
+#endif
|
||||
|
||||
res = fork();
|
||||
if (res == -1)
|
Loading…
Reference in New Issue
Block a user