1 # Copyright 2008 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
7 # @ECLASS: qt4-qt-copy.eclass
9 # Leonardo Valeri Manera <l.valerimanera@gmail.com>
10 # @BLURB: Eclass for Qt4 split ebuilds with qt-copy
12 # This eclass contains overlays the standard qt4-build eclass
13 # with an optional function that applies qt-copy patches,
14 # either from a tarball or from svn trunk.
16 inherit eutils qt4-build
21 qt-core|qt-dbus|qt-gui|qt-qt3support
)
27 eerror
"Version ${PVR} does not have patchset defined in the qt4-qt-copy eclass!"
28 die
"Unsupported version for patchset, something screwed up bad, boss."
32 if [[ -n ${QT_COPY_PV} ]]; then
33 IUSE
="${IUSE} +qt-copy"
34 SRC_URI
="${SRC_URI} qt-copy? ( http://jyujin.de/~creidiki/qt-copy/qt-copy-${PV}-patches-${QT_COPY_PV}.tar.lzma )"
35 DEPEND
="qt-copy? ( app-arch/lzma-utils )"
41 local patches_corelib_io \
42 patches_gui_graphicsview patches_gui_image patches_gui_kernel patches_gui_text patches_gui_widgets \
43 patches_qt3support_text
45 0167-fix-group-reading.diff"
46 patches_gui_graphicsview
="
47 0214-fix-qgraphicsproxywidget-tab-crash.diff"
49 0223-fix-qpixmap-hasalpha.diff
50 0224-fast-qpixmap-fill.diff"
52 0195-compositing-properties.diff
53 0220-no-x-recursion-in-xerrhandler.diff"
55 0203-qtexthtmlparser-link-color.diff"
57 0225-invalidate-tabbar-geometry-on-refresh.diff"
58 patches_qt3support_text
="
59 0210-fix-crash-q3stylesheet-font-size.diff"
61 local qt_core_patches qt_dbus_patches qt_gui_patches qt_qt3support_patches qt_script_patches
62 qt_core_patches
="${patches_corelib_io}"
63 qt_dbus_patches
="${patches_corelib_io}"
64 qt_gui_patches
="${patches_gui_graphicsview} ${patches_gui_image} ${patches_gui_kernel} ${patches_gui_text} ${patches_gui_widgets}"
65 qt_qt3support_patches
="${patches_qt3support_text}"
68 eerror
"Version ${PVR} is not supported by the qt4-qt-copy eclass!"
69 die
"Unsupported version for patching, something screwed up bad, boss."
73 local qt_copy_patches qt_copy
patch qt_copy_files
74 qt_copy_patches
="${PN//-/_}_patches"
75 for qt_copy_patch
in ${!qt_copy_patches}; do
76 qt_copy_files
="${qt_copy_files} patches/${qt_copy_patch}"
79 pushd "${S}" &>/dev
/null
81 echo "lzma -dc ${DISTDIR}/qt-copy-${PV}-patches-${QT_COPY_PV}.tar.lzma | tar xf - --no-same-owner ${qt_copy_files}"
82 lzma
-dc "${DISTDIR}"/qt-copy-${PV}-patches-${QT_COPY_PV}.tar.lzma | tar xf - --no-same-owner ${qt_copy_files}
84 EPATCH_MULTI_MSG="Applying QT-copy patches ...
" \
85 EPATCH_FORCE="yes" EPATCH_SUFFIX="" epatch "${S}"/patches
92 for target in configure LICENSE.{GPL2,GPL3,QPL} projects.pro \
93 src/{qbase,qt_targets,qt_install}.pri bin config.tests mkspecs qmake \
94 ${QT4_EXTRACT_DIRECTORIES} ${QT4_TARGET_DIRECTORIES}; do
95 targets="${targets} ${MY_P}/${target}"
98 echo tar xjpf "${DISTDIR}"/${MY_P}.tar.bz2 ${targets}
99 tar xjpf
"${DISTDIR}"/${MY_P}.tar.bz2 ${targets}
103 echo tar xjpf "${DISTDIR}"/${MY_P}-headers.tar.bz2
104 tar xjpf "${DISTDIR}"/${MY_P}-headers.tar.bz2
108 use qt-copy && qt4_qt-copy
111 qt4-qt-copy_pkg_postinst() {
112 qt4-build_pkg_postinst
115 ewarn "Do NOT report bugs to Gentoo
's bugzilla when built with qt-copy!"
120 EXPORT_FUNCTIONS pkg_postinst