Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Jul 2020 12:05:51 +0000 (UTC)
From:      Thomas Zander <riggs@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r543591 - in head/audio/libsndfile: . files
Message-ID:  <202007281205.06SC5ppt078872@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: riggs
Date: Tue Jul 28 12:05:50 2020
New Revision: 543591
URL: https://svnweb.freebsd.org/changeset/ports/543591

Log:
  Update to upstream prerelease snapshot 1.0.29 as of 20200620
  
  Details:
  * Pull source code from GitHub
  * Switch to cmake
  * Remove clipping option (autodetected)
  * Fix denial-of-service (CVE-2019-3832, since CVE-2018-19758 appears
    to be incomplete.)
  
  PR:		248268
  Submitted by:	daniel.engberg.lists@pyret.net
  MFH:		2020Q3 (hat: ports-secteam)
  Security:	CVE-2019-3832

Added:
  head/audio/libsndfile/files/extrapatch-cmake_SndFileChecks.cmake-disableexternallibs   (contents, props changed)
  head/audio/libsndfile/files/patch-CMakeLists.txt   (contents, props changed)
  head/audio/libsndfile/files/patch-cmake_SndFileChecks.cmake   (contents, props changed)
Deleted:
  head/audio/libsndfile/files/patch-CVE-2017-12562
  head/audio/libsndfile/files/patch-CVE-2017-14634
  head/audio/libsndfile/files/patch-CVE-2017-17456_2017-17457_2018-19661_2018-19662
  head/audio/libsndfile/files/patch-CVE-2017-6892
  head/audio/libsndfile/files/patch-CVE-2017-8361
  head/audio/libsndfile/files/patch-CVE-2017-8362
  head/audio/libsndfile/files/patch-CVE-2017-8363
  head/audio/libsndfile/files/patch-CVE-2018-19758
  head/audio/libsndfile/files/patch-Check-MAX_CHANNELS-in-sndfile-deinterleave
  head/audio/libsndfile/files/patch-rf64_arm
  head/audio/libsndfile/files/patch-typos
Modified:
  head/audio/libsndfile/Makefile
  head/audio/libsndfile/distinfo
  head/audio/libsndfile/pkg-plist

Modified: head/audio/libsndfile/Makefile
==============================================================================
--- head/audio/libsndfile/Makefile	Tue Jul 28 11:05:02 2020	(r543590)
+++ head/audio/libsndfile/Makefile	Tue Jul 28 12:05:50 2020	(r543591)
@@ -2,10 +2,8 @@
 # $FreeBSD$
 
 PORTNAME=	libsndfile
-PORTVERSION=	1.0.28
-PORTREVISION=	2
+DISTVERSION=	1.0.29pre.20200620
 CATEGORIES=	audio
-MASTER_SITES=	http://www.mega-nerd.com/libsndfile/files/
 
 MAINTAINER=	multimedia@FreeBSD.org
 COMMENT=	Reading and writing files containing sampled sound (like WAV or AIFF)
@@ -13,37 +11,42 @@ COMMENT=	Reading and writing files containing sampled 
 LICENSE=	LGPL21+
 LICENSE_FILE=	${WRKSRC}/COPYING
 
-USES=		cpe gmake libtool localbase pkgconfig
+USES=		cmake cpe localbase pkgconfig python:build,test shebangfix
+SHEBANG_FILES=	programs/test-sndfile-metadata-set.py \
+		src/binheader_writef_check.py \
+		src/create_symbols_file.py
+
 CPE_VENDOR=	${CPE_PRODUCT}_project
-GNU_CONFIGURE=	yes
-CONFIGURE_ARGS=	--disable-gcc-pipe \
-		--disable-sqlite \
-		--disable-alsa \
-		--disable-octave \
-		--with-pkgconfigdir=${PREFIX}/libdata/pkgconfig
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	erikd
+GH_TAGNAME=	2ccb23f
+
 USE_LDCONFIG=	yes
-TEST_TARGET=	check
-INSTALL_TARGET=	install-strip
 
-OPTIONS_DEFINE=	CPU_CLIP EXTERNAL DOCS
+OPTIONS_DEFINE=	DOCS EXTERNAL STATIC TEST
+OPTIONS_SUB=	yes
 OPTIONS_DEFAULT=	EXTERNAL
-CPU_CLIP_DESC=	Allow machine-dependent clipping
-EXTERNAL_DESC=	Enable FLAC and Ogg Vorbis support
+EXTERNAL_DESC=	Enable FLAC, Ogg Vorbis, Opus support
+TEST_IMPLIES=	STATIC
 
-CPU_CLIP_VARS=	MANUAL_PACKAGE_BUILD="WITH_CPU_CLIP may customize the package for the build machine"
-CPU_CLIP_CONFIGURE_OFF=	--disable-cpu-clip
-
 EXTERNAL_LIB_DEPENDS=	libFLAC.so:audio/flac \
 			libogg.so:audio/libogg \
+			libopus.so:audio/opus \
 			libvorbis.so:audio/libvorbis
-EXTERNAL_CONFIGURE_OFF=	--disable-external-libs
 
-post-patch:
-	@${REINPLACE_CMD} -e '/^SUBDIRS =/s/ doc / /g' ${WRKSRC}/Makefile.in
+STATIC_CMAKE_OFF=	-DBUILD_SHARED_LIBS:BOOL=ON
 
-post-install-DOCS-on:
-	@${MKDIR} ${STAGEDIR}${DOCSDIR}
-	@${TAR} -C ${WRKSRC}/doc --exclude "*Makefile*" --exclude "*.in" \
-		-cf - . | ${TAR} -C ${STAGEDIR}${DOCSDIR} --unlink -xf -
+TEST_CMAKE_ON=	-DBUILD_TESTING:BOOL=ON
+TEST_CMAKE_OFF=	-DBUILD_TESTING:BOOL=OFF
+
+.include <bsd.port.options.mk>
+
+.if ! ${PORT_OPTIONS:MEXTERNAL}
+EXTRA_PATCHES=	${FILESDIR}/extrapatch-cmake_SndFileChecks.cmake-disableexternallibs
+.endif
+
+do-test:
+	(cd ${TEST_WRKSRC} && CTEST_OUTPUT_ON_FAILURE=1 ctest -V)
 
 .include <bsd.port.mk>

Modified: head/audio/libsndfile/distinfo
==============================================================================
--- head/audio/libsndfile/distinfo	Tue Jul 28 11:05:02 2020	(r543590)
+++ head/audio/libsndfile/distinfo	Tue Jul 28 12:05:50 2020	(r543591)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1494006962
-SHA256 (libsndfile-1.0.28.tar.gz) = 1ff33929f042fa333aed1e8923aa628c3ee9e1eb85512686c55092d1e5a9dfa9
-SIZE (libsndfile-1.0.28.tar.gz) = 1202833
+TIMESTAMP = 1595853607
+SHA256 (erikd-libsndfile-1.0.29pre.20200620-2ccb23f_GH0.tar.gz) = 70fee769ab60c579090edf5a43a4959a71feb14f0e531394f4e1c1a9741258c3
+SIZE (erikd-libsndfile-1.0.29pre.20200620-2ccb23f_GH0.tar.gz) = 721895

Added: head/audio/libsndfile/files/extrapatch-cmake_SndFileChecks.cmake-disableexternallibs
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/libsndfile/files/extrapatch-cmake_SndFileChecks.cmake-disableexternallibs	Tue Jul 28 12:05:50 2020	(r543591)
@@ -0,0 +1,32 @@
+--- cmake/SndFileChecks.cmake.orig	2020-07-23 13:42:53 UTC
++++ cmake/SndFileChecks.cmake
+@@ -31,28 +31,7 @@ if (VCPKG_TOOLCHAIN AND (NOT CMAKE_VERSION VERSION_LES
+ 	set (CMAKE_FIND_PACKAGE_PREFER_CONFIG ON)
+ endif ()
+ 
+-if (CMAKE_FIND_PACKAGE_PREFER_CONFIG)
+-	find_package (Ogg 1.3 CONFIG)
+-	find_package (Vorbis CONFIG COMPONENTS Enc)
+-	find_package (FLAC CONFIG)
+-	find_package (Opus CONFIG)
+-
+-	include (FindPackageHandleStandardArgs)
+-	find_package_handle_standard_args (Ogg CONFIG_MODE)
+-	find_package_handle_standard_args (Vorbis CONFIG_MODE)
+-	find_package_handle_standard_args (FLAC CONFIG_MODE)
+-	find_package_handle_standard_args (Opus CONFIG_MODE)
+-else ()
+-	find_package (Ogg 1.3)
+-	find_package (Vorbis COMPONENTS Enc)
+-	find_package (FLAC)
+-	find_package (Opus)
+-endif ()
+-if (Vorbis_FOUND AND FLAC_FOUND AND Opus_FOUND)
+-	set (HAVE_EXTERNAL_XIPH_LIBS 1)
+-else ()
+-	set (HAVE_EXTERNAL_XIPH_LIBS 0)
+-endif ()
++set (HAVE_EXTERNAL_XIPH_LIBS 0)
+ 
+ find_package (Speex)
+ find_package (SQLite3)

Added: head/audio/libsndfile/files/patch-CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/libsndfile/files/patch-CMakeLists.txt	Tue Jul 28 12:05:50 2020	(r543591)
@@ -0,0 +1,13 @@
+--- CMakeLists.txt.orig	2020-07-23 12:41:43 UTC
++++ CMakeLists.txt
+@@ -74,8 +74,8 @@ cmake_dependent_option (ENABLE_COMPATIBLE_LIBSNDFILE_N
+ 
+ set (HAVE_EXTERNAL_XIPH_LIBS ${ENABLE_EXTERNAL_LIBS})
+ set (HAVE_SQLITE3 ${BUILD_REGTEST})
+-set (HAVE_ALSA_ASOUNDLIB_H ${ALSA_FOUND})
+-set (HAVE_SNDIO_H ${SNDIO_FOUND})
++set (HAVE_ALSA_ASOUNDLIB_H 0)
++set (HAVE_SNDIO_H 0)
+ 
+ set (ENABLE_EXPERIMENTAL_CODE ${ENABLE_EXPERIMENTAL})
+ set (HAVE_SPEEX ${ENABLE_EXPERIMENTAL})

Added: head/audio/libsndfile/files/patch-cmake_SndFileChecks.cmake
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/libsndfile/files/patch-cmake_SndFileChecks.cmake	Tue Jul 28 12:05:50 2020	(r543591)
@@ -0,0 +1,14 @@
+--- cmake/SndFileChecks.cmake.orig	2020-06-20 08:18:11 UTC
++++ cmake/SndFileChecks.cmake
+@@ -22,11 +22,6 @@ else ()
+ endif ()
+ set (SF_COUNT_MAX 0x7fffffffffffffffll)
+ 
+-if (NOT WIN32)
+-	find_package (ALSA)
+-	find_package (Sndio)
+-endif ()
+-
+ if (VCPKG_TOOLCHAIN AND (NOT CMAKE_VERSION VERSION_LESS 3.15))
+ 	set (CMAKE_FIND_PACKAGE_PREFER_CONFIG ON)
+ endif ()

Modified: head/audio/libsndfile/pkg-plist
==============================================================================
--- head/audio/libsndfile/pkg-plist	Tue Jul 28 11:05:02 2020	(r543590)
+++ head/audio/libsndfile/pkg-plist	Tue Jul 28 12:05:50 2020	(r543591)
@@ -10,26 +10,24 @@ bin/sndfile-play
 bin/sndfile-salvage
 include/sndfile.h
 include/sndfile.hh
-lib/libsndfile.a
-lib/libsndfile.so
-lib/libsndfile.so.1
-lib/libsndfile.so.1.0.28
+lib/cmake/SndFile/SndFileConfig.cmake
+lib/cmake/SndFile/SndFileConfigVersion.cmake
+lib/cmake/SndFile/SndFileTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/SndFile/SndFileTargets.cmake
+%%STATIC%%lib/libsndfile.a
+%%NO_STATIC%%lib/libsndfile.so
+%%NO_STATIC%%lib/libsndfile.so.1
+%%NO_STATIC%%lib/libsndfile.so.1.0.29
 libdata/pkgconfig/sndfile.pc
 man/man1/sndfile-cmp.1.gz
 man/man1/sndfile-concat.1.gz
 man/man1/sndfile-convert.1.gz
-man/man1/sndfile-deinterleave.1.gz
 man/man1/sndfile-info.1.gz
 man/man1/sndfile-interleave.1.gz
 man/man1/sndfile-metadata-get.1.gz
-man/man1/sndfile-metadata-set.1.gz
 man/man1/sndfile-play.1.gz
 man/man1/sndfile-salvage.1.gz
-%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
-%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
 %%PORTDOCS%%%%DOCSDIR%%/FAQ.html
-%%PORTDOCS%%%%DOCSDIR%%/NEWS
-%%PORTDOCS%%%%DOCSDIR%%/README
 %%PORTDOCS%%%%DOCSDIR%%/api.html
 %%PORTDOCS%%%%DOCSDIR%%/bugs.html
 %%PORTDOCS%%%%DOCSDIR%%/command.html
@@ -40,6 +38,7 @@ man/man1/sndfile-salvage.1.gz
 %%PORTDOCS%%%%DOCSDIR%%/lists.html
 %%PORTDOCS%%%%DOCSDIR%%/new_file_type.HOWTO
 %%PORTDOCS%%%%DOCSDIR%%/octave.html
+%%PORTDOCS%%%%DOCSDIR%%/print.css
 %%PORTDOCS%%%%DOCSDIR%%/sndfile_info.html
 %%PORTDOCS%%%%DOCSDIR%%/tutorial.html
 %%PORTDOCS%%%%DOCSDIR%%/win32.html



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202007281205.06SC5ppt078872>