diff options
author | matusita <matusita@FreeBSD.org> | 2004-10-30 14:20:21 +0000 |
---|---|---|
committer | matusita <matusita@FreeBSD.org> | 2004-10-30 14:20:21 +0000 |
commit | dc26b3103c0ad9fd1f70087511d5b164a4a08eff (patch) | |
tree | c91d14f54eff96a9781854dd9be4ac0522499830 /japanese/skk-jisyo/Makefile | |
parent | c9dc5f89ec8b06f715e74d7a86c2df4fdc0cc056 (diff) | |
download | FreeBSD-ports-dc26b3103c0ad9fd1f70087511d5b164a4a08eff.zip FreeBSD-ports-dc26b3103c0ad9fd1f70087511d5b164a4a08eff.tar.gz |
Take MAINTAINERship from ports@FreeBSD.org (again; I was the MAINTAINER
of this port), and completely rewrite this port in order to install
latest version of dictionaries with less costs.
Major changes are as follows:
* Set DISTFILES to my directory of MASTER_SITE_LOCAL. This directory
will contain monthly jisyo snapshot from the original distribution,
<URL:http://openlab.jp/skk/skk/dic/>. For less traffic, dictionary
files are bzip2(1)ed. Thanks to cron(8), I can update my MASTER_SITE_LOCAL
directory automatically -- you can see 200411 version of dictionary file
at Nov/01/2004 (yeah!).
* You can choose which size of dictionary files to be installed. Set
SKK_JISYO_TYPE to L, M, S, or any combination of these chars. Default
to 'L M S' so no files are disappeared with this commit.
* Introduce WITH_SKKJISYO_DELCOMMENTS, to delete annotations of any
dictionaries (at this time, only SKK-JISYO.L have annotations).
If you 1) don't want any annotations, 2) want to save disk space, or
3) have a client which doesn't aware annotations, use this option:
i.e., "make WITH_SKKJISYO_DELCOMMENTS=yes".
* Introduce WITH_SKKJISYO_CDB, to build CDB version of dictionaries.
In previsous version of ports, it is assumed that CDB version is
already made. However, it seems that the maintenance cost is not
so cheap; ports/japanese/skk-jisyo-cdb is broken at least two months.
I'm trying to contact the MAINTAINER of ports/japanese/skk-jisyo-cdb;
with this change, ports/japanese/skk-jisyo-cdb can be changed more
simple one.
* While I'm here, employ PLIST_FILES to simplify pkg-plist.
I've tested as much as possible including option combinations, "make
package", and pkg_add/delete. But if you find that I made a mistake,
please let me know.
Tested by: rushani
Suggestion from: nork
Diffstat (limited to 'japanese/skk-jisyo/Makefile')
-rw-r--r-- | japanese/skk-jisyo/Makefile | 89 |
1 files changed, 71 insertions, 18 deletions
diff --git a/japanese/skk-jisyo/Makefile b/japanese/skk-jisyo/Makefile index f77fd18..e266976 100644 --- a/japanese/skk-jisyo/Makefile +++ b/japanese/skk-jisyo/Makefile @@ -5,36 +5,89 @@ # $FreeBSD$ # -PORTNAME?= skk-jisyo -PORTVERSION?= 200408 +PORTNAME= skk-jisyo +PORTVERSION= 200410 CATEGORIES= japanese -MASTER_SITES?= http://www.tkd.ne.jp/~toru/skk/ -DISTFILES?= SKK-JISYO.L.${PORTVERSION}${SKK_JISYO_SUFFIX}.gz \ - SKK-JISYO.M.${PORTVERSION}${SKK_JISYO_SUFFIX}.gz \ - SKK-JISYO.S.${PORTVERSION}${SKK_JISYO_SUFFIX}.gz +MASTER_SITES= ${MASTER_SITE_LOCAL} +MASTER_SITE_SUBDIR= matusita/${PORTNAME} +.if defined(WITH_SKKJISYO_CDB) +PKGNAMESUFFIX= -cdb +.endif DIST_SUBDIR= skk-jisyo -MAINTAINER?= ports@FreeBSD.org +MAINTAINER?= matusita@FreeBSD.org COMMENT?= Jisyo (dictionary) files for the SKK Japanese-input software -NO_WRKSUBDIR= yes -NO_BUILD= yes -EXTRACT_CMD= ${CP} +.if defined(WITH_SKKJISYO_CDB) +BUILD_DEPENDS= ${LOCALBASE}/bin/cdbmake:${PORTSDIR}/databases/cdb +.endif + +SKKDIR?= share/skk +SKK_JISYO_TYPE?=L M S + +USE_BZIP2= yes +NO_WRKSUBDIR= yes +EXTRACT_CMD= ${CP} EXTRACT_BEFORE_ARGS= -p EXTRACT_AFTER_ARGS= ${WRKDIR} +PLIST_SUB+= SKKDIR=${SKKDIR} +.for type in ${SKK_JISYO_TYPE} +DISTFILES+= SKK-JISYO.${type}.${PORTVERSION}.bz2 +PLIST_FILES+= ${SKKDIR}/SKK-JISYO.${type}${CDBSUFFIX} +.endfor +.if defined(WITH_SKKJISYO_DELCOMMENTS) +USE_REINPLACE= yes +.endif -SKKDIR?= share/skk -SKK_JISYO_TYPE?= L M S -SKK_JISYO_SUFFIX?= # empty - -PLIST_SUB= SKKDIR=${SKKDIR} JISYO_SUFFIX=${SKK_JISYO_SUFFIX} +.if defined(WITH_SKKJISYO_CDB) +CDBSUFFIX= .cdb +.else +CDBSUFFIX= #empty +NO_BUILD= yes +.endif post-extract: - @(cd ${WRKDIR}; ${GUNZIP_CMD} *.gz) + @(cd ${WRKDIR}; ${BZIP2_CMD} -d *.bz2) + +.if defined(WITH_SKKJISYO_DELCOMMENTS) +# Strip comments in transtation candidates list. +# Candidate list starts with '/', and each candidate is concatinated by +# '/' (e.g., "/c1/c2/".) Each candidate may have a comment just after +# the candidate, leading a marker character ';' (e.g. /c3;comment/). +do-patch: +.for type in ${SKK_JISYO_TYPE} + ${REINPLACE_CMD} -e '/^[^;]/s,;[^/]*/,/,g' \ + ${WRKDIR}/SKK-JISYO.${type}.${PORTVERSION} +.endfor +.endif + +.if defined(WITH_SKKJISYO_CDB) +# Convert plaintext jisyo data to CDB database by cdbmake. +# Each line consists of "+${klen},${dlen}:${key}->${data}", where klen/dlen +# are length of key/data. A blank line at the end of data is required. +# See also: <URL:http://cr.yp.to/cdb/cdbmake.html>. +do-build: +.for type in ${SKK_JISYO_TYPE} + ${AWK} '/^[^;]/ { \ + k = $$1; didx = index($$0, $$2); \ + d = substr($$0, didx); \ + print "+" length(k) "," length(d) ":" k "->" d; \ + } \ + END { \ + print ""; \ + }' \ + < ${WRKDIR}/SKK-JISYO.${type}.${PORTVERSION} | \ + ${LOCALBASE}/bin/cdbmake \ + ${WRKDIR}/SKK-JISYO.${type}.${PORTVERSION}${CDBSUFFIX} \ + ${WRKDIR}/SKK-JISYO.${type}.${PORTVERSION}.tmp +.endfor +.endif + do-install: ${MKDIR} ${PREFIX}/${SKKDIR} -.for i in ${SKK_JISYO_TYPE} - ${INSTALL_DATA} ${WRKSRC}/SKK-JISYO.${i}.${PORTVERSION}${SKK_JISYO_SUFFIX} ${PREFIX}/${SKKDIR}/SKK-JISYO.${i}${SKK_JISYO_SUFFIX} +.for type in ${SKK_JISYO_TYPE} + ${INSTALL_DATA} ${WRKSRC}/SKK-JISYO.${type}.${PORTVERSION}${CDBSUFFIX} \ + ${PREFIX}/${SKKDIR}/SKK-JISYO.${type}${CDBSUFFIX} .endfor .include <bsd.port.mk> |