Add Makefile.modules.3rd, which should simplify apache modules porting.
It can not be used with USE_APACHE knob. Most important knobs: WANT_APACHE= {13,2} Apache version required. if undefined, both apache version are allowed. AP_FAST_BUILD Do ${APXS} -c ${APXS} -i for you AP_GENPLIST Autogenerate a _SIMPLE_ plist: See future commits to know how to use this file.
This commit is contained in:
parent
ec4af15bfa
commit
e50672f6cf
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=107217
99
www/apache2/Makefile.modules.3rd
Normal file
99
www/apache2/Makefile.modules.3rd
Normal file
@ -0,0 +1,99 @@
|
||||
# Third party modules hack
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
# Author: Clement Laforet <clement@FreeBSD.org>
|
||||
# If you have questions, please contact me.
|
||||
#
|
||||
|
||||
.ifdef(USE_APACHE)
|
||||
.error USE_APACHE and Makefile.modules.3rd can't be used together.
|
||||
.endif
|
||||
|
||||
APXS?= ${LOCALBASE}/sbin/apxs
|
||||
MODULENAME?= ${PORTNAME}
|
||||
SHORTMODNAME?= ${MODULENAME:S/mod_//}
|
||||
SRC_FILE?= ${MODULENAME}.c
|
||||
OVERRIDABLE_VARS= SRC_FILE MODULENAME SHORTMODNAME WRKSRC \
|
||||
PKGNAMESUFFIX
|
||||
|
||||
.if exists(${LOCALBASE}/include/apache2/http_core.h)
|
||||
WITH_APACHE2= YES
|
||||
. if defined (WANT_APACHE)
|
||||
. if ${WANT_APACHE} == 13
|
||||
BROKEN= "This module require apache13 and you have apache2 installed"
|
||||
. endif
|
||||
. endif
|
||||
.elif exists(${LOCALBASE}/include/apache/http_core.h)
|
||||
WITH_APACHE13= YES
|
||||
.if exists(${LOCALBASE}/sbin/pkg_info)
|
||||
PKGINFO= ${LOCALBASE}/sbin/pkg_info
|
||||
.else
|
||||
PKGINFO= /usr/sbin/pkg_info
|
||||
.endif
|
||||
APACHE_PORT!= ${PKGINFO} -qo `${PKGINFO} -qW /usr/local/include/apache/http_core.h `
|
||||
. if defined (WANT_APACHE)
|
||||
. if ${WANT_APACHE} == 2
|
||||
BROKEN= "This module require apache2 and you have ${APACHE_PORT} installed"
|
||||
. endif
|
||||
. endif
|
||||
. ifdef(WITH_APACHE2)
|
||||
.error You have `WITH_APACHE2' variable defined either in environment or in make(1) argumentsm. but ${APACHE_PORT} is installed Please undefine and try again.
|
||||
. endif
|
||||
.endif
|
||||
|
||||
.if defined (WANT_APACHE)
|
||||
. if ${WANT_APACHE} == 13
|
||||
WITH_APACHE13= YES
|
||||
. elif ${WANT_APACHE} == 2
|
||||
WITH_APACHE2= YES
|
||||
. else
|
||||
BROKEN= "Unknown apache version"
|
||||
. endif
|
||||
.endif
|
||||
|
||||
.if defined(WITH_APACHE2)
|
||||
AP_BUILDEXT= la
|
||||
PLIST_SUB+= APACHEMODDIR="libexec/apache2"
|
||||
APACHE_PORT= www/apache2
|
||||
AP_VER= 2
|
||||
.else
|
||||
AP_BUILDEXT= so
|
||||
PLIST_SUB+= APACHEMODDIR="libexec/apache"
|
||||
. if !defined(APACHE_PORT)
|
||||
APACHE_PORT= www/apache13
|
||||
. endif
|
||||
AP_VER= 13
|
||||
.endif
|
||||
|
||||
.for VAR in ${OVERRIDABLE_VARS}
|
||||
. if defined(AP${AP_VER}_${VAR})
|
||||
${VAR}= ${AP${AP_VER}_${VAR}}
|
||||
. endif
|
||||
.endfor
|
||||
|
||||
BUILD_DEPENDS+= ${APXS}:${PORTSDIR}/${APACHE_PORT}
|
||||
RUN_DEPENDS+= ${APXS}:${PORTSDIR}/${APACHE_PORT}
|
||||
PLIST_SUB+= AP_NAME="${SHORTMODNAME}"
|
||||
PLIST_SUB+= AP_MODULE="${MODULENAME}.so"
|
||||
.if defined(AP_GENPLIST)
|
||||
PLIST?= ${WRKDIR}/ap-plist
|
||||
.endif
|
||||
|
||||
.if defined(AP_FAST_BUILD)
|
||||
|
||||
ap-gen-plist:
|
||||
.if defined(AP_GENPLIST)
|
||||
@${ECHO} "===> Generating apache plist"
|
||||
@${ECHO} "%%APACHEMODDIR%%/%%AP_MODULE%%" > ${PLIST}
|
||||
@${ECHO} "@exec %D/sbin/apxs -e -A -n %%AP_NAME%% %D/%F" >> ${PLIST}
|
||||
@${ECHO} "@unexec %D/sbin/apxs -e -A -n %%AP_NAME%% %D/%F" >> ${PLIST}
|
||||
.else
|
||||
@${DO_NADA}
|
||||
.endif
|
||||
do-build: ap-gen-plist
|
||||
@cd ${WRKSRC} && ${APXS} -c -o ${MODULENAME}.${AP_BUILDEXT} ${SRC_FILE}
|
||||
|
||||
do-install:
|
||||
@${APXS} -i -a -n ${SHORTMODNAME} ${WRKSRC}/${MODULENAME}.${AP_BUILDEXT}
|
||||
.endif
|
99
www/apache20/Makefile.modules.3rd
Normal file
99
www/apache20/Makefile.modules.3rd
Normal file
@ -0,0 +1,99 @@
|
||||
# Third party modules hack
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
# Author: Clement Laforet <clement@FreeBSD.org>
|
||||
# If you have questions, please contact me.
|
||||
#
|
||||
|
||||
.ifdef(USE_APACHE)
|
||||
.error USE_APACHE and Makefile.modules.3rd can't be used together.
|
||||
.endif
|
||||
|
||||
APXS?= ${LOCALBASE}/sbin/apxs
|
||||
MODULENAME?= ${PORTNAME}
|
||||
SHORTMODNAME?= ${MODULENAME:S/mod_//}
|
||||
SRC_FILE?= ${MODULENAME}.c
|
||||
OVERRIDABLE_VARS= SRC_FILE MODULENAME SHORTMODNAME WRKSRC \
|
||||
PKGNAMESUFFIX
|
||||
|
||||
.if exists(${LOCALBASE}/include/apache2/http_core.h)
|
||||
WITH_APACHE2= YES
|
||||
. if defined (WANT_APACHE)
|
||||
. if ${WANT_APACHE} == 13
|
||||
BROKEN= "This module require apache13 and you have apache2 installed"
|
||||
. endif
|
||||
. endif
|
||||
.elif exists(${LOCALBASE}/include/apache/http_core.h)
|
||||
WITH_APACHE13= YES
|
||||
.if exists(${LOCALBASE}/sbin/pkg_info)
|
||||
PKGINFO= ${LOCALBASE}/sbin/pkg_info
|
||||
.else
|
||||
PKGINFO= /usr/sbin/pkg_info
|
||||
.endif
|
||||
APACHE_PORT!= ${PKGINFO} -qo `${PKGINFO} -qW /usr/local/include/apache/http_core.h `
|
||||
. if defined (WANT_APACHE)
|
||||
. if ${WANT_APACHE} == 2
|
||||
BROKEN= "This module require apache2 and you have ${APACHE_PORT} installed"
|
||||
. endif
|
||||
. endif
|
||||
. ifdef(WITH_APACHE2)
|
||||
.error You have `WITH_APACHE2' variable defined either in environment or in make(1) argumentsm. but ${APACHE_PORT} is installed Please undefine and try again.
|
||||
. endif
|
||||
.endif
|
||||
|
||||
.if defined (WANT_APACHE)
|
||||
. if ${WANT_APACHE} == 13
|
||||
WITH_APACHE13= YES
|
||||
. elif ${WANT_APACHE} == 2
|
||||
WITH_APACHE2= YES
|
||||
. else
|
||||
BROKEN= "Unknown apache version"
|
||||
. endif
|
||||
.endif
|
||||
|
||||
.if defined(WITH_APACHE2)
|
||||
AP_BUILDEXT= la
|
||||
PLIST_SUB+= APACHEMODDIR="libexec/apache2"
|
||||
APACHE_PORT= www/apache2
|
||||
AP_VER= 2
|
||||
.else
|
||||
AP_BUILDEXT= so
|
||||
PLIST_SUB+= APACHEMODDIR="libexec/apache"
|
||||
. if !defined(APACHE_PORT)
|
||||
APACHE_PORT= www/apache13
|
||||
. endif
|
||||
AP_VER= 13
|
||||
.endif
|
||||
|
||||
.for VAR in ${OVERRIDABLE_VARS}
|
||||
. if defined(AP${AP_VER}_${VAR})
|
||||
${VAR}= ${AP${AP_VER}_${VAR}}
|
||||
. endif
|
||||
.endfor
|
||||
|
||||
BUILD_DEPENDS+= ${APXS}:${PORTSDIR}/${APACHE_PORT}
|
||||
RUN_DEPENDS+= ${APXS}:${PORTSDIR}/${APACHE_PORT}
|
||||
PLIST_SUB+= AP_NAME="${SHORTMODNAME}"
|
||||
PLIST_SUB+= AP_MODULE="${MODULENAME}.so"
|
||||
.if defined(AP_GENPLIST)
|
||||
PLIST?= ${WRKDIR}/ap-plist
|
||||
.endif
|
||||
|
||||
.if defined(AP_FAST_BUILD)
|
||||
|
||||
ap-gen-plist:
|
||||
.if defined(AP_GENPLIST)
|
||||
@${ECHO} "===> Generating apache plist"
|
||||
@${ECHO} "%%APACHEMODDIR%%/%%AP_MODULE%%" > ${PLIST}
|
||||
@${ECHO} "@exec %D/sbin/apxs -e -A -n %%AP_NAME%% %D/%F" >> ${PLIST}
|
||||
@${ECHO} "@unexec %D/sbin/apxs -e -A -n %%AP_NAME%% %D/%F" >> ${PLIST}
|
||||
.else
|
||||
@${DO_NADA}
|
||||
.endif
|
||||
do-build: ap-gen-plist
|
||||
@cd ${WRKSRC} && ${APXS} -c -o ${MODULENAME}.${AP_BUILDEXT} ${SRC_FILE}
|
||||
|
||||
do-install:
|
||||
@${APXS} -i -a -n ${SHORTMODNAME} ${WRKSRC}/${MODULENAME}.${AP_BUILDEXT}
|
||||
.endif
|
Loading…
Reference in New Issue
Block a user