# Copyright 2012-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" LUA_COMPAT=( lua5-4 luajit ) inherit lua-single DESCRIPTION="RIME (Rime Input Method Engine) core library" HOMEPAGE="https://rime.im/ https://github.com/rime/librime" _COMMIT="295cb2ab68f89ee9d3237c7d4b8033bda3f3b635" _LUA_COMMIT="7f3eca2ce659fc2401b8acb52bd2182b433e12b1" _OCTAGRAM_COMMIT="bd12863f45fbbd5c7db06d5ec8be8987b10253bf" _PROTO_COMMIT="657a923cd4c333e681dc943e6894e6f6d42d25b4" _PREDICT_COMMIT="72e4d717e56c6542569c88b317700b3471164c42" SRC_URI=" https://github.com/rime/librime/archive/${_COMMIT}.tar.gz -> ${P}.tar.gz lua? ( https://github.com/hchunhui/librime-lua/archive/${_LUA_COMMIT}.tar.gz -> ${P}-lua.tar.gz ) octagram? ( https://github.com/lotem/librime-octagram/archive/${_OCTAGRAM_COMMIT}.tar.gz -> ${P}-octagram.tar.gz ) proto? ( https://github.com/lotem/librime-proto/archive/${_PROTO_COMMIT}.tar.gz -> ${P}-proto.tar.gz ) predict? ( https://github.com/lotem/librime-predict/archive/${_PREDICT_COMMIT}.tar.gz -> ${P}-predict.tar.gz ) " S=${WORKDIR}/${PN}-${_COMMIT} LICENSE="BSD BSD-2 Boost-1.0 MIT" SLOT="0/1-${PV}" KEYWORDS="~amd64 ~loong ~x86" IUSE=" +lua octagram +proto predict " REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )" RDEPEND=" dev-cpp/glog:= dev-cpp/gtest >=dev-libs/boost-1.74:= app-i18n/opencc:0= dev-cpp/yaml-cpp:0= dev-libs/leveldb:0= dev-libs/marisa:0= proto? ( dev-libs/capnproto ) lua? ( !app-i18n/librime-lua ) " DEPEND=" ${RDEPEND} lua? ( ${LUA_DEPS} ) " BDEPEND=" dev-build/cmake app-alternatives/ninja " src_prepare() { default if use lua; then ln -sf "${WORKDIR}/${PN}-lua-${_LUA_COMMIT}" ./plugins/lua || die fi if use octagram; then ln -sf "${WORKDIR}/${PN}-octagram-${_OCTAGRAM_COMMIT}" ./plugins/octagram || die fi if use proto; then ln -sf "${WORKDIR}/${PN}-proto-${_PROTO_COMMIT}" ./plugins/proto || die fi if use predict; then ln -sf "${WORKDIR}/${PN}-predict-${_PREDICT_COMMIT}" ./plugins/predict || die fi } src_compile() { emake release } src_install() { emake DESTDIR="${D}" install }