09.05.2014 4:30 пользователь "Stuart Henderson" <[email protected]> написал:
>
> On 2014/05/07 18:24, Nils R wrote:
> > > Hi ports@,
> > >
> > > this is an update of chromaprint to the latest version.
> > >
> > > It builds on amd64, and the tests run fine with `make test`
> > > (the command for running the tests in the current port
> > > doesn't work).
> > >
> > > I will try this out now with puddletag ;)
> > >
> > > Any comments? Please test.
> > >
> > > Nils
> > >
> > >
> > > PS. I would have sent diffs, but i could not add the patch
> > > directory to cvs, so i made a tarball.
> >
> > Puddletag needs the fpcalc utility program that ships with
> > chromaprint. With this tarball, it gets build and installed
> > by default.
> >
> > Now, tagging through AcousticID works in puddletag.
> >
> >
> > Nils
>
> Just been looking at this; it seems wrong that gtest should become
> a LIB_DEPENDS ... and building it and running port-lib-depends-check
> it doesn't seem that installed files actually do link to it.
>
> Since it's an update to an existing port I've tweaked it a bit to
> reduce the diff, and also added a perl subst to replace /usr/local
> with LOCALBASE in FindGTest.cmake. (I've done it this way rather
> than using SUBST_CMD so that "make update-patches" gives less
> trouble).
>
> I don't know what abi-compliance-checker was saying, but this *is*
> an ABI change (two additional functions; chromaprint_set_option and
>
Chromaprint::FingerprinterConfigurationTest4::FingerprinterConfigurationTest4
> also Chromaprint::SilenceRemover::SilenceRemover takes an additional
> parameter) so I've bumped shlib major.
>
> I'm building clementine now. Assuming that goes OK, any comments/
> objections/OKs to this version?
Instead of calling SUBST_CMD you could just add "-D LOCALBASE=${LOCALBASE}"
to CONFIGURE_ARGS. :)
Otherwise, if Clementine will work (my laptop almost gone crazy, so I'm out
of development for a few days), here is my okay, too.
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/audio/chromaprint/Makefile,v
> retrieving revision 1.2
> diff -u -p -r1.2 Makefile
> --- Makefile 10 Mar 2013 22:55:01 -0000 1.2
> +++ Makefile 9 May 2014 00:22:48 -0000
> @@ -1,19 +1,20 @@
> # $OpenBSD: Makefile,v 1.2 2013/03/10 22:55:01 espie Exp $
> +
> SHARED_ONLY = Yes
> +
> COMMENT = audio fingerprint extraction library
> -CATEGORIES = audio devel
> -HOMEPAGE = http://acoustid.org/chromaprint/
> -DISTNAME = chromaprint-0.6
>
> -MASTER_SITES = http://www.ohvost.ru/dnl/ \
> - http://malcolm.ecentrum.hu/distfiles/
> +DISTNAME = chromaprint-1.1
> +CATEGORIES = audio devel
> +HOMEPAGE = https://acoustid.org/chromaprint/
> +MASTER_SITES =
https://bitbucket.org/acoustid/chromaprint/downloads/
>
> -SHARED_LIBS = chromaprint 0.0 # 0.1
> +SHARED_LIBS = chromaprint 1.0 # 0.1
>
> # LGPL2.1+
> PERMIT_PACKAGE_CDROM = Yes
>
> -WANTLIB = avcodec avutil m stdc++
> +WANTLIB += avcodec avformat avutil c m pthread stdc++ swresample
>
> MODULES = devel/cmake
>
> @@ -24,9 +25,13 @@ LIB_DEPENDS = graphics/ffmpeg
>
> # gtest presence is checked in configure stage, so this cannot be in
TEST_DEPENDS
> BUILD_DEPENDS += devel/gtest
> -CONFIGURE_ARGS = -DBUILD_TESTS:Bool=Yes
> +CONFIGURE_ARGS = -DBUILD_TESTS:Bool=Yes -DBUILD_EXAMPLES=ON
> +
> +post-patch:
> + perl -pi -e 's,/usr/local,${LOCALBASE},' \
> + ${WRKSRC}/cmake/modules/FindGTest.cmake
>
> do-test:
> - cd ${WRKBUILD}/tests && ${MAKE_PROGRAM} check
> + cd ${WRKBUILD}/tests && ./all_tests
>
> .include <bsd.port.mk>
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/audio/chromaprint/distinfo,v
> retrieving revision 1.1.1.1
> diff -u -p -r1.1.1.1 distinfo
> --- distinfo 5 Feb 2013 11:09:11 -0000 1.1.1.1
> +++ distinfo 9 May 2014 00:22:48 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (chromaprint-0.6.tar.gz) =
XZuC2iJkUMFOQ0gjcaGyoXjiYEq1suklnzOxtGHunWM=
> -SIZE (chromaprint-0.6.tar.gz) = 542366
> +SHA256 (chromaprint-1.1.tar.gz) =
axTX6klkWBtzvT+AOMiFfAHkRkIcGumcu/ZN4mtHzRI=
> +SIZE (chromaprint-1.1.tar.gz) = 542360
> Index: patches/patch-cmake_modules_FindGTest_cmake
> ===================================================================
> RCS file: patches/patch-cmake_modules_FindGTest_cmake
> diff -N patches/patch-cmake_modules_FindGTest_cmake
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-cmake_modules_FindGTest_cmake 9 May 2014 00:22:48 -0000
> @@ -0,0 +1,31 @@
> +$OpenBSD$
> +--- cmake/modules/FindGTest.cmake.orig Sat Nov 23 16:43:42 2013
> ++++ cmake/modules/FindGTest.cmake Wed May 7 16:29:15 2014
> +@@ -71,12 +71,24 @@ find_path(GTEST_INCLUDE_DIR
> + )
> + mark_as_advanced(GTEST_INCLUDE_DIR)
> +
> ++MACRO(GTEST_FIND varname shortname)
> ++
> ++ FIND_LIBRARY(${varname}
> ++ NAMES ${shortname}
> ++ PATHS
> ++ /usr/local/lib
> ++ NO_DEFAULT_PATH
> ++ DOC "Location of GTEST Libraries"
> ++ )
> ++
> ++ENDMACRO(GTEST_FIND)
> ++
> + include(FindPackageHandleStandardArgs)
> +-find_package_handle_standard_args(GTest DEFAULT_MSG GTEST_SOURCE_DIR
GTEST_INCLUDE_DIR)
> ++find_package_handle_standard_args(GTest DEFAULT_MSG GTEST_INCLUDE_DIR)
> +
> + if(GTEST_FOUND)
> + set(GTEST_INCLUDE_DIRS ${GTEST_INCLUDE_DIR})
> +- set(GTEST_LIBRARIES gtest)
> +- set(GTEST_MAIN_LIBRARIES gtest_main)
> ++ GTEST_FIND(GTEST_LIBRARIES gtest)
> ++ GTEST_FIND(GTEST_MAIN_LIBRARIES gtest_main)
> + set(GTEST_BOTH_LIBRARIES ${GTEST_LIBRARIES} ${GTEST_MAIN_LIBRARIES})
> + endif()
> Index: patches/patch-tests_CMakeLists_txt
> ===================================================================
> RCS file: patches/patch-tests_CMakeLists_txt
> diff -N patches/patch-tests_CMakeLists_txt
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-tests_CMakeLists_txt 9 May 2014 00:22:48 -0000
> @@ -0,0 +1,11 @@
> +$OpenBSD$
> +--- tests/CMakeLists.txt.orig Sat Nov 23 16:43:42 2013
> ++++ tests/CMakeLists.txt Wed May 7 15:12:15 2014
> +@@ -3,7 +3,6 @@ include_directories(
> + ${Boost_INCLUDE_DIRS}
> + ${CMAKE_CURRENT_SOURCE_DIR}/../src
> + )
> +-add_subdirectory(${GTEST_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}/gtest_build)
> +
> + set(tests_SOURCES
> + main.cpp
> Index: pkg/DESCR
> ===================================================================
> RCS file: /cvs/ports/audio/chromaprint/pkg/DESCR,v
> retrieving revision 1.1.1.1
> diff -u -p -r1.1.1.1 DESCR
> --- pkg/DESCR 5 Feb 2013 11:09:11 -0000 1.1.1.1
> +++ pkg/DESCR 9 May 2014 00:22:48 -0000
> @@ -1,4 +1,4 @@
> -Chromaprint is the core component of the Acoustid project. It's a
> +Chromaprint is the core component of the AcoustID project. It's a
> client-side library that implements a custom algorithm for extracting
> fingerprints from any audio source.
>
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/audio/chromaprint/pkg/PLIST,v
> retrieving revision 1.1.1.1
> diff -u -p -r1.1.1.1 PLIST
> --- pkg/PLIST 5 Feb 2013 11:09:11 -0000 1.1.1.1
> +++ pkg/PLIST 9 May 2014 00:22:48 -0000
> @@ -1,4 +1,5 @@
> @comment $OpenBSD: PLIST,v 1.1.1.1 2013/02/05 11:09:11 zhuk Exp $
> +@bin bin/fpcalc
> include/chromaprint.h
> @lib lib/libchromaprint.so.${LIBchromaprint_VERSION}
> lib/pkgconfig/libchromaprint.pc
>