1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-01 05:45:45 +00:00

Flag nop options helpers that appear after bsd.port.options.mk as DEV_ERRORs

Approved by:	portmgr (mat)
Differential Revision:	https://reviews.freebsd.org/D19553
This commit is contained in:
Tobias Kortkamp 2019-04-18 14:28:07 +00:00
parent b7e771196d
commit f4bb5c8fec
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=499267
2 changed files with 33 additions and 0 deletions

View File

@ -192,6 +192,15 @@ _OPTIONS_FLAGS= ALL_TARGET BROKEN CATEGORIES CFLAGS CONFIGURE_ENV CONFLICTS \
PLIST_SUB PORTDOCS PORTEXAMPLES SUB_FILES SUB_LIST \
TEST_TARGET USES BINARY_ALIAS
_OPTIONS_DEPENDS= PKG FETCH EXTRACT PATCH BUILD LIB RUN TEST
_ALL_OPTIONS_HELPERS= ${_OPTIONS_DEPENDS:S/$/_DEPENDS/} \
${_OPTIONS_DEPENDS:S/$/_DEPENDS_OFF/} \
${_OPTIONS_FLAGS:S/$/_OFF/} ${_OPTIONS_FLAGS} \
CMAKE_BOOL CMAKE_BOOL_OFF CMAKE_OFF CMAKE_ON \
CONFIGURE_ENABLE CONFIGURE_OFF CONFIGURE_ON \
CONFIGURE_WITH IMPLIES MESON_ARGS MESON_DISABLED \
MESON_ENABLED MESON_FALSE MESON_OFF MESON_ON MESON_TRUE \
PREVENTS PREVENTS_MSG QMAKE_OFF QMAKE_ON USE USE_OFF \
VARS VARS_OFF
# The format here is target_family:priority:target-type
_OPTIONS_TARGETS= fetch:300:pre fetch:500:do fetch:700:post \
@ -608,6 +617,18 @@ _OPTIONS_${_target}:= ${_OPTIONS_${_target}} ${_prio}:${_type}-${_target}-${opt}
. endif
.endfor
# Collect which options helpers are defined at this point for
# bsd.sanity.mk later to make sure no other options helper is
# defined after bsd.port.options.mk.
_OPTIONS_HELPERS_SEEN=
.for opt in ${_REALLY_ALL_POSSIBLE_OPTIONS}
. for helper in ${_ALL_OPTIONS_HELPERS}
. if defined(${opt}_${helper})
_OPTIONS_HELPERS_SEEN+= ${opt}_${helper}
. endif
. endfor
.endfor
.undef (SELECTED_OPTIONS)
.undef (DESELECTED_OPTIONS)
# Wait to expand PORT_OPTIONS until the last moment in case something modifies

View File

@ -168,6 +168,18 @@ DEV_ERROR+= "PORT${_type} does not do anything unless the ${_type} option is pre
. endif
.endfor
_BROKEN_OPTIONS_HELPERS=
.for opt in ${_REALLY_ALL_POSSIBLE_OPTIONS}
. for helper in ${_ALL_OPTIONS_HELPERS}
. if defined(${opt}_${helper}) && empty(_OPTIONS_HELPERS_SEEN:M${opt}_${helper})
_BROKEN_OPTIONS_HELPERS+= ${opt}_${helper}
. endif
. endfor
.endfor
.if !empty(_BROKEN_OPTIONS_HELPERS)
DEV_ERROR+= "The following options helpers are incorrectly set after bsd.port.options.mk and are ineffective: ${_BROKEN_OPTIONS_HELPERS}"
.endif
SANITY_UNSUPPORTED= USE_OPENAL USE_FAM USE_MAKESELF USE_ZIP USE_LHA USE_CMAKE \
USE_READLINE USE_ICONV PERL_CONFIGURE PERL_MODBUILD \
USE_PERL5_BUILD USE_PERL5_RUN USE_DISPLAY USE_FUSE \