ports/60810: New port: textproc/srilm

Cheng-Lung Sung clsung at dragon2.net
Fri Jan 2 03:30:12 UTC 2004


>Number:         60810
>Category:       ports
>Synopsis:       New port: textproc/srilm
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jan 01 19:30:07 PST 2004
>Closed-Date:
>Last-Modified:
>Originator:     Cheng-Lung Sung
>Release:        FreeBSD 4.9-RELEASE i386
>Organization:
FreeBSD @ Taiwan
>Environment:
System: FreeBSD sungsung.csie.nctu.edu.tw 4.9-RELEASE FreeBSD 4.9-RELEASE #5: Wed Oct 29 20:13:25 CST 2003 root at sungsung.csie.nctu.edu.tw:/usr/obj/usr/src/sys/SUNGSUNG i386

>Description:
- SRILM is a toolkit for building and applying statistical language models
- This port only applied to i386 arch now, no test in other archs yet.
- tested in FreeBSD 4.9-RELEASE/5.1-RELEASE
>How-To-Repeat:
>Fix:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	srilm
#	srilm/pkg-plist
#	srilm/pkg-descr
#	srilm/distinfo
#	srilm/Makefile
#	srilm/files
#	srilm/files/patch-bin-machine-type
#	srilm/files/patch-Makefile.machine.i386
#	srilm/files/patch-Makefile.common.variables
#	srilm/files/patch-lm-src-Makefile
#	srilm/files/patch-lattice-src-Makefile
#	srilm/files/patch-go.run-test
#	srilm/pkg-message
#
echo c - srilm
mkdir -p srilm > /dev/null 2>&1
echo x - srilm/pkg-plist
sed 's/^X//' >srilm/pkg-plist << 'END-of-srilm/pkg-plist'
Xbin/ngram
Xbin/ngram-count
Xbin/ngram-merge
Xbin/ngram-class
Xbin/disambig
Xbin/anti-ngram
Xbin/nbest-lattice
Xbin/nbest-mix
Xbin/nbest-optimize
Xbin/nbest-pron-score
Xbin/segment
Xbin/segment-nbest
Xbin/hidden-ngram
Xbin/multi-ngram
Xbin/lattice-tool
X%%EXAMPLESDIR%%/change-lm-vocab
X%%EXAMPLESDIR%%/rescore-decipher
X%%EXAMPLESDIR%%/rescore-acoustic
X%%EXAMPLESDIR%%/rescore-reweight
X%%EXAMPLESDIR%%/rescore-minimize-wer
X%%EXAMPLESDIR%%/make-batch-counts
X%%EXAMPLESDIR%%/merge-batch-counts
X%%EXAMPLESDIR%%/make-big-lm
X%%EXAMPLESDIR%%/make-multiword-pfsg
X%%EXAMPLESDIR%%/pfsg-from-ngram
X%%EXAMPLESDIR%%/nbest-error
X%%EXAMPLESDIR%%/nbest-rover
X%%EXAMPLESDIR%%/align-with-tags
X%%EXAMPLESDIR%%/compute-sclite
X%%EXAMPLESDIR%%/compare-sclite
X%%EXAMPLESDIR%%/add-classes-to-pfsg
X%%EXAMPLESDIR%%/add-dummy-bows
X%%EXAMPLESDIR%%/add-pauses-to-pfsg
X%%EXAMPLESDIR%%/add-ppls
X%%EXAMPLESDIR%%/bytelog-to-log10
X%%EXAMPLESDIR%%/classes-to-fsm
X%%EXAMPLESDIR%%/combine-acoustic-scores
X%%EXAMPLESDIR%%/compare-ppls
X%%EXAMPLESDIR%%/compute-best-mix
X%%EXAMPLESDIR%%/compute-best-rover-mix
X%%EXAMPLESDIR%%/compute-best-sentence-mix
X%%EXAMPLESDIR%%/compute-oov-rate
X%%EXAMPLESDIR%%/continuous-ngram-count
X%%EXAMPLESDIR%%/extract-skip-probs
X%%EXAMPLESDIR%%/find-reference-posteriors
X%%EXAMPLESDIR%%/fsm-to-pfsg
X%%EXAMPLESDIR%%/get-gt-counts
X%%EXAMPLESDIR%%/hits-from-log
X%%EXAMPLESDIR%%/log10-to-bytelog
X%%EXAMPLESDIR%%/make-abs-discount
X%%EXAMPLESDIR%%/make-diacritic-map
X%%EXAMPLESDIR%%/make-gt-discounts
X%%EXAMPLESDIR%%/make-kn-discounts
X%%EXAMPLESDIR%%/make-kn-counts
X%%EXAMPLESDIR%%/make-hiddens-lm
X%%EXAMPLESDIR%%/make-lm-subset
X%%EXAMPLESDIR%%/make-nbest-pfsg
X%%EXAMPLESDIR%%/make-ngram-pfsg
X%%EXAMPLESDIR%%/make-sub-lm
X%%EXAMPLESDIR%%/sort-lm
X%%EXAMPLESDIR%%/reverse-lm
X%%EXAMPLESDIR%%/merge-nbest
X%%EXAMPLESDIR%%/nbest-posteriors
X%%EXAMPLESDIR%%/nbest2-to-nbest1
X%%EXAMPLESDIR%%/nbest-vocab
X%%EXAMPLESDIR%%/pfsg-to-dot
X%%EXAMPLESDIR%%/pfsg-to-fsm
X%%EXAMPLESDIR%%/pfsg-vocab
X%%EXAMPLESDIR%%/ppl-from-log
X%%EXAMPLESDIR%%/remove-lowprob-ngrams
X%%EXAMPLESDIR%%/replace-words-with-classes
X%%EXAMPLESDIR%%/reverse-text
X%%EXAMPLESDIR%%/reverse-ngram-counts
X%%EXAMPLESDIR%%/sentid-to-sclite
X%%EXAMPLESDIR%%/sentid-to-ctm
X%%EXAMPLESDIR%%/subtract-ppls
X%%EXAMPLESDIR%%/uniform-classes
X%%EXAMPLESDIR%%/vp2text
X%%EXAMPLESDIR%%/wlat-to-dot
X%%EXAMPLESDIR%%/wlat-to-pfsg
X%%EXAMPLESDIR%%/wlat-stats
X%%EXAMPLESDIR%%/wordlat-to-lisp
X%%EXAMPLESDIR%%/prettify
X at dirrm %%EXAMPLESDIR%%
END-of-srilm/pkg-plist
echo x - srilm/pkg-descr
sed 's/^X//' >srilm/pkg-descr << 'END-of-srilm/pkg-descr'
XSRILM is a toolkit for building and applying statistical language models (LMs),
Xprimarily for use in speech recognition, statistical tagging and segmentation.
XIt has been under development in the SRI Speech Technology and 
XResearch Laboratory since 1995. The toolkit has also greatly benefitted from 
Xits use and enhancements during the Johns Hopkins University/CLSP summer 
Xworkshops in 1995, 1996, and 1997
X
XSRILM consists of the following components:
X
X    * A set of C++ class libraries implementing language models, 
X	supporting data stuctures and miscellaneous utility functions.
X    * A set of executable programs built on top of these libraries to 
X	perform standard tasks such as training LMs and testing them on 
X	data, tagging or segmenting text, etc.
X    * A collection of miscellaneous scripts facilitating minor related tasks.
X
XWWW:	http://www.speech.sri.com/projects/srilm/
X
XAuthor:	stolcke at speech.sri.com
END-of-srilm/pkg-descr
echo x - srilm/distinfo
sed 's/^X//' >srilm/distinfo << 'END-of-srilm/distinfo'
XMD5 (srilm.tgz.gz) = fc9ec46ba80466fcb6586899eead4f86
END-of-srilm/distinfo
echo x - srilm/Makefile
sed 's/^X//' >srilm/Makefile << 'END-of-srilm/Makefile'
X# New ports collection makefile for:	srilm
X# Date created:				Wed Dec 31 16:17:30 CST 2003
X# Whom:					Cheng-Lung Sung <clsung at dragon2.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	srilm
XPORTVERSION=	1.3.3
XCATEGORIES=	textproc
XDISTNAME=	srilm
XEXTRACT_SUFX?=	.tgz.gz
X
XMAINTAINER=	clsung at dragon2.net
XCOMMENT=	Toolkit for building and applying statistical language models
X
XLIB_DEPENDS=	tcl83.1:${PORTSDIR}/lang/tcl83
X
XDOWNLOAD_URL?=	http://www.speech.sri.com/projects/srilm/download.html
X
XUSE_GMAKE=	yes
XMAKE_ENV+=	SRILM=${WRKSRC}
XALL_TARGET=	World
XONLY_FOR_ARCHS=	i386
XUSE_REINPLACE=	yes
XNO_PACKAGE=	"not yet"
X
XPROGRAMS=	ngram ngram-count ngram-merge ngram-class disambig anti-ngram \
X		nbest-lattice nbest-mix  nbest-optimize  nbest-pron-score \
X		segment segment-nbest hidden-ngram multi-ngram \
X		lattice-tool
XSCRIPTS=	change-lm-vocab rescore-decipher rescore-acoustic \
X		rescore-reweight rescore-minimize-wer make-batch-counts \
X		merge-batch-counts make-big-lm make-multiword-pfsg \
X		pfsg-from-ngram nbest-error nbest-rover align-with-tags \
X		compute-sclite compare-sclite
XGAWK_SCRIPTS=	add-classes-to-pfsg add-dummy-bows add-pauses-to-pfsg \
X		add-ppls bytelog-to-log10 classes-to-fsm \
X		combine-acoustic-scores compare-ppls compute-best-mix \
X		compute-best-rover-mix compute-best-sentence-mix \
X		compute-oov-rate continuous-ngram-count \
X		extract-skip-probs find-reference-posteriors \
X		fsm-to-pfsg get-gt-counts hits-from-log \
X		log10-to-bytelog make-abs-discount make-diacritic-map \
X		make-gt-discounts make-kn-discounts make-kn-counts \
X		make-hiddens-lm make-lm-subset make-nbest-pfsg \
X		make-ngram-pfsg make-sub-lm sort-lm \
X		reverse-lm merge-nbest nbest-posteriors \
X		nbest2-to-nbest1 nbest-vocab pfsg-to-dot pfsg-to-fsm \
X		pfsg-vocab ppl-from-log remove-lowprob-ngrams \
X		replace-words-with-classes reverse-text \
X		reverse-ngram-counts sentid-to-sclite sentid-to-ctm \
X		subtract-ppls uniform-classes vp2text wlat-to-dot \
X		wlat-to-pfsg wlat-stats wordlat-to-lisp prettify
XMAN1=		ngram.1 ngram-count.1 ngram-class.1 ngram-merge.1 disambig.1 \
X		nbest-lattice.1 nbest-optimize.1 nbest-mix.1 \
X		nbest-pron-score.1 segment.1 segment-nbest.1 hidden-ngram.1 \
X		anti-ngram.1 multi-ngram.1 lattice-tool.1 training-scripts.1 \
X		lm-scripts.1 ppl-scripts.1 pfsg-scripts.1 nbest-scripts.1
XMAN3=		Prob.3 Vocab.3 LM.3 File.3
XMAN5=		ngram-format.5 nbest-format.5 classes-format.5 \
X		pfsg-format.5 wlat-format.5
X
X.include <bsd.port.pre.mk>
X
X.if !exists(${DISTDIR}/${DISTNAME}${EXTRACT_SUFX})
XECHO_MSG=/usr/bin/printf
XIGNORE=	:\n\
XBecause of license document, we suggest you fetch the source distribution\n\
Xmanually.  Please access ${DOWNLOAD_URL}\n\
X, follow the download instructions, download the source\n\
Xinto ${DISTDIR}/, and then run make again.\n
X.endif
X
Xdo-extract:
X	@${RM} -rf ${WRKDIR}
X	@${MKDIR} ${WRKSRC}
X	@if ! (cd ${WRKSRC} && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ${EXTRACT_AFTER_ARGS} );\
X	then \
X	    exit 1; \
X	fi
X
Xpost-patch:
X	@cd ${WRKSRC} && \
X	${REINPLACE_CMD} -e 's,$$WRKSRC,${WRKSRC},g' \
X		test/go.run-test
X
Xdo-install:
X	@${MKDIR} ${EXAMPLESDIR}
X	cd ${WRKSRC}/bin/${MACHINE_ARCH} && \
X		${INSTALL_PROGRAM} ${PROGRAMS} ${PREFIX}/bin && \
X		${INSTALL_SCRIPT} ${GAWK_SCRIPTS} ${EXAMPLESDIR} && \
X	cd ${WRKSRC}/man/man1 && \
X		${INSTALL_MAN} ${MAN1} ${MANPREFIX}/man/man1 && \
X	cd ${WRKSRC}/man/man3 && \
X		${INSTALL_MAN} ${MAN3} ${MANPREFIX}/man/man3 && \
X	cd ${WRKSRC}/man/man5 && \
X		${INSTALL_MAN} ${MAN5} ${MANPREFIX}/man/man5 && \
X	cd ${WRKSRC}/bin && \
X		${INSTALL_SCRIPT} ${SCRIPTS} ${EXAMPLESDIR}
X
Xpost-install:
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.post.mk>
END-of-srilm/Makefile
echo c - srilm/files
mkdir -p srilm/files > /dev/null 2>&1
echo x - srilm/files/patch-bin-machine-type
sed 's/^X//' >srilm/files/patch-bin-machine-type << 'END-of-srilm/files/patch-bin-machine-type'
X--- bin/machine-type.orig	Sat Feb 22 06:04:46 2003
X+++ bin/machine-type	Thu Jan  1 12:43:08 2004
X@@ -92,6 +92,8 @@
X 	set MACHINE_TYPE = macosx
X     else if (`uname -m` == i686) then
X 	set MACHINE_TYPE = i686
X+    else if (`uname -m` == i386) then
X+	set MACHINE_TYPE = i386
X     else
X 	## Generate an error by doing nothing.  (Used to be the line below:)
X 	## echo "ERROR: Unsupported machine type: "$RESULT
END-of-srilm/files/patch-bin-machine-type
echo x - srilm/files/patch-Makefile.machine.i386
sed 's/^X//' >srilm/files/patch-Makefile.machine.i386 << 'END-of-srilm/files/patch-Makefile.machine.i386'
X--- common/Makefile.machine.i386.orig	Thu Jan  1 12:44:20 2004
X+++ common/Makefile.machine.i386	Thu Jan  1 12:38:27 2004
X@@ -0,0 +1,69 @@
X+#
X+#    File:   Makefile.i686
X+#    Author: The SRI DECIPHER (TM) System
X+#    Date:   Fri Feb 19 22:45:31 PST 1999
X+#
X+#    Description:
X+#	Machine dependent compilation options and variable definitions
X+#	for Linux/i686 platform
X+#
X+#    Copyright (c) 1999-2001 SRI International.  All Rights Reserved.
X+#
X+#    $Header: /home/srilm/devel/common/RCS/Makefile.machine.i686,v 1.8 2003/02/21 22:30:00 stolcke Exp $
X+#
X+
X+   # Use the GNU C compiler.
X+   GCC_FLAGS = 
X+   CC = gcc $(GCC_FLAGS)
X+   CXX = g++ -Wno-deprecated $(GCC_FLAGS) -DINSTANTIATE_TEMPLATES
X+
X+   # Optional compilation flags.
X+   OPTIMIZE_FLAGS = -g -O2
X+   DEBUG_FLAGS = -g -DDEBUG
X+   PROFILE_FLAGS = -g -pg -O2
X+
X+   # Optional linking flags.
X+   EXPORT_LDFLAGS = -s
X+
X+   # Shared compilation flags.
X+   CFLAGS = $(ADDITIONAL_CFLAGS) $(INCLUDES)
X+   CXXFLAGS = $(ADDITIONAL_CXXFLAGS) $(INCLUDES)
X+
X+   # Shared linking flags.
X+   LDFLAGS = $(ADDITIONAL_LDFLAGS) -L$(SRILM_LIBDIR)
X+
X+   # Other useful compilation flags.
X+   ADDITIONAL_CFLAGS =
X+   ADDITIONAL_CXXFLAGS =
X+
X+   # Other useful include directories.
X+   ADDITIONAL_INCLUDES = 
X+
X+   # Other useful linking flags.
X+   ADDITIONAL_LDFLAGS = 
X+
X+   # Other useful libraries.
X+   ADDITIONAL_LIBRARIES = -L/home/clsung/srilm/work/srilm/dstruct/obj/i686 -L/home/clsung/srilm/work/srilm/misc/obj/i686 -L/home/clsung/srilm/work/srilm/htk/obj/i686 -L/home/clsung/srilm/work/srilm/lattice/obj/i686 -L/home/clsung/srilm/work/srilm/utils/obj/i686 -L/home/clsung/srilm/work/srilm/lm/obj/i686 -lm
X+
X+   # run-time linker path flag
X+   RLD_FLAG = -R
X+
X+   # Tcl support (standard in Linux)
X+   TCL_INCLUDE = -I/usr/local/include/tcl8.3
X+   TCL_LIBRARY = -L/usr/local/lib -ltcl83
X+
X+   # No ranlib
X+   RANLIB = :
X+
X+   # Generate dependencies from source files.
X+   GEN_DEP = $(CC) $(CFLAGS) -MM
X+
X+   GEN_DEP.cc = $(CXX) $(CXXFLAGS) -MM
X+
X+   # Run lint.
X+   LINT = lint
X+   LINT_FLAGS = -DDEBUG $(CFLAGS)
X+
X+   # Location of awk binary
X+   GAWK = /usr/bin/awk
X+
END-of-srilm/files/patch-Makefile.machine.i386
echo x - srilm/files/patch-Makefile.common.variables
sed 's/^X//' >srilm/files/patch-Makefile.common.variables << 'END-of-srilm/files/patch-Makefile.common.variables'
X--- common/Makefile.common.variables.orig	Sat Feb 22 06:43:31 2003
X+++ common/Makefile.common.variables	Thu Jan  1 02:57:25 2004
X@@ -52,7 +52,7 @@
X DEMANGLE_FILTER = 2>&1 | c++filt
X 
X # Path to GNU awk; used in editing scripts 
X-GAWK = /usr/local/bin/gawk
X+GAWK = /usr/bin/awk
X 
X # Include machine-type dependent variables
X include $(SRILM)/common/Makefile.machine.$(MACHINE_TYPE)
END-of-srilm/files/patch-Makefile.common.variables
echo x - srilm/files/patch-lm-src-Makefile
sed 's/^X//' >srilm/files/patch-lm-src-Makefile << 'END-of-srilm/files/patch-lm-src-Makefile'
X--- lm/src/Makefile.orig	Sat Feb 22 04:20:46 2003
X+++ lm/src/Makefile	Thu Jan  1 11:11:40 2004
X@@ -234,7 +234,7 @@
X 	$(ARCHIVE) $@ $^ $(DEMANGLE_FILTER)
X 	$(RANLIB) $@ $(DEMANGLE_FILTER)
X 
X-$(PROGRAMS): $(LIBRARY) $(OTHER_LIBRARIES)
X+$(PROGRAMS): $(LIBRARY)
X 
X # Variables and Targets for released system
X 
END-of-srilm/files/patch-lm-src-Makefile
echo x - srilm/files/patch-lattice-src-Makefile
sed 's/^X//' >srilm/files/patch-lattice-src-Makefile << 'END-of-srilm/files/patch-lattice-src-Makefile'
X--- lattice/src/Makefile.orig	Sun Aug 25 05:29:45 2002
X+++ lattice/src/Makefile	Thu Jan  1 11:12:00 2004
X@@ -131,7 +131,7 @@
X 	$(ARCHIVE) $@ $^ $(DEMANGLE_FILTER)
X 	$(RANLIB) $@ $(DEMANGLE_FILTER)
X 
X-$(PROGRAMS): $(LIBRARY) $(OTHER_LIBRARIES)
X+$(PROGRAMS): $(LIBRARY)
X 
X # Variables and Targets for released system
X 
END-of-srilm/files/patch-lattice-src-Makefile
echo x - srilm/files/patch-go.run-test
sed 's/^X//' >srilm/files/patch-go.run-test << 'END-of-srilm/files/patch-go.run-test'
X--- test/go.run-test.orig	Thu Jan  1 12:15:21 2004
X+++ test/go.run-test	Thu Jan  1 12:16:10 2004
X@@ -6,6 +6,9 @@
X # $Header: /home/srilm/devel/test/RCS/go.run-test,v 1.10 2003/02/27 23:42:35 stolcke Exp $
X #
X 
X+PATH=$PATH:$WRKSRC/bin:$WRKSRC/bin/i386
X+export PATH
X+
X dir=$1
X 
X if [ -z "$MACHINE_TYPE" ]; then
END-of-srilm/files/patch-go.run-test
echo x - srilm/pkg-message
sed 's/^X//' >srilm/pkg-message << 'END-of-srilm/pkg-message'
X*******************************Reference*****************************
X
XPublished research using SRILM may cite the following paper:
X
XPostScript: http://www.speech.sri.com/papers/icslp2002-srilm.ps.gz
XPDF: http://www.speech.sri.com/cgi-bin/run-distill?papers/icslp2002-srilm.ps.gz
X
X*********************************************************************
END-of-srilm/pkg-message
exit

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list