Annotation of pkgsrc/www/apache/Makefile, Revision 1.109
1.109 ! jlam 1: # $NetBSD: Makefile,v 1.108 2002/10/04 19:14:02 tron Exp $
1.25 tv 2: #
3: # This pkg does not compile in mod_ssl, only the `mod_ssl EAPI' (a set of
4: # code hooks that allow mod_ssl to be compiled separately later, if desired).
1.1 cjs 5:
1.102 wiz 6: DISTNAME= apache_${APACHE_VERSION}
7: PKGNAME= apache-${APACHE_VERSION}
1.108 tron 8: APACHE_VERSION= 1.3.27
1.25 tv 9: CATEGORIES= www
1.65 kim 10: MASTER_SITES= http://httpd.apache.org/dist/httpd/ \
1.92 jlam 11: http://www.apache.de/dist/httpd/
1.98 fredb 12: # This must be defined, before it may be referred to on the LHS.
13: EXTRACT_SUFX= .tar.gz
1.58 itojun 14:
1.92 jlam 15: APACHE_DIST= ${DISTNAME}${EXTRACT_SUFX}
16: DISTFILES= ${APACHE_DIST}
17:
18: NETBSD_LOGO= sitedrivenby.gif
19: SITES_${NETBSD_LOGO}= http://www.netbsd.org/images/logos/
20: DISTFILES+= ${NETBSD_LOGO}
21:
1.108 tron 22: MODSSL_VERSION= 2.8.11
1.102 wiz 23: MODSSL_DISTNAME= mod_ssl-${MODSSL_VERSION}-${APACHE_VERSION}
1.92 jlam 24: MODSSL_DIST= ${MODSSL_DISTNAME}${EXTRACT_SUFX}
25: MODSSL_SRC= ${WRKDIR}/${MODSSL_DISTNAME}
1.97 tron 26: SITES_${MODSSL_DIST}= http://www.modssl.org/source/ \
27: ftp://ftp.pca.dfn.de/pub/tools/net/mod_ssl/source/ \
1.99 tron 28: ftp://ftp.funet.fi/pub/crypt/cryptography/libs/modssl/source/
1.92 jlam 29: DISTFILES+= ${MODSSL_DIST}
1.67 jlam 30:
1.49 jlam 31: MAINTAINER= jlam@netbsd.org
1.57 jlam 32: HOMEPAGE= http://httpd.apache.org/
1.102 wiz 33: COMMENT= Apache HTTP (Web) server
1.25 tv 34:
1.102 wiz 35: CONFLICTS= apache-*ssl-[0-9]* apache6-[0-9]*
1.25 tv 36:
37: EXTRACT_ONLY= ${DISTFILES:N*.gif}
1.104 jlam 38: USE_BUILDLINK2= YES
1.78 jlam 39: HAS_CONFIGURE= YES
1.63 jlam 40: CONFIGURE_ARGS+= --with-layout="${WRKDIR}/config.layout:pkgsrc"
41: CONFIGURE_ARGS+= --enable-module=most \
1.57 jlam 42: --enable-module=auth_db \
1.48 jlam 43: --disable-module=auth_dbm
1.63 jlam 44: CONFIGURE_ARGS+= --enable-rule=EAPI \
45: --disable-module=ssl
1.102 wiz 46: CONFIGURE_ARGS+= --without-confadjust
1.57 jlam 47: CONFIGURE_ARGS+= --with-perl=${PERL5}
1.49 jlam 48: CONFIGURE_ARGS+= --with-port=80
1.72 jlam 49: CONFIGURE_ENV+= OPTIM="${APACHE_CUSTOM_CFLAGS}"
1.104 jlam 50: CONFIGURE_ENV+= EAPI_MM="${BUILDLINK_PREFIX.libmm}"
1.100 taca 51: CONFIGURE_ENV+= BINOWN=${BINOWN} BINGRP=${BINGRP}
1.21 tv 52:
1.32 tron 53: .include "../../mk/bsd.prefs.mk"
54:
1.102 wiz 55: .if empty(STRIPFLAG)
56: CONFIGURE_ARGS+= --without-execstrip
57: .endif
58:
1.84 jlam 59: PKG_SYSCONFSUBDIR?= httpd
1.64 kim 60:
1.102 wiz 61: APACHE_USER?= www
62: APACHE_GROUP?= www
63: BUILD_DEFS+= APACHE_USER APACHE_GROUP
64:
65: CONFIGURE_ARGS+= --server-uid=${APACHE_USER}
66: CONFIGURE_ARGS+= --server-gid=${APACHE_GROUP}
67:
1.32 tron 68: .if defined(APACHE_SUEXEC) && ${APACHE_SUEXEC} == YES
1.86 jlam 69: APACHE_SUEXEC_DOCROOT?= ${PREFIX}/share/httpd/htdocs
70: APACHE_SUEXEC_PATH= /bin:/usr/bin:${PREFIX}/bin:/usr/local/bin
71: APACHE_SUEXEC_CONFIGURE_ARGS+= \
1.102 wiz 72: --suexec-caller=${APACHE_USER} \
1.86 jlam 73: --suexec-safepath='${APACHE_SUEXEC_PATH}' \
74: --suexec-docroot=${APACHE_SUEXEC_DOCROOT}
1.57 jlam 75: CONFIGURE_ARGS+= --enable-suexec \
1.86 jlam 76: ${APACHE_SUEXEC_CONFIGURE_ARGS:M--suexec-*}
1.48 jlam 77: PLIST_SRC= ${PKGDIR}/PLIST.suexec
1.86 jlam 78: BUILD_DEFS+= APACHE_SUEXEC_CONFIGURE_ARGS
1.21 tv 79: .endif
80:
1.73 jlam 81: # Note that there is NO static compile module hook here. This is intentional.
82: # Under Apache 1.3, modules can be compiled to link dynamically to the server
83: # using the "apxs" program. See apxs(8).
1.102 wiz 84: #
1.48 jlam 85: .if !defined(NOPIC)
1.49 jlam 86: CONFIGURE_ARGS+= --enable-module=so # requires dlopen()
1.102 wiz 87: _ENABLE_MOD= --enable-shared
1.48 jlam 88: PLIST_SRC+= ${PKGDIR}/PLIST.shared
89: .else
1.102 wiz 90: _ENABLE_MOD= --enable-module
1.48 jlam 91: .endif
1.102 wiz 92: PLIST_SRC+= ${PKGDIR}/PLIST
1.48 jlam 93:
1.102 wiz 94: CONFIGURE_ARGS+= ${_ENABLE_MOD}=proxy
95: CONFIGURE_ARGS+= ${_ENABLE_MOD}=define # from mod_ssl pkg.addon
1.48 jlam 96:
1.72 jlam 97: APACHE_CUSTOM_CFLAGS?= # empty
98:
1.21 tv 99: .if defined(APACHE_PERF_TUNING) && ${APACHE_PERF_TUNING} == YES
1.72 jlam 100: APACHE_CUSTOM_CFLAGS+= -DBUFFERED_LOGS
101: APACHE_CUSTOM_CFLAGS+= -O6 -fomit-frame-pointer -fexpensive-optimizations
1.77 jlam 102: .endif
1.107 grant 103:
104: # Explicitly turn on large file support
105: APACHE_CUSTOM_CFLAGS+= -D_LARGEFILE_SOURCE
106: APACHE_CUSTOM_CFLAGS+= -D_FILE_OFFSET_BITS=64
1.77 jlam 107:
1.80 jlam 108: # On NetBSD ELF platforms, we need to link libgcc.a whole-archive so that
109: # certain symbols from the C++ implementation (__get_eh_context, etc.)
110: # referenced by DSOs written in C++ will resolve correctly.
1.77 jlam 111: #
1.80 jlam 112: .if (${OPSYS} == "NetBSD") && (${OBJECT_FMT} == "ELF")
1.77 jlam 113: LINK_LIBGCC_LDFLAGS= -Wl,--whole-archive -lgcc -Wl,--no-whole-archive
114: MAKE_ENV+= LINK_LIBGCC_LDFLAGS="${LINK_LIBGCC_LDFLAGS}"
1.21 tv 115: .endif
1.10 tv 116:
1.44 veego 117: .if (${OPSYS} == "SunOS")
1.78 jlam 118: LDFLAGS+= -Wl,-R/usr/ucblib -L/usr/ucblib
1.109 ! jlam 119: CONFIGURE_ENV+= INCLUDES="${BUILDLINK_CPPFLAGS.db}"
1.44 veego 120: CONFIGURE_ENV+= LIBS="-ldbm -ldb2"
1.78 jlam 121: BUILDLINK_DEPENDS.db= db>=2.7.7
1.109 ! jlam 122: . include "../../databases/db/buildlink2.mk"
1.44 veego 123: .endif
124:
1.72 jlam 125: BUILD_DEFS+= APACHE_CUSTOM_CFLAGS
126: BUILD_DEFS+= APACHE_PERF_TUNING
127: BUILD_DEFS+= APACHE_SUEXEC
1.32 tron 128:
1.82 jlam 129: EGDIR= ${PREFIX}/share/examples/httpd
1.55 jlam 130:
1.84 jlam 131: CONF_FILES= ${EGDIR}/httpd.conf.default ${PKG_SYSCONFDIR}/httpd.conf
132: SUPPORT_FILES= ${EGDIR}/magic.default ${PKG_SYSCONFDIR}/magic
133: SUPPORT_FILES+= ${EGDIR}/mime.types.default ${PKG_SYSCONFDIR}/mime.types
1.83 jlam 134: RCD_SCRIPTS= apache
1.82 jlam 135:
1.92 jlam 136: MAKE_DIRS= ${PREFIX}/share/httpd
137: MAKE_DIRS+= ${PREFIX}/share/httpd/htdocs
1.102 wiz 138: OWN_DIRS+= ${PREFIX}/lib/httpd
139: OWN_DIRS+= /var/httpd
140: OWN_DIRS+= /var/log/httpd
141: OWN_DIRS_PERMS+= /var/httpd/proxy ${APACHE_USER} ${APACHE_GROUP} 0755
142:
143: PKG_GROUPS= ${APACHE_GROUP}
144: PKG_USERS= ${APACHE_USER}:${APACHE_GROUP}::Apache\\ user
1.14 cjs 145:
1.25 tv 146: post-extract:
1.48 jlam 147: ${CP} ${FILESDIR}/ap_include_extern.h ${WRKSRC}/src/include
1.63 jlam 148: ${CP} ${MODSSL_SRC}/pkg.addon/*.c ${WRKSRC}/src/modules/extra
149: ${CP} ${MODSSL_SRC}/pkg.addon/*.html ${WRKSRC}/htdocs/manual/mod
150: ${CP} ${MODSSL_SRC}/pkg.eapi/*.c ${WRKSRC}/src/ap
151: ${CP} ${MODSSL_SRC}/pkg.eapi/*.h ${WRKSRC}/src/include
1.25 tv 152:
153: pre-patch:
1.57 jlam 154: cd ${WRKSRC} && ${CAT} \
1.63 jlam 155: ${MODSSL_SRC}/pkg.addon/addon.patch \
1.96 jdolecek 156: ${MODSSL_SRC}/pkg.eapi/eapi.patch \
1.63 jlam 157: ${MODSSL_SRC}/pkg.sslcfg/sslcfg.patch \
158: ${MODSSL_SRC}/pkg.sslmod/sslmod.patch \
159: ${MODSSL_SRC}/pkg.sslsup/sslsup.patch \
1.25 tv 160: | ${PATCH} ${PATCH_ARGS}
1.73 jlam 161: cd ${WRKSRC} && ${TAIL} +160 \
1.63 jlam 162: ${MODSSL_SRC}/pkg.ssldoc/ssldoc.patch \
1.30 tv 163: | ${PATCH} ${PATCH_ARGS}
1.74 hubertf 164: ${FIND} ${WRKSRC} -name '*.orig' -print | ${XARGS} ${RM} -f
1.21 tv 165:
1.79 veego 166: post-patch:
1.81 jlam 167: cd ${WRKSRC}/src/support; \
168: ${SED} -e "s|@INSTALL@|"`${TYPE} ${INSTALL} | ${AWK} '{ print $$NF }'`" -c -o ${LIBOWN} -g ${LIBGRP}|" \
169: apxs.pl > apxs.pl.sed; \
170: ${MV} apxs.pl.sed apxs.pl
1.79 veego 171:
1.63 jlam 172: pre-configure:
1.86 jlam 173: @${SED} ${FILES_SUBST_SED} \
1.63 jlam 174: ${FILESDIR}/config.layout > ${WRKDIR}/config.layout
175:
1.66 jlam 176: pre-install:
1.74 hubertf 177: ${FIND} ${WRKSRC}/htdocs -name '*.orig' -print | ${XARGS} ${RM} -f
1.33 tron 178:
1.14 cjs 179: post-install:
1.48 jlam 180: .if !defined(NOPIC)
181: cd ${PREFIX}/lib/httpd; ${MV} libproxy.so mod_proxy.so
182: .endif
1.64 kim 183: ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/httpd
1.73 jlam 184: for file in httpd.conf magic mime.types; do \
1.84 jlam 185: ${INSTALL_DATA} ${PKG_SYSCONFDIR}/$${file}.default \
1.64 kim 186: ${PREFIX}/share/examples/httpd; \
1.84 jlam 187: ${RM} -f ${PKG_SYSCONFDIR}/$${file}.default; \
1.64 kim 188: done
1.48 jlam 189: ${INSTALL_DATA} ${DISTDIR}/sitedrivenby.gif ${PREFIX}/share/httpd/htdocs
1.8 frueauf 190:
1.104 jlam 191: .include "../../devel/libmm/buildlink2.mk"
192: .include "../../textproc/expat/buildlink2.mk"
193:
1.82 jlam 194: .include "../../mk/bsd.pkg.install.mk"
1.10 tv 195: .include "../../mk/bsd.pkg.mk"
CVSweb <webmaster@jp.NetBSD.org>