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|qt-script
)
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 patches_corelib_kernel \
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_corelib_kernel="
47 # 0180-window-role-corelib.diff"
48 # patches_gui_graphicsview="
49 # 0214-fix-qgraphicsproxywidget-tab-crash.diff"
51 # 0223-fix-qpixmap-hasalpha.diff
52 # 0224-fast-qpixmap-fill.diff"
53 # patches_gui_kernel="
54 # 0180-window-role-gui.diff
55 # 0195-compositing-properties.diff
56 # 0220-no-x-recursion-in-xerrhandler.diff"
58 # 0203-qtexthtmlparser-link-color.diff"
59 # patches_gui_widgets="
60 # 0225-invalidate-tabbar-geometry-on-refresh.diff"
61 patches_qt3support_text
="
62 0210-fix-crash-q3stylesheet-font-size.diff"
64 local qt_core_patches qt_dbus_patches qt_gui_patches qt_qt3support_patches qt_script_patches
65 #qt_core_patches="${patches_corelib_io} ${patches_corelib_kernel}"
66 #qt_dbus_patches="${patches_corelib_io} ${patches_corelib_kernel}"
67 qt_core_patches
="${patches_corelib_io}"
68 qt_dbus_patches
="${patches_corelib_io}"
69 #qt_gui_patches="${patches_gui_graphicsview} ${patches_gui_image} ${patches_gui_kernel} ${patches_gui_text} ${patches_gui_widgets}"
71 qt_qt3support_patches
="${patches_qt3support_text}"
72 #qt_script_patches="${patches_corelib_kernel}"
76 eerror
"Version ${PVR} is not supported by the qt4-qt-copy eclass!"
77 die
"Unsupported version for patching, something screwed up bad, boss."
81 local qt_copy_patches qt_copy
patch qt_copy_files
82 qt_copy_patches
="${PN//-/_}_patches"
83 for qt_copy_patch
in ${!qt_copy_patches}; do
84 qt_copy_files
="${qt_copy_files} patches/${qt_copy_patch}"
89 echo "lzma -dc ${DISTDIR}/qt-copy-${PV}-patches-${QT_COPY_PV}.tar.lzma | tar xf - --no-same-owner ${qt_copy_files}"
90 lzma
-dc "${DISTDIR}"/qt-copy-${PV}-patches-${QT_COPY_PV}.tar.lzma | tar xf - --no-same-owner ${qt_copy_files}
92 EPATCH_MULTI_MSG="Applying QT-copy patches ...
" \
93 EPATCH_FORCE="yes" EPATCH_SUFFIX="" epatch "${S}"/patches
98 for target in configure LICENSE.{GPL2,GPL3,QPL} projects.pro \
99 src/{qbase,qt_targets,qt_install}.pri bin config.tests mkspecs qmake \
100 ${QT4_EXTRACT_DIRECTORIES} ${QT4_TARGET_DIRECTORIES}; do
101 targets="${targets} ${MY_P}/${target}"
104 echo tar xjpf "${DISTDIR}"/${MY_P}.tar.bz2 ${targets}
105 tar xjpf
"${DISTDIR}"/${MY_P}.tar.bz2 ${targets}
109 echo tar xjpf "${DISTDIR}"/${MY_P}-headers.tar.bz2
110 tar xjpf "${DISTDIR}"/${MY_P}-headers.tar.bz2
114 use qt-copy && qt4_qt-copy
117 qt4-qt-copy_pkg_postinst() {
118 qt4-build_pkg_postinst
121 ewarn "Do NOT report bugs to Gentoo
's bugzilla when built with qt-copy!"
126 EXPORT_FUNCTIONS pkg_postinst