aboutsummaryrefslogtreecommitdiff
path: root/textproc/aspell/Makefile
blob: 5b44625e01d42366b112b80e1e9cf548a1270dfd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
# New ports collection makefile for:	aspell
# Date created:				7 December 1998
# Whom:					Josh Gilliam <josh@quick.net>
#
# $FreeBSD$
#

PORTNAME?=	aspell
PORTVERSION=	0.60.1
CATEGORIES+=	textproc
MASTER_SITES=	${MASTER_SITE_GNU}
MASTER_SITE_SUBDIR=	aspell
DISTFILES=	aspell-0.60.1.tar.gz	# needed for slave ports / options
EXTRACT_ONLY=	aspell-0.60.1.tar.gz

MAINTAINER?=	thierry@FreeBSD.org
COMMENT?=	Spelling checker with better suggestion logic than ispell

.if !exists(/usr/bin/bzip2)
BUILD_DEPENDS+=	bzip2:${PORTSDIR}/archivers/bzip2
.endif

USE_LIBTOOL_VER=	15
CONFIGURE_TARGET=	--build=${ARCH}-portbld-freebsd${OSREL}
CONFIGURE_ARGS=		--enable-dict-dir=${DATADIR}	\
			--enable-docdir=${DOCSDIR}	\
			--enable-static
PTHREAD_CFLAGS=		# Disable threading
PTHREAD_LIBS=		# libaspell may be used by unthreaded apps.
CONFIGURE_ENV=		CPPFLAGS="-I${LOCALBASE}/include ${PTHREAD_CFLAGS}"	\
			LDFLAGS="-L${LOCALBASE}/lib ${LDFLAGS} ${PTHREAD_LIBS}"
USE_GMAKE=		yes
USE_ICONV=		yes
USE_GETTEXT=		yes
USE_PERL5_BUILD=	yes
INSTALLS_SHLIB=		yes

MAKE_ARGS=		NOPORTDOCS=${NOPORTDOCS}
PLIST_SUB=		VER=${PORTVERSION:R}

.if defined(WITH_ISPELL)
CONFLICTS=		ispell* ??-ispell*
SCRIPTS=		ispell spell
PLIST_SUB+=		SCRIPTS=""
.else
PLIST_SUB+=		SCRIPTS="@comment "
.endif

.if defined(WITHOUT_NLS)
CONFIGURE_ARGS+=	--disable-nls
PLIST_SUB+=		NLS="@comment "
.else
PLIST_SUB+=		NLS=""
.endif

.if !defined(NOPORTDOCS)
MAN1=			aspell-import.1 aspell.1 pspell-config.1	\
			run-with-aspell.1 word-list-compress.1
INFO=			aspell-dev aspell
.endif

# Does not link without at least -O
.if !defined(CFLAGS) || ${CFLAGS:M-O*} == ""
CFLAGS+=		-O
.endif

WRKSRC=		${WRKDIR}/aspell-${PORTVERSION}	# needed for slave ports / options
DOCSDIR=	${PREFIX}/share/doc/aspell
DATADIR=	${PREFIX}/share/aspell
DESCR=		${.CURDIR}/pkg-descr

CONF_DICT_ENV=	ASPELL="${PREFIX}/bin/aspell"	\
		WORD_LIST_COMPRESS="${PREFIX}/bin/word-list-compress"
AVAIL_DICT=	af az be bg bn br ca cs cy da de de-alt el en eo es et fa fi fo fr \
		ga gd gl gv he hr hsb hu ia id is it la lt lv mi mk mn ms mt nb nl \
		nn ny pl pt qu ro ru rw sc sk sl sv sw ta tet tl tn tr uk uz vi wa \
		yi zu
DICT_SUFFIX=	.tar.bz2

.include <bsd.port.pre.mk>
.include "${FILESDIR}/verdict"

.if exists(${LOCALBASE}/include/ncurses/ncurses.h)
WITH_NCURSES=	yes
.endif
.if defined(WITH_NCURSES)
BUILD_DEPENDS+=	${LOCALBASE}/lib/libncurses.so.5.4:${PORTSDIR}/devel/ncurses
RUN_DEPENDS+=	${LOCALBASE}/lib/libncurses.so.5.4:${PORTSDIR}/devel/ncurses
CONFIGURE_ARGS+=--enable-curses=${LOCALBASE}/lib/libncurses.so			\
		--enable-curses-include=${LOCALBASE}/include
.else
CONFIGURE_ARGS+=--disable-curses # Curses implementation on FreeBSD is outdated!
.endif

.if defined(LANG)
. for i in ${AVAIL_DICT} no
.  if ${LANG:M${i}*} != ""
DEF_DICT=	${i}
.  endif
. endfor
. if defined(DEF_DICT) && ${DEF_DICT} == no
DEF_DICT=	nn
. endif
.endif
DEF_DICT?=	en

pre-everything::
.if defined(ASPELL_NO)
ASPELL_NN=	yes
.endif
.if defined(WITH_ALL_DICTS)
. for LG in ${AVAIL_DICT}
ASPELL_${LG:U}=	yes
. endfor
.endif
.for LG in ${AVAIL_DICT}
. if defined(ASPELL_${LG:U})
DICTS+=		${LG}
. endif
.endfor
.if !defined(DICTS)
	@${ECHO_MSG} '*********************************************************'
	@${ECHO_MSG} '* You can add further dictionaries:                     *'
	@${ECHO_MSG} '*                                 Use make-flag:        *'
	@${ECHO_MSG} '*  - Afrikaans                    ASPELL_AF=yes         *'
	@${ECHO_MSG} '*  - Azerbaijani                  ASPELL_AZ=yes         *'
	@${ECHO_MSG} '*  - Belarusian                   ASPELL_BE=yes         *'
	@${ECHO_MSG} '*  - Bengali                      ASPELL_BN=yes         *'
	@${ECHO_MSG} '*  - Bulgarian                    ASPELL_BG=yes         *'
	@${ECHO_MSG} '*  - Breton                       ASPELL_BR=yes         *'
	@${ECHO_MSG} '*  - Catalan / Valencian          ASPELL_CA=yes         *'
	@${ECHO_MSG} '*  - Croatian                     ASPELL_HR=yes         *'
	@${ECHO_MSG} '*  - Czech                        ASPELL_CS=yes         *'
	@${ECHO_MSG} '*  - Danish                       ASPELL_DA=yes         *'
	@${ECHO_MSG} '*  - Dutch                        ASPELL_NL=yes         *'
	@${ECHO_MSG} '*  - English                      ASPELL_EN=yes         *'
	@${ECHO_MSG} '*  - Esperanto                    ASPELL_EO=yes         *'
	@${ECHO_MSG} '*  - Estonian                     ASPELL_ET=yes         *'
	@${ECHO_MSG} '*  - Faroese                      ASPELL_FO=yes         *'
	@${ECHO_MSG} '*  - Finnish                      ASPELL_FI=yes         *'
	@${ECHO_MSG} '*  - French                       ASPELL_FR=yes         *'
	@${ECHO_MSG} '*  - Galician                     ASPELL_GL=yes         *'
	@${ECHO_MSG} '*  - German                       ASPELL_DE=yes         *'
	@${ECHO_MSG} '*  - German (orig spelling rules) ASPELL_DE-ALT=yes     *'
	@${ECHO_MSG} '*  - Greek                        ASPELL_EL=yes         *'
	@${ECHO_MSG} '*  - Hebrew                       ASPELL_HE=yes         *'
	@${ECHO_MSG} '*  - Hungarian                    ASPELL_HU=yes         *'
	@${ECHO_MSG} '*  - Icelandic                    ASPELL_IS=yes         *'
	@${ECHO_MSG} '*  - Indonesian                   ASPELL_ID=yes         *'
	@${ECHO_MSG} '*  - Interlingua                  ASPELL_IA=yes         *'
	@${ECHO_MSG} '*  - Irish (Gaelic)               ASPELL_GA=yes         *'
	@${ECHO_MSG} '*  - Italian                      ASPELL_IT=yes         *'
	@${ECHO_MSG} '*  - Kinyarwanda                  ASPELL_RW=yes         *'
	@${ECHO_MSG} '*  - Latin                        ASPELL_LA=yes         *'
	@${ECHO_MSG} '*  - Latvian                      ASPELL_LV=yes         *'
	@${ECHO_MSG} '*  - Lithuanian                   ASPELL_LT=yes         *'
	@${ECHO_MSG} '*  - Macedonian                   ASPELL_MK=yes         *'
	@${ECHO_MSG} '*  - Maori                        ASPELL_MI=yes         *'
	@${ECHO_MSG} '*  - Malay                        ASPELL_MS=yes         *'
	@${ECHO_MSG} '*  - Maltese                      ASPELL_MT=yes         *'
	@${ECHO_MSG} '*  - Manx Gaelic                  ASPELL_GV=yes         *'
	@${ECHO_MSG} '*  - Mongolian                    ASPELL_MN=yes         *'
	@${ECHO_MSG} '*  - Norwegian Bokmal             ASPELL_NB=yes         *'
	@${ECHO_MSG} '*  - Norwegian Nynorsk            ASPELL_NN=yes         *'
	@${ECHO_MSG} '*  - Nyanja (Chichewa)            ASPELL_NY=yes         *'
	@${ECHO_MSG} '*  - Persian (Farsi)              ASPELL_FA=yes         *'
	@${ECHO_MSG} '*  - Polish                       ASPELL_PL=yes         *'
	@${ECHO_MSG} '*  - Portuguese                   ASPELL_PT=yes         *'
	@${ECHO_MSG} '*  - Quechua                      ASPELL_QU=yes         *'
	@${ECHO_MSG} '*  - Romanian                     ASPELL_RO=yes         *'
	@${ECHO_MSG} '*  - Russian                      ASPELL_RU=yes         *'
	@${ECHO_MSG} '*  - Sardinian                    ASPELL_SC=yes         *'
	@${ECHO_MSG} '*  - Scottish Gaelic              ASPELL_GD=yes         *'
	@${ECHO_MSG} '*  - Slovak                       ASPELL_SK=yes         *'
	@${ECHO_MSG} '*  - Slovenian                    ASPELL_SL=yes         *'
	@${ECHO_MSG} '*  - Swahili                      ASPELL_SW=yes         *'
	@${ECHO_MSG} '*  - Spanish                      ASPELL_ES=yes         *'
	@${ECHO_MSG} '*  - Swedish                      ASPELL_SV=yes         *'
	@${ECHO_MSG} '*  - Tagalog                      ASPELL_TL=yes         *'
	@${ECHO_MSG} '*  - Tamil                        ASPELL_TA=yes         *'
	@${ECHO_MSG} '*  - Tetum                        ASPELL_TET=yes        *'
	@${ECHO_MSG} '*  - Tswana                       ASPELL_TN=yes         *'
	@${ECHO_MSG} '*  - Turkish                      ASPELL_TR=yes         *'
	@${ECHO_MSG} '*  - Ukrainian                    ASPELL_UK=yes         *'
	@${ECHO_MSG} '*  - Upper Sorbian                ASPELL_HSB=yes        *'
	@${ECHO_MSG} '*  - Uzbek                        ASPELL_UZ=yes         *'
	@${ECHO_MSG} '*  - Vietnamese                   ASPELL_VI=yes         *'
	@${ECHO_MSG} '*  - Walloon                      ASPELL_WA=yes         *'
	@${ECHO_MSG} '*  - Welsh                        ASPELL_CY=yes         *'
	@${ECHO_MSG} '*  - Yiddish                      ASPELL_YI=yes         *'
	@${ECHO_MSG} '*  - Zulu                         ASPELL_ZU=yes         *'
	@${ECHO_MSG} '*                                                       *'
	@${ECHO_MSG} '* Example: "make ASPELL_FR=yes ASPELL_EN=yes install"   *'
	@${ECHO_MSG} '*                                                       *'
	@${ECHO_MSG} '* Define WITH_NCURSES to get the full screen interface. *'
	@${ECHO_MSG} '*********************************************************'
. for LG in ${AVAIL_DICT}
.  if (${DEF_DICT} == ${LG})
DICTS=	${LG}
.  endif
. endfor
.endif

.for DICO in ${DICTS}
MASTER_SITES+=	ftp://ftp.gnu.org/gnu/aspell/dict/${DICO:S/-alt//}/:dict${DICO:S/-//}
DISTFILES+=	aspell${VERDICT_${DICO:U}}${DICT_SUFFIX}:dict${DICO:S/-//}
.endfor

post-extract:
.for DICO in ${DICTS}
	@cd ${WRKDIR} && \
	 ${TAR} -xjf ${DISTDIR}/aspell${VERDICT_${DICO:U}}${DICT_SUFFIX}
.endfor

pre-configure:
	@cd ${WRKSRC} && ${ACLOCAL}

post-install:
.for DICO in ${DICTS}
	@${ECHO_MSG} "===>   Installing for ${DICO} dictionaries"
	@cd ${WRKDIR}/aspell${VERDICT_${DICO:U}} &&	\
	 ${CONF_DICT_ENV} ./${CONFIGURE_SCRIPT} &&		\
	 ${GMAKE} install
	@${SED} -e "s|%%VER%%|${PORTVERSION:R}|" ${MASTERDIR}/pkg-plist.${DICO}	\
		>> ${TMPPLIST}
.endfor
	@${ECHO_CMD} "@dirrm share/aspell" >> ${TMPPLIST}
	@${ECHO_CMD} "@dirrm lib/aspell-${PORTVERSION:R}" >> ${TMPPLIST}
.if defined(WITH_ISPELL)
	${INSTALL_SCRIPT} ${SCRIPTS:S|^|${WRKSRC}/scripts/|} ${PREFIX}/bin
.endif

.include <bsd.port.post.mk>