/[gentoo-x86]/kde-base/kdelibs/kdelibs-4.4.5-r2.ebuild
Gentoo

Contents of /kde-base/kdelibs/kdelibs-4.4.5-r2.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Thu Dec 30 17:35:23 2010 UTC (3 years, 3 months ago) by dilfridge
Branch: MAIN
Added upstream patch to kill the multitudes of QPainter::...: Painter not active error messages. Should fix bug 341289, please test.

(Portage version: 2.1.9.26/cvs/Linux i686)

1 dilfridge 1.1 # Copyright 1999-2010 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3     # $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/kdelibs-4.4.5-r1.ebuild,v 1.1 2010/12/14 21:59:46 dilfridge Exp $
4    
5     EAPI="3"
6    
7     CPPUNIT_REQUIRED="optional"
8     OPENGL_REQUIRED="optional"
9     WEBKIT_REQUIRED="always"
10     inherit kde4-base fdo-mime
11    
12     DESCRIPTION="KDE libraries needed by all KDE programs."
13     HOMEPAGE="http://www.kde.org/"
14    
15     KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
16     LICENSE="LGPL-2.1"
17     IUSE="3dnow acl alsa altivec bindist +bzip2 debug doc fam +handbook jpeg2k kerberos
18     lzma mmx nls openexr policykit semantic-desktop spell sse sse2 ssl zeroconf"
19    
20     # needs the kate regression testsuite from svn
21     RESTRICT="test"
22    
23     COMMONDEPEND="
24     app-crypt/qca:2
25     >=app-misc/strigi-0.6.3
26     ~dev-libs/libattica-0.1.2
27     dev-libs/libpcre[unicode]
28     dev-libs/libxml2
29     dev-libs/libxslt
30     media-libs/fontconfig
31     media-libs/freetype:2
32     media-libs/giflib
33     >=media-libs/libpng-1.4
34     sys-libs/zlib
35     virtual/jpeg
36     >=x11-misc/shared-mime-info-0.60
37     acl? ( virtual/acl )
38     alsa? ( media-libs/alsa-lib )
39     aqua? ( >=media-sound/phonon-4.3.80 )
40     !aqua? (
41     >=media-sound/phonon-4.3.80[xcb]
42     x11-libs/libICE
43     x11-libs/libSM
44     x11-libs/libX11
45     x11-libs/libXau
46     x11-libs/libXcursor
47     x11-libs/libXdmcp
48     x11-libs/libXext
49     x11-libs/libXfixes
50     x11-libs/libXft
51     x11-libs/libXpm
52     x11-libs/libXrender
53     x11-libs/libXtst
54     !kernel_SunOS? ( sys-libs/libutempter )
55     )
56     bzip2? ( app-arch/bzip2 )
57     fam? ( virtual/fam )
58     jpeg2k? ( media-libs/jasper )
59     kerberos? ( virtual/krb5 )
60     lzma? ( app-arch/xz-utils )
61     openexr? (
62     media-libs/openexr
63     media-libs/ilmbase
64     )
65     policykit? ( sys-auth/polkit-qt )
66     semantic-desktop? (
67     >=dev-libs/shared-desktop-ontologies-0.2
68     >=dev-libs/soprano-2.3.73[dbus,raptor,redland]
69     )
70     spell? ( app-text/enchant )
71     ssl? ( dev-libs/openssl )
72     zeroconf? (
73     || (
74     net-dns/avahi[mdnsresponder-compat]
75     !bindist? ( net-misc/mDNSResponder )
76     )
77     )
78     "
79     DEPEND="${COMMONDEPEND}
80     doc? ( app-doc/doxygen )
81     nls? ( virtual/libintl )
82     "
83     RDEPEND="${COMMONDEPEND}
84     !dev-libs/conversion
85     !dev-libs/kunitconversion
86     !x11-libs/qt-phonon
87     !<=kde-misc/kdnssd-avahi-0.1.2:0
88     >=app-crypt/gnupg-2.0.11
89     app-misc/ca-certificates
90     $(add_kdebase_dep kde-env)
91     !aqua? (
92     x11-apps/iceauth
93     x11-apps/rgb
94     >=x11-misc/xdg-utils-1.0.2-r3
95     )
96     "
97     PDEPEND="
98     handbook? ( $(add_kdebase_dep khelpcenter) )
99     policykit? ( >=sys-auth/polkit-kde-0.95.1 )
100     semantic-desktop? ( $(add_kdebase_dep nepomuk) )
101     "
102    
103     # Blockers added due to packages from old versions, removed in the meanwhile
104     # as well as for file collisions
105     add_blocker libknotificationitem
106     add_blocker libkworkspace '<4.3.66'
107     # @since 4.4 - kpilot is gone (blocker added to help upgrades)
108     add_blocker kpilot
109     # Block some old versions of KDE-3.5 packages that don't work well with KDE-4
110     add_blocker kdebase 0 3.5.9-r4:3.5
111     add_blocker kdebase-startkde 0 3.5.10:3.5
112     add_blocker kdelibs 0 '<3.5.10:3.5'
113     # libnepomukquery moved to kdelibs from plasma-workspace between 4.3.74 -> 4.3.75
114     add_blocker plasma-workspace '<4.3.75'
115    
116     PATCHES=(
117     "${FILESDIR}/dist/01_gentoo_set_xdg_menu_prefix.patch"
118     "${FILESDIR}/dist/02_gentoo_append_xdg_config_dirs.patch"
119     "${FILESDIR}/dist/23_solid_no_double_build.patch"
120     "${FILESDIR}/${PN}-4.3.80-module-suffix.patch"
121     "${FILESDIR}/${PN}-4.4.66-macos-unbundle.patch"
122     "${FILESDIR}/${PN}-4.3.3-klauncher_kdeinit.patch"
123     "${FILESDIR}/${PN}-4.3.3-klauncher_kioslave.patch"
124     "${FILESDIR}/${PN}-4.3.3-klauncher_mac.patch"
125     "${FILESDIR}/${PN}-4.4.3-mimetypes.patch"
126     "${FILESDIR}/${PN}-4.4.90-xslt.patch"
127     "${FILESDIR}/${PN}-4.4.5-qt471.patch"
128     "${FILESDIR}/${PN}-4.4.5-formpainter.patch"
129     )
130    
131     src_prepare() {
132     kde4-base_src_prepare
133    
134     # Rename applications.menu (needs 01_gentoo_set_xdg_menu_prefix.patch to work)
135     local menu_prefix="kde-${SLOT}-"
136     sed -e "s|FILES[[:space:]]applications.menu|FILES applications.menu RENAME ${menu_prefix}applications.menu|g" \
137     -i kded/CMakeLists.txt || die "Sed on CMakeLists.txt for applications.menu failed."
138     sed -e "s|@REPLACE_MENU_PREFIX@|${menu_prefix}|g" \
139     -i kded/vfolder_menu.cpp || die "Sed on vfolder_menu.cpp failed."
140    
141     if use aqua; then
142     sed -i -e \
143     "s:BUNDLE_INSTALL_DIR \"/Applications:BUNDLE_INSTALL_DIR \"${EPREFIX}/${APP_BUNDLE_DIR}:g" \
144     cmake/modules/FindKDE4Internal.cmake || die "failed to sed FindKDE4Internal.cmake"
145    
146     #if [[ ${CHOST} == *-darwin8 ]]; then
147     sed -i -e \
148     "s:set(_add_executable_param MACOSX_BUNDLE):remove(_add_executable_param MACOSX_BUNDLE):g" \
149     cmake/modules/KDE4Macros.cmake || die "failed to sed KDE4Macros.cmake"
150     #fi
151    
152     # solid/solid/backends/iokit doesn't properly link, so disable it.
153     sed -e "s|\(APPLE\)|(FALSE)|g" -i solid/solid/CMakeLists.txt \
154     || die "disabling solid/solid/backends/iokit failed"
155     sed -e "s|m_backend = .*Backends::IOKit.*;|m_backend = 0;|g" -i solid/solid/managerbase.cpp \
156     || die "disabling solid/solid/backends/iokit failed"
157    
158     # There's no fdatasync on OSX and the check fails to detect that.
159     sed -e "/HAVE_FDATASYNC/ d" -i config.h.cmake \
160     || die "disabling fdatasync failed"
161    
162     # Fix nameser include to nameser8_compat
163     sed -e "s|nameser8_compat.h|nameser_compat.h|g" -i kio/misc/kpac/discovery.cpp \
164     || die "fixing nameser include failed"
165     append-flags -DHAVE_ARPA_NAMESER8_COMPAT_H=1
166    
167     # Try to fix kkeyserver_mac
168     epatch "${FILESDIR}"/${PN}-4.3.80-kdeui_util_kkeyserver_mac.patch
169     fi
170    
171     if [[ ${CHOST} == *-solaris* ]] ; then
172     epatch "${FILESDIR}/kdelibs-4.3.2-solaris-ksyscoca.patch"
173     # getgrouplist not in solaris libc
174     epatch "${FILESDIR}/kdelibs-4.3.2-solaris-getgrouplist.patch"
175     # solaris has no d_type element in dir_ent
176     epatch "${FILESDIR}/kdelibs-4.3.2-solaris-fileunix.patch"
177     fi
178     }
179    
180     src_configure() {
181     if use zeroconf; then
182     if has_version net-dns/avahi; then
183     mycmakeargs=(-DWITH_Avahi=ON -DWITH_DNSSD=OFF)
184     elif has_version net-misc/mDNSResponder; then
185     mycmakeargs=(-DWITH_Avahi=OFF -DWITH_DNSSD=ON)
186     else
187     die "USE=\"zeroconf\" enabled but neither net-dns/avahi nor net-misc/mDNSResponder were found."
188     fi
189     else
190     mycmakeargs=(-DWITH_Avahi=OFF -DWITH_DNSSD=OFF)
191     fi
192     if use kdeprefix; then
193     HME=".kde${SLOT}"
194     else
195     HME=".kde4"
196     fi
197     mycmakeargs+=(
198     -DWITH_HSPELL=OFF
199     -DWITH_ASPELL=OFF
200     -DKDE_DEFAULT_HOME=${HME}
201     -DKAUTH_BACKEND=POLKITQT-1
202     $(cmake-utils_use_build handbook doc)
203     $(cmake-utils_use_has 3dnow X86_3DNOW)
204     $(cmake-utils_use_has altivec PPC_ALTIVEC)
205     $(cmake-utils_use_has mmx X86_MMX)
206     $(cmake-utils_use_has sse X86_SSE)
207     $(cmake-utils_use_has sse2 X86_SSE2)
208     $(cmake-utils_use_with acl)
209     $(cmake-utils_use_with alsa)
210     $(cmake-utils_use_with bzip2 BZip2)
211     $(cmake-utils_use_with fam)
212     $(cmake-utils_use_with jpeg2k Jasper)
213     $(cmake-utils_use_with kerberos GSSAPI)
214     $(cmake-utils_use_with lzma LibLZMA)
215     $(cmake-utils_use_with nls Libintl)
216     $(cmake-utils_use_with openexr OpenEXR)
217     $(cmake-utils_use_with opengl OpenGL)
218     $(cmake-utils_use_with policykit PolkitQt-1)
219     $(cmake-utils_use_with semantic-desktop Soprano)
220     $(cmake-utils_use_with semantic-desktop SharedDesktopOntologies)
221     $(cmake-utils_use_with spell ENCHANT)
222     $(cmake-utils_use_with ssl OpenSSL)
223     )
224     kde4-base_src_configure
225     }
226    
227     src_compile() {
228     kde4-base_src_compile
229    
230     # The building of apidox is not managed anymore by the build system
231     if use doc; then
232     einfo "Building API documentation"
233     cd "${S}"/doc/api/
234     ./doxygen.sh "${S}" || die "APIDOX generation failed"
235     fi
236     }
237    
238     src_install() {
239     kde4-base_src_install
240    
241     # use system certificates
242     rm -f "${ED}/${KDEDIR}"/share/apps/kssl/ca-bundle.crt || die
243     dosym /etc/ssl/certs/ca-certificates.crt \
244     "${KDEDIR}"/share/apps/kssl/ca-bundle.crt || die
245    
246     if use doc; then
247     einfo "Installing API documentation. This could take a bit of time."
248     cd "${S}"/doc/api/
249     docinto /HTML/en/kdelibs-apidox
250     dohtml -r ${P}-apidocs/* || die "Install phase of KDE4 API Documentation failed"
251     fi
252    
253     if use aqua; then
254     einfo "fixing ${PN} plugins"
255    
256     local _PV=${PV:0:3}.0
257     local _dir=${EKDEDIR}/$(get_libdir)/kde4/plugins/script
258    
259     install_name_tool -id \
260     "${_dir}/libkrossqtsplugin.${_PV}.dylib" \
261     "${D}/${_dir}/libkrossqtsplugin.${_PV}.dylib" \
262     || die "failed fixing libkrossqtsplugin.${_PV}.dylib"
263    
264     einfo "fixing ${PN} cmake detection files"
265     #sed -i -e \
266     # "s:if (HAVE_XKB):if (HAVE_XKB AND NOT APPLE):g" \
267     echo -e "set(XKB_FOUND FALSE)\nset(HAVE_XKB FALSE)" > \
268     "${ED}"/${KDEDIR}/share/apps/cmake/modules/FindXKB.cmake \
269     || die "failed fixing FindXKB.cmake"
270     fi
271     }
272    
273     pkg_postinst() {
274     fdo-mime_mime_database_update
275    
276     if use zeroconf; then
277     echo
278     elog "To make zeroconf support available in KDE make sure that the 'mdnsd' daemon"
279     elog "is running."
280     echo
281     einfo "If you also want to use zeroconf for hostname resolution, emerge sys-auth/nss-mdns"
282     einfo "and enable multicast dns lookups by editing the 'hosts:' line in /etc/nsswitch.conf"
283     einfo "to include 'mdns', e.g.:"
284     einfo " hosts: files mdns dns"
285     echo
286     fi
287    
288     elog "Your homedir is set to \${HOME}/${HME}"
289     echo
290    
291     if ! has_version sys-apps/hal; then
292     echo
293     ewarn "You need sys-apps/hal for new device notifications, power management and any"
294     ewarn "other hardware related functionalities to work."
295     echo
296     fi
297    
298     kde4-base_pkg_postinst
299     }
300    
301     pkg_prerm() {
302     # Remove ksycoca4 global database
303     rm -f "${EROOT}${PREFIX}"/share/kde4/services/ksycoca4
304     }
305    
306     pkg_postrm() {
307     fdo-mime_mime_database_update
308    
309     kde4-base_pkg_postrm
310     }

  ViewVC Help
Powered by ViewVC 1.1.20