git: 8927aa380dc8 - main - multimedia/libzen: Switch to CMake and GitHub

From: Daniel Engberg <diizzy_at_FreeBSD.org>
Date: Sun, 04 May 2025 10:08:31 UTC
The branch main has been updated by diizzy:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8927aa380dc8d720754b2769ca4169d5e5fcad61

commit 8927aa380dc8d720754b2769ca4169d5e5fcad61
Author:     Daniel Engberg <diizzy@FreeBSD.org>
AuthorDate: 2025-05-04 06:57:16 +0000
Commit:     Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2025-05-04 09:55:12 +0000

    multimedia/libzen: Switch to CMake and GitHub
    
    Switch to CMake as curl option in multimedia/libmediainfo is broken
    using GNU Autotools and the CMake build requires .cmake files to detect
    libzen on which it depends. While at it move to GitHub as upstream
    bundles MediaInfoLib and MediaInfo with the latest version in master
    branch for convenience. Makefile is also reworked as this is from a
    repo maintained separately
    
    PR:             286173
    Tested by:      Ale <discipline@tiscali.it>
    Approved by:    maintainer timeout, 2+ weeks
---
 multimedia/libzen/Makefile  | 26 ++++++++++++++------------
 multimedia/libzen/distinfo  |  6 +++---
 multimedia/libzen/pkg-plist | 13 +++++--------
 3 files changed, 22 insertions(+), 23 deletions(-)

diff --git a/multimedia/libzen/Makefile b/multimedia/libzen/Makefile
index 08d32db88ae1..42713667a858 100644
--- a/multimedia/libzen/Makefile
+++ b/multimedia/libzen/Makefile
@@ -1,10 +1,8 @@
 PORTNAME=	libzen
-PORTVERSION=	0.4.41.${MEDIAINFO_VERSION}
+DISTVERSION=	0.4.41.25.03
+PORTREVISION=	1
 PORTEPOCH=	3
 CATEGORIES=	multimedia
-MASTER_SITES=	https://mediaarea.net/download/binary/mediainfo/${MEDIAINFO_VERSION}/ \
-		LOCAL/sunpoet
-DISTNAME=	MediaInfo_CLI_${MEDIAINFO_VERSION}_GNU_FromSource
 
 MAINTAINER=	sunpoet@FreeBSD.org
 COMMENT=	ZenLib used by MediaInfo and its library
@@ -12,17 +10,21 @@ WWW=		https://mediaarea.net/en/MediaInfo \
 		https://github.com/MediaArea/ZenLib
 
 LICENSE=	ZLIB
-LICENSE_FILE=	${WRKSRC}/../../../License.txt
+LICENSE_FILE=	${WRKSRC}/../../License.txt
 
-USES=		compiler:c++11-lang dos2unix libtool pathfix tar:xz
-
-CONFIGURE_ARGS=	--enable-shared --enable-static
-GNU_CONFIGURE=	yes
-INSTALL_TARGET=	install-strip
+USES=		cmake compiler:c++11-lang dos2unix pathfix pkgconfig tar:xz
+DOS2UNIX_GLOB=	*.c *.cmake.in *.cpp *.h *.pc.in *.txt
+DOS2UNIX_WRKSRC=${WRKDIR}
 USE_LDCONFIG=	yes
 
-WRKSRC=		${WRKDIR}/MediaInfo_CLI_GNU_FromSource/ZenLib/Project/GNU/Library
+USE_GITHUB=	yes
+GH_ACCOUNT=	MediaArea
+GH_PROJECT=	ZenLib
+GH_TAGNAME=	16e8ba0
+
+WRKSRC_SUBDIR=	Project/CMake
 
-MEDIAINFO_VERSION=	25.03
+post-patch:
+	@${REINPLACE_CMD} -e '/^Libs_Static/d' ${PATCH_WRKSRC}/libzen.pc.in
 
 .include <bsd.port.mk>
diff --git a/multimedia/libzen/distinfo b/multimedia/libzen/distinfo
index bdd723a753ee..cd550c7971a7 100644
--- a/multimedia/libzen/distinfo
+++ b/multimedia/libzen/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1744288734
-SHA256 (MediaInfo_CLI_25.03_GNU_FromSource.tar.xz) = 248f2183f1db14b2d70c5650e5fda84cc9923e1c57a79b9000000f09803e13fa
-SIZE (MediaInfo_CLI_25.03_GNU_FromSource.tar.xz) = 5897484
+TIMESTAMP = 1746346921
+SHA256 (MediaArea-ZenLib-0.4.41.25.03-16e8ba0_GH0.tar.gz) = 675dface61d0a2a918e07c31977a0590bb1d472c7fa27aca43e52076751c3282
+SIZE (MediaArea-ZenLib-0.4.41.25.03-16e8ba0_GH0.tar.gz) = 160560
diff --git a/multimedia/libzen/pkg-plist b/multimedia/libzen/pkg-plist
index 7be66e8fe0ef..6a0b0a0f1805 100644
--- a/multimedia/libzen/pkg-plist
+++ b/multimedia/libzen/pkg-plist
@@ -13,12 +13,6 @@ include/ZenLib/Format/Http/Http_Cookies.h
 include/ZenLib/Format/Http/Http_Handler.h
 include/ZenLib/Format/Http/Http_Request.h
 include/ZenLib/Format/Http/Http_Utils.h
-include/ZenLib/HTTP_Client.h
-include/ZenLib/HTTP_Client/HTTPClient.h
-include/ZenLib/HTTP_Client/HTTPClientAuth.h
-include/ZenLib/HTTP_Client/HTTPClientCommon.h
-include/ZenLib/HTTP_Client/HTTPClientString.h
-include/ZenLib/HTTP_Client/HTTPClientWrapper.h
 include/ZenLib/InfoMap.h
 include/ZenLib/MemoryDebug.h
 include/ZenLib/OS_Utils.h
@@ -33,8 +27,11 @@ include/ZenLib/ZtringListList.h
 include/ZenLib/ZtringListListF.h
 include/ZenLib/int128s.h
 include/ZenLib/int128u.h
-lib/libzen.a
+lib/cmake/zenlib/ZenLibConfig.cmake
+lib/cmake/zenlib/ZenLibConfigVersion.cmake
+lib/cmake/zenlib/ZenLibTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/zenlib/ZenLibTargets.cmake
 lib/libzen.so
 lib/libzen.so.0
-lib/libzen.so.0.0.0
+lib/libzen.so.0.4.41
 libdata/pkgconfig/libzen.pc