BIN_DIR ?= ./bin
IPADIC_VERSION ?= 2.7.0-20070801
SOURCE_URL ?= http://jaist.dl.sourceforge.net/project/mecab/mecab-ipadic/$(IPADIC_VERSION)/mecab-ipadic-$(IPADIC_VERSION).tar.gz
LINDERA_IPADIC_BUILDER_VERSION ?= $(shell cargo metadata --no-deps --format-version=1 | jq -r '.packages[] | select(.name=="lindera-ipadic-builder") | .version')
clean:
rm -rf $(BIN_DIR)
rm -rf ./lindera-ipadic-*
rm -rf ./mecab-ipadic-*
cargo clean
format:
cargo fmt
build:
cargo build --release
mkdir -p $(BIN_DIR)
cp -p ./target/release/lindera-ipadic $(BIN_DIR)
mecab-ipadic-download:
ifeq ($(wildcard ./mecab-ipadic-$(IPADIC_VERSION).tar.gz),)
curl -L -O "$(SOURCE_URL)"
endif
mecab-ipadic-extract: mecab-ipadic-download
ifeq ($(wildcard ./mecab-ipadic-$(IPADIC_VERSION)/*),)
tar zxvf ./mecab-ipadic-$(IPADIC_VERSION).tar.gz
endif
lindera-ipadic: build mecab-ipadic-extract
$(BIN_DIR)/lindera-ipadic ./mecab-ipadic-$(IPADIC_VERSION) ./lindera-ipadic-$(IPADIC_VERSION)
tar -cvjf ./lindera-ipadic-$(IPADIC_VERSION).tar.bz2 ./lindera-ipadic-$(IPADIC_VERSION)
test:
cargo test
tag:
git tag v$(LINDERA_IPADIC_BUILDER_VERSION)
git push origin v$(LINDERA_IPADIC_BUILDER_VERSION)
publish:
ifeq ($(shell cargo show --json lindera-ipadic-builder | jq -r '.versions[].num' | grep $(LINDERA_IPADIC_BUILDER_VERSION)),)
cargo package && cargo publish
endif