# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= readymedia VERSION= 1.3.3 KEYWORDS= net multimedia www VARIANTS= std SDESC[std]= DLNA/UPnP-AV compliant media server HOMEPAGE= https://minidlna.sourceforge.net/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= SF/minidlna/minidlna/1.3.3 DISTFILE[1]= minidlna-1.3.3.tar.gz:main DF_INDEX= 1 SPKGS[std]= set primary man nls OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= ffmpeg:dev:std libid3tag:dev:std libexif:dev:std libvorbis:dev:std flac:dev:std BUILDRUN_DEPENDS= ffmpeg:primary:std libid3tag:primary:std libexif:primary:std libvorbis:primary:std flac:primary:std USERS= dlna GROUPS= dlna USERGROUP_SPKG= primary USES= autoreconf cpe jpeg sqlite gettext iconv DISTNAME= minidlna-1.3.3 LICENSE= GPLv2:primary LICENSE_TERMS= primary:{{WRKDIR}}/TERMS LICENSE_FILE= GPLv2:{{WRKSRC}}/COPYING LICENSE_AWK= TERMS:"" LICENSE_SOURCE= TERMS:{{WRKSRC}}/minidlna.c LICENSE_SCHEME= solo CPE_PRODUCT= readymedia CPE_VENDOR= readymedia_project FPC_EQUIVALENT= net/minidlna MUST_CONFIGURE= gnu CONFIGURE_ARGS= --with-db-path=/var/db/minidlna --with-os-url="https://www.ravenports.com" RC_SUBR= minidlna:primary SUB_FILES= messages-primary.ucl SUB_LIST= USER=dlna post-install: ${INSTALL_MAN} ${WRKSRC}/*.5 ${STAGEDIR}${PREFIX}/share/man/man5/ ${INSTALL_MAN} ${WRKSRC}/*.8 ${STAGEDIR}${PREFIX}/share/man/man8/ ${INSTALL_DATA} ${WRKSRC}/minidlna.conf \ ${STAGEDIR}${PREFIX}/etc/minidlna.conf.sample [FILE:396:descriptions/desc.primary] This is the ReadyMedia project. This project was registered on SourceForge.net on Oct 22, 2008, and is described by the project team as follows: ReadyMedia (formerly MiniDLNA) is server software with the aim of being fully compliant with DLNA/UPnP-AV clients. It is developed by a NETGEAR employee for the ReadyNAS product line. So if you are looking for a NAS, please consider ReadyNAS first! [FILE:100:distinfo] 39026c6d4a139b9180192d1c37225aa3376fdf4f1a74d7debbdbb693d996afa4 824527 minidlna-1.3.3.tar.gz [FILE:48:manifests/plist.primary] @sample etc/minidlna.conf.sample sbin/minidlnad [FILE:58:manifests/plist.man] share/man/man5/minidlna.conf.5 share/man/man8/minidlnad.8 [FILE:520:manifests/plist.nls] share/locale/da/LC_MESSAGES/minidlna.mo share/locale/de/LC_MESSAGES/minidlna.mo share/locale/es/LC_MESSAGES/minidlna.mo share/locale/fr/LC_MESSAGES/minidlna.mo share/locale/it/LC_MESSAGES/minidlna.mo share/locale/ja/LC_MESSAGES/minidlna.mo share/locale/ko/LC_MESSAGES/minidlna.mo share/locale/nb/LC_MESSAGES/minidlna.mo share/locale/nl/LC_MESSAGES/minidlna.mo share/locale/pl/LC_MESSAGES/minidlna.mo share/locale/ru/LC_MESSAGES/minidlna.mo share/locale/sl/LC_MESSAGES/minidlna.mo share/locale/sv/LC_MESSAGES/minidlna.mo [FILE:560:patches/patch-kqueue.c] 64bit time_t --- kqueue.c.orig 2023-05-31 08:25:59 UTC +++ kqueue.c @@ -28,6 +28,7 @@ #include #include +#include #include #include #include @@ -189,7 +190,7 @@ kqueue_process(struct timeval *tv) TIMEVAL_TO_TIMESPEC(tv, &ts); - DPRINTF(E_DEBUG, L_GENERAL, "kevent timer: %lu.%06lu, changes: %d\n", + DPRINTF(E_DEBUG, L_GENERAL, "kevent timer: %lld.%06lu, changes: %d\n", ts.tv_sec, ts.tv_nsec, n); events = kevent(kq, change_list, n, event_list, MAXEVENTS, &ts); [FILE:1051:patches/patch-libav.h] --- libav.h.orig 2023-05-31 08:25:59 UTC +++ libav.h @@ -174,7 +174,11 @@ lav_get_interlaced(AVStream *s) #define lav_codec_tag(s) s->codecpar->codec_tag #define lav_sample_rate(s) s->codecpar->sample_rate #define lav_bit_rate(s) s->codecpar->bit_rate +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59, 24, 100) #define lav_channels(s) s->codecpar->channels +#else +#define lav_channels(s) s->codecpar->ch_layout.nb_channels +#endif #define lav_width(s) s->codecpar->width #define lav_height(s) s->codecpar->height #define lav_profile(s) s->codecpar->profile @@ -186,7 +190,11 @@ lav_get_interlaced(AVStream *s) #define lav_codec_tag(s) s->codec->codec_tag #define lav_sample_rate(s) s->codec->sample_rate #define lav_bit_rate(s) s->codec->bit_rate +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59, 24, 100) #define lav_channels(s) s->codec->channels +#else +#define lav_channels(s) s->codec->ch_layout.nb_channels +#endif #define lav_width(s) s->codec->width #define lav_height(s) s->codec->height #define lav_profile(s) s->codec->profile [FILE:365:patches/patch-minidlna.c] Ensure kqueue monitoring can be disabled. https://sourceforge.net/p/minidlna/bugs/337/ --- minidlna.c.orig 2023-05-31 08:25:59 UTC +++ minidlna.c @@ -1150,7 +1150,7 @@ main(int argc, char **argv) lastdbtime = _get_dbtime(); #ifdef HAVE_WATCH - if (!GETFLAG(SCANNING_MASK)) + if (GETFLAG(INOTIFY_MASK) && !GETFLAG(SCANNING_MASK)) start_monitor(); #endif [FILE:684:patches/patch-minidlna.conf] --- minidlna.conf.orig 2023-05-31 08:25:59 UTC +++ minidlna.conf @@ -25,7 +25,7 @@ media_dir=/opt #friendly_name=My DLNA Server # set this if you would like to specify the directory where you want MiniDLNA to store its database and album art cache -#db_dir=/var/cache/minidlna +#db_dir=/var/db/minidlna # set this if you would like to specify the directory where you want MiniDLNA to store its log file #log_dir=/var/log @@ -65,6 +65,9 @@ notify_interval=900 serial=12345678 model_number=1 +# Override the uuid to run multiple instances +# uuid=550e8400-e29b-41d4-a716-446655440000 + # specify the path to the MiniSSDPd socket #minissdpdsocket=/var/run/minissdpd.sock [FILE:301:patches/patch-minidlna.conf.5] Silence a mandoc warning. Index: minidlna.conf.5 --- minidlna.conf.5.orig 2023-05-31 08:25:59 UTC +++ minidlna.conf.5 @@ -1,7 +1,7 @@ .\" minidlna.conf man page .TH minidlna.conf 5 "October 2012" .SH NAME -minidlna +minidlna.conf \- minidlnad configuration file .SH DESCRIPTION .PP .B minidlna [FILE:467:patches/patch-utils.c] avoid mkdir /, from freebsd ports --- utils.c.orig 2023-05-31 08:25:59 UTC +++ utils.c @@ -287,7 +287,9 @@ make_dir(char * path, mode_t mode) ++s; } - if (mkdir(path, mode) < 0) { + if (!(path[0] == '/' && s == path + 1) /* skip "/" */ + && mkdir(path, mode) < 0) { + int e = errno; /* If we failed for any other reason than the directory * already exists, output a diagnostic and return -1.*/ if ((errno != EEXIST && errno != EISDIR) [FILE:202:files/messages-primary.ucl.in] primary: { type: "install" message: <