Files
ports/editors/flim/Makefile
T
Joseph Mingrone bc45b7ec88 Emacs Lisp ports framework: Overhaul
This overhaul introduces four key changes to the elisp ports framework:

1. Remove support for packaged byte-compiled elisp.

   The primary motivation is to remove a large number of flavor-specific
   packages and to simplify the ports tree.  As an example, supporting
   byte-compiled elisp for devel/tablist required six packages, one for
   each flavor of editors/emacs and editors/emacs-devel.  With over 100
   elisp ports and requests for new Emacs flavors, this was
   unmanageable.

2. Install configuration to integrate with Emacs's native compilation
   machinery, allowing elisp from ports to be compiled into the standard
   cache under the user's home directory.

   This matches the behavior of GNU ELPA packages and generally results
   in a faster experience.  Speedups vary depending on the
   characteristics of the elisp code, but are often reported to be 2.5
   to 5 times faster than byte-compiled code.

3. Perform byte compilation on the target host, but only when native
   compilation is unavailable.  Compilation is initiated when Emacs
   starts, and the resulting .elc files are cached under the user's
   home directory.

4. Load all autoload files installed by FreeBSD elisp ports.  This
   mirrors what package.el does for ELPA packages, ensuring that
   autoloaded functions are available without requiring users to
   explicitly load each package.

Users with elisp packages (*-emacs_*) installed should consult the
2026-04-11 UPDATING entry for instructions on handling the transition.

Reviewed by:	ashish, Benjamin Jacobs <freebsd@dev.thsi.be>, dinoex,
		mandree, mce, nobutaka, Pat Maddox <pat@patmaddox.com>,
		rhurlin
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D56001
2026-04-11 13:03:58 -03:00

57 lines
1.2 KiB
Makefile

PORTNAME= flim
PORTVERSION= 1.14.9.${SNAPDATE}
PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= editors elisp
MAINTAINER= nobutaka@FreeBSD.org
COMMENT= Message representation or encoding elisp library for emacs
WWW= https://github.com/wanderlust/flim
LICENSE= GPLv2
BUILD_DEPENDS= apel>0:editors/apel
RUN_DEPENDS= apel>0:editors/apel
USES= cpe emacs:build iconv makeinfo
CPE_VENDOR= gnu
USE_GITHUB= yes
GH_ACCOUNT= wanderlust
GH_TAGNAME= 392c29d
SNAPDATE= 20251030
MAKE_ARGS+= PREFIX="${STAGEDIR}${PREFIX}" \
LISPDIR="${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}" \
VERSION_SPECIFIC_LISPDIR="${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}" \
PACKAGE_LISPDIR=NONE
CONFLICTS_INSTALL= flim-emacs_*
NO_ARCH= yes
INFO= mime-en mime-ja
OPTIONS_DEFINE= DOCS
do-build:
@(cd ${WRKSRC} ; \
for i in mime-en.texi mime-ja.texi; do \
${MAKEINFO} --no-split --no-validate $${i} ; \
done)
post-install:
@(cd ${WRKSRC} ; \
for i in mime-en.info mime-ja.info; do \
${INSTALL_DATA} ${WRKSRC}/$${i} ${STAGEDIR}${PREFIX}/${INFO_PATH} ; \
done)
post-install-DOCS-on:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
@(cd ${WRKSRC} ; \
for i in NEWS README.* VERSION ; do \
${INSTALL_DATA} $${i} ${STAGEDIR}${DOCSDIR}/ ; \
done)
.include <bsd.port.mk>