Page MenuHomeFreeBSD

D15265.diff
No OneTemporary

D15265.diff

Index: head/Mk/Uses/emacs.mk
===================================================================
--- head/Mk/Uses/emacs.mk
+++ head/Mk/Uses/emacs.mk
@@ -5,14 +5,16 @@
#
# Feature: emacs
# Usage: USES=emacs or USES=emacs:args
-# Valid ARGS: build, run
+# Valid ARGS: build, run, noflavors
#
-# build Indicates that Emacs is needed at build time.
-# run Indicates that Emacs is needed at run time.
+# build Indicates that Emacs is required at build time.
+# run Indicates that Emacs is required at run time.
+# noflavors Prevents flavors. This is implied when there is no run
+# dependency on Emacs.
#
# If build and run are omitted from the argument list, Emacs will be added to
# BUILD_DEPENDS and RUN_DEPENDS. EMACS_NO_DEPENDS can be set to prevent both
-# Emacs dependencies.
+# dependencies.
#
# Variables, which can be set in make.conf:
# DEFAULT_VERSIONS+= The default flavor for Emacs ports (ports with
@@ -20,14 +22,18 @@
# can be added to DEFAULT_VERSIONS. For example,
# DEFAULT_VERSIONS+= emacs=nox
# Valid flavors: full canna nox devel_full devel_nox
-# Flavors specified on the command line take precedence.
+# Flavors specified on the command line take
+# precedence.
#
# Variables, which can be set by ports:
# EMACS_FLAVORS_EXCLUDE: Do NOT build these Emacs flavors.
-# If EMACS_FLAVORS_EXCLUDE is not define then all
-# valid Emacs flavors are assumed.
+# If EMACS_FLAVORS_EXCLUDE is not defined and
+# - there is a run dependency on Emacs
+# - the noflavors argument is not specified
+# then all valid Emacs flavors are assumed.
#
# EMACS_NO_DEPENDS: Do NOT add build or run dependencies on Emacs.
+# This will prevent flavors.
#
# Variables, which can be read by ports:
# EMACS_CMD: Emacs command with full path (e.g. /usr/local/bin/emacs-25.3)
@@ -50,15 +56,20 @@
# pollutes the build/run dependency detection
.undef _EMACS_BUILD_DEP
.undef _EMACS_RUN_DEP
+.undef _EMACS_NOFLAVORS
_EMACS_ARGS= ${emacs_ARGS:S/,/ /g}
.if ${_EMACS_ARGS:Mbuild}
_EMACS_BUILD_DEP= yes
_EMACS_ARGS:= ${_EMACS_ARGS:Nbuild}
.endif
.if ${_EMACS_ARGS:Mrun}
-_EMACS_RUN_DEP= yes
+_EMACS_RUN_DEP= yes
_EMACS_ARGS:= ${_EMACS_ARGS:Nrun}
.endif
+.if ${_EMACS_ARGS:Mnoflavors}
+_EMACS_NOFLAVORS= yes
+_EMACS_ARGS:= ${_EMACS_ARGS:Nnoflavors}
+.endif
# If the port does not specify a build or run dependency, and does not define
# EMACS_NO_DEPENDS, assume both dependencies are required.
@@ -68,23 +79,28 @@
_EMACS_RUN_DEP= yes
.endif
-.if defined(_EMACS_RUN_DEP)
+# Only set FLAVORS when...
+.if defined(_EMACS_RUN_DEP) && !defined(_EMACS_NOFLAVORS)
FLAVORS= full canna nox devel_full devel_nox
.for flavor in ${EMACS_FLAVORS_EXCLUDE}
FLAVORS:= ${FLAVORS:N${flavor}}
.endfor
-.elif !defined(EMACS_NO_DEPENDS)
-FLAVORS= full
.endif
-.if empty(FLAVOR)
+# Only set FLAVOR when...
+.if defined(_EMACS_RUN_DEP) && !defined(_EMACS_NOFLAVORS) && empty(FLAVOR)
.if defined(EMACS_DEFAULT)
FLAVOR= ${EMACS_DEFAULT}
.else
FLAVOR= ${FLAVORS:[1]}
-.endif
-.endif
+.endif # defined(EMACS_DEFAULT)
+.endif # !defined(_EMACS_NOFLAVORS) && defined(_EMACS_RUN_DEP) && empty(FLAVOR)
+
+.if !empty(FLAVOR)
EMACS_FLAVOR= ${FLAVOR}
+.else
+EMACS_FLAVOR= full
+.endif
.if ${FLAVOR:Mdevel*}
EMACS_VER= 27.0.50

File Metadata

Mime Type
text/plain
Expires
Sat, Apr 4, 4:10 PM (8 h, 57 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30828246
Default Alt Text
D15265.diff (3 KB)

Event Timeline