git: 370d7900f0c9 - 2022Q3 - multimedia/makemkv: Update to 1.17.0

From: Felix Palmen <zirias_at_FreeBSD.org>
Date: Sun, 07 Aug 2022 07:09:28 UTC
The branch 2022Q3 has been updated by zirias:

URL: https://cgit.FreeBSD.org/ports/commit/?id=370d7900f0c9fe3e222be6f8b0e4aacd7ff52716

commit 370d7900f0c9fe3e222be6f8b0e4aacd7ff52716
Author:     Felix Palmen <felix@palmen-it.de>
AuthorDate: 2022-07-07 16:24:40 +0000
Commit:     Felix Palmen <zirias@FreeBSD.org>
CommitDate: 2022-08-07 07:07:05 +0000

    multimedia/makemkv: Update to 1.17.0
    
    Release notes (aggregated):
    * LibMMBD stability improvements
    * Improved handling for discs with mastering errors
    * A new, rewritten DVD engine - much better handling for discs with
      structure protection
    * Many small bug-fixes
    
    Updated statically linked libraries:
      - ffmpeg 5.0.1
    
    While here, convert pkg-message to UCL format.
    
    PR:             265078
    Reported by:    portscout
    
    (cherry picked from commit 43c5c839a15b395c4db862da77541accb725cede)
---
 multimedia/makemkv/Makefile    | 29 +++++++++++++----------------
 multimedia/makemkv/distinfo    | 14 +++++++-------
 multimedia/makemkv/pkg-message |  6 ++++++
 multimedia/makemkv/pkg-plist   |  1 +
 4 files changed, 27 insertions(+), 23 deletions(-)

diff --git a/multimedia/makemkv/Makefile b/multimedia/makemkv/Makefile
index 9df41c52f8d8..de99a7868300 100644
--- a/multimedia/makemkv/Makefile
+++ b/multimedia/makemkv/Makefile
@@ -1,7 +1,7 @@
 # Created by: Felix Palmen <felix@palmen-it.de>
 
 PORTNAME=	makemkv
-PORTVERSION=	1.16.4
+PORTVERSION=	1.17.0
 CATEGORIES=	multimedia
 MASTER_SITES=	http://www.makemkv.com/download/:makemkv \
 		http://www.makemkv.com/download/old/:makemkv \
@@ -54,7 +54,7 @@ SUB_LIST=	LINUXBASE=${LINUXBASE}
 PLIST_SUB=	LINUXBASE=${LINUXBASE}
 
 FDKAACVERSION=	2.0.2
-FFMPEGVERSION=	4.4
+FFMPEGVERSION=	5.0.1
 OPENSSLVERSION=	1.0.2
 OPENSSLPATCHLEVEL=	k
 OPENSSLFULLVER=	${OPENSSLVERSION}${OPENSSLPATCHLEVEL}
@@ -68,10 +68,12 @@ OPTIONS_DEFINE=	EXAMPLES
 
 PATCHELF_CMD?=	${LOCALBASE}/bin/patchelf
 
-CFLAGS+=	-std=c++11 -std=c11 -DFORCE_OPENSSL_NO_EC \
-		-I${WRKDIR}/gnuroot/include \
-		-I${WRKDIR}/openssl-${OPENSSLFULLVER}/include
-SSP_CFLAGS=
+CPPFLAGS+=	-I${WRKDIR}/gnuroot/include \
+		-I${WRKDIR}/openssl-${OPENSSLFULLVER}/include \
+		-D_linux_ -DFORCE_OPENSSL_NO_EC \
+		${${OSVERSION}<1300000:?-Dcaddr_t=void\* -D__daddr_t_defined:}
+CFLAGS+=	-std=c11
+CXXFLAGS+=	-std=c++11
 LDFLAGS+=	-L${WRKDIR}/gnuroot/lib
 HAS_CONFIGURE=	yes
 CONFIGURE_ARGS=	--prefix=${PREFIX} --disable-gui --host=${LINUXTRIPLET} \
@@ -80,6 +82,7 @@ CONFIGURE_ENV=	CC=${LINUXTRIPLET}-gcc CXX=${LINUXTRIPLET}-g++ \
 		PATH=${WRKDIR}/gnuroot/bin:${PATH} \
 		PKG_CONFIG_PATH=${WRKDIR}/gnuroot/lib/pkgconfig
 MAKE_ENV=	PATH=${WRKDIR}/gnuroot/bin:${PATH}
+MAKE_ARGS=	CFLAGS="${CXXFLAGS} ${CPPFLAGS} -std=c11"
 STRIP_CMD=	${WRKDIR}/gnuroot/bin/${LINUXTRIPLET}-strip
 
 post-extract:
@@ -117,7 +120,7 @@ pre-configure:
 		# FDK AAC
 		cd ${WRKDIR}/fdk-aac-${FDKAACVERSION}; \
 		export PATH=${WRKDIR}/gnuroot/bin:$$PATH; \
-		export CXXFLAGS="${CFLAGS}"; \
+		export CXXFLAGS="${CXXFLAGS}"; \
 		LDFLAGS=-L${WRKDIR}/gnuroot/lib \
 		./configure --prefix=${WRKDIR}/gnuroot \
 			--disable-shared --enable-static --with-pic \
@@ -127,15 +130,15 @@ pre-configure:
 		cd ${WRKDIR}/ffmpeg-${FFMPEGVERSION}; \
 		export PATH=${WRKDIR}/gnuroot/bin:$$PATH; \
 		export CFLAGS="${CFLAGS}"; \
+		export CPPFLAGS="${CPPFLAGS}"; \
 		PKG_CONFIG_PATH=${WRKDIR}/gnuroot/lib/pkgconfig \
-		CPPFLAGS="-Dcaddr_t=void\* -D__daddr_t_defined" \
 		LDFLAGS=-L${WRKDIR}/gnuroot/lib \
 		./configure --prefix=${WRKDIR}/gnuroot \
 			--disable-shared --enable-static --enable-pic \
 			--enable-libfdk-aac --pkg-config=pkg-config \
 			--cross-prefix=${LINUXTRIPLET}- --arch=${LINUXARCH} \
 			--target-os=linux --host-cc=${CC}; \
-		CFLAGS="${CFLAGS}" \
+		CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" \
 		${MAKE_CMD} ${_MAKE_JOBS} V=1 ARCH=x86 all install
 		# OpenSSL headers
 		cd ${WRKDIR}/openssl-${OPENSSLFULLVER}; \
@@ -164,10 +167,4 @@ post-install-EXAMPLES-on:
 		${INSTALL_DATA} ${FILESDIR}/update-makemkv-key.sh \
 			${STAGEDIR}${EXAMPLESDIR}
 
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == "i386"
-MAKE_JOBS_UNSAFE=	yes
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/multimedia/makemkv/distinfo b/multimedia/makemkv/distinfo
index 249dc9e071fa..59e1de163c43 100644
--- a/multimedia/makemkv/distinfo
+++ b/multimedia/makemkv/distinfo
@@ -1,11 +1,11 @@
-TIMESTAMP = 1629369603
-SHA256 (makemkv/makemkv-oss-1.16.4.tar.gz) = e6b0d391159e60c48c115cdf6938eb02f5aeef3c3fecf94813c500f4031e4f6b
-SIZE (makemkv/makemkv-oss-1.16.4.tar.gz) = 6536730
-SHA256 (makemkv/makemkv-bin-1.16.4.tar.gz) = 22fbd3f57e93f3c79a76c878202fb27e85f2d66de26b3be87b69198228a66aa2
-SIZE (makemkv/makemkv-bin-1.16.4.tar.gz) = 15455839
+TIMESTAMP = 1657210297
+SHA256 (makemkv/makemkv-oss-1.17.0.tar.gz) = ede75c7cc05dbef9d2e5c55d340dc090f58b25b0c809e2345c2554f0b20cf75f
+SIZE (makemkv/makemkv-oss-1.17.0.tar.gz) = 6631571
+SHA256 (makemkv/makemkv-bin-1.17.0.tar.gz) = e277d75722aede64ac1b564969c7d64608e00591b17068dc7a88358e7a03e2c0
+SIZE (makemkv/makemkv-bin-1.17.0.tar.gz) = 16332197
 SHA256 (makemkv/fdk-aac-2.0.2.tar.gz) = c9e8630cf9d433f3cead74906a1520d2223f89bcd3fa9254861017440b8eb22f
 SIZE (makemkv/fdk-aac-2.0.2.tar.gz) = 2886434
-SHA256 (makemkv/ffmpeg-4.4.tar.bz2) = 42093549751b582cf0f338a21a3664f52e0a9fbe0d238d3c992005e493607d0e
-SIZE (makemkv/ffmpeg-4.4.tar.bz2) = 11489948
+SHA256 (makemkv/ffmpeg-5.0.1.tar.bz2) = 28df33d400a1c1c1b20d07a99197809a3b88ef765f5f07dc1ff067fac64c59d6
+SIZE (makemkv/ffmpeg-5.0.1.tar.bz2) = 11824483
 SHA256 (makemkv/openssl-1.0.2k.tar.gz) = 6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0
 SIZE (makemkv/openssl-1.0.2k.tar.gz) = 5309236
diff --git a/multimedia/makemkv/pkg-message b/multimedia/makemkv/pkg-message
index f0cfb71e17e9..ca6c39cd1982 100644
--- a/multimedia/makemkv/pkg-message
+++ b/multimedia/makemkv/pkg-message
@@ -1,3 +1,6 @@
+[
+{ type: install
+  message: <<EOM
 This port doesn't include the MakeMKV GUI as it doesn't work on FreeBSD.
 
 To enable makemkvcon to find a drive on FreeBSD, a part of Linux' sysfs must
@@ -10,3 +13,6 @@ If makemkvcon refuses to work as root, check the permissions of
 permissions, use the command
 
   chmod 1777 /compat/linux/tmp
+EOM
+}
+]
diff --git a/multimedia/makemkv/pkg-plist b/multimedia/makemkv/pkg-plist
index 2c06ff60adda..3854b6309a3a 100644
--- a/multimedia/makemkv/pkg-plist
+++ b/multimedia/makemkv/pkg-plist
@@ -1,5 +1,6 @@
 bin/makemkvcon
 bin/mmccextr
+bin/mmgplsrv
 bin/sdftool
 lib/makemkv/libdriveio.so.0
 lib/makemkv/libmakemkv.so.1