aboutsummaryrefslogtreecommitdiffstats
path: root/editors
diff options
context:
space:
mode:
authorshige <shige@FreeBSD.org>1999-09-11 03:07:08 +0800
committershige <shige@FreeBSD.org>1999-09-11 03:07:08 +0800
commitb9328e25f539e8318618ee6e97206daa23251e70 (patch)
treed735c6e3d17c0bc42d4b8a47a7c1d1920998ab26 /editors
parent3e6884899651e6459b1d5d7a520c56b7fff7f36d (diff)
downloadfreebsd-ports-gnome-b9328e25f539e8318618ee6e97206daa23251e70.tar.gz
freebsd-ports-gnome-b9328e25f539e8318618ee6e97206daa23251e70.tar.zst
freebsd-ports-gnome-b9328e25f539e8318618ee6e97206daa23251e70.zip
Fix for xemacs-21.1.6.
flim-current/semi-current/wemi-current should be compatible with xemacs-packages on xemacs-21.x.
Diffstat (limited to 'editors')
-rw-r--r--editors/flim-emacs-current/Makefile104
-rw-r--r--editors/flim-xemacs21-mule-current/Makefile13
-rw-r--r--editors/flim-xemacs21-mule-current/pkg-descr2
-rw-r--r--editors/flim-xemacs21-mule-current/pkg-plist100
-rw-r--r--editors/flim/Makefile104
-rw-r--r--editors/flim113-emacs/Makefile104
-rw-r--r--editors/flim113-xemacs21-mule/Makefile13
-rw-r--r--editors/flim113-xemacs21-mule/pkg-descr2
-rw-r--r--editors/flim113-xemacs21-mule/pkg-plist100
-rw-r--r--editors/flim113/Makefile104
-rw-r--r--editors/flim113/pkg-descr.xemacs21-mule2
-rw-r--r--editors/flim113/pkg-plist.xemacs21-mule100
-rw-r--r--editors/flim114-emacs20/Makefile104
-rw-r--r--editors/semi-emacs-current/Makefile102
-rw-r--r--editors/semi-xemacs21-mule-current/Makefile13
-rw-r--r--editors/semi-xemacs21-mule-current/pkg-descr2
-rw-r--r--editors/semi-xemacs21-mule-current/pkg-plist81
-rw-r--r--editors/semi/Makefile102
-rw-r--r--editors/semi113-emacs/Makefile102
-rw-r--r--editors/semi113-xemacs21-mule/Makefile13
-rw-r--r--editors/semi113-xemacs21-mule/pkg-descr2
-rw-r--r--editors/semi113-xemacs21-mule/pkg-plist81
-rw-r--r--editors/semi113/Makefile102
-rw-r--r--editors/semi113/pkg-descr.xemacs21-mule2
-rw-r--r--editors/semi113/pkg-plist.xemacs21-mule81
-rw-r--r--editors/semi114-emacs20/Makefile102
-rw-r--r--editors/wemi-emacs-current/Makefile103
-rw-r--r--editors/wemi-xemacs21-mule-current/Makefile13
-rw-r--r--editors/wemi-xemacs21-mule-current/pkg-descr2
-rw-r--r--editors/wemi-xemacs21-mule-current/pkg-plist81
30 files changed, 1221 insertions, 615 deletions
diff --git a/editors/flim-emacs-current/Makefile b/editors/flim-emacs-current/Makefile
index 7ec041e47b2b..9f16d10ebea9 100644
--- a/editors/flim-emacs-current/Makefile
+++ b/editors/flim-emacs-current/Makefile
@@ -16,8 +16,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
-FLIMDOCDIR= share/doc/flim
+# setupel filename
FLIM_SETUPEL= flim-setupel.el
+# document install directory by install-doc target
+FLIMDOCDIR?= share/doc/flim
.if (${PORTCLASS} == "master")
# for emacs
@@ -33,15 +35,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= flim-${EMACS_PORT}-${FLIM_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -51,21 +44,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${FLIM_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
FLIMDOCDIR=${FLIMDOCDIR} FLIM_SETUPEL=${FLIM_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
-# depends on apel
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
+# depends on apel (case of other emacsen etc...)
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on mmencode
.if (${EMACS_NAME} != "xemacs")
RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
@@ -80,40 +81,89 @@ RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${FLIM_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
+
post-build:
+ @${MAKE} info-build
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+# install functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-en.texi mime-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-en.info mime-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${FLIMDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog README.* NEWS VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${FLIMDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
+
.include <bsd.port.post.mk>
diff --git a/editors/flim-xemacs21-mule-current/Makefile b/editors/flim-xemacs21-mule-current/Makefile
index c0b86ecfa595..0f8449b6984b 100644
--- a/editors/flim-xemacs21-mule-current/Makefile
+++ b/editors/flim-xemacs21-mule-current/Makefile
@@ -17,9 +17,11 @@ MASTERDIR= ${.CURDIR}/../../editors/flim-emacs-current
EMACS_NAME= xemacs
EMACS_PORT= xemacs-mule
EMACS_VER= 21.1.6
-EMACS_LIBDIR= lib/${EMACS_NAME}-${EMACS_VER}
-# xemacs-mule-21.1.6 has no version specific site-lisp directories.
-EMACS_LIBDIR_WITH_VER= ${EMACS_LIBDIR}
+EMACS_PACKAGESDIR= lib/${EMACS_NAME}/${EMACS_NAME}-packages
+
+# how to make and install
+ALL_TARGET= package
+INSTALL_TARGET= install-package
# RUN_DEPENDS port name's suffix is '-common'.
HAVE_COMMON_PORT= YES
@@ -27,4 +29,9 @@ HAVE_COMMON_PORT= YES
# use pkg/* files in ${.CURDIR}
PKGDIR= ${.CURDIR}/pkg
+# package info manifest
+MANIFEST= MANIFEST.flim
+# package documents
+FLIMDOCDIR= ${EMACS_PACKAGESDIR}/lisp/flim
+
.include <${MASTERDIR}/Makefile>
diff --git a/editors/flim-xemacs21-mule-current/pkg-descr b/editors/flim-xemacs21-mule-current/pkg-descr
index 4de45aa43cd7..a406f8b715bf 100644
--- a/editors/flim-xemacs21-mule-current/pkg-descr
+++ b/editors/flim-xemacs21-mule-current/pkg-descr
@@ -8,6 +8,6 @@ FLIM, message representation or encoding emacs lisp library for xemacs-mule.
- mailcap parser and utility
FLIM is installed the following directory tree:
- ${PREFIX}/lib/xemacs-20.4/site-lisp/flim/ --- FLIM
+ ${PREFIX}/lib/xemacs/xemacs-packages/lisp/flim/ --- FLIM
--- Porting by shige <shige@FreeBSD.ORG>
diff --git a/editors/flim-xemacs21-mule-current/pkg-plist b/editors/flim-xemacs21-mule-current/pkg-plist
index c651ddbe605b..c93f49180830 100644
--- a/editors/flim-xemacs21-mule-current/pkg-plist
+++ b/editors/flim-xemacs21-mule-current/pkg-plist
@@ -1,47 +1,53 @@
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-decode.el
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-decode.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-encode.el
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-encode.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mailcap.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mailcap.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-b-el.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-b-el.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-g.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-g.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-q.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-q.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-u.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-u.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-def.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-def.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-parse.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-parse.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmbuffer.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmbuffer.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmcooked.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmcooked.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmgeneric.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmgeneric.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/std11.el
-%%EMACS_LIBDIR%%/site-lisp/flim/std11.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/smtp.el
-%%EMACS_LIBDIR%%/site-lisp/flim/smtp.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/smtpmail.el
-%%EMACS_LIBDIR%%/site-lisp/flim/smtpmail.elc
-@dirrm %%EMACS_LIBDIR%%/site-lisp/flim
-%%FLIMDOCDIR%%/ChangeLog
-%%FLIMDOCDIR%%/NEWS
-%%FLIMDOCDIR%%/README.en
-%%FLIMDOCDIR%%/README.ja
-%%FLIMDOCDIR%%/VERSION
-@dirrm %%FLIMDOCDIR%%
-@unexec install-info --delete %D/info/mime-en.info %D/info/dir
-@unexec install-info --delete %D/info/mime-ja.info %D/info/dir
-info/mime-en.info
-info/mime-ja.info
-@exec install-info %D/info/mime-en.info %D/info/dir
-@exec install-info %D/info/mime-ja.info %D/info/dir
+%%EMACS_PACKAGESDIR%%/lisp/flim/ChangeLog
+%%EMACS_PACKAGESDIR%%/lisp/flim/NEWS
+%%EMACS_PACKAGESDIR%%/lisp/flim/README.en
+%%EMACS_PACKAGESDIR%%/lisp/flim/README.ja
+%%EMACS_PACKAGESDIR%%/lisp/flim/VERSION
+%%EMACS_PACKAGESDIR%%/lisp/flim/auto-autoloads.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/auto-autoloads.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/custom-load.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/custom-load.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-decode.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-decode.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-encode.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-encode.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mailcap.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mailcap.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-ccl.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-ccl.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-el.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-el.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-g.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-g.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q-ccl.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q-ccl.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-u.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-u.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-def.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-def.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-parse.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-parse.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmbuffer.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmbuffer.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmcooked.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmcooked.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmgeneric.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmgeneric.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/std11.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/std11.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtp.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtp.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtpmail.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtpmail.elc
+@dirrm %%EMACS_PACKAGESDIR%%/lisp/flim
+%%EMACS_PACKAGESDIR%%/info/mime-en.info
+%%EMACS_PACKAGESDIR%%/info/mime-ja.info
+%%EMACS_PACKAGESDIR%%/man/flim/mime-en.texi
+%%EMACS_PACKAGESDIR%%/man/flim/mime-ja.texi
+@dirrm %%EMACS_PACKAGESDIR%%/man/flim
diff --git a/editors/flim/Makefile b/editors/flim/Makefile
index 7ec041e47b2b..9f16d10ebea9 100644
--- a/editors/flim/Makefile
+++ b/editors/flim/Makefile
@@ -16,8 +16,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
-FLIMDOCDIR= share/doc/flim
+# setupel filename
FLIM_SETUPEL= flim-setupel.el
+# document install directory by install-doc target
+FLIMDOCDIR?= share/doc/flim
.if (${PORTCLASS} == "master")
# for emacs
@@ -33,15 +35,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= flim-${EMACS_PORT}-${FLIM_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -51,21 +44,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${FLIM_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
FLIMDOCDIR=${FLIMDOCDIR} FLIM_SETUPEL=${FLIM_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
-# depends on apel
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
+# depends on apel (case of other emacsen etc...)
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on mmencode
.if (${EMACS_NAME} != "xemacs")
RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
@@ -80,40 +81,89 @@ RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${FLIM_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
+
post-build:
+ @${MAKE} info-build
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+# install functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-en.texi mime-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-en.info mime-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${FLIMDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog README.* NEWS VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${FLIMDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
+
.include <bsd.port.post.mk>
diff --git a/editors/flim113-emacs/Makefile b/editors/flim113-emacs/Makefile
index 7ec041e47b2b..9f16d10ebea9 100644
--- a/editors/flim113-emacs/Makefile
+++ b/editors/flim113-emacs/Makefile
@@ -16,8 +16,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
-FLIMDOCDIR= share/doc/flim
+# setupel filename
FLIM_SETUPEL= flim-setupel.el
+# document install directory by install-doc target
+FLIMDOCDIR?= share/doc/flim
.if (${PORTCLASS} == "master")
# for emacs
@@ -33,15 +35,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= flim-${EMACS_PORT}-${FLIM_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -51,21 +44,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${FLIM_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
FLIMDOCDIR=${FLIMDOCDIR} FLIM_SETUPEL=${FLIM_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
-# depends on apel
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
+# depends on apel (case of other emacsen etc...)
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on mmencode
.if (${EMACS_NAME} != "xemacs")
RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
@@ -80,40 +81,89 @@ RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${FLIM_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
+
post-build:
+ @${MAKE} info-build
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+# install functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-en.texi mime-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-en.info mime-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${FLIMDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog README.* NEWS VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${FLIMDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
+
.include <bsd.port.post.mk>
diff --git a/editors/flim113-xemacs21-mule/Makefile b/editors/flim113-xemacs21-mule/Makefile
index c0b86ecfa595..0f8449b6984b 100644
--- a/editors/flim113-xemacs21-mule/Makefile
+++ b/editors/flim113-xemacs21-mule/Makefile
@@ -17,9 +17,11 @@ MASTERDIR= ${.CURDIR}/../../editors/flim-emacs-current
EMACS_NAME= xemacs
EMACS_PORT= xemacs-mule
EMACS_VER= 21.1.6
-EMACS_LIBDIR= lib/${EMACS_NAME}-${EMACS_VER}
-# xemacs-mule-21.1.6 has no version specific site-lisp directories.
-EMACS_LIBDIR_WITH_VER= ${EMACS_LIBDIR}
+EMACS_PACKAGESDIR= lib/${EMACS_NAME}/${EMACS_NAME}-packages
+
+# how to make and install
+ALL_TARGET= package
+INSTALL_TARGET= install-package
# RUN_DEPENDS port name's suffix is '-common'.
HAVE_COMMON_PORT= YES
@@ -27,4 +29,9 @@ HAVE_COMMON_PORT= YES
# use pkg/* files in ${.CURDIR}
PKGDIR= ${.CURDIR}/pkg
+# package info manifest
+MANIFEST= MANIFEST.flim
+# package documents
+FLIMDOCDIR= ${EMACS_PACKAGESDIR}/lisp/flim
+
.include <${MASTERDIR}/Makefile>
diff --git a/editors/flim113-xemacs21-mule/pkg-descr b/editors/flim113-xemacs21-mule/pkg-descr
index 4de45aa43cd7..a406f8b715bf 100644
--- a/editors/flim113-xemacs21-mule/pkg-descr
+++ b/editors/flim113-xemacs21-mule/pkg-descr
@@ -8,6 +8,6 @@ FLIM, message representation or encoding emacs lisp library for xemacs-mule.
- mailcap parser and utility
FLIM is installed the following directory tree:
- ${PREFIX}/lib/xemacs-20.4/site-lisp/flim/ --- FLIM
+ ${PREFIX}/lib/xemacs/xemacs-packages/lisp/flim/ --- FLIM
--- Porting by shige <shige@FreeBSD.ORG>
diff --git a/editors/flim113-xemacs21-mule/pkg-plist b/editors/flim113-xemacs21-mule/pkg-plist
index c651ddbe605b..c93f49180830 100644
--- a/editors/flim113-xemacs21-mule/pkg-plist
+++ b/editors/flim113-xemacs21-mule/pkg-plist
@@ -1,47 +1,53 @@
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-decode.el
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-decode.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-encode.el
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-encode.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mailcap.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mailcap.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-b-el.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-b-el.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-g.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-g.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-q.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-q.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-u.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-u.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-def.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-def.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-parse.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-parse.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmbuffer.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmbuffer.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmcooked.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmcooked.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmgeneric.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmgeneric.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/std11.el
-%%EMACS_LIBDIR%%/site-lisp/flim/std11.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/smtp.el
-%%EMACS_LIBDIR%%/site-lisp/flim/smtp.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/smtpmail.el
-%%EMACS_LIBDIR%%/site-lisp/flim/smtpmail.elc
-@dirrm %%EMACS_LIBDIR%%/site-lisp/flim
-%%FLIMDOCDIR%%/ChangeLog
-%%FLIMDOCDIR%%/NEWS
-%%FLIMDOCDIR%%/README.en
-%%FLIMDOCDIR%%/README.ja
-%%FLIMDOCDIR%%/VERSION
-@dirrm %%FLIMDOCDIR%%
-@unexec install-info --delete %D/info/mime-en.info %D/info/dir
-@unexec install-info --delete %D/info/mime-ja.info %D/info/dir
-info/mime-en.info
-info/mime-ja.info
-@exec install-info %D/info/mime-en.info %D/info/dir
-@exec install-info %D/info/mime-ja.info %D/info/dir
+%%EMACS_PACKAGESDIR%%/lisp/flim/ChangeLog
+%%EMACS_PACKAGESDIR%%/lisp/flim/NEWS
+%%EMACS_PACKAGESDIR%%/lisp/flim/README.en
+%%EMACS_PACKAGESDIR%%/lisp/flim/README.ja
+%%EMACS_PACKAGESDIR%%/lisp/flim/VERSION
+%%EMACS_PACKAGESDIR%%/lisp/flim/auto-autoloads.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/auto-autoloads.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/custom-load.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/custom-load.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-decode.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-decode.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-encode.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-encode.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mailcap.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mailcap.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-ccl.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-ccl.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-el.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-el.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-g.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-g.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q-ccl.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q-ccl.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-u.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-u.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-def.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-def.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-parse.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-parse.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmbuffer.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmbuffer.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmcooked.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmcooked.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmgeneric.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmgeneric.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/std11.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/std11.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtp.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtp.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtpmail.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtpmail.elc
+@dirrm %%EMACS_PACKAGESDIR%%/lisp/flim
+%%EMACS_PACKAGESDIR%%/info/mime-en.info
+%%EMACS_PACKAGESDIR%%/info/mime-ja.info
+%%EMACS_PACKAGESDIR%%/man/flim/mime-en.texi
+%%EMACS_PACKAGESDIR%%/man/flim/mime-ja.texi
+@dirrm %%EMACS_PACKAGESDIR%%/man/flim
diff --git a/editors/flim113/Makefile b/editors/flim113/Makefile
index 7ec041e47b2b..9f16d10ebea9 100644
--- a/editors/flim113/Makefile
+++ b/editors/flim113/Makefile
@@ -16,8 +16,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
-FLIMDOCDIR= share/doc/flim
+# setupel filename
FLIM_SETUPEL= flim-setupel.el
+# document install directory by install-doc target
+FLIMDOCDIR?= share/doc/flim
.if (${PORTCLASS} == "master")
# for emacs
@@ -33,15 +35,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= flim-${EMACS_PORT}-${FLIM_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -51,21 +44,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${FLIM_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
FLIMDOCDIR=${FLIMDOCDIR} FLIM_SETUPEL=${FLIM_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
-# depends on apel
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
+# depends on apel (case of other emacsen etc...)
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on mmencode
.if (${EMACS_NAME} != "xemacs")
RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
@@ -80,40 +81,89 @@ RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${FLIM_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
+
post-build:
+ @${MAKE} info-build
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+# install functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-en.texi mime-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-en.info mime-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${FLIMDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog README.* NEWS VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${FLIMDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
+
.include <bsd.port.post.mk>
diff --git a/editors/flim113/pkg-descr.xemacs21-mule b/editors/flim113/pkg-descr.xemacs21-mule
index 4de45aa43cd7..a406f8b715bf 100644
--- a/editors/flim113/pkg-descr.xemacs21-mule
+++ b/editors/flim113/pkg-descr.xemacs21-mule
@@ -8,6 +8,6 @@ FLIM, message representation or encoding emacs lisp library for xemacs-mule.
- mailcap parser and utility
FLIM is installed the following directory tree:
- ${PREFIX}/lib/xemacs-20.4/site-lisp/flim/ --- FLIM
+ ${PREFIX}/lib/xemacs/xemacs-packages/lisp/flim/ --- FLIM
--- Porting by shige <shige@FreeBSD.ORG>
diff --git a/editors/flim113/pkg-plist.xemacs21-mule b/editors/flim113/pkg-plist.xemacs21-mule
index c651ddbe605b..c93f49180830 100644
--- a/editors/flim113/pkg-plist.xemacs21-mule
+++ b/editors/flim113/pkg-plist.xemacs21-mule
@@ -1,47 +1,53 @@
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-decode.el
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-decode.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-encode.el
-%%EMACS_LIBDIR%%/site-lisp/flim/eword-encode.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mailcap.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mailcap.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-b-el.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-b-el.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-g.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-g.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-q.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-q.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-u.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel-u.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mel.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mel.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-def.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-def.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-parse.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime-parse.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mime.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mime.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmbuffer.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmbuffer.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmcooked.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmcooked.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/mmgeneric.el
-%%EMACS_LIBDIR%%/site-lisp/flim/mmgeneric.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/std11.el
-%%EMACS_LIBDIR%%/site-lisp/flim/std11.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/smtp.el
-%%EMACS_LIBDIR%%/site-lisp/flim/smtp.elc
-%%EMACS_LIBDIR%%/site-lisp/flim/smtpmail.el
-%%EMACS_LIBDIR%%/site-lisp/flim/smtpmail.elc
-@dirrm %%EMACS_LIBDIR%%/site-lisp/flim
-%%FLIMDOCDIR%%/ChangeLog
-%%FLIMDOCDIR%%/NEWS
-%%FLIMDOCDIR%%/README.en
-%%FLIMDOCDIR%%/README.ja
-%%FLIMDOCDIR%%/VERSION
-@dirrm %%FLIMDOCDIR%%
-@unexec install-info --delete %D/info/mime-en.info %D/info/dir
-@unexec install-info --delete %D/info/mime-ja.info %D/info/dir
-info/mime-en.info
-info/mime-ja.info
-@exec install-info %D/info/mime-en.info %D/info/dir
-@exec install-info %D/info/mime-ja.info %D/info/dir
+%%EMACS_PACKAGESDIR%%/lisp/flim/ChangeLog
+%%EMACS_PACKAGESDIR%%/lisp/flim/NEWS
+%%EMACS_PACKAGESDIR%%/lisp/flim/README.en
+%%EMACS_PACKAGESDIR%%/lisp/flim/README.ja
+%%EMACS_PACKAGESDIR%%/lisp/flim/VERSION
+%%EMACS_PACKAGESDIR%%/lisp/flim/auto-autoloads.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/auto-autoloads.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/custom-load.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/custom-load.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-decode.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-decode.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-encode.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/eword-encode.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mailcap.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mailcap.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-ccl.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-ccl.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-el.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-b-el.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-g.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-g.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q-ccl.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-q-ccl.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-u.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel-u.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mel.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-def.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-def.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-parse.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime-parse.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mime.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmbuffer.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmbuffer.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmcooked.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmcooked.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmgeneric.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/mmgeneric.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/std11.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/std11.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtp.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtp.elc
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtpmail.el
+%%EMACS_PACKAGESDIR%%/lisp/flim/smtpmail.elc
+@dirrm %%EMACS_PACKAGESDIR%%/lisp/flim
+%%EMACS_PACKAGESDIR%%/info/mime-en.info
+%%EMACS_PACKAGESDIR%%/info/mime-ja.info
+%%EMACS_PACKAGESDIR%%/man/flim/mime-en.texi
+%%EMACS_PACKAGESDIR%%/man/flim/mime-ja.texi
+@dirrm %%EMACS_PACKAGESDIR%%/man/flim
diff --git a/editors/flim114-emacs20/Makefile b/editors/flim114-emacs20/Makefile
index 7ec041e47b2b..9f16d10ebea9 100644
--- a/editors/flim114-emacs20/Makefile
+++ b/editors/flim114-emacs20/Makefile
@@ -16,8 +16,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
-FLIMDOCDIR= share/doc/flim
+# setupel filename
FLIM_SETUPEL= flim-setupel.el
+# document install directory by install-doc target
+FLIMDOCDIR?= share/doc/flim
.if (${PORTCLASS} == "master")
# for emacs
@@ -33,15 +35,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= flim-${EMACS_PORT}-${FLIM_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -51,21 +44,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${FLIM_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
FLIMDOCDIR=${FLIMDOCDIR} FLIM_SETUPEL=${FLIM_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
-# depends on apel
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
+# depends on apel (case of other emacsen etc...)
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on mmencode
.if (${EMACS_NAME} != "xemacs")
RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
@@ -80,40 +81,89 @@ RUN_DEPENDS+= mmencode:${PORTSDIR}/mail/metamail
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${FLIM_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
+
post-build:
+ @${MAKE} info-build
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+# install functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-en.texi mime-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-en.info mime-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${FLIMDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog README.* NEWS VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${FLIMDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${FLIM_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-en.info mime-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ for i in mime-en.texi mime-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/flim ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
+
.include <bsd.port.post.mk>
diff --git a/editors/semi-emacs-current/Makefile b/editors/semi-emacs-current/Makefile
index ad0bf285c615..3395e9ac9d38 100644
--- a/editors/semi-emacs-current/Makefile
+++ b/editors/semi-emacs-current/Makefile
@@ -17,8 +17,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
SEMI_VER= 1.13.3
-SEMIDOCDIR= share/doc/semi
+# setupel filename
SEMI_SETUPEL= semi-setupel.el
+# document install directory by install-doc target
+SEMIDOCDIR?= share/doc/semi
.if (${PORTCLASS} == "master")
# emacs port setup
@@ -34,15 +36,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= semi-${EMACS_PORT}-${SEMI_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -52,21 +45,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${SEMI_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
SEMIDOCDIR=${SEMIDOCDIR} SEMI_SETUPEL=${SEMI_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
# depends on apel
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on flim
BUILD_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
@@ -80,40 +81,89 @@ RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/fl
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${SEMI_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
post-build:
+ @${MAKE} info-build
+
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+
+# functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-ui-en.texi mime-ui-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-ui-en.info mime-ui-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${SEMIDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog NEWS README.* TODO VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${SEMIDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
.include <bsd.port.post.mk>
diff --git a/editors/semi-xemacs21-mule-current/Makefile b/editors/semi-xemacs21-mule-current/Makefile
index 1ab14def1209..de86b81ed032 100644
--- a/editors/semi-xemacs21-mule-current/Makefile
+++ b/editors/semi-xemacs21-mule-current/Makefile
@@ -17,9 +17,11 @@ MASTERDIR= ${.CURDIR}/../../editors/semi-emacs-current
EMACS_NAME= xemacs
EMACS_PORT= xemacs-mule
EMACS_VER= 21.1.6
-EMACS_LIBDIR= lib/${EMACS_NAME}-${EMACS_VER}
-# xemacs-mule-21.1.6 has no version specific site-lisp directories.
-EMACS_LIBDIR_WITH_VER= ${EMACS_LIBDIR}
+EMACS_PACKAGESDIR= lib/${EMACS_NAME}/${EMACS_NAME}-packages
+
+# how to make and install
+ALL_TARGET= package
+INSTALL_TARGET= install-package
# RUN_DEPENDS port name's suffix is '-common'.
HAVE_COMMON_PORT= YES
@@ -27,4 +29,9 @@ HAVE_COMMON_PORT= YES
# use pkg/* files in ${.CURDIR}
PKGDIR= ${.CURDIR}/pkg
+# package info manifest
+MANIFEST= MANIFEST.semi
+# package documents
+SEMIDOCDIR= ${EMACS_PACKAGESDIR}/lisp/semi
+
.include <${MASTERDIR}/Makefile>
diff --git a/editors/semi-xemacs21-mule-current/pkg-descr b/editors/semi-xemacs21-mule-current/pkg-descr
index 33cd0e1cd755..042997f9b33d 100644
--- a/editors/semi-xemacs21-mule-current/pkg-descr
+++ b/editors/semi-xemacs21-mule-current/pkg-descr
@@ -20,6 +20,6 @@ SEMI, Library of MIME feature for GNU Emacs for xemacs-mule.
MUAs. They are released as separated packages.
SEMI is installed the following directory tree:
- ${PREFIX}/lib/xemacs-20.4/site-lisp/semi/ --- SEMI
+ ${PREFIX}/lib/xemacs/xemacs-packages/lisp/semi/ --- SEMI
--- Porting by shige <shige@FreeBSD.ORG>
diff --git a/editors/semi-xemacs21-mule-current/pkg-plist b/editors/semi-xemacs21-mule-current/pkg-plist
index 247fab12288a..854fa9a0040e 100644
--- a/editors/semi-xemacs21-mule-current/pkg-plist
+++ b/editors/semi-xemacs21-mule-current/pkg-plist
@@ -1,40 +1,41 @@
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/signature.el
-%%EMACS_LIBDIR%%/site-lisp/semi/signature.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-def.el
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-def.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-image.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-image.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-view.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-view.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-play.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-play.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-partial.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-partial.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-edit.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-edit.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mail-mime-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mail-mime-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-pgp.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-pgp.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-mc.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-mc.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-bbdb.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-w3.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-w3.elc
-@dirrm %%EMACS_LIBDIR%%/site-lisp/semi
-%%SEMIDOCDIR%%/ChangeLog
-%%SEMIDOCDIR%%/NEWS
-%%SEMIDOCDIR%%/README.en
-%%SEMIDOCDIR%%/TODO
-%%SEMIDOCDIR%%/VERSION
-@dirrm %%SEMIDOCDIR%%
-@unexec install-info --delete %D/info/mime-ui-en.info %D/info/dir
-@unexec install-info --delete %D/info/mime-ui-ja.info %D/info/dir
-info/mime-ui-en.info
-info/mime-ui-ja.info
-@exec install-info %D/info/mime-ui-en.info %D/info/dir
-@exec install-info %D/info/mime-ui-ja.info %D/info/dir
+%%EMACS_PACKAGESDIR%%/lisp/semi/ChangeLog
+%%EMACS_PACKAGESDIR%%/lisp/semi/NEWS
+%%EMACS_PACKAGESDIR%%/lisp/semi/README.en
+%%EMACS_PACKAGESDIR%%/lisp/semi/TODO
+%%EMACS_PACKAGESDIR%%/lisp/semi/VERSION
+%%EMACS_PACKAGESDIR%%/lisp/semi/auto-autoloads.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/auto-autoloads.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/custom-load.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/custom-load.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mail-mime-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mail-mime-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-bbdb.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-edit.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-edit.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-image.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-image.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-mc.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-mc.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-pgp.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-pgp.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-play.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-play.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-partial.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-partial.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-view.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-view.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-w3.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-def.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-def.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/signature.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/signature.elc
+@dirrm %%EMACS_PACKAGESDIR%%/lisp/semi
+%%EMACS_PACKAGESDIR%%/info/mime-ui-en.info
+%%EMACS_PACKAGESDIR%%/info/mime-ui-ja.info
+%%EMACS_PACKAGESDIR%%/man/semi/mime-ui-en.texi
+%%EMACS_PACKAGESDIR%%/man/semi/mime-ui-ja.texi
+@dirrm %%EMACS_PACKAGESDIR%%/man/semi
diff --git a/editors/semi/Makefile b/editors/semi/Makefile
index ad0bf285c615..3395e9ac9d38 100644
--- a/editors/semi/Makefile
+++ b/editors/semi/Makefile
@@ -17,8 +17,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
SEMI_VER= 1.13.3
-SEMIDOCDIR= share/doc/semi
+# setupel filename
SEMI_SETUPEL= semi-setupel.el
+# document install directory by install-doc target
+SEMIDOCDIR?= share/doc/semi
.if (${PORTCLASS} == "master")
# emacs port setup
@@ -34,15 +36,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= semi-${EMACS_PORT}-${SEMI_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -52,21 +45,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${SEMI_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
SEMIDOCDIR=${SEMIDOCDIR} SEMI_SETUPEL=${SEMI_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
# depends on apel
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on flim
BUILD_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
@@ -80,40 +81,89 @@ RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/fl
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${SEMI_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
post-build:
+ @${MAKE} info-build
+
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+
+# functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-ui-en.texi mime-ui-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-ui-en.info mime-ui-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${SEMIDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog NEWS README.* TODO VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${SEMIDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
.include <bsd.port.post.mk>
diff --git a/editors/semi113-emacs/Makefile b/editors/semi113-emacs/Makefile
index ad0bf285c615..3395e9ac9d38 100644
--- a/editors/semi113-emacs/Makefile
+++ b/editors/semi113-emacs/Makefile
@@ -17,8 +17,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
SEMI_VER= 1.13.3
-SEMIDOCDIR= share/doc/semi
+# setupel filename
SEMI_SETUPEL= semi-setupel.el
+# document install directory by install-doc target
+SEMIDOCDIR?= share/doc/semi
.if (${PORTCLASS} == "master")
# emacs port setup
@@ -34,15 +36,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= semi-${EMACS_PORT}-${SEMI_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -52,21 +45,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${SEMI_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
SEMIDOCDIR=${SEMIDOCDIR} SEMI_SETUPEL=${SEMI_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
# depends on apel
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on flim
BUILD_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
@@ -80,40 +81,89 @@ RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/fl
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${SEMI_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
post-build:
+ @${MAKE} info-build
+
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+
+# functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-ui-en.texi mime-ui-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-ui-en.info mime-ui-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${SEMIDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog NEWS README.* TODO VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${SEMIDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
.include <bsd.port.post.mk>
diff --git a/editors/semi113-xemacs21-mule/Makefile b/editors/semi113-xemacs21-mule/Makefile
index 1ab14def1209..de86b81ed032 100644
--- a/editors/semi113-xemacs21-mule/Makefile
+++ b/editors/semi113-xemacs21-mule/Makefile
@@ -17,9 +17,11 @@ MASTERDIR= ${.CURDIR}/../../editors/semi-emacs-current
EMACS_NAME= xemacs
EMACS_PORT= xemacs-mule
EMACS_VER= 21.1.6
-EMACS_LIBDIR= lib/${EMACS_NAME}-${EMACS_VER}
-# xemacs-mule-21.1.6 has no version specific site-lisp directories.
-EMACS_LIBDIR_WITH_VER= ${EMACS_LIBDIR}
+EMACS_PACKAGESDIR= lib/${EMACS_NAME}/${EMACS_NAME}-packages
+
+# how to make and install
+ALL_TARGET= package
+INSTALL_TARGET= install-package
# RUN_DEPENDS port name's suffix is '-common'.
HAVE_COMMON_PORT= YES
@@ -27,4 +29,9 @@ HAVE_COMMON_PORT= YES
# use pkg/* files in ${.CURDIR}
PKGDIR= ${.CURDIR}/pkg
+# package info manifest
+MANIFEST= MANIFEST.semi
+# package documents
+SEMIDOCDIR= ${EMACS_PACKAGESDIR}/lisp/semi
+
.include <${MASTERDIR}/Makefile>
diff --git a/editors/semi113-xemacs21-mule/pkg-descr b/editors/semi113-xemacs21-mule/pkg-descr
index 33cd0e1cd755..042997f9b33d 100644
--- a/editors/semi113-xemacs21-mule/pkg-descr
+++ b/editors/semi113-xemacs21-mule/pkg-descr
@@ -20,6 +20,6 @@ SEMI, Library of MIME feature for GNU Emacs for xemacs-mule.
MUAs. They are released as separated packages.
SEMI is installed the following directory tree:
- ${PREFIX}/lib/xemacs-20.4/site-lisp/semi/ --- SEMI
+ ${PREFIX}/lib/xemacs/xemacs-packages/lisp/semi/ --- SEMI
--- Porting by shige <shige@FreeBSD.ORG>
diff --git a/editors/semi113-xemacs21-mule/pkg-plist b/editors/semi113-xemacs21-mule/pkg-plist
index 247fab12288a..854fa9a0040e 100644
--- a/editors/semi113-xemacs21-mule/pkg-plist
+++ b/editors/semi113-xemacs21-mule/pkg-plist
@@ -1,40 +1,41 @@
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/signature.el
-%%EMACS_LIBDIR%%/site-lisp/semi/signature.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-def.el
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-def.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-image.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-image.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-view.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-view.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-play.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-play.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-partial.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-partial.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-edit.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-edit.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mail-mime-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mail-mime-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-pgp.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-pgp.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-mc.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-mc.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-bbdb.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-w3.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-w3.elc
-@dirrm %%EMACS_LIBDIR%%/site-lisp/semi
-%%SEMIDOCDIR%%/ChangeLog
-%%SEMIDOCDIR%%/NEWS
-%%SEMIDOCDIR%%/README.en
-%%SEMIDOCDIR%%/TODO
-%%SEMIDOCDIR%%/VERSION
-@dirrm %%SEMIDOCDIR%%
-@unexec install-info --delete %D/info/mime-ui-en.info %D/info/dir
-@unexec install-info --delete %D/info/mime-ui-ja.info %D/info/dir
-info/mime-ui-en.info
-info/mime-ui-ja.info
-@exec install-info %D/info/mime-ui-en.info %D/info/dir
-@exec install-info %D/info/mime-ui-ja.info %D/info/dir
+%%EMACS_PACKAGESDIR%%/lisp/semi/ChangeLog
+%%EMACS_PACKAGESDIR%%/lisp/semi/NEWS
+%%EMACS_PACKAGESDIR%%/lisp/semi/README.en
+%%EMACS_PACKAGESDIR%%/lisp/semi/TODO
+%%EMACS_PACKAGESDIR%%/lisp/semi/VERSION
+%%EMACS_PACKAGESDIR%%/lisp/semi/auto-autoloads.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/auto-autoloads.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/custom-load.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/custom-load.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mail-mime-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mail-mime-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-bbdb.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-edit.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-edit.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-image.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-image.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-mc.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-mc.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-pgp.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-pgp.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-play.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-play.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-partial.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-partial.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-view.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-view.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-w3.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-def.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-def.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/signature.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/signature.elc
+@dirrm %%EMACS_PACKAGESDIR%%/lisp/semi
+%%EMACS_PACKAGESDIR%%/info/mime-ui-en.info
+%%EMACS_PACKAGESDIR%%/info/mime-ui-ja.info
+%%EMACS_PACKAGESDIR%%/man/semi/mime-ui-en.texi
+%%EMACS_PACKAGESDIR%%/man/semi/mime-ui-ja.texi
+@dirrm %%EMACS_PACKAGESDIR%%/man/semi
diff --git a/editors/semi113/Makefile b/editors/semi113/Makefile
index ad0bf285c615..3395e9ac9d38 100644
--- a/editors/semi113/Makefile
+++ b/editors/semi113/Makefile
@@ -17,8 +17,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
SEMI_VER= 1.13.3
-SEMIDOCDIR= share/doc/semi
+# setupel filename
SEMI_SETUPEL= semi-setupel.el
+# document install directory by install-doc target
+SEMIDOCDIR?= share/doc/semi
.if (${PORTCLASS} == "master")
# emacs port setup
@@ -34,15 +36,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= semi-${EMACS_PORT}-${SEMI_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -52,21 +45,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${SEMI_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
SEMIDOCDIR=${SEMIDOCDIR} SEMI_SETUPEL=${SEMI_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
# depends on apel
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on flim
BUILD_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
@@ -80,40 +81,89 @@ RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/fl
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${SEMI_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
post-build:
+ @${MAKE} info-build
+
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+
+# functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-ui-en.texi mime-ui-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-ui-en.info mime-ui-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${SEMIDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog NEWS README.* TODO VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${SEMIDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
.include <bsd.port.post.mk>
diff --git a/editors/semi113/pkg-descr.xemacs21-mule b/editors/semi113/pkg-descr.xemacs21-mule
index 33cd0e1cd755..042997f9b33d 100644
--- a/editors/semi113/pkg-descr.xemacs21-mule
+++ b/editors/semi113/pkg-descr.xemacs21-mule
@@ -20,6 +20,6 @@ SEMI, Library of MIME feature for GNU Emacs for xemacs-mule.
MUAs. They are released as separated packages.
SEMI is installed the following directory tree:
- ${PREFIX}/lib/xemacs-20.4/site-lisp/semi/ --- SEMI
+ ${PREFIX}/lib/xemacs/xemacs-packages/lisp/semi/ --- SEMI
--- Porting by shige <shige@FreeBSD.ORG>
diff --git a/editors/semi113/pkg-plist.xemacs21-mule b/editors/semi113/pkg-plist.xemacs21-mule
index 247fab12288a..854fa9a0040e 100644
--- a/editors/semi113/pkg-plist.xemacs21-mule
+++ b/editors/semi113/pkg-plist.xemacs21-mule
@@ -1,40 +1,41 @@
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/signature.el
-%%EMACS_LIBDIR%%/site-lisp/semi/signature.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-def.el
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-def.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-image.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-image.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-view.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-view.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-play.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-play.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-partial.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-partial.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-edit.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-edit.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mail-mime-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mail-mime-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-pgp.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-pgp.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-mc.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-mc.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-bbdb.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-w3.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-w3.elc
-@dirrm %%EMACS_LIBDIR%%/site-lisp/semi
-%%SEMIDOCDIR%%/ChangeLog
-%%SEMIDOCDIR%%/NEWS
-%%SEMIDOCDIR%%/README.en
-%%SEMIDOCDIR%%/TODO
-%%SEMIDOCDIR%%/VERSION
-@dirrm %%SEMIDOCDIR%%
-@unexec install-info --delete %D/info/mime-ui-en.info %D/info/dir
-@unexec install-info --delete %D/info/mime-ui-ja.info %D/info/dir
-info/mime-ui-en.info
-info/mime-ui-ja.info
-@exec install-info %D/info/mime-ui-en.info %D/info/dir
-@exec install-info %D/info/mime-ui-ja.info %D/info/dir
+%%EMACS_PACKAGESDIR%%/lisp/semi/ChangeLog
+%%EMACS_PACKAGESDIR%%/lisp/semi/NEWS
+%%EMACS_PACKAGESDIR%%/lisp/semi/README.en
+%%EMACS_PACKAGESDIR%%/lisp/semi/TODO
+%%EMACS_PACKAGESDIR%%/lisp/semi/VERSION
+%%EMACS_PACKAGESDIR%%/lisp/semi/auto-autoloads.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/auto-autoloads.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/custom-load.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/custom-load.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mail-mime-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mail-mime-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-bbdb.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-edit.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-edit.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-image.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-image.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-mc.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-mc.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-pgp.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-pgp.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-play.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-play.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-partial.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-partial.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-view.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-view.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-w3.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-def.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-def.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/signature.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/signature.elc
+@dirrm %%EMACS_PACKAGESDIR%%/lisp/semi
+%%EMACS_PACKAGESDIR%%/info/mime-ui-en.info
+%%EMACS_PACKAGESDIR%%/info/mime-ui-ja.info
+%%EMACS_PACKAGESDIR%%/man/semi/mime-ui-en.texi
+%%EMACS_PACKAGESDIR%%/man/semi/mime-ui-ja.texi
+@dirrm %%EMACS_PACKAGESDIR%%/man/semi
diff --git a/editors/semi114-emacs20/Makefile b/editors/semi114-emacs20/Makefile
index ad0bf285c615..3395e9ac9d38 100644
--- a/editors/semi114-emacs20/Makefile
+++ b/editors/semi114-emacs20/Makefile
@@ -17,8 +17,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
SEMI_VER= 1.13.3
-SEMIDOCDIR= share/doc/semi
+# setupel filename
SEMI_SETUPEL= semi-setupel.el
+# document install directory by install-doc target
+SEMIDOCDIR?= share/doc/semi
.if (${PORTCLASS} == "master")
# emacs port setup
@@ -34,15 +36,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= semi-${EMACS_PORT}-${SEMI_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -52,21 +45,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${SEMI_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
SEMIDOCDIR=${SEMIDOCDIR} SEMI_SETUPEL=${SEMI_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
# depends on apel
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on flim
BUILD_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
@@ -80,40 +81,89 @@ RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/fl
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${SEMI_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
post-build:
+ @${MAKE} info-build
+
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+
+# functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-ui-en.texi mime-ui-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-ui-en.info mime-ui-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${SEMIDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog NEWS README.* TODO VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${SEMIDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${SEMI_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
.include <bsd.port.post.mk>
diff --git a/editors/wemi-emacs-current/Makefile b/editors/wemi-emacs-current/Makefile
index be95c7d973b2..a70c4b0f587f 100644
--- a/editors/wemi-emacs-current/Makefile
+++ b/editors/wemi-emacs-current/Makefile
@@ -17,8 +17,10 @@ PORTCLASS?= master
# distfile version
FLIM_VER= 1.12.5
WEMI_VER= 1.13.3
-WEMIDOCDIR= share/doc/semi
+# setupel filename
WEMI_SETUPEL= wemi-setupel.el
+# document install directory by install-doc target
+WEMIDOCDIR?= share/doc/semi
.if (${PORTCLASS} == "master")
# emacs port setup
@@ -34,15 +36,6 @@ REQUIRE_SETUPEL= YES
# target name for make build
ALL_TARGET?= elc
-# if RUN_DEPENDS-emacs port name has the suffix '-common'.
-.if !defined(HAVE_COMMON_PORT)
-HAVE_COMMON_PORT= NO
-.endif
-# if RUN_DEPENDS-emacs needs setup elisp
-.if !defined(REQUIRE_SETUPEL)
-REQUIRE_SETUPEL= NO
-.endif
-
.if defined(EMACS_PORT)
PKGNAME= wemi-${EMACS_PORT}-${WEMI_VER}
EMACS_CMD= ${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
@@ -52,21 +45,29 @@ RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
.else
RUN_DEPENDS= ${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
.endif
-SCRIPTS_ENV= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
TARGETS="${WEMI_SETUPEL}"
-PLIST_SUB= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
+PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER} \
EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
+ EMACS_PACKAGESDIR=${EMACS_PACKAGESDIR} \
WEMIDOCDIR=${WEMIDOCDIR} WEMI_SETUPEL=${WEMI_SETUPEL}
-MAKE_FLAGS= EMACS=${EMACS_CMD}
+MAKE_FLAGS+= EMACS=${EMACS_CMD}
.if (${EMACS_VER} == "19.34")
# depends on custom: emacs-19.34 or mule-19.34
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT}
.endif
-# depends on apel
+# depends on apel (case of xemacs-21.x or later)
+.if defined(EMACS_PACKAGESDIR)
+BUILD_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+RUN_DEPENDS+= ${PREFIX}/${EMACS_PACKAGESDIR}/lisp/apel/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.else
+# depends on apel (case of other emacsen etc...)
BUILD_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
RUN_DEPENDS+= ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp/emu/emu.el:${PORTSDIR}/editors/apel-${EMACS_PORT}
+.endif
# depends on flim
BUILD_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/flim-${EMACS_PORT}-current
@@ -80,40 +81,88 @@ RUN_DEPENDS+= ${PKG_DBDIR}/flim-${EMACS_PORT}-${FLIM_VER}:${PORTSDIR}/editors/fl
# info files JIS to EUC
BUILD_DEPENDS+= nkf:${PORTSDIR}/japanese/nkf
-.if (${REQUIRE_SETUPEL} == "YES")
pre-configure:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
@${CP} ${FILESDIR}/${WEMI_SETUPEL}.in ${WRKDIR}
.endif
.include <bsd.port.pre.mk>
-MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO= makeinfo --no-split --no-validate
+MAKEINFO_EMACS= ${EMACS_CMD} -no-site-file -no-init-file -batch
+MAKEINFO_EMACS_FLAGS= -e texinfo-format-buffer -f save-buffer
+
post-build:
+ @${MAKE} info-build
+
+post-install:
+.if defined(REQUIRE_SETUPEL) && (${REQUIRE_SETUPEL} == "YES")
+ @${MAKE} setupel-install
+.endif
+.if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
+ @${MAKE} info-package-install
+ @${MAKE} manifest-install
+.else
+ @${MAKE} info-install
+.endif
+.if !defined(NOPORTDOCS)
+ @${MAKE} doc-install
+.endif
+
+
+# functions
+info-build:
@(cd ${WRKSRC} ; \
for i in mime-ui-en.texi mime-ui-ja.texi; do \
${MV} $${i} $${i}.jis ; \
${CAT} $${i}.jis | nkf -e > $${i} ; \
- ${ECHO_MSG} "===> Please ignore the following errors." ; \
${MAKEINFO} $${i} || ${TRUE} ; \
done)
-post-install:
+info-build-by-emacs:
@(cd ${WRKSRC} ; \
- for i in mime-ui-en.info mime-ui-ja.info; do \
- ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
- install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${MV} $${i} $${i}.jis ; \
+ ${CAT} $${i}.jis | nkf -e > $${i} ; \
+ ${MAKEINFO_EMACS} $${i} ${MAKEINFO_EMACS_FLAGS} || ${TRUE} ; \
done)
-.if (${REQUIRE_SETUPEL} == "YES")
- @${INSTALL_DATA} ${WRKDIR}/${WEMI_SETUPEL} \
- ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
-.endif
-.if !defined(NOPORTDOCS)
+
+doc-install:
@${MKDIR} ${PREFIX}/${WEMIDOCDIR}
@(cd ${WRKSRC} ; \
for i in ChangeLog NEWS README.* TODO VERSION ; do \
${INSTALL_DATA} $${i} ${PREFIX}/${WEMIDOCDIR}/ ; \
done)
-.endif
+
+setupel-install:
+ @${INSTALL_DATA} ${WRKDIR}/${WEMI_SETUPEL} \
+ ${PREFIX}/${EMACS_LIBDIR_WITH_VER}/site-lisp
+
+info-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} ${PREFIX}/info ; \
+ install-info ${PREFIX}/info/$${i} ${PREFIX}/info/dir ; \
+ done)
+
+info-package-install:
+ @(cd ${WRKSRC} ; \
+ for i in mime-ui-en.info mime-ui-ja.info; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/info ; \
+ done ; \
+ ${MKDIR} -p ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ for i in mime-ui-en.texi mime-ui-ja.texi; do \
+ ${INSTALL_DATA} ${WRKSRC}/$${i} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/man/semi ; \
+ done)
+
+manifest-install:
+ @${RM} -f ${WRKDIR}/${MANIFEST}
+ @${CAT} ${PKGDIR}/PLIST | ${GREP} -e "^%%EMACS_PACKAGESDIR%%" | \
+ ${SED} -e "s;^%%EMACS_PACKAGESDIR%%/;;" > ${WRKDIR}/${MANIFEST}
+ @${INSTALL_DATA} ${WRKDIR}/${MANIFEST} \
+ ${PREFIX}/${EMACS_PACKAGESDIR}/pkginfo/
.include <bsd.port.post.mk>
diff --git a/editors/wemi-xemacs21-mule-current/Makefile b/editors/wemi-xemacs21-mule-current/Makefile
index 55b0f5f31c70..0aedb3f38962 100644
--- a/editors/wemi-xemacs21-mule-current/Makefile
+++ b/editors/wemi-xemacs21-mule-current/Makefile
@@ -17,9 +17,11 @@ MASTERDIR= ${.CURDIR}/../../editors/wemi-emacs-current
EMACS_NAME= xemacs
EMACS_PORT= xemacs-mule
EMACS_VER= 21.1.6
-EMACS_LIBDIR= lib/${EMACS_NAME}-${EMACS_VER}
-# xemacs-mule-21.1.6 has no version specific site-lisp directories.
-EMACS_LIBDIR_WITH_VER= ${EMACS_LIBDIR}
+EMACS_PACKAGESDIR= lib/${EMACS_NAME}/${EMACS_NAME}-packages
+
+# how to make and install
+ALL_TARGET= package
+INSTALL_TARGET= install-package
# RUN_DEPENDS port name's suffix is '-common'.
HAVE_COMMON_PORT= YES
@@ -27,4 +29,9 @@ HAVE_COMMON_PORT= YES
# use pkg/* files in ${.CURDIR}
PKGDIR= ${.CURDIR}/pkg
+# package info manifest
+MANIFEST= MANIFEST.semi
+# package documents
+WEMIDOCDIR= ${EMACS_PACKAGESDIR}/lisp/semi
+
.include <${MASTERDIR}/Makefile>
diff --git a/editors/wemi-xemacs21-mule-current/pkg-descr b/editors/wemi-xemacs21-mule-current/pkg-descr
index 09e0ba629561..8f32e408d2ff 100644
--- a/editors/wemi-xemacs21-mule-current/pkg-descr
+++ b/editors/wemi-xemacs21-mule-current/pkg-descr
@@ -30,7 +30,7 @@ WEMI, Library of MIME feature for GNU Emacs for xemacs-mule.
MUAs. They are released as separated packages.
WEMI is installed the following directory tree:
- ${PREFIX}/lib/xemacs-20.4/site-lisp/semi/ --- WEMI
+ ${PREFIX}/lib/xemacs/xemacs-packages/lisp/semi/ --- WEMI
*** Caution!! ***
diff --git a/editors/wemi-xemacs21-mule-current/pkg-plist b/editors/wemi-xemacs21-mule-current/pkg-plist
index 02510b10fa47..b87d1938b048 100644
--- a/editors/wemi-xemacs21-mule-current/pkg-plist
+++ b/editors/wemi-xemacs21-mule-current/pkg-plist
@@ -1,40 +1,41 @@
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/signature.el
-%%EMACS_LIBDIR%%/site-lisp/semi/signature.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-def.el
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-def.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-image.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-image.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-view.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-view.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-play.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-play.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-partial.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-partial.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-edit.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-edit.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/semi-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mail-mime-setup.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mail-mime-setup.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-pgp.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-pgp.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-mc.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-mc.elc
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-bbdb.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-w3.el
-%%EMACS_LIBDIR%%/site-lisp/semi/mime-w3.elc
-@dirrm %%EMACS_LIBDIR%%/site-lisp/semi
-%%WEMIDOCDIR%%/ChangeLog
-%%WEMIDOCDIR%%/NEWS
-%%WEMIDOCDIR%%/README.en
-%%WEMIDOCDIR%%/TODO
-%%WEMIDOCDIR%%/VERSION
-@dirrm %%WEMIDOCDIR%%
-@unexec install-info --delete %D/info/mime-ui-en.info %D/info/dir
-@unexec install-info --delete %D/info/mime-ui-ja.info %D/info/dir
-info/mime-ui-en.info
-info/mime-ui-ja.info
-@exec install-info %D/info/mime-ui-en.info %D/info/dir
-@exec install-info %D/info/mime-ui-ja.info %D/info/dir
+%%EMACS_PACKAGESDIR%%/lisp/semi/ChangeLog
+%%EMACS_PACKAGESDIR%%/lisp/semi/NEWS
+%%EMACS_PACKAGESDIR%%/lisp/semi/README.en
+%%EMACS_PACKAGESDIR%%/lisp/semi/TODO
+%%EMACS_PACKAGESDIR%%/lisp/semi/VERSION
+%%EMACS_PACKAGESDIR%%/lisp/semi/auto-autoloads.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/auto-autoloads.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/custom-load.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/custom-load.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mail-mime-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mail-mime-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-bbdb.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-edit.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-edit.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-image.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-image.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-mc.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-mc.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-partial.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-partial.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-pgp.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-pgp.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-play.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-play.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-view.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-view.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/mime-w3.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-def.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-def.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-setup.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/semi-setup.elc
+%%EMACS_PACKAGESDIR%%/lisp/semi/signature.el
+%%EMACS_PACKAGESDIR%%/lisp/semi/signature.elc
+@dirrm %%EMACS_PACKAGESDIR%%/lisp/semi
+%%EMACS_PACKAGESDIR%%/info/mime-ui-en.info
+%%EMACS_PACKAGESDIR%%/info/mime-ui-ja.info
+%%EMACS_PACKAGESDIR%%/man/semi/mime-ui-en.texi
+%%EMACS_PACKAGESDIR%%/man/semi/mime-ui-ja.texi
+@dirrm %%EMACS_PACKAGESDIR%%/man/semi