app-misc/strigi: Fix build with gcc-6
authorJohannes Huber <johu@gentoo.org>
Thu, 19 May 2016 13:32:02 +0000 (15:32 +0200)
committerJohannes Huber <johu@gentoo.org>
Thu, 19 May 2016 13:32:11 +0000 (15:32 +0200)
Revision bump adds patch by Peter Levine <plevine457@gmail.com> to fix build
with gcc-6.

Gentoo-bug: 583030
Thanks-to: Peter Levine <plevine457@gmail.com>

Package-Manager: portage-2.3.0_rc1

app-misc/strigi/files/strigi-0.7.8-gcc-4.8.patch
app-misc/strigi/files/strigi-0.7.8-gcc6.patch [new file with mode: 0644]
app-misc/strigi/strigi-0.7.8-r2.ebuild [new file with mode: 0644]

index f525a71627a6123a6204411e56e198cd94c8d092..d2b51425956de5ad9bad0f8a7988e1c308a8252a 100644 (file)
@@ -1,5 +1,5 @@
---- libstreams/include/strigi/bufferedstream.h
-+++ libstreams/include/strigi/bufferedstream.h
+--- a/libstreams/include/strigi/bufferedstream.h
++++ b/libstreams/include/strigi/bufferedstream.h
 @@ -34,7 +34,7 @@
   * BufferedStream will do the rest.
   */
diff --git a/app-misc/strigi/files/strigi-0.7.8-gcc6.patch b/app-misc/strigi/files/strigi-0.7.8-gcc6.patch
new file mode 100644 (file)
index 0000000..b94f97f
--- /dev/null
@@ -0,0 +1,24 @@
+diff -Naur strigi-0.7.8.old/libstreamanalyzer/cmake/MacroCheckGccVisibility.cmake strigi-0.7.8/libstreamanalyzer/cmake/MacroCheckGccVisibility.cmake
+--- strigi-0.7.8.old/libstreamanalyzer/cmake/MacroCheckGccVisibility.cmake     2013-02-05 16:34:52.000000000 -0500
++++ strigi-0.7.8/libstreamanalyzer/cmake/MacroCheckGccVisibility.cmake 2016-05-14 11:39:54.586260564 -0400
+@@ -15,7 +15,7 @@
+    # get the gcc version
+    exec_program(${CMAKE_C_COMPILER} ARGS ${CMAKE_C_COMPILER_ARG1} --version OUTPUT_VARIABLE _gcc_version_info)
+-   string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
++   string (REGEX MATCH "[3456]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
+    # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here:
+    if (NOT _gcc_version)
+       string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}")
+diff -Naur strigi-0.7.8.old/libstreams/cmake/MacroCheckGccVisibility.cmake strigi-0.7.8/libstreams/cmake/MacroCheckGccVisibility.cmake
+--- strigi-0.7.8.old/libstreams/cmake/MacroCheckGccVisibility.cmake    2013-02-05 16:34:57.000000000 -0500
++++ strigi-0.7.8/libstreams/cmake/MacroCheckGccVisibility.cmake        2016-05-14 11:40:11.340134414 -0400
+@@ -15,7 +15,7 @@
+    # get the gcc version
+    exec_program(${CMAKE_C_COMPILER} ARGS ${CMAKE_C_COMPILER_ARG1} --version OUTPUT_VARIABLE _gcc_version_info)
+-   string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
++   string (REGEX MATCH "[3456]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
+    # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here:
+    if (NOT _gcc_version)
+       string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}")
diff --git a/app-misc/strigi/strigi-0.7.8-r2.ebuild b/app-misc/strigi/strigi-0.7.8-r2.ebuild
new file mode 100644 (file)
index 0000000..6abde40
--- /dev/null
@@ -0,0 +1,84 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+SRC_URI="http://www.vandenoever.info/software/strigi/${P}.tar.bz2"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+inherit cmake-utils
+
+DESCRIPTION="Fast crawling desktop search engine with Qt4 GUI"
+HOMEPAGE="https://projects.kde.org/projects/kdesupport/strigi/strigi"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="clucene +dbus debug exif fam ffmpeg +inotify libav log +qt4 test"
+
+RDEPEND="
+       app-arch/bzip2
+       dev-libs/libxml2:2
+       sys-libs/zlib
+       virtual/libiconv
+       clucene? ( >=dev-cpp/clucene-0.9.21[-debug] )
+       dbus? (
+               sys-apps/dbus
+               qt4? ( dev-qt/qtdbus:4 )
+       )
+       exif? ( media-gfx/exiv2:= )
+       fam? ( virtual/fam )
+       ffmpeg? (
+               libav? ( media-video/libav:0= )
+               !libav? ( media-video/ffmpeg:0= )
+       )
+       log? ( >=dev-libs/log4cxx-0.10.0 )
+       qt4? (
+               dev-qt/qtcore:4
+               dev-qt/qtgui:4
+       )
+"
+DEPEND="${RDEPEND}
+       test? ( dev-util/cppunit )
+"
+
+PATCHES=(
+       "${FILESDIR}/${P}-gcc-4.8.patch"
+       "${FILESDIR}/${P}-libav10.patch"
+       "${FILESDIR}/${P}-ffmpeg29.patch"
+       "${FILESDIR}/${P}-gcc6.patch"
+)
+
+src_configure() {
+       # Enabled: POLLING (only reliable way to check for files changed.)
+       # Disabled: xine - recommended upstream to keep it this way
+       local mycmakeargs=(
+               -DENABLE_POLLING=ON
+               -DFORCE_DEPS=ON
+               -DENABLE_REGENERATEXSD=OFF
+               -DENABLE_XINE=OFF
+               -DENABLE_CLUCENE=$(usex clucene)
+               -DENABLE_CLUCENE_NG=$(usex clucene)
+               -DENABLE_DBUS=$(usex dbus)
+               -DENABLE_EXIV2=$(usex exif)
+               -DENABLE_FAM=$(usex fam)
+               -DENABLE_FFMPEG=$(usex ffmpeg)
+               -DENABLE_INOTIFY=$(usex inotify)
+               -DENABLE_LOG4CXX=$(usex log)
+               -DENABLE_QT4=$(usex qt4)
+               $(cmake-utils_use_find_package test CppUnit)
+       )
+
+       if use qt4; then
+               mycmakeargs+=( -DENABLE_DBUS=ON )
+       fi
+
+       cmake-utils_src_configure
+}
+
+pkg_postinst() {
+       if ! use clucene ; then
+               elog "Because you didn't enable the clucene backend, strigi may not be functional."
+               elog "If you intend to use standalone strigi indexer (not needed for KDE),"
+               elog "be sure to reinstall app-misc/strigi with the clucene USE flag enabled."
+       fi
+}