diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk --- a/Mk/bsd.port.mk +++ b/Mk/bsd.port.mk @@ -1329,11 +1329,25 @@ TMPDIR?= /tmp . endif # defined(PACKAGE_BUILDING) -. if defined(WITH_DEBUG_PORTS) -. if ${WITH_DEBUG_PORTS:M${PKGORIGIN}} -WITH_DEBUG= yes +. for feature in ${_LIST_OF_WITH_FEATURES} +. if defined(WITH_${feature:tu}_PORTS) && defined(WITHOUT_${feature:tu}_PORTS) \ + && "${WITH_${feature:tu}_PORTS:M${PKGORIGIN}}" == "${WITHOUT_${feature:tu}_PORTS:M${PKGORIGIN}}" \ + && !empty(WITH_${feature:tu}_PORTS:M${PKGORIGIN}) +. error "Both WITH_${feature:tu}_PORTS and WITHOUT_${feature:tu}_PORTS contain the same origin ${PKGORIGIN}" . endif -. endif + +. if ${_DEFAULT_WITH_FEATURES:M${feature}} +_WITH_OR_WITHOUT= WITHOUT +. else +_WITH_OR_WITHOUT= WITH +. endif + +. if defined(${_WITH_OR_WITHOUT}_${feature:tu}_PORTS) +. if ${${_WITH_OR_WITHOUT}_${feature:tu}_PORTS:M${PKGORIGIN}} +${_WITH_OR_WITHOUT}_${feature:tu}= yes +. endif +. endif +. endfor . if defined(USE_LTO) WITH_LTO= ${USE_LTO}