Fixup fromcvs/togit conversion
[pkgsrcv2.git] / editors / xemacs-packages / Makefile
1 # $NetBSD: Makefile,v 1.56 2011/07/04 22:23:12 jym Exp $
2
3 DISTNAME=       xemacs-packages
4 PKGNAME=        xemacs-packages-1.16
5 PKGREVISION=    2
6
7 CATEGORIES=     editors
8 MASTER_SITES=   ${MASTER_SITE_XEMACS:=packages/}
9 DISTFILES=      \
10                 Sun-1.15-pkg.tar.gz \
11                 ada-1.14-pkg.tar.gz \
12                 apel-1.32-pkg.tar.gz \
13                 auctex-1.36-pkg.tar.gz \
14                 bbdb-1.24-pkg.tar.gz \
15                 build-1.14-pkg.tar.gz \
16                 c-support-1.19-pkg.tar.gz \
17                 calc-1.24-pkg.tar.gz \
18                 calendar-1.23-pkg.tar.gz \
19                 cc-mode-1.42-pkg.tar.gz \
20                 clearcase-1.08-pkg.tar.gz \
21                 cookie-1.15-pkg.tar.gz \
22                 crisp-1.14-pkg.tar.gz \
23                 debug-1.17-pkg.tar.gz \
24                 dictionary-1.12-pkg.tar.gz \
25                 dired-1.15-pkg.tar.gz \
26                 docbookide-0.07-pkg.tar.gz \
27                 ecb-1.14-pkg.tar.gz \
28                 ecrypto-0.16-pkg.tar.gz \
29                 edebug-1.20-pkg.tar.gz \
30                 edict-1.16-pkg.tar.gz \
31                 ediff-1.49-pkg.tar.gz \
32                 edit-utils-2.43-pkg.tar.gz \
33                 edt-1.13-pkg.tar.gz \
34                 efs-1.32-pkg.tar.gz \
35                 egg-its-1.27-pkg.tar.gz \
36                 eieio-1.05-pkg.tar.gz \
37                 elib-1.11-pkg.tar.gz \
38                 emerge-1.11-pkg.tar.gz \
39                 erc-0.05-pkg.tar.gz \
40                 eshell-1.06-pkg.tar.gz \
41                 ess-1.07-pkg.tar.gz \
42                 eterm-1.15-pkg.tar.gz \
43                 eudc-1.39-pkg.tar.gz \
44                 footnote-1.16-pkg.tar.gz \
45                 forms-1.15-pkg.tar.gz \
46                 fortran-modes-1.03-pkg.tar.gz \
47                 frame-icon-1.11-pkg.tar.gz \
48                 fsf-compat-1.14-pkg.tar.gz \
49                 games-1.15-pkg.tar.gz \
50                 general-docs-1.01-pkg.tar.gz \
51                 gnats-1.16-pkg.tar.gz \
52                 gnus-1.79-pkg.tar.gz \
53                 haskell-mode-1.06-pkg.tar.gz \
54                 hm--html-menus-1.23-pkg.tar.gz \
55                 hyperbole-1.15-pkg.tar.gz \
56                 ibuffer-1.09-pkg.tar.gz \
57                 idlwave-1.31-pkg.tar.gz \
58                 igrep-1.12-pkg.tar.gz \
59                 ilisp-1.33-pkg.tar.gz \
60                 ispell-1.29-pkg.tar.gz \
61                 jde-1.46-pkg.tar.gz \
62                 latin-unity-1.09-pkg.tar.gz \
63                 leim-1.22-pkg.tar.gz \
64                 liece-1.13-pkg.tar.gz \
65                 locale-1.21-pkg.tar.gz \
66                 lookup-1.14-pkg.tar.gz \
67                 mail-lib-1.64-pkg.tar.gz \
68                 mailcrypt-2.14-pkg.tar.gz \
69                 mew-1.18-pkg.tar.gz \
70                 mh-e-1.28-pkg.tar.gz \
71                 mine-1.16-pkg.tar.gz \
72                 misc-games-1.18-pkg.tar.gz \
73                 mmm-mode-1.01-pkg.tar.gz \
74                 mule-base-1.46-pkg.tar.gz \
75                 mule-ucs-1.05-pkg.tar.gz \
76                 net-utils-1.38-pkg.tar.gz \
77                 ocaml-0.05-pkg.tar.gz \
78                 oo-browser-1.04-pkg.tar.gz \
79                 os-utils-1.35-pkg.tar.gz \
80                 pc-1.26-pkg.tar.gz \
81                 pcl-cvs-1.65-pkg.tar.gz \
82                 pcomplete-1.03-pkg.tar.gz \
83                 perl-modes-1.05-pkg.tar.gz \
84                 pgg-1.04-pkg.tar.gz \
85                 prog-modes-1.94-pkg.tar.gz \
86                 ps-print-1.09-pkg.tar.gz \
87                 psgml-1.42-pkg.tar.gz \
88                 psgml-dtds-1.03-pkg.tar.gz \
89                 python-modes-1.03-pkg.tar.gz \
90                 reftex-1.33-pkg.tar.gz \
91                 riece-1.14-pkg.tar.gz \
92                 rmail-1.14-pkg.tar.gz \
93                 ruby-modes-1.02-pkg.tar.gz \
94                 sasl-1.14-pkg.tar.gz \
95                 scheme-1.14-pkg.tar.gz \
96                 semantic-1.18-pkg.tar.gz \
97                 sgml-1.11-pkg.tar.gz \
98                 sh-script-1.18-pkg.tar.gz \
99                 sieve-1.15-pkg.tar.gz \
100                 skk-1.23-pkg.tar.gz \
101                 slider-1.15-pkg.tar.gz \
102                 sml-mode-0.11-pkg.tar.gz \
103                 sounds-au-1.12-pkg.tar.gz \
104                 sounds-wav-1.12-pkg.tar.gz \
105                 speedbar-1.27-pkg.tar.gz \
106                 strokes-1.10-pkg.tar.gz \
107                 supercite-1.20-pkg.tar.gz \
108                 texinfo-1.25-pkg.tar.gz \
109                 text-modes-1.73-pkg.tar.gz \
110                 textools-1.15-pkg.tar.gz \
111                 time-1.14-pkg.tar.gz \
112                 tm-1.37-pkg.tar.gz \
113                 tooltalk-1.15-pkg.tar.gz \
114                 tpu-1.14-pkg.tar.gz \
115                 tramp-1.17-pkg.tar.gz \
116                 vc-1.38-pkg.tar.gz \
117                 vc-cc-1.22-pkg.tar.gz \
118                 vhdl-1.18-pkg.tar.gz \
119                 view-process-1.13-pkg.tar.gz \
120                 viper-1.37-pkg.tar.gz \
121                 vm-7.18-pkg.tar.gz \
122                 w3-1.29-pkg.tar.gz \
123                 x-symbol-1.09-pkg.tar.gz \
124                 xemacs-base-1.84-pkg.tar.gz \
125                 xemacs-devel-1.61-pkg.tar.gz \
126                 xslide-1.09-pkg.tar.gz \
127                 xslt-process-1.11-pkg.tar.gz \
128                 zenirc-1.15-pkg.tar.gz
129 ### DISTFILES
130
131 MAINTAINER=     pkgsrc-users@NetBSD.org
132 HOMEPAGE=       http://www.xemacs.org/
133 COMMENT=        Common elisp packages for xemacs 21
134
135 DEPENDS+=       xemacs{,-nox11}>=21.1.14:../../editors/xemacs
136
137 PKG_DESTDIR_SUPPORT=    destdir
138
139 WRKSRC=         ${WRKDIR}
140 DIST_SUBDIR=    ${PKGBASE}
141 EXTRACT_ONLY=   # empty
142 NO_BUILD=       yes
143
144 USE_TOOLS+=     printf gtar gawk
145
146 FONTS_DIRS.x11+=        ${PREFIX}/lib/xemacs/xemacs-packages/etc/x-symbol/fonts
147 FONTS_DIRS.x11+=        ${PREFIX}/lib/xemacs/xemacs-packages/etc/x-symbol/origfonts
148 FONTS_DIRS.x11+=        ${PREFIX}/lib/xemacs/xemacs-packages/etc/x-symbol/pcf
149 REQD_DIRS+=             ${PREFIX}/lib/xemacs/xemacs-packages/etc/x-symbol/fonts
150 REQD_DIRS+=             ${PREFIX}/lib/xemacs/xemacs-packages/etc/x-symbol/origfonts
151 REQD_DIRS+=             ${PREFIX}/lib/xemacs/xemacs-packages/etc/x-symbol/pcf
152 # we have to put them here, because the ones above are removed after the PLIST entries
153 REQD_DIRS+=             ${PREFIX}/lib/xemacs/xemacs-packages/etc/x-symbol
154 REQD_DIRS+=             ${PREFIX}/lib/xemacs/xemacs-packages/etc
155 REQD_DIRS+=             ${PREFIX}/lib/xemacs/xemacs-packages
156
157 REPLACEMENTS.perl=      ${PREFIX}/lib/xemacs/xemacs-packages/etc/bbdb/bbdb-areacode-split.pl
158 REPLACEMENTS.perl+=     ${PREFIX}/lib/xemacs/xemacs-packages/etc/bbdb/bbdb-cid.pl
159 REPLACEMENTS.perl+=     ${PREFIX}/lib/xemacs/xemacs-packages/etc/bbdb/bbdb-srv.pl
160 REPLACEMENTS.perl+=     ${PREFIX}/lib/xemacs/xemacs-packages/etc/bbdb/bbdb-unlazy-lock.pl
161 REPLACEMENTS.perl+=     ${PREFIX}/lib/xemacs/xemacs-packages/etc/erc/servers.pl
162 REPLACEMENTS.perl+=     ${PREFIX}/lib/xemacs/xemacs-packages/etc/idlwave/idlwave_catalog
163 REPLACEMENTS.perl+=     ${PREFIX}/lib/xemacs/xemacs-packages/etc/x-symbol/fonts/makesub
164 REPLACEMENTS.perl+=     ${PREFIX}/lib/xemacs/xemacs-packages/lisp/hyperbole/file-newer
165
166 REPLACEMENTS.python+=   ${PREFIX}/lib/xemacs/xemacs-packages/lisp/python-modes/pydoc_lisp.py
167
168 REPLACEMENTS.zsh=       ${PREFIX}/lib/xemacs/xemacs-packages/lisp/erc/mkChangeLog.upstream
169
170 REPLACEMENT_PROGS=      perl python zsh
171
172 .include "../../editors/xemacs/Makefile.pkg"
173
174 .if defined(MANZ)
175 PLIST_SUBST+=   ELSUFX=.gz
176 .else
177 PLIST_SUBST+=   ELSUFX=
178 .endif
179
180 # XXX For package maintainance
181 #
182 # Usage: run `make PKG_DEVELOPER=1 xemacs-update-package'.  Makefile.work is
183 # generated.  If any package is updated, bump this package version, and commit.
184 .include "../../mk/bsd.prefs.mk"
185 .if defined(PKG_DEVELOPER) && ${OPSYS} == "NetBSD"
186 ED=     /bin/ed
187 FTP=    /usr/bin/ftp
188
189 # Make a list of packages from a directory list output
190 .PHONY: xemacs-make-package-list
191 xemacs-fetch-package-list:
192         @${ECHO} ls | ${FTP} ftp://ftp.xemacs.org/pub/xemacs/packages/ | \
193         ${AWK} '/-pkg\.tar\.gz/ { print $$9; }' \
194                 >${PKGDIR}/packages.list
195
196 # Merge package list data into Makefile
197 .PHONY: xemacs-merge-package-list
198 xemacs-merge-package-list:
199         { \
200                 ${SED} '/^DISTFILES/q' ${PKGDIR}/Makefile; \
201                 ${SED} 's|^|            |' ${PKGDIR}/packages.list; \
202                 ${SED} -n '/^### DISTFILES/,$$p' ${PKGDIR}/Makefile; \
203         } >${PKGDIR}/Makefile.work
204         { \
205                 ${PRINTF} '/^DISTFILES\n+1\nka\n/^### DISTFILES\n-2\nkb\n'; \
206                 ${PRINTF} "'a,'b"'s/$$/ \\\\/\nw\nq\n'; \
207         } | ${ED} - ${PKGDIR}/Makefile.work
208
209 .PHONY: xemacs-update-package
210 xemacs-update-package: xemacs-fetch-package-list xemacs-merge-package-list
211 .endif  # PKG_DEVELOPER && OPSYS == "NetBSD"
212
213 do-install:
214         ${INSTALL_DATA_DIR} ${DESTDIR}${PREFIX}/lib/xemacs/xemacs-packages
215 .for DISTFILE in ${DISTFILES}
216         @${ECHO_MSG} -n "Extracting ${DISTFILE} ... "
217         ${GTAR} xCzf ${DESTDIR}${PREFIX}/lib/xemacs/xemacs-packages \
218                 ${DISTDIR}/${DIST_SUBDIR}/${DISTFILE}
219         @${ECHO_MSG} "done"
220 .endfor
221         @${ECHO_MSG} -n "Fixing file ownerships ... "
222         ${CHOWN} -R ${BINOWN}:${BINGRP} \
223                 ${DESTDIR}${PREFIX}/lib/xemacs/xemacs-packages
224         @${ECHO_MSG} "done"
225         @${ECHO_MSG} -n "Fixing file permissions ... "
226         ${CHMOD} -R g-w,o-w ${DESTDIR}${PREFIX}/lib/xemacs/xemacs-packages
227         @${ECHO_MSG} "done"
228 .for PROG in ${REPLACEMENT_PROGS}
229         @${ECHO_MSG} "Fixing ${PROG} paths"
230         for f in ${REPLACEMENTS.${PROG}}; do                    \
231                 cp ${DESTDIR}$$f ${DESTDIR}$$f.pre;             \
232                 ${SED} -e 's|#!.*${PROG}|${PREFIX}/bin/${PROG}|'        \
233                         ${DESTDIR}$$f.pre > ${DESTDIR}$$f;      \
234                 rm ${DESTDIR}$$f.pre;                           \
235         done
236 .endfor
237 .if defined(MANZ)
238         @${ECHO_MSG} -n "Compressing \".el\" files ... "
239         cd ${DESTDIR}${PREFIX} && \
240                 ${GREP} '\$${ELSUFX}$$' ${PLIST_SRC} | \
241                 ${SED} -e 's#\$${ELSUFX}$$##' | \
242                 ${XARGS} ${GZIP_CMD}
243         @${ECHO_MSG} "done"
244 .endif
245
246 .include "../../mk/bsd.pkg.mk"