/[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.2 - (show annotations) (download)
Mon Jan 24 12:27:39 2011 UTC (3 years, 6 months ago) by phajdan.jr
Branch: MAIN
Changes since 1.1: +3 -3 lines
x86 stable wrt bug #352491

(Portage version: 2.1.9.25/cvs/Linux i686)

1 # Copyright 1999-2011 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-r2.ebuild,v 1.1 2010/12/30 17:35:23 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