svn commit: r365548 - in head/textproc/apertium: . files

John Marino marino at FreeBSD.org
Thu Aug 21 11:46:26 UTC 2014


Author: marino
Date: Thu Aug 21 11:46:24 2014
New Revision: 365548
URL: http://svnweb.freebsd.org/changeset/ports/365548
QAT: https://qat.redports.org/buildarchive/r365548/

Log:
  Stage textproc/apertium and unbreak on FreeBSD 10+
  
  PR:		192807
  Submitted by:	Ports Fury

Added:
  head/textproc/apertium/files/
  head/textproc/apertium/files/patch-apertium__hmm.cc   (contents, props changed)
  head/textproc/apertium/files/patch-apertium__lextor.cc   (contents, props changed)
Modified:
  head/textproc/apertium/Makefile
  head/textproc/apertium/pkg-plist

Modified: head/textproc/apertium/Makefile
==============================================================================
--- head/textproc/apertium/Makefile	Thu Aug 21 11:35:47 2014	(r365547)
+++ head/textproc/apertium/Makefile	Thu Aug 21 11:46:24 2014	(r365548)
@@ -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 at 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
+PLIST_SUB=	APVER="${PORTVERSION:R}"
 
-NO_STAGE=	yes
 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>

Added: head/textproc/apertium/files/patch-apertium__hmm.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/textproc/apertium/files/patch-apertium__hmm.cc	Thu Aug 21 11:46:24 2014	(r365548)
@@ -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

Added: head/textproc/apertium/files/patch-apertium__lextor.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/textproc/apertium/files/patch-apertium__lextor.cc	Thu Aug 21 11:46:24 2014	(r365548)
@@ -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());

Modified: head/textproc/apertium/pkg-plist
==============================================================================
--- head/textproc/apertium/pkg-plist	Thu Aug 21 11:35:47 2014	(r365547)
+++ head/textproc/apertium/pkg-plist	Thu Aug 21 11:46:24 2014	(r365548)
@@ -89,12 +89,55 @@ include/apertium-%%APVER%%/apertium/tsx_
 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
- at dirrm include/apertium-%%APVER%%/apertium
- at dirrm include/apertium-%%APVER%%
 @dirrm %%DATADIR%%/modes
 @dirrm %%DATADIR%%
+ at dirrm include/apertium-%%APVER%%/apertium
+ at dirrm include/apertium-%%APVER%%


More information about the svn-ports-all mailing list