xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-oe/recipes-support/uim/uim_1.8.8.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunDESCRIPTION = "A multilingual user input method library"
2*4882a593SmuzhiyunHOMEPAGE = "http://uim.freedesktop.org/"
3*4882a593SmuzhiyunLICENSE = "BSD-3-Clause & LGPL-2.0-or-later"
4*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING;md5=ab2826b41ca0ff4030d38cc39791d1c8"
5*4882a593SmuzhiyunSECTION = "inputmethods"
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunSRC_URI = "https://github.com/uim/uim/releases/download/${PV}/uim-${PV}.tar.bz2 \
8*4882a593Smuzhiyun    file://0001-Fix-to-set-libedit-path-from-configure-option-proper.patch \
9*4882a593Smuzhiyun    file://JMP_BUF_GC_jmp_buf.patch \
10*4882a593Smuzhiyun"
11*4882a593SmuzhiyunSRC_URI:append:class-target = "\
12*4882a593Smuzhiyun    file://uim-module-manager.patch \
13*4882a593Smuzhiyun"
14*4882a593SmuzhiyunSRC_URI[md5sum] = "01c7bd5d0d4f3a9f6f5befe6f57a470b"
15*4882a593SmuzhiyunSRC_URI[sha256sum] = "34599bbcc4e5ab87832370763e38be5100984a64237555e9234a1ea225a0fadc"
16*4882a593Smuzhiyun
17*4882a593SmuzhiyunUPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
18*4882a593Smuzhiyun
19*4882a593SmuzhiyunDEPENDS = "anthy fontconfig libxft libxt glib-2.0 ncurses intltool libedit"
20*4882a593SmuzhiyunDEPENDS:append:class-target = " intltool-native gtk+ gtk+3 uim-native"
21*4882a593Smuzhiyun
22*4882a593SmuzhiyunRDEPENDS:uim = "libuim0 libedit"
23*4882a593SmuzhiyunRDEPENDS:uim-anthy = "anthy libanthy0"
24*4882a593SmuzhiyunRDEPENDS:uim-anthy:append:libc-glibc = " glibc-utils glibc-gconv-euc-jp"
25*4882a593Smuzhiyun
26*4882a593SmuzhiyunLEAD_SONAME = "libuim.so.1"
27*4882a593Smuzhiyun
28*4882a593SmuzhiyunCOMPATIBLE_HOST:riscv64 = "null"
29*4882a593SmuzhiyunCOMPATIBLE_HOST:riscv32 = "null"
30*4882a593Smuzhiyun
31*4882a593Smuzhiyuninherit features_check autotools pkgconfig gettext qemu gtk-immodules-cache
32*4882a593Smuzhiyun
33*4882a593SmuzhiyunREQUIRED_DISTRO_FEATURES = "x11"
34*4882a593Smuzhiyun
35*4882a593SmuzhiyunGTKIMMODULES_PACKAGES = "uim-gtk2.0 uim-gtk3"
36*4882a593Smuzhiyun
37*4882a593SmuzhiyunEXTRA_OECONF += "--disable-emacs \
38*4882a593Smuzhiyun    --with-libedit=${STAGING_EXECPREFIXDIR} \
39*4882a593Smuzhiyun    --without-scim \
40*4882a593Smuzhiyun    --without-m17nlib \
41*4882a593Smuzhiyun    --without-prime \
42*4882a593Smuzhiyun    --without-canna \
43*4882a593Smuzhiyun    --without-mana \
44*4882a593Smuzhiyun    --without-eb \
45*4882a593Smuzhiyun"
46*4882a593Smuzhiyun
47*4882a593SmuzhiyunCONFIGUREOPTS:remove:class-target = "--disable-silent-rules"
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun# https://github.com/uim/uim/issues/44
50*4882a593SmuzhiyunPARALLEL_MAKE = ""
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun#Because m4 file's find maxdepth=2, so copy the m4 files of the deep depth.
53*4882a593Smuzhiyundo_configure:prepend () {
54*4882a593Smuzhiyun    rm -rf ${S}/m4.generated/lt*.m4 ${S}/m4.generated/libtool.m4
55*4882a593Smuzhiyun    rm -rf ${S}/sigscheme/libgcroots/m4/lt*.m4 ${S}/sigscheme/libgcroots/m4/libtool.m4
56*4882a593Smuzhiyun    rm -rf ${S}/sigscheme/m4/lt*.m4 ${S}/sigscheme/m4/libtool.m4
57*4882a593Smuzhiyun    cp ${S}/sigscheme/m4/* ${S}/m4/
58*4882a593Smuzhiyun}
59*4882a593Smuzhiyun
60*4882a593Smuzhiyundo_install:append() {
61*4882a593Smuzhiyun    rm -rf ${D}/${datadir}/applications
62*4882a593Smuzhiyun}
63*4882a593Smuzhiyun
64*4882a593SmuzhiyunPACKAGES =+ "uim-xim uim-utils uim-skk uim-gtk2.0 uim-gtk3 uim-fep uim-anthy uim-common libuim0 libuim-dev"
65*4882a593Smuzhiyun
66*4882a593SmuzhiyunFILES:${PN} = "${bindir}/uim-help \
67*4882a593Smuzhiyun    ${libdir}/uim/plugin/libuim-* \
68*4882a593Smuzhiyun    ${libdir}/libuim-scm* \
69*4882a593Smuzhiyun    ${libdir}/libgcroots* \
70*4882a593Smuzhiyun    ${libdir}/uim/plugin/libuim-* \
71*4882a593Smuzhiyun"
72*4882a593Smuzhiyun
73*4882a593SmuzhiyunFILES:libuim0 = "${libdir}/uim/plugin/libuim-custom-enabler.* \
74*4882a593Smuzhiyun    ${libdir}/libuim-custom.so.* \
75*4882a593Smuzhiyun    ${datadir}/locale/ja/LC_MESSAGES/uim.mo \
76*4882a593Smuzhiyun    ${datadir}/locale/fr/LC_MESSAGES/uim.mo \
77*4882a593Smuzhiyun    ${datadir}/locale/ko/LC_MESSAGES/uim.mo \
78*4882a593Smuzhiyun    ${libdir}/libuim.so.* \
79*4882a593Smuzhiyun"
80*4882a593SmuzhiyunFILES:libuim-dev = "${libdir}/libuim*.a \
81*4882a593Smuzhiyun    ${libdir}/libuim*.la \
82*4882a593Smuzhiyun    ${libdir}/libuim*.so \
83*4882a593Smuzhiyun    ${includedir}/uim \
84*4882a593Smuzhiyun    ${libdir}/pkgconfig/uim.pc \
85*4882a593Smuzhiyun"
86*4882a593SmuzhiyunFILES:uim-anthy = "${libdir}/uim/plugin/libuim-anthy.* \
87*4882a593Smuzhiyun    ${datadir}/uim/anthy*.scm \
88*4882a593Smuzhiyun"
89*4882a593SmuzhiyunFILES:${PN}-dbg += "${libdir}/*/*/*/.debug ${libdir}/*/*/.debug"
90*4882a593SmuzhiyunFILES:${PN}-dev += "${libdir}/uim/plugin/*.la"
91*4882a593Smuzhiyun
92*4882a593SmuzhiyunFILES:uim-utils = "${bindir}/uim-sh \
93*4882a593Smuzhiyun    ${bindir}/uim-module-manager \
94*4882a593Smuzhiyun    ${libexecdir}/uim-helper-server \
95*4882a593Smuzhiyun"
96*4882a593SmuzhiyunFILES:uim-xim = "${bindir}/uim-xim \
97*4882a593Smuzhiyun    ${libexecdir}/uim-candwin-*gtk \
98*4882a593Smuzhiyun    ${libexecdir}/uim-candwin-*gtk3 \
99*4882a593Smuzhiyun    ${datadir}/man/man1/uim-xim.1 \
100*4882a593Smuzhiyun    ${sysconfdir}/X11/xinit/xinput.d/uim* \
101*4882a593Smuzhiyun"
102*4882a593SmuzhiyunFILES:uim-common = "${datadir}/uim/pixmaps/*.png \
103*4882a593Smuzhiyun    ${datadir}/uim \
104*4882a593Smuzhiyun"
105*4882a593SmuzhiyunFILES:uim-fep = "${bindir}/uim-fep*"
106*4882a593Smuzhiyun
107*4882a593SmuzhiyunFILES:uim-gtk2.0 = "${libdir}/gtk-2.0 \
108*4882a593Smuzhiyun    ${bindir}/uim-toolbar-gtk \
109*4882a593Smuzhiyun    ${bindir}/uim-toolbar-gtk-systray \
110*4882a593Smuzhiyun    ${bindir}/uim-*-gtk \
111*4882a593Smuzhiyun    ${bindir}/uim-input-pad-ja \
112*4882a593Smuzhiyun    ${libdir}/uim/uim-*-gtk \
113*4882a593Smuzhiyun"
114*4882a593SmuzhiyunFILES:uim-gtk3 = "${libdir}/gtk-3.0 \
115*4882a593Smuzhiyun    ${bindir}/uim-toolbar-gtk3 \
116*4882a593Smuzhiyun    ${bindir}/uim-toolbar-gtk3-systray \
117*4882a593Smuzhiyun    ${bindir}/uim-*-gtk3 \
118*4882a593Smuzhiyun    ${libdir}/uim/uim-*-gtk3 \
119*4882a593Smuzhiyun"
120*4882a593SmuzhiyunFILES:uim-skk = "${libdir}/uim/plugin/libuim-skk.* \
121*4882a593Smuzhiyun    ${datadir}/uim/skk*.scm \
122*4882a593Smuzhiyun"
123*4882a593Smuzhiyun
124*4882a593SmuzhiyunPACKAGE_WRITE_DEPS += "qemu-native"
125*4882a593Smuzhiyunpkg_postinst:uim-anthy() {
126*4882a593Smuzhiyun    if test -n "$D"; then
127*4882a593Smuzhiyun        ${@qemu_run_binary(d, '$D', '${bindir}/uim-module-manager')} --register anthy --path $D${datadir}/uim
128*4882a593Smuzhiyun    else
129*4882a593Smuzhiyun		uim-module-manager --register anthy --path ${datadir}/uim
130*4882a593Smuzhiyun    fi
131*4882a593Smuzhiyun}
132*4882a593Smuzhiyun
133*4882a593Smuzhiyunpkg_prerm:uim-anthy() {
134*4882a593Smuzhiyun    if test -n "$D"; then
135*4882a593Smuzhiyun        ${@qemu_run_binary(d, '$D', '${bindir}/uim-module-manager')} --path $D${datadir}/uim --unregister anthy
136*4882a593Smuzhiyun    else
137*4882a593Smuzhiyun		uim-module-manager --path ${datadir}/uim --unregister anthy
138*4882a593Smuzhiyun    fi
139*4882a593Smuzhiyun}
140*4882a593Smuzhiyun
141*4882a593Smuzhiyunpkg_postinst:uim-skk() {
142*4882a593Smuzhiyun    if test -n "$D"; then
143*4882a593Smuzhiyun        ${@qemu_run_binary(d, '$D', '${bindir}/uim-module-manager')} --register skk --path $D${datadir}/uim
144*4882a593Smuzhiyun    else
145*4882a593Smuzhiyun		uim-module-manager --register skk --path ${datadir}/uim
146*4882a593Smuzhiyun    fi
147*4882a593Smuzhiyun}
148*4882a593Smuzhiyun
149*4882a593Smuzhiyunpkg_postrm:uim-skk() {
150*4882a593Smuzhiyun    if test -n "$D"; then
151*4882a593Smuzhiyun        ${@qemu_run_binary(d, '$D', '${bindir}/uim-module-manager')} --path $D${datadir}/uim --unregister skk
152*4882a593Smuzhiyun    else
153*4882a593Smuzhiyun		uim-module-manager --path ${datadir}/uim --unregister skk
154*4882a593Smuzhiyun    fi
155*4882a593Smuzhiyun}
156*4882a593Smuzhiyun
157*4882a593SmuzhiyunBBCLASSEXTEND = "native"
158