xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.2.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1SUMMARY = "multi-protocol instant messaging client"
2
3SECTION = "x11/network"
4LICENSE = "GPL-2.0-only"
5LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
6DEPENDS = "python3 virtual/libintl intltool-native libxml2 gconf glib-2.0-native"
7
8inherit autotools gettext pkgconfig gconf perlnative python3native
9
10SRC_URI = "\
11    ${SOURCEFORGE_MIRROR}/pidgin/pidgin-${PV}.tar.bz2 \
12    file://sanitize-configure.ac.patch \
13    file://purple-OE-branding-25.patch \
14"
15
16SRC_URI[sha256sum] = "19654ad276b149646371fbdac21bc7620742f2975f7399fed0ffc1a18fbaf603"
17
18CVE_CHECK_IGNORE += "\
19    CVE-2010-1624 \
20    CVE-2011-3594 \
21"
22
23PACKAGECONFIG ??= "gnutls consoleui avahi dbus idn nss \
24    ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtk startup-notification', '', d)} \
25"
26PACKAGECONFIG[farsight2] = "--enable-farstream,--disable-farstream,farsight2"
27#  --disable-gstreamer     compile without GStreamer audio support
28#  --disable-gstreamer-video
29#                          compile without GStreamer 1.0 Video Overlay support
30#  --disable-gstreamer-interfaces
31#                          compile without GStreamer 0.10 interface support
32#  --with-gstreamer=<version>
33#                          compile with GStreamer 0.10 or 1.0 interface
34PACKAGECONFIG[gstreamer] = "--enable-gstreamer,--disable-gstreamer,gstreamer"
35PACKAGECONFIG[vv] = "--enable-vv,--disable-vv,gstreamer"
36PACKAGECONFIG[idn] = "--enable-idn,--disable-idn,libidn"
37PACKAGECONFIG[gtk] = "--enable-gtkui,--disable-gtkui,gtk+"
38PACKAGECONFIG[x11] = "--with-x=yes --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR},--with-x=no,virtual/libx11"
39PACKAGECONFIG[startup-notification] = "--enable-startup-notification,--disable-startup-notification,startup-notification"
40PACKAGECONFIG[consoleui] = "--enable-consoleui --with-ncurses-headers=${STAGING_INCDIR},--disable-consoleui,libgnt"
41PACKAGECONFIG[gnutls] = "--enable-gnutls --with-gnutls-includes=${STAGING_INCDIR} --with-gnutls-libs=${STAGING_LIBDIR},--disable-gnutls,gnutls,libpurple-plugin-ssl-gnutls"
42PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus dbus-glib"
43PACKAGECONFIG[avahi] = "--enable-avahi,--disable-avahi,avahi"
44PACKAGECONFIG[nss] = "--enable-nss,--disable-nss,nss nspr,libpurple-plugin-ssl-nss"
45PACKAGECONFIG[cyrus-sasl] = "--enable-cyrus-sasl,--disable-cyrus-sasl,cyrus-sasl"
46
47EXTRA_OECONF = " \
48    --disable-perl \
49    --disable-tcl \
50    --disable-gevolution \
51    --disable-schemas-install \
52    --disable-gtkspell \
53    --disable-meanwhile \
54    --disable-nm \
55    --disable-screensaver \
56"
57
58OE_LT_RPATH_ALLOW=":${libdir}/purple-2:"
59OE_LT_RPATH_ALLOW[export]="1"
60
61PACKAGES =+ "libpurple-dev libpurple finch finch-dev ${PN}-data"
62
63RPROVIDES:${PN}-dbg += "libpurple-dbg finch-dbg"
64
65LEAD_SONAME = "libpurple.so.0"
66FILES:libpurple     = "${libdir}/libpurple*.so.* ${libdir}/purple-2 ${bindir}/purple-* ${sysconfdir}/gconf/schemas/purple* ${datadir}/purple/ca-certs"
67FILES:libpurple-dev = "${libdir}/libpurple*.la \
68                       ${libdir}/libpurple*.so \
69                       ${libdir}/purple-2/*.la \
70                       ${libdir}/purple-2/libjabber.so \
71                       ${libdir}/purple-2/liboscar.so \
72                       ${libdir}/purple-2/libymsg.so \
73                       ${datadir}/aclocal"
74FILES:finch          = "${bindir}/finch"
75FILES:finch-dev      = "${libdir}/finch/*.la"
76
77FILES:${PN} = "${bindir} ${datadir}/${PN} ${libdir}/${PN}/*.so \
78           ${datadir}/applications"
79RRECOMMENDS:${PN} = "${PN}-data libpurple-protocol-irc libpurple-protocol-xmpp"
80
81FILES:${PN}-data = "${datadir}/pixmaps ${datadir}/sounds ${datadir}/icons ${datadir}/appdata"
82FILES:${PN}-dev += "${libdir}/${PN}/*.la"
83
84PACKAGES_DYNAMIC += "^libpurple-protocol-.* ^libpurple-plugin-.* ^pidgin-plugin-.* ^finch-plugin-.*"
85
86python populate_packages:prepend () {
87    pidgroot = d.expand('${libdir}/pidgin')
88    purple   = d.expand('${libdir}/purple-2')
89    finch    = d.expand('${libdir}/finch')
90
91    do_split_packages(d, pidgroot, r'^([^l][^i][^b].*)\.so$',
92        output_pattern='pidgin-plugin-%s',
93        description='Pidgin plugin %s',
94        prepend=True, extra_depends='')
95
96    do_split_packages(d, purple, r'^lib(.*)\.so$',
97        output_pattern='libpurple-protocol-%s',
98        description='Libpurple protocol plugin for %s',
99        prepend=True, extra_depends='')
100
101    do_split_packages(d, purple, r'^(ssl-.*)\.so$',
102        output_pattern='libpurple-plugin-%s',
103        description='libpurple plugin %s',
104        prepend=True, extra_depends='libpurple-plugin-ssl')
105
106    do_split_packages(d, purple, r'^([^l][^i][^b].*)\.so$',
107        output_pattern='libpurple-plugin-%s',
108        description='libpurple plugin %s',
109        prepend=True, extra_depends='')
110
111    do_split_packages(d, finch, r'^([^l][^i][^b].*)\.so$',
112        output_pattern='finch-plugin-%s',
113        description='Finch plugin %s',
114        prepend=True, extra_depends='')
115}
116