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