diff options
author | John Marino <marino@FreeBSD.org> | 2014-08-21 11:46:24 +0000 |
---|---|---|
committer | John Marino <marino@FreeBSD.org> | 2014-08-21 11:46:24 +0000 |
commit | ac32cd90dc6f3afd76af9fce56e61648087fb0e2 (patch) | |
tree | 9a5386477908b7a7b1beb9cbea356891760a4016 /textproc/apertium | |
parent | 070a75571bc349e5d26d7d8572d2277026b14ed8 (diff) | |
download | ports-ac32cd90dc6f3afd76af9fce56e61648087fb0e2.tar.gz ports-ac32cd90dc6f3afd76af9fce56e61648087fb0e2.zip |
Notes
Diffstat (limited to 'textproc/apertium')
-rw-r--r-- | textproc/apertium/Makefile | 61 | ||||
-rw-r--r-- | textproc/apertium/files/patch-apertium__hmm.cc | 80 | ||||
-rw-r--r-- | textproc/apertium/files/patch-apertium__lextor.cc | 47 | ||||
-rw-r--r-- | textproc/apertium/pkg-plist | 51 |
4 files changed, 199 insertions, 40 deletions
diff --git a/textproc/apertium/Makefile b/textproc/apertium/Makefile index bbefa0b83b86..8cd70a5fc4a3 100644 --- a/textproc/apertium/Makefile +++ b/textproc/apertium/Makefile @@ -2,55 +2,44 @@ # $FreeBSD$ PORTNAME= apertium -PORTVERSION= ${APVER}.${APREV} -PORTREVISION= 3 +PORTVERSION= 3.2.0 +PORTREVISION= 4 CATEGORIES= textproc -MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${APVER} +MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${PORTVERSION:R} MAINTAINER= ports@FreeBSD.org COMMENT= Toolbox to build shallow-transfer machine translation systems +LICENSE= GPLv2 # (or later) + BUILD_DEPENDS= bash:${PORTSDIR}/shells/bash +LIB_DEPENDS= libpcre.so:${PORTSDIR}/devel/pcre \ + liblttoolbox3.so:${PORTSDIR}/textproc/lttoolbox RUN_DEPENDS= bash:${PORTSDIR}/shells/bash -LIB_DEPENDS= libxml2.so:${PORTSDIR}/textproc/libxml2 \ - libxslt.so:${PORTSDIR}/textproc/libxslt \ - liblttoolbox3.so:${PORTSDIR}/textproc/lttoolbox \ - libpcre.so:${PORTSDIR}/devel/pcre - -APVER= 3.2 -APREV= 0 +USES= libtool pathfix pkgconfig +USE_GNOME= libxml2 libxslt +GNU_CONFIGURE= yes +USE_LDCONFIG= yes +INSTALL_TARGET= install-strip MAKE_JOBS_UNSAFE= yes -GNU_CONFIGURE= yes CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib -USES= pathfix pkgconfig -USE_LDCONFIG= yes -PLIST_SUB+= APVER="${APVER}" - -MAN1= apertium-deshtml.1 apertium-desodt.1 apertium-despptx.1 \ - apertium-desrtf.1 apertium-destxt.1 apertium-deswxml.1 \ - apertium-desxlsx.1 apertium-filter-ambiguity.1 \ - apertium-gen-deformat.1 apertium-gen-lextorbil.1 \ - apertium-gen-lextormono.1 apertium-gen-modes.1 \ - apertium-gen-reformat.1 apertium-gen-stopwords-lextor.1 \ - apertium-gen-wlist-lextor-translation.1 apertium-gen-wlist-lextor.1 \ - apertium-interchunk.1 apertium-lextor.1 apertium-multiple-translations.1 \ - apertium-postchunk.1 apertium-preprocess-corpus-lextor.1 \ - apertium-preprocess-transfer.1 apertium-pretransfer.1 \ - apertium-rehtml.1 apertium-reodt.1 apertium-repptx.1 \ - apertium-rertf.1 apertium-retxt.1 apertium-rewxml.1 apertium-rexlsx.1 \ - apertium-tagger-apply-new-rules.1 apertium-tagger.1 apertium-transfer.1 \ - apertium-validate-acx.1 apertium-validate-dictionary.1 \ - apertium-validate-interchunk.1 apertium-validate-modes.1 \ - apertium-validate-postchunk.1 apertium-validate-tagger.1\ - apertium-validate-transfer.1 apertium-unformat.1 \ - apertium.1 apertium-desmediawiki.1 apertium-remediawiki.1 - -NO_STAGE= yes +PLIST_SUB= APVER="${PORTVERSION:R}" + post-patch: - @${REINPLACE_CMD} -e 's/pcre_info/pcre_fullinfo/g' ${WRKSRC}/configure + @${REINPLACE_CMD} -e \ + 's| -ansi | | ; \ + s| -march=.* | | ; \ + s| -mtune=.* | | ; \ + s| -O3 | | ; \ + s|pcre_info|pcre_fullinfo|g' ${WRKSRC}/configure + @${REINPLACE_CMD} -e \ + 's|\([[:blank:]]\)\($$(modesdir)\)|\1$$(DESTDIR)\2|' \ + ${WRKSRC}/Makefile.in + @${REINPLACE_CMD} -e \ + 's|_C_|_H_|' ${WRKSRC}/apertium/tmx_aligner_tool.h .include <bsd.port.mk> diff --git a/textproc/apertium/files/patch-apertium__hmm.cc b/textproc/apertium/files/patch-apertium__hmm.cc new file mode 100644 index 000000000000..7059b053f305 --- /dev/null +++ b/textproc/apertium/files/patch-apertium__hmm.cc @@ -0,0 +1,80 @@ +--- apertium/hmm.cc.orig ++++ apertium/hmm.cc +@@ -141,7 +141,7 @@ + int N = td->getN(); + int M = td->getM(); + int i, j, k, k1, k2, nw=0; +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + double classes_ocurrences[M]; //M = Number of ambiguity classes + double classes_pair_ocurrences[M][M]; + double tags_estimate[N]; //N = Number of tags (states) +@@ -159,7 +159,7 @@ + + TaggerWord *word=NULL; + +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + for(k=0; k<M; k++) { + classes_ocurrences[k]=1; + for (k2=0; k2<M; k2++) +@@ -204,7 +204,7 @@ + + //Estimation of the number of time each tags occurs in the training text + for(i=0; i<N; i++) { +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + tags_estimate[i]=0; + #endif + for(k=0; k<M; k++) { +@@ -214,7 +214,7 @@ + } + } + +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + //Estimation of the number of times each tag pair occurs + for(i=0; i<N; i++) + for(j=0; j<N; j++) +@@ -270,7 +270,7 @@ + int i, j, k, nw=0; + int N = td->getN(); + int M = td->getM(); +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + double tags_pair[N][N]; + double emission[N][M]; + #else +@@ -288,7 +288,7 @@ + + set<TTag> tags; + +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + // Init counters - each event appears at least once. + // Espected likelihood estimate (ELE) with a fixed initial count of 1 + for(i=0; i<N; i++) { +@@ -750,12 +750,12 @@ + + double prob, loli, x; + int N = td->getN(); +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + double alpha[2][N]; + vector<TTag> best[2][N]; + #else + vector <vector <double> > alpha(2, vector<double>(N)); +- vector <vector <vector<TTag>> > best(2, vector<vector<TTag>>(N)); ++ vector <vector <vector<TTag> > > best(2, vector<vector<TTag> >(N)); + #endif + + vector <TaggerWord> wpend; +@@ -799,7 +799,7 @@ + + k = output[tags]; //Ambiguity class the word belongs to + +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + clear_array_double(alpha[nwpend%2], N); + clear_array_vector(best[nwpend%2], N); + #endif diff --git a/textproc/apertium/files/patch-apertium__lextor.cc b/textproc/apertium/files/patch-apertium__lextor.cc new file mode 100644 index 000000000000..402138515133 --- /dev/null +++ b/textproc/apertium/files/patch-apertium__lextor.cc @@ -0,0 +1,47 @@ +--- apertium/lextor.cc.orig ++++ apertium/lextor.cc +@@ -277,7 +277,7 @@ + //Note: Words in the context can also be ambiguous (with more than one lexical choice) + //In that case the count will come from all the possible + //translations +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + vector<wstring> translation_buffer[buffer_max_size]; + wstring reduced_buffer[buffer_max_size]; + #else +@@ -340,7 +340,7 @@ + //The counts of the TL co-occurrence model are transferred to the SL. If the SL word is ambiguous + //it will have more than one translation into TL, so we need to normalize using the frequency of words + //in the TL +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + double translation_weighs[translation_buffer[i].size()]; + #else + vector <double> translation_weighs(translation_buffer[i].size()); +@@ -686,7 +686,7 @@ + + int + LexTor::estimate_winner_lch_voting(deque<LexTorWord>& window, int word_index, double weigth_exponent) { +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + double lexchoices_count[window[word_index].n_lexical_choices()]; + #else + vector <double> lexchoices_count(window[word_index].n_lexical_choices()); +@@ -879,7 +879,7 @@ + exit(EXIT_FAILURE); + } + +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + double lexchoices_count[window[word_index].n_lexical_choices()]; + vector<wstring> translation_window[window.size()]; + wstring reduced_window[window.size()]; +@@ -935,7 +935,7 @@ + //If the SL word is ambiguous it will have more than one + //translation into TL, so we need to normalize using the + //frequency of words in the TL +-#ifdef __GNUC__ ++#if defined(__GNUC__) && !defined(__clang__) + double translation_weighs[translation_window[k].size()]; + #else + vector <double> translation_weighs(translation_window[k].size()); diff --git a/textproc/apertium/pkg-plist b/textproc/apertium/pkg-plist index a4fd0532afb9..97480252b850 100644 --- a/textproc/apertium/pkg-plist +++ b/textproc/apertium/pkg-plist @@ -89,12 +89,55 @@ include/apertium-%%APVER%%/apertium/tsx_reader.h include/apertium-%%APVER%%/apertium/ttag.h include/apertium-%%APVER%%/apertium/unlocked_cstdio.h include/apertium-%%APVER%%/apertium/utf_converter.h -lib/libapertium3-%%APVER%%.so lib/libapertium3-%%APVER%%.so.0 +lib/libapertium3-%%APVER%%.so.0.0.0 lib/libapertium3.a -lib/libapertium3.la lib/libapertium3.so libdata/pkgconfig/apertium-%%APVER%%.pc +man/man1/apertium.1.gz +man/man1/apertium-deshtml.1.gz +man/man1/apertium-desmediawiki.1.gz +man/man1/apertium-desodt.1.gz +man/man1/apertium-despptx.1.gz +man/man1/apertium-desrtf.1.gz +man/man1/apertium-destxt.1.gz +man/man1/apertium-deswxml.1.gz +man/man1/apertium-desxlsx.1.gz +man/man1/apertium-filter-ambiguity.1.gz +man/man1/apertium-gen-deformat.1.gz +man/man1/apertium-gen-lextorbil.1.gz +man/man1/apertium-gen-lextormono.1.gz +man/man1/apertium-gen-modes.1.gz +man/man1/apertium-gen-reformat.1.gz +man/man1/apertium-gen-stopwords-lextor.1.gz +man/man1/apertium-gen-wlist-lextor-translation.1.gz +man/man1/apertium-gen-wlist-lextor.1.gz +man/man1/apertium-interchunk.1.gz +man/man1/apertium-lextor.1.gz +man/man1/apertium-multiple-translations.1.gz +man/man1/apertium-postchunk.1.gz +man/man1/apertium-preprocess-corpus-lextor.1.gz +man/man1/apertium-preprocess-transfer.1.gz +man/man1/apertium-pretransfer.1.gz +man/man1/apertium-rehtml.1.gz +man/man1/apertium-remediawiki.1.gz +man/man1/apertium-reodt.1.gz +man/man1/apertium-repptx.1.gz +man/man1/apertium-rertf.1.gz +man/man1/apertium-retxt.1.gz +man/man1/apertium-rewxml.1.gz +man/man1/apertium-rexlsx.1.gz +man/man1/apertium-tagger-apply-new-rules.1.gz +man/man1/apertium-tagger.1.gz +man/man1/apertium-transfer.1.gz +man/man1/apertium-unformat.1.gz +man/man1/apertium-validate-acx.1.gz +man/man1/apertium-validate-dictionary.1.gz +man/man1/apertium-validate-interchunk.1.gz +man/man1/apertium-validate-modes.1.gz +man/man1/apertium-validate-postchunk.1.gz +man/man1/apertium-validate-tagger.1.gz +man/man1/apertium-validate-transfer.1.gz %%DATADIR%%/acx.rng %%DATADIR%%/apertium-createmodes.awk %%DATADIR%%/deformat.xsl @@ -111,7 +154,7 @@ libdata/pkgconfig/apertium-%%APVER%%.pc %%DATADIR%%/reformat.xsl %%DATADIR%%/tagger.dtd %%DATADIR%%/transfer.dtd -@dirrm include/apertium-%%APVER%%/apertium -@dirrm include/apertium-%%APVER%% @dirrm %%DATADIR%%/modes @dirrm %%DATADIR%% +@dirrm include/apertium-%%APVER%%/apertium +@dirrm include/apertium-%%APVER%% |