diff options
Diffstat (limited to 'editors/semi/Makefile')
-rw-r--r-- | editors/semi/Makefile | 102 |
1 files changed, 76 insertions, 26 deletions
diff --git a/editors/semi/Makefile b/editors/semi/Makefile index ad0bf28..3395e9a 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> |