void-packages/srcpkgs/fcitx/template
2021-04-21 16:20:03 +07:00

104 lines
2.9 KiB
Bash

# Template file for 'fcitx'
pkgname=fcitx
version=4.2.9.8
revision=4
build_style=cmake
build_helper=gir
short_desc="Flexible Context-aware Input Tool with eXtension"
maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
license="GPL-2.0-or-later, LGPL-2.1-or-later, MIT"
homepage="https://fcitx-im.org/"
distfiles="http://download.fcitx-im.org/fcitx/fcitx-${version}_dict.tar.xz"
checksum=bc3515cba0561546fe02dae81391d4a03e0e79a2d668aa794cd3a377284033c6
hostmakedepends="pkg-config doxygen extra-cmake-modules glib-devel"
makedepends="iso-codes gettext-devel enchant-devel libxml2-devel
json-c-devel opencc-devel
libxkbfile-devel icu-devel dbus-devel gtk+-devel gtk+3-devel"
depends="fcitx5-icons fcitx5-chinese-addons-icons"
lib32disabled=yes
configure_args="-DCMAKE_BUILD_TYPE=None
-DSYSCONFDIR=/etc -DFORCE_OPENCC=OFF -DFORCE_PRESAGE=OFF
-DENABLE_GTK2_IM_MODULE=ON -DENABLE_GTK3_IM_MODULE=ON -DENABLE_QT=OFF
-DFORCE_ENCHANT=ON -DENABLE_TEST=ON -DENABLE_GIR=$(vopt_if gir ON OFF)"
# Warning: do NOT enable backtrace for musl, do NOT add libexecinfo-devel
case "$XBPS_TARGET_MACHINE" in
*-musl) configure_args+=" -DENABLE_BACKTRACE=OFF";;
esac
if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" fcitx"
fi
build_options="gir"
build_options_default="gir"
pre_configure() {
# include FcitxMacro.cmake without invoking fcitx4-config
vsed -i -e 's;INCLUDE(${FCITX4_PREFIX}/share/cmake/fcitx;INCLUDE(${CMAKE_CURRENT_LIST_DIR};' \
cmake/FcitxConfig.cmake
if [ "$CROSS_BUILD" ]; then
# use host binaries
vsed -i -e 's;${PROJECT_BINARY_DIR}/tools/dev;/usr/lib/fcitx/libexec;' \
cmake/FcitxMacro.cmake
vsed -i -e 's;${PROJECT_BINARY_DIR}/src/module/spell/dict;/usr/lib/fcitx/libexec;' \
src/module/spell/dict/CMakeLists.txt
vsed -i -e 's;${PROJECT_BINARY_DIR}/tools/cli;/usr/bin;' \
src/im/pinyin/data/CMakeLists.txt \
src/im/table/data/CMakeLists.txt
fi
}
pre_build() {
LDFLAGS+=" -Wl,--rpath-link=$wrksrc/build/src/lib/fcitx-utils"
}
post_install() {
find $DESTDIR/usr/share/icons -depth \
-name 'fcitx-kbd.*' -prune -o \
-name 'fcitx-vk-active.*' -prune -o \
-name 'fcitx-vk-inactive.*' -prune -o \
-type f -delete
}
libfcitx_package() {
short_desc+=" - shared libraries"
pkg_install() {
vmove "usr/lib/*.so.*"
vmove "usr/lib/fcitx/fcitx-*.so"
vmove usr/lib/fcitx/libexec
if [ "$build_option_gir" ]; then
vmove usr/lib/girepository-1.0
fi
vlicense COPYING.LIBS
vlicense COPYING.MIT
}
}
fcitx-devel_package() {
depends="libfcitx>=${version}_${revision} glib-devel"
short_desc+=" - development files"
pkg_install() {
vmove usr/bin/fcitx4-config
vmove usr/include
vmove usr/lib/pkgconfig
vmove "usr/lib/*.so"
vmove usr/share/cmake
if [ "$build_option_gir" ]; then
vmove usr/share/gir-1.0
fi
}
}
libfcitx-gtk_package() {
short_desc+=" - GTK2 IM module"
pkg_install() {
vmove usr/lib/gtk-2.0
}
}
libfcitx-gtk3_package() {
short_desc+=" - GTK3 IM module"
pkg_install() {
vmove usr/lib/gtk-3.0
}
}