# $NetBSD: apache.mk,v 1.32 2019/12/28 11:43:58 wiz Exp $ # # This file is meant to be included by packages that require an apache # web server. # # User-settable variables: # # PKG_APACHE_DEFAULT # The default apache server to use and install. If there already # is an apache installed, this will have no effect. # # Possible values: apache24 # # Package-settable variables: # # PKG_APACHE_ACCEPTED # The list of apache packages that can be used as a dependency for # the package. # # Possible values: (see PKG_APACHE_DEFAULT) # # USE_APR # If this variable is set to "yes", a full dependency to the # Apache Portable Runtime library will be added. # # Variables defined by this file: # # PKG_APACHE # The Apache version that is actually used. # # Possible values: (see PKG_APACHE_DEFAULT) # # APACHE_PKG_PREFIX # The package name prefix for apache modules. # # Possible values: ap24 # .if !defined(APACHE_MK) APACHE_MK= # defined _VARGROUPS+= apache _USER_VARS.apache= PKG_APACHE_DEFAULT _PKG_VARS.apache= PKG_APACHE_ACCEPTED USE_APR _SYS_VARS.apache= PKG_APACHE APACHE_PKG_PREFIX .include "bsd.fast.prefs.mk" PKG_APACHE_DEFAULT?= apache24 BUILD_DEFS+= PKG_APACHE_DEFAULT BUILD_DEFS_EFFECTS+= PKG_APACHE APACHE_PKG_PREFIX # Package-settable variables PKG_APACHE_ACCEPTED?= ${_PKG_APACHES} USE_APR?= no # The available apache packages: _PKG_APACHES= apache24 _APACHE_PKGBASE.apache24= apache-2.[456789]* _APACHE_PKG_PREFIX.apache24= ap24 _APACHE_PKGSRCDIR.apache24= ../../www/apache24 # # Sanity checks. # .if empty(_PKG_APACHES:M${PKG_APACHE_DEFAULT}) _PKG_APACHE_MESSAGE:= "[apache.mk] Invalid apache package \""${PKG_APACHE_DEFAULT:Q}"\" in PKG_APACHE_DEFAULT." PKG_FAIL_REASON+= ${_PKG_APACHE_MESSAGE} PKG_APACHE_DEFAULT= apache24 .endif .for _ap_ in ${PKG_APACHE_ACCEPTED} . if empty(_PKG_APACHES:M${_ap_}) PKG_FAIL_REASON+= "[apache.mk] Invalid apache package \""${_ap_:Q}"\" in PKG_APACHE_ACCEPTED." PKG_APACHE_ACCEPTED= # none . endif .endfor # Mark the acceptable apaches and check which apache packages are installed. .for _ap_ in ${PKG_APACHE_ACCEPTED} _APACHE_OK.${_ap_}= yes _APACHE_INSTALLED.${_ap_}!= \ if ${PKG_INFO} -qe ${_APACHE_PKGBASE.${_ap_}:Q}; then \ ${ECHO} yes; \ else \ ${ECHO} no; \ fi .endfor .for ap in ${_PKG_APACHES} _APACHE_OK.${ap}?= no .endfor .undef PKG_APACHE # Use one of the installed apaches, ... .for _ap_ in ${PKG_APACHE_ACCEPTED} . if ${_APACHE_INSTALLED.${_ap_}} == "yes" PKG_APACHE?= ${_ap_} . endif .endfor # ... otherwise, prefer the default one if it's accepted, ... .if ${_APACHE_OK.${PKG_APACHE_DEFAULT}} == "yes" PKG_APACHE?= ${PKG_APACHE_DEFAULT} .endif # ... otherwise, just use the first accepted apache. .for ap in ${PKG_APACHE_ACCEPTED} PKG_APACHE?= ${ap} .endfor .if defined(PKG_APACHE) . include "${_APACHE_PKGSRCDIR.${PKG_APACHE}}/buildlink3.mk" .else PKG_FAIL_REASON+= "[apache.mk] No acceptable apache package found." PKG_APACHE= none .endif APACHE_PKG_PREFIX= ${_APACHE_PKG_PREFIX.${PKG_APACHE}} .if !empty(USE_APR:M[Yy][Ee][Ss]) . include "../../devel/apr/buildlink3.mk" . include "../../devel/apr-util/buildlink3.mk" .endif # # Variable assignment for multi-apache packages MULTI+= PKG_APACHE=${PKG_APACHE} .endif # APACHE_MK