Date: Sun, 1 Jan 2012 22:09:54 -0700 (MST) From: Anthony Chavez <acc@hexadecagram.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/163762: [PATCH] multimedia/mythtv still thinks it's 0.24.0 Message-ID: <201201020509.q0259spr087708@metis.hexadecagram.org> Resent-Message-ID: <201201020520.q025KAoB049111@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 163762 >Category: ports >Synopsis: [PATCH] multimedia/mythtv still thinks it's 0.24.0 >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Jan 02 05:20:10 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Anthony Chavez >Release: FreeBSD 8.2-STABLE i386 >Organization: >Environment: System: FreeBSD metis.hexadecagram.org 8.2-STABLE FreeBSD 8.2-STABLE #0: Thu Nov 10 16:13:27 MST 2011 root@metis.hexadecagram.org:/usr/obj/usr/src/sys/METIS i386 >Description: Attempting to upgrade multimedia/mythtv from 0.24_1 to 0.24.1_1 results in the following error: ccache distcc g++ -Wl,-O1 -pthread -Wl,-rpath,/usr/local/lib/qt4 -o mythcommflag CommDetectorFactory.o CommDetectorBase.o ClassicLogoDetector.o ClassicSceneChangeDetector.o ClassicCommDetector.o Histogram.o quickselect.o CommDetector2.o pgm.o EdgeDetector.o CannyEdgeDetector.o PGMConverter.o BorderDetector.o FrameAnalyzer.o TemplateFinder.o TemplateMatcher.o HistogramAnalyzer.o BlankFrameDetector.o SceneChangeDetector.o PrePostRollFlagger.o main.o moc_CommDetectorBase.o moc_ClassicCommDetector.o moc_LogoDetectorBase.o moc_SceneChangeDetectorBase.o moc_SlotRelayer.o moc_CustomEventRelayer.o -L/usr/local/lib/qt4 -L/usr/local/lib -L../../libs/libmyth -L../../libs/libmythtv -L../../external/FFmpeg/libavutil -L../../external/FFmpeg/libavcodec -L../../external/FFmpeg/libavcore -L../../external/FFmpeg/libavformat -L../../external/FFmpeg/libswscale -L../../libs/libmythdb -L../../libs/libmythui -L../../libs/libmythupnp -lmythtv-0.24 -lmythswscale -lmythavformat -lmythavcodec -lmyth avcore -lmythavutil -lmythupnp-0.24 -lmythdb-0.24 -lmythui-0.24 -lmyth-0.24 -L../../libs/libmythlivemedia -lmythlivemedia-0.24 -L../../libs/libmythfreemheg -lmythfreemheg-0.24 -L../../libs/libmythhdhomerun -lmythhdhomerun-0.24 -lchromeXvMCPro -lXvMC -lXext -lXinerama -lXxf86vm -lXv -lXrandr -lX11 -lmp3lame -lpulse -ljack -lasound -L/usr/local/lib -lm -pthread -lfreetype -lz -lbz2 -L/usr/local/lib/qt4 -lGLU -lGL -lQtSql -lQtXml -lQtGui -lQtCore ClassicLogoDetector.o(.text+0x203c): In function `ClassicLogoDetector::searchForLogo(MythPlayer*)': /usr/ports/multimedia/mythtv/work/mythtv-0.24.1/programs/mythcommflag/ClassicLogoDetector.cpp:115: undefined reference to `MythPlayer::GetEof()' ClassicCommDetector.o(.text+0x22964): In function `ClassicCommDetector::go()': /usr/ports/multimedia/mythtv/work/mythtv-0.24.1/programs/mythcommflag/ClassicCommDetector.cpp:400: undefined reference to `MythPlayer::GetEof()' CommDetector2.o(.text+0x5f56): In function `CommDetector2::go()': /usr/ports/multimedia/mythtv/work/mythtv-0.24.1/programs/mythcommflag/CommDetector2.cpp:600: undefined reference to `MythPlayer::GetEof()' PrePostRollFlagger.o(.text+0xfe2): In function `PrePostRollFlagger::findBreakInrange(long long, long long, long long, long long&, QTime&, bool)': /usr/ports/multimedia/mythtv/work/mythtv-0.24.1/programs/mythcommflag/PrePostRollFlagger.cpp:242: undefined reference to `MythPlayer::GetEof()' gmake[2]: *** [mythcommflag] Error 1 gmake[2]: Leaving directory `/usr/ports/multimedia/mythtv/work/mythtv-0.24.1/programs/mythcommflag' gmake[1]: *** [sub-mythcommflag-make_default] Error 2 gmake[1]: Leaving directory `/usr/ports/multimedia/mythtv/work/mythtv-0.24.1/programs' gmake: *** [programs] Error 2 *** Error code 1 Stop in /usr/ports/multimedia/mythtv. *** Error code 1 Stop in /usr/ports/multimedia/mythtv. The reason for this is that despite having the same filename and apparent version, $PREFIX/lib/libmythtv-0.24.so.0.24.0 and $WRKSRC/libs/mythtv/libmythtv-0.24.so.0.24.0 are not in fact the same file: % diff -q /usr/local/lib/libmyth-0.24.so.0.24.0 /usr/ports/multimedia/mythtv/work/mythtv-0.24.1/libs/libmythtv/libmythtv-0.24.so.0.24.0 Files /usr/local/lib/libmyth-0.24.so.0.24.0 and /usr/ports/multimedia/mythtv/work/mythtv-0.24.1/libs/libmythtv/libmythtv-0.24.so.0.24.0 differ and because MythPlayer::GetEof() is only defined in the newer library: % nm /usr/ports/multimedia/mythtv/work/mythtv-0.24.1/libs/libmythtv/libmythtv-0.24.so | grep GetEof 004b8a70 T _ZN10MythPlayer6GetEofEv % nm /usr/local/lib/libmythtv-0.24.so | grep GetEof % and because -L/usr/local/lib appears before -L../../libs/libmythtv in the command line. >How-To-Repeat: sudo portmaster multimedia/mythtv >Fix: After some brief experimentation with qmake and the .pro files in $WRKSRC, I have been unsusccessful in making -L/usr/local/lib appear later in the command line, and the attached patches do *not* result in a successful build, even though the newer shared libraries get suffixed with .so.0.24.1. However I thought they were worth submitting for the sake of consistency. The following workaround produces a successful build, and should be mentioned in UPDATING. Note that this is liable to be a recurring theme with upgrades until a real solution is worked out. % sudo pkg_delete mythtv-0.24.0 Just to be sure (should display nothing and exit with $? == 1): % ldconfig -r | grep libmyth && sudo ldconfig % sudo portmaster multimedia/mythtv -OR- % sudo portinstall multimedia/mythtv -OR- % cd /usr/ports/multimedia/mythtv; sudo make install --- patch-settings.pro begins here --- --- settings.pro.orig 2011-05-15 14:57:52.000000000 -0600 +++ settings.pro 2012-01-01 21:08:19.000000000 -0700 @@ -39,7 +39,7 @@ } LIBVERSION = 0.24 -VERSION = 0.24.0 +VERSION = 0.24.1 isEmpty(TARGET_OS) : win32 { CONFIG += mingw --- patch-settings.pro ends here --- --- patch-bindings__python__setup.py begins here --- --- bindings/python/setup.py.orig 2011-05-15 14:57:52.000000000 -0600 +++ bindings/python/setup.py 2012-01-01 21:09:02.000000000 -0700 @@ -33,7 +33,7 @@ setup( name='MythTV', - version='0.24.0', + version='0.24.1', description='MythTV Python bindings.', long_description='Provides canned database and protocol access to the MythTV database, mythproto, mythxml, and frontend remote control.', packages=['MythTV', 'MythTV/tmdb', 'MythTV/ttvdb', 'MythTV/wikiscripts'], --- patch-bindings__python__setup.py ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201201020509.q0259spr087708>