Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 397595 - Broken FindXine.cmake module in kde-base/kdelibs breaks build for media-video/kaffeine with >=media-libs/xine-lib-1.2
Summary: Broken FindXine.cmake module in kde-base/kdelibs breaks build for media-video...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords: REGRESSION
: 397637 406307 (view as bug list)
Depends on: 396359
Blocks:
  Show dependency tree
 
Reported: 2012-01-04 06:08 UTC by Francois Chenier
Modified: 2012-02-29 20:41 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
FindXine.cmake patch to compile kaffeine against xine-lib-1.2.0 (FindXine.cmake.patch,901 bytes, patch)
2012-01-04 20:10 UTC, Sebastian Lüttich
Details | Diff
Fix-FindXine.cmake-module-with-xine-lib-1.2.patch (0001-Fix-FindXine.cmake-module-with-xine-lib-1.2.patch,1.26 KB, patch)
2012-01-05 09:12 UTC, Johannes Huber (RETIRED)
Details | Diff
Patch to make kaffeine compile against kdelibs-4.8.0/xine-lib-1.2.0 (kdelibs-4.8.0_FindXine.cmake_xine-lib-1.2.patch,2.24 KB, text/plain)
2012-01-28 11:33 UTC, Franz Trischberger
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Francois Chenier 2012-01-04 06:08:23 UTC
Something dodgy related to cmake stuff fails when building media-video/kaffeine-1.2.2. See below.

Reproducible: Always

Actual Results:  
>>> Emerging (1 of 1) media-video/kaffeine-1.2.2 from blackhill
 * kaffeine-1.2.2.tar.gz RMD160 SHA1 SHA256 size ;-) ...                                                                                                                     [ ok ]
>>> Unpacking source...
>>> Unpacking kaffeine-1.2.2.tar.gz to /dev/shm/portage/media-video/kaffeine-1.2.2/work
>>> Source unpacked in /dev/shm/portage/media-video/kaffeine-1.2.2/work
>>> Preparing source in /dev/shm/portage/media-video/kaffeine-1.2.2/work/kaffeine-1.2.2 ...
>>> Source prepared.
>>> Configuring source in /dev/shm/portage/media-video/kaffeine-1.2.2/work/kaffeine-1.2.2 ...
>>> Working in BUILD_DIR: "/dev/shm/portage/media-video/kaffeine-1.2.2/work/kaffeine-1.2.2_build"
cmake --no-warn-unused-cli -C /dev/shm/portage/media-video/kaffeine-1.2.2/temp/gentoo_common_config.cmake -DCMAKE_INSTALL_PREFIX=/usr -DKDE4_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=/usr -DSYSCONF_INSTALL_DIR=/etc -DBUILD_DEBUG_MODULE=OFF -DCMAKE_BUILD_TYPE=Gentoo -DCMAKE_INSTALL_DO_STRIP=OFF -DCMAKE_USER_MAKE_RULES_OVERRIDE=/dev/shm/portage/media-video/kaffeine-1.2.2/temp/gentoo_rules.cmake  /dev/shm/portage/media-video/kaffeine-1.2.2/work/kaffeine-1.2.2
Not searching for unused variables given on the command line.
loading initial cache file /dev/shm/portage/media-video/kaffeine-1.2.2/temp/gentoo_common_config.cmake
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/local/bin/x86_64-pc-linux-gnu-gcc
-- Check for working C compiler: /usr/local/bin/x86_64-pc-linux-gnu-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/local/bin/x86_64-pc-linux-gnu-g++
-- Check for working CXX compiler: /usr/local/bin/x86_64-pc-linux-gnu-g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for Q_WS_X11
-- Looking for Q_WS_X11 - found
-- Looking for Q_WS_WIN
-- Looking for Q_WS_WIN - not found.
-- Looking for Q_WS_QWS
-- Looking for Q_WS_QWS - not found.
-- Looking for Q_WS_MAC
-- Looking for Q_WS_MAC - not found.
-- Found Qt-Version 4.7.4 (using /usr/local/bin/qmake)
-- Looking for XOpenDisplay in /usr/local/lib64/libX11.so;/usr/local/lib64/libXext.so;/usr/local/lib64/libXft.so;/usr/local/lib64/libXau.so;/usr/local/lib64/libXdmcp.so;/usr/local/lib64/libXpm.so
-- Looking for XOpenDisplay in /usr/local/lib64/libX11.so;/usr/local/lib64/libXext.so;/usr/local/lib64/libXft.so;/usr/local/lib64/libXau.so;/usr/local/lib64/libXdmcp.so;/usr/local/lib64/libXpm.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/local/lib64/libX11.so
-- Looking for include files CMAKE_HAVE_PTHREAD_H
-- Looking for include files CMAKE_HAVE_PTHREAD_H - found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE 
-- Looking for _POSIX_TIMERS
-- Looking for _POSIX_TIMERS - found
-- Found Automoc4: /usr/local/bin/automoc4 
-- Found Perl: /usr/local/bin/perl 
-- Found Phonon: /usr/include 
-- Performing Test _OFFT_IS_64BIT
-- Performing Test _OFFT_IS_64BIT - Success
-- Performing Test HAVE_FPIE_SUPPORT
-- Performing Test HAVE_FPIE_SUPPORT - Success
-- Performing Test __KDE_HAVE_W_OVERLOADED_VIRTUAL
-- Performing Test __KDE_HAVE_W_OVERLOADED_VIRTUAL - Success
-- Performing Test __KDE_HAVE_GCC_VISIBILITY
-- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success
-- Found KDE 4.7 include dir: /usr/include
-- Found KDE 4.7 library dir: /usr/lib64
-- Found the KDE4 kconfig_compiler preprocessor: /usr/bin/kconfig_compiler
-- Found automoc4: /usr/local/bin/automoc4
-- Found X11: /usr/local/lib64/libX11.so
CMake Error at /usr/share/apps/cmake/modules/FindPackageHandleStandardArgs.cmake:198 (MESSAGE):
  Could NOT find XINE 1.1.1 or greater (missing: XINE_VERSION_OK)
Call Stack (most recent call first):
  /usr/share/apps/cmake/modules/FindXine.cmake:62 (find_package_handle_standard_args)
  CMakeLists.txt:5 (find_package)


-- Configuring incomplete, errors occurred!
 * ERROR: media-video/kaffeine-1.2.2 failed (configure phase):
 *   cmake failed
 * 
 * Call stack:
 *     ebuild.sh, line   85:  Called src_configure
 *   environment, line 3901:  Called kde4-base_src_configure
 *   environment, line 3048:  Called cmake-utils_src_configure
 *   environment, line 1198:  Called _execute_optionaly 'src_configure'
 *   environment, line  619:  Called enable_cmake-utils_src_configure
 *   environment, line 1539:  Called die
 * The specific snippet of code:
 *       "${CMAKE_BINARY}" "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake failed";
 * 
 * If you need support, post the output of 'emerge --info =media-video/kaffeine-1.2.2',
 * the complete build log and the output of 'emerge -pqv =media-video/kaffeine-1.2.2'.
 * This ebuild used the following eclasses from overlays:
 *   /home/Linux/Overlay/eclass/kde4-base.eclass
 *   /home/Linux/Overlay/eclass/kde4-functions.eclass
 *   /home/Linux/Overlay/eclass/versionator.eclass
 *   /home/Linux/Overlay/eclass/eutils.eclass
 *   /home/Linux/Overlay/eclass/multilib.eclass
 *   /home/Linux/Overlay/eclass/toolchain-funcs.eclass
 *   /home/Linux/Overlay/eclass/portability.eclass
 *   /home/Linux/Overlay/eclass/user.eclass
 *   /home/Linux/Overlay/eclass/fdo-mime.eclass
 *   /home/Linux/Overlay/eclass/gnome2-utils.eclass
 *   /home/Linux/Overlay/eclass/base.eclass
 *   /home/Linux/Overlay/eclass/virtualx.eclass
 *   /home/Linux/Overlay/eclass/cmake-utils.eclass
 *   /home/Linux/Overlay/eclass/flag-o-matic.eclass
 * This ebuild is from an overlay named 'blackhill': '/home/Linux/Overlay/'
 * The complete build log is located at '/dev/shm/portage/media-video/kaffeine-1.2.2/temp/build.log'.
 * The ebuild environment file is located at '/dev/shm/portage/media-video/kaffeine-1.2.2/temp/environment'.
 * S: '/dev/shm/portage/media-video/kaffeine-1.2.2/work/kaffeine-1.2.2'



Portage 2.1.10.44 (default/linux/amd64/10.0, gcc-4.5.3, unavailable, 3.1.7 x86_64)
=================================================================
System uname: Linux-3.1.7-x86_64-Intel-R-_Core-TM-2_Duo_CPU_P8400_@_2.26GHz-with-gentoo-2.1
Timestamp of tree: Tue, 03 Jan 2012 21:15:01 +0000
app-shells/bash:          4.2_p20
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.2-r3, 3.2.2
dev-util/cmake:           2.8.6-r4
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1
sys-apps/openrc:          0.9.7
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.68
sys-devel/automake:       1.11.2
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.3-r2
sys-devel/gcc-config:     1.5-r2
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.1 (virtual/os-headers)
sys-libs/glibc:           2.14.1-r2
Repositories: gentoo blackhill
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -Os -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"
CXXFLAGS="-march=nocona -Os -pipe"
DISTDIR="/home/Linux/Src"
FEATURES="assume-digests binpkg-logs buildpkg distlocks ebuild-locks fixlafiles news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_GB"
LC_ALL="en_GB"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_GB en_US"                                                                                                                                                            
MAKEOPTS="-j3"                                                                                                                                                                      
PKGDIR="/home/Linux"                                                                                                                                                                
PORTAGE_CONFIGROOT="/"                                                                                                                                                              
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"                                                                                                                                                                          
PORTAGE_TMPDIR="/dev/shm"                                                                                                                                                           
PORTDIR="/usr/portage"                                                                                                                                                              
PORTDIR_OVERLAY="/home/Linux/Overlay"
SYNC="rsync://rsync.uk.gentoo.org/gentoo-portage"
USE="X acl alsa amd64 berkdb bzip2 cli cracklib crypt cups cxx dbus dri fortran gdbm gpm iconv ipv6 mmx modules mudflap multilib ncurses nptl nptlonly opengl openmp pam pcre pppd readline session sse sse2 ssl sysfs tcpd threads truetype unicode xattr xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_default authz_default authz_host / autoindex cache deflate dir disk_cache env expires ext_filter file_cache / filter headers include info mem_cache mime mime_magic negotiation / rewrite setenvif speling status vhost_alias unique_id" APACHE2_MPMS="worker" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB en_US" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" SANE_BACKENDS="plustek" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Johannes Huber (RETIRED) gentoo-dev 2012-01-04 07:49:43 UTC
> >>> Emerging (1 of 1) media-video/kaffeine-1.2.2 from blackhill

Version in main tree is working.
Comment 2 Francois Chenier 2012-01-04 10:15:22 UTC
(In reply to comment #1)
> Version in main tree is working.
 
Sorry, but same error with version in main tree. BTW, the same kaffeine ebuild compile fine against xine-lib-1.1 The problem is with xine-lib-1.2  

>>> Emerging (1 of 1) media-video/kaffeine-1.2.2

<snip>

-- Found X11: /usr/local/lib64/libX11.so
CMake Error at /usr/share/apps/cmake/modules/FindPackageHandleStandardArgs.cmake:198 (MESSAGE):
  Could NOT find XINE 1.1.1 or greater (missing: XINE_VERSION_OK)
Call Stack (most recent call first):
  /usr/share/apps/cmake/modules/FindXine.cmake:62 (find_package_handle_standard_args)
  CMakeLists.txt:5 (find_package)
Comment 3 Francois Chenier 2012-01-04 10:45:43 UTC
(In reply to comment #2)

Supplementary info, it may be relevant or not!

From xine-lib-1.1 ...
belgix@darwin ~ $ xine-config --libs
-lxine  

From xine-lib-1.2 ...
belgix@darwin ~ $ xine-config --libs
xine-config is DEPRECATED. Use pkg-config instead.
-lxine  

Depending cmake parse those lines, it can be confused as now xine-config is a DEPRECATED command in xine-lib-1.2
Comment 4 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2012-01-04 13:19:24 UTC
*** Bug 397637 has been marked as a duplicate of this bug. ***
Comment 5 Sebastian Lüttich 2012-01-04 20:10:18 UTC
Created attachment 297969 [details, diff]
FindXine.cmake patch to compile kaffeine against xine-lib-1.2.0

Quick'n'dirty patch.

CAVE! It applies to /usr/share/apps/cmake/modules/FindXine.cmake, a file in kdelibs.
It changes xine-config to pkg-config without the warning.

Feel free to patch pack after compile.
Comment 6 Francois Chenier 2012-01-05 02:08:40 UTC
(In reply to comment #5)
>
> Quick'n'dirty patch.
> 
Works perfectly now, I'm able to compile media-video/kaffeine again. Thanks.
Comment 7 Mike MacDonald 2012-01-05 06:10:53 UTC
I can confirm this on ~amd64.
Comment 8 Johannes Huber (RETIRED) gentoo-dev 2012-01-05 09:12:45 UTC
Created attachment 297985 [details, diff]
Fix-FindXine.cmake-module-with-xine-lib-1.2.patch

Git patch for kde-base/kdelibs based on user submitted patch.
Comment 9 Samuli Suominen (RETIRED) gentoo-dev 2012-01-05 09:36:15 UTC
Thanks Johannes. I'm not sure why you didn't apply this to Portage yet, but I've done that now.

+*kdelibs-4.7.4-r11 (05 Jan 2012)
+
+  05 Jan 2012; Samuli Suominen <ssuominen@gentoo.org> kdelibs-4.6.3-r3.ebuild,
+  kdelibs-4.7.4.ebuild, +kdelibs-4.7.4-r11.ebuild,
+  +files/kdelibs-4.7.4-xinelib12x.patch:
+  Fix FindXine.cmake to use pkg-config instead of xine-config wrt #397595 by
+  Johannes Huber
Comment 10 Johannes Huber (RETIRED) gentoo-dev 2012-01-05 10:57:21 UTC
Next time please wait a little bit, i was in test mode.
Comment 11 Franz Trischberger 2012-01-28 11:27:49 UTC
This fix only works with kdelibs <4.8.0. 4.8.0 changed the FindXine.cmake-file, so the patch does not apply anymore.
I did modify the file, so that the cmake-file works again. I removed the check for xine-lib-1.1.0, as version in portage are much higher. I also did not export XINECONFIG_EXECUTABLE, as I think the options differ from those of pkg-config (at least the patch for kdelibs <4.8 had to modifiy the call).
With those changes, not much is left.
Comment 12 Franz Trischberger 2012-01-28 11:33:44 UTC
Created attachment 300113 [details]
Patch to make kaffeine compile against kdelibs-4.8.0/xine-lib-1.2.0
Comment 13 Samuli Suominen (RETIRED) gentoo-dev 2012-01-28 11:37:45 UTC
Reopening as the patch was mistakenly dropped from kdelibs-4.8.0 and kaffeine rebroke.
Comment 14 Franz Trischberger 2012-01-28 13:56:24 UTC
(In reply to comment #11)
> I removed the check for xine-lib-1.1.0, as version in portage are much higher.
The manual version check also was done to provide a mechanism to the user of FindXine.cmake, to specify a version that should be found (at least I think that was so). One had to specify a version (through Xine_FIND_VERSION) before running find_package.
I think it is much better to supply this check directly through find_package. As I know now, this already works with the version I posted above - through the magic of FIND_PACKAGE_HANDLE_STANDARD_ARGS!
find_package(Xine 1.2) will fail, if xine-lib-1.1.20 is installed.

Do you developers know, which packages use FindXine.cmake? Is it possible this patch breaks some packages? If yes, the old version-check-mechanism should be kept for compatibility.
Since xine.h does not provide any Version Information through #defines anymore since 1.2.0, the parsing of xine.h has to be removed completely.
Comment 15 Johannes Huber (RETIRED) gentoo-dev 2012-01-29 01:29:43 UTC
Fixed in =kde-base/kdelibs-4.8.0-r1. Added upstream patch which is included in kdelibs-4.8.1.
Comment 16 Franz Trischberger 2012-01-29 08:55:02 UTC
Do you know why they manually extract the version from headers instead of using pkg-config? They already import the module...
Comment 17 Samuli Suominen (RETIRED) gentoo-dev 2012-02-29 20:41:21 UTC
*** Bug 406307 has been marked as a duplicate of this bug. ***