View Raw Ebuild
# Copyright 2023 Haelwenn (lanodan) Monnier <contact@hacktivis.me>
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit nodejs
DESCRIPTION="Mecab morphological analyzer for kuroshiro"
HOMEPAGE="https://github.com/hexenq/kuroshiro-analyzer-mecab"
SRC_URI="https://github.com/hexenq/kuroshiro-analyzer-mecab/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
BDEPEND="dev-util/esbuild"
RDEPEND="dev-nodejs/mecab-async"
RESTRICT="test" # Uses jest
src_prepare() {
default
#sed -i '/"module":/a"type": "module",' package.json || die
# Can't import node:child_process, only require()
sed -i \
-e 's;^import Mecab from "mecab-async";const Mecab = require("mecab-async");' \
-e 's;export default ;module.exports = ;' \
src/index.js || die
}
src_compile() {
# Uses babel by default, let's use esbuild for now instead to create a similar result
esbuild --bundle src/index.js --outdir=lib --minify --sourcemap --platform=node || die
}