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