/[gentoo-x86]/eclass/apache-2.eclass
Gentoo

Diff of /eclass/apache-2.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.11 Revision 1.35
1# Copyright 1999-2007 Gentoo Foundation 1# Copyright 1999-2014 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/eclass/apache-2.eclass,v 1.11 2008/03/23 13:03:53 hollow Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/apache-2.eclass,v 1.35 2014/02/12 00:03:21 vapier Exp $
4 4
5# @ECLASS: apache-2.eclass 5# @ECLASS: apache-2.eclass
6# @MAINTAINER: 6# @MAINTAINER:
7# apache-devs@gentoo.org 7# apache-devs@gentoo.org
8# @BLURB: Provides a common set of functions for apache-2.x ebuilds 8# @BLURB: Provides a common set of functions for apache-2.x ebuilds
9# @DESCRIPTION: 9# @DESCRIPTION:
10# This eclass handles apache-2.x ebuild functions such as LoadModule generation 10# This eclass handles apache-2.x ebuild functions such as LoadModule generation
11# and inter-module dependency checking. 11# and inter-module dependency checking.
12 12
13inherit autotools confutils eutils flag-o-matic multilib 13inherit autotools eutils flag-o-matic multilib ssl-cert user toolchain-funcs
14 14
15# ============================================================================== 15# ==============================================================================
16# INTERNAL VARIABLES 16# INTERNAL VARIABLES
17# ============================================================================== 17# ==============================================================================
18 18
19# @ECLASS-VARIABLE: GENTOO_PATCHNAME 19# @ECLASS-VARIABLE: GENTOO_PATCHNAME
20# @DESCRIPTION: 20# @DESCRIPTION:
21# This internal variable contains the prefix for the patch tarball 21# This internal variable contains the prefix for the patch tarball.
22GENTOO_PATCHNAME="gentoo-${PF}" 22# Defaults to the full name and version (including revision) of the package.
23# If you want to override this in an ebuild, use:
24# ORIG_PR="(revision of Gentoo stuff you want)"
25# GENTOO_PATCHNAME="gentoo-${PN}-${PV}${ORIG_PR:+-${ORIG_PR}}"
26[[ -n "$GENTOO_PATCHNAME" ]] || GENTOO_PATCHNAME="gentoo-${PF}"
23 27
24# @ECLASS-VARIABLE: GENTOO_PATCHDIR 28# @ECLASS-VARIABLE: GENTOO_PATCHDIR
25# @DESCRIPTION: 29# @DESCRIPTION:
26# This internal variable contains the working directory where patches and config 30# This internal variable contains the working directory where patches and config
27# files are located 31# files are located.
32# Defaults to the patchset name appended to the working directory.
28GENTOO_PATCHDIR="${WORKDIR}/${GENTOO_PATCHNAME}" 33[[ -n "$GENTOO_PATCHDIR" ]] || GENTOO_PATCHDIR="${WORKDIR}/${GENTOO_PATCHNAME}"
29 34
30# @VARIABLE: GENTOO_DEVELOPER 35# @VARIABLE: GENTOO_DEVELOPER
31# @DESCRIPTION: 36# @DESCRIPTION:
32# This variable needs to be set in the ebuild and contains the name of the 37# This variable needs to be set in the ebuild and contains the name of the
33# gentoo developer who created the patch tarball 38# gentoo developer who created the patch tarball
35# @VARIABLE: GENTOO_PATCHSTAMP 40# @VARIABLE: GENTOO_PATCHSTAMP
36# @DESCRIPTION: 41# @DESCRIPTION:
37# This variable needs to be set in the ebuild and contains the date the patch 42# This variable needs to be set in the ebuild and contains the date the patch
38# tarball was created at in YYYYMMDD format 43# tarball was created at in YYYYMMDD format
39 44
45# @VARIABLE: GENTOO_PATCH_A
46# @DESCRIPTION:
47# This variable should contain the entire filename of patch tarball.
48# Defaults to the name of the patchset, with a datestamp.
49[[ -n "$GENTOO_PATCH_A" ]] || GENTOO_PATCH_A="${GENTOO_PATCHNAME}-${GENTOO_PATCHSTAMP}.tar.bz2"
50
40SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2 51SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2
41 http://dev.gentoo.org/~${GENTOO_DEVELOPER}/dist/apache/${GENTOO_PATCHNAME}-${GENTOO_PATCHSTAMP}.tar.bz2" 52 http://dev.gentoo.org/~${GENTOO_DEVELOPER}/dist/apache/${GENTOO_PATCH_A}"
42 53
43# @VARIABLE: IUSE_MPMS_FORK 54# @VARIABLE: IUSE_MPMS_FORK
44# @DESCRIPTION: 55# @DESCRIPTION:
45# This variable needs to be set in the ebuild and contains a list of forking 56# This variable needs to be set in the ebuild and contains a list of forking
46# (i.e. non-threaded) MPMs 57# (i.e. non-threaded) MPMs
66 IUSE="${IUSE} apache2_mpms_${mpm}" 77 IUSE="${IUSE} apache2_mpms_${mpm}"
67done 78done
68 79
69DEPEND="dev-lang/perl 80DEPEND="dev-lang/perl
70 =dev-libs/apr-1* 81 =dev-libs/apr-1*
71 =dev-libs/apr-util-1* 82 =dev-libs/apr-util-1*[ldap?]
72 dev-libs/libpcre 83 dev-libs/libpcre
73 ldap? ( =net-nds/openldap-2* ) 84 ldap? ( =net-nds/openldap-2* )
74 selinux? ( sec-policy/selinux-apache ) 85 selinux? ( sec-policy/selinux-apache )
75 ssl? ( >=dev-libs/openssl-0.9.8f ) 86 ssl? ( >=dev-libs/openssl-0.9.8f )
76 !=www-servers/apache-1*" 87 !=www-servers/apache-1*"
158 ewarn "You have disabled one or more required modules" 169 ewarn "You have disabled one or more required modules"
159 ewarn "for the default apache configuration." 170 ewarn "for the default apache configuration."
160 ewarn "Although this is not an error, please be" 171 ewarn "Although this is not an error, please be"
161 ewarn "aware that this setup is UNSUPPORTED." 172 ewarn "aware that this setup is UNSUPPORTED."
162 ewarn 173 ewarn
163 ebeep 10
164 fi 174 fi
165} 175}
166 176
167# @VARIABLE: MODULE_DEPENDS 177# @VARIABLE: MODULE_DEPENDS
168# @DESCRIPTION: 178# @DESCRIPTION:
217 fi 227 fi
218 228
219 MY_CONF="--enable-so=static" 229 MY_CONF="--enable-so=static"
220 230
221 if use ldap ; then 231 if use ldap ; then
222 confutils_use_depend_built_with_all ldap dev-libs/apr-util ldap
223 MY_CONF="${MY_CONF} --enable-authnz_ldap=${mod_type} --enable-ldap=${mod_type}" 232 MY_CONF="${MY_CONF} --enable-authnz_ldap=${mod_type} --enable-ldap=${mod_type}"
224 MY_MODS="${MY_MODS} ldap authnz_ldap" 233 MY_MODS="${MY_MODS} ldap authnz_ldap"
225 else 234 else
226 MY_CONF="${MY_CONF} --disable-authnz_ldap --disable-ldap" 235 MY_CONF="${MY_CONF} --disable-authnz_ldap --disable-ldap"
227 fi 236 fi
229 if use ssl ; then 238 if use ssl ; then
230 MY_CONF="${MY_CONF} --with-ssl=/usr --enable-ssl=${mod_type}" 239 MY_CONF="${MY_CONF} --with-ssl=/usr --enable-ssl=${mod_type}"
231 MY_MODS="${MY_MODS} ssl" 240 MY_MODS="${MY_MODS} ssl"
232 else 241 else
233 MY_CONF="${MY_CONF} --without-ssl --disable-ssl" 242 MY_CONF="${MY_CONF} --without-ssl --disable-ssl"
234 fi
235
236 if use threads || has ${MY_MPM} ${IUSE_MPMS_THREAD} ; then
237 MY_CONF="${MY_CONF} --enable-cgid=${mod_type}"
238 MY_MODS="${MY_MODS} cgid"
239 else
240 MY_CONF="${MY_CONF} --enable-cgi=${mod_type}"
241 MY_MODS="${MY_MODS} cgi"
242 fi 243 fi
243 244
244 if use suexec ; then 245 if use suexec ; then
245 elog "You can manipulate several configure options of suexec" 246 elog "You can manipulate several configure options of suexec"
246 elog "through the following environment variables:" 247 elog "through the following environment variables:"
371 fi 372 fi
372 373
373 elog "Please note that you need SysV IPC support in your kernel." 374 elog "Please note that you need SysV IPC support in your kernel."
374 elog "Make sure CONFIG_SYSVIPC=y is set." 375 elog "Make sure CONFIG_SYSVIPC=y is set."
375 elog 376 elog
376}
377 377
378 if use userland_BSD; then
379 elog "On BSD systems you need to add the following line to /boot/loader.conf:"
380 elog " accf_http_load=\"YES\""
381 elog
382 fi
383}
384
378# @FUNCTION: apache-2_src_unpack 385# @FUNCTION: apache-2_src_prepare
379# @DESCRIPTION: 386# @DESCRIPTION:
380# This function applies patches, configures a custom file-system layout and 387# This function applies patches, configures a custom file-system layout and
381# rebuilds the configure scripts. 388# rebuilds the configure scripts.
382apache-2_src_unpack() { 389apache-2_src_prepare() {
383 unpack ${A} 390 # 03_all_gentoo-apache-tools.patch injects -Wl,-z,now, which is not a good
384 cd "${S}" 391 # idea for everyone
392 case ${CHOST} in
393 *-linux-gnu|*-solaris*|*-freebsd*)
394 # do nothing, these use GNU binutils
395 :
396 ;;
397 *-darwin*)
398 sed -i -e 's/-Wl,-z,now/-Wl,-bind_at_load/g' \
399 "${GENTOO_PATCHDIR}"/patches/03_all_gentoo_apache-tools.patch
400 ;;
401 *)
402 # patch it out to be like upstream
403 sed -i -e 's/-Wl,-z,now//g' \
404 "${GENTOO_PATCHDIR}"/patches/03_all_gentoo_apache-tools.patch
405 ;;
406 esac
385 407
386 # Use correct multilib libdir in gentoo patches 408 # Use correct multilib libdir in gentoo patches
387 sed -i -e "s:/usr/lib:/usr/$(get_libdir):g" \ 409 sed -i -e "s:/usr/lib:/usr/$(get_libdir):g" \
388 "${GENTOO_PATCHDIR}"/{conf/httpd.conf,init/*,patches/config.layout} \ 410 "${GENTOO_PATCHDIR}"/{conf/httpd.conf,init/*,patches/config.layout} \
389 || die "libdir sed failed" 411 || die "libdir sed failed"
399 mv docs/man/{httpd,apache2}.8 421 mv docs/man/{httpd,apache2}.8
400 sed -i -e 's/httpd\.8/apache2.8/g' Makefile.in 422 sed -i -e 's/httpd\.8/apache2.8/g' Makefile.in
401 423
402 # patched-in MPMs need the build environment rebuilt 424 # patched-in MPMs need the build environment rebuilt
403 sed -i -e '/sinclude/d' configure.in 425 sed -i -e '/sinclude/d' configure.in
404 AT_GNUCONF_UPDATE=yes AT_M4DIR=build eautoreconf 426 AT_M4DIR=build eautoreconf
405}
406 427
428 # This package really should upgrade to using pcre's .pc file.
429 cat <<-\EOF >"${T}"/pcre-config
430 #!/bin/sh
431 [ "${flag}" = "--version" ] && set -- --modversion
432 exec ${PKG_CONFIG} libpcre "$@"
433 EOF
434 chmod a+x "${T}"/pcre-config
435}
436
407# @FUNCTION: apache-2_src_compile 437# @FUNCTION: apache-2_src_configure
408# @DESCRIPTION: 438# @DESCRIPTION:
409# This function adds compiler flags and runs econf and emake based on MY_MPM and 439# This function adds compiler flags and runs econf and emake based on MY_MPM and
410# MY_CONF 440# MY_CONF
411apache-2_src_compile() { 441apache-2_src_configure() {
442 tc-export PKG_CONFIG
443
444 # Sanity check in case people have bad mounts/TPE settings. #500928
445 if ! "${T}"/pcre-config --help >/dev/null ; then
446 eerror "Could not execute ${T}/pcre-config; do you have bad mount"
447 eerror "permissions in ${T} or have TPE turned on in your kernel?"
448 die "check your runtime settings #500928"
449 fi
450
412 # Instead of filtering --as-needed (bug #128505), append --no-as-needed 451 # Instead of filtering --as-needed (bug #128505), append --no-as-needed
413 # Thanks to Harald van Dijk 452 # Thanks to Harald van Dijk
414 append-ldflags -Wl,--no-as-needed 453 append-ldflags $(no-as-needed)
415 454
416 # peruser MPM debugging with -X is nearly impossible 455 # peruser MPM debugging with -X is nearly impossible
417 if has peruser ${IUSE_MPMS} && use apache2_mpms_peruser ; then 456 if has peruser ${IUSE_MPMS} && use apache2_mpms_peruser ; then
418 use debug && append-flags -DMPM_PERUSER_DEBUG 457 use debug && append-flags -DMPM_PERUSER_DEBUG
419 fi 458 fi
420 459
421 # econf overwrites the stuff from config.layout, so we have to put them into 460 # econf overwrites the stuff from config.layout, so we have to put them into
422 # our myconf line too 461 # our myconf line too
462 ac_cv_path_PKGCONFIG=${PKG_CONFIG} \
423 econf \ 463 econf \
424 --includedir=/usr/include/apache2 \ 464 --includedir=/usr/include/apache2 \
425 --libexecdir=/usr/$(get_libdir)/apache2/modules \ 465 --libexecdir=/usr/$(get_libdir)/apache2/modules \
426 --datadir=/var/www/localhost \ 466 --datadir=/var/www/localhost \
427 --sysconfdir=/etc/apache2 \ 467 --sysconfdir=/etc/apache2 \
428 --localstatedir=/var \ 468 --localstatedir=/var \
429 --with-mpm=${MY_MPM} \ 469 --with-mpm=${MY_MPM} \
430 --with-perl=/usr/bin/perl \
431 --with-apr=/usr \ 470 --with-apr="${SYSROOT}"/usr \
432 --with-apr-util=/usr \ 471 --with-apr-util="${SYSROOT}"/usr \
433 --with-pcre=/usr \ 472 --with-pcre="${T}"/pcre-config \
434 --with-z=/usr \ 473 --with-z=/usr \
435 --with-port=80 \ 474 --with-port=80 \
436 --with-program-name=apache2 \ 475 --with-program-name=apache2 \
437 --enable-layout=Gentoo \ 476 --enable-layout=Gentoo \
438 ${MY_CONF} || die "econf failed!" 477 ${MY_CONF} || die "econf failed!"
439 478
440 sed -i -e 's:apache2\.conf:httpd.conf:' include/ap_config_auto.h 479 sed -i -e 's:apache2\.conf:httpd.conf:' include/ap_config_auto.h
441
442 emake || die "emake failed"
443} 480}
444 481
445# @FUNCTION: apache-2_src_install 482# @FUNCTION: apache-2_src_install
446# @DESCRIPTION: 483# @DESCRIPTION:
447# This function runs `emake install' and generates, installs and adapts the gentoo 484# This function runs `emake install' and generates, installs and adapts the gentoo
448# specific configuration files found in the tarball 485# specific configuration files found in the tarball
449apache-2_src_install() { 486apache-2_src_install() {
450 make DESTDIR="${D}" install || die "make install failed" 487 emake DESTDIR="${D}" MKINSTALLDIRS="mkdir -p" install || die "make install failed"
451 488
452 # install our configuration files 489 # install our configuration files
453 keepdir /etc/apache2/vhosts.d 490 keepdir /etc/apache2/vhosts.d
454 keepdir /etc/apache2/modules.d 491 keepdir /etc/apache2/modules.d
455 492
456 generate_load_module 493 generate_load_module
457 insinto /etc/apache2 494 insinto /etc/apache2
458 doins -r "${GENTOO_PATCHDIR}"/conf/* 495 doins -r "${GENTOO_PATCHDIR}"/conf/*
459 doins docs/conf/magic 496 use apache2_modules_mime_magic && doins docs/conf/magic
460 497
461 insinto /etc/logrotate.d 498 insinto /etc/logrotate.d
462 newins "${GENTOO_PATCHDIR}"/scripts/apache2-logrotate apache2 499 newins "${GENTOO_PATCHDIR}"/scripts/apache2-logrotate apache2
463 500
464 # generate a sane default APACHE2_OPTS 501 # generate a sane default APACHE2_OPTS
465 APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D LANGUAGE" 502 APACHE2_OPTS="-D DEFAULT_VHOST -D INFO"
466 use doc && APACHE2_OPTS="${APACHE2_OPTS} -D MANUAL" 503 use doc && APACHE2_OPTS="${APACHE2_OPTS} -D MANUAL"
467 use ssl && APACHE2_OPTS="${APACHE2_OPTS} -D SSL -D SSL_DEFAULT_VHOST" 504 use ssl && APACHE2_OPTS="${APACHE2_OPTS} -D SSL -D SSL_DEFAULT_VHOST"
468 use suexec && APACHE2_OPTS="${APACHE2_OPTS} -D SUEXEC" 505 use suexec && APACHE2_OPTS="${APACHE2_OPTS} -D SUEXEC"
506 if has negotiation ${APACHE2_MODULES} && use apache2_modules_negotiation; then
507 APACHE2_OPTS="${APACHE2_OPTS} -D LANGUAGE"
508 fi
469 509
470 sed -i -e "s:APACHE2_OPTS=\".*\":APACHE2_OPTS=\"${APACHE2_OPTS}\":" \ 510 sed -i -e "s:APACHE2_OPTS=\".*\":APACHE2_OPTS=\"${APACHE2_OPTS}\":" \
471 "${GENTOO_PATCHDIR}"/init/apache2.confd || die "sed failed" 511 "${GENTOO_PATCHDIR}"/init/apache2.confd || die "sed failed"
472 512
473 newconfd "${GENTOO_PATCHDIR}"/init/apache2.confd apache2 513 newconfd "${GENTOO_PATCHDIR}"/init/apache2.confd apache2
474 newinitd "${GENTOO_PATCHDIR}"/init/apache2.initd apache2 514 newinitd "${GENTOO_PATCHDIR}"/init/apache2.initd apache2
475 515
476 # link apache2ctl to the init script 516 # install apache2ctl wrapper for our init script if available
517 if test -e "${GENTOO_PATCHDIR}"/scripts/apache2ctl; then
518 exeinto /usr/sbin
519 doexe "${GENTOO_PATCHDIR}"/scripts/apache2ctl
520 else
477 dosym /etc/init.d/apache2 /usr/sbin/apache2ctl 521 dosym /etc/init.d/apache2 /usr/sbin/apache2ctl
522 fi
478 523
479 # provide legacy symlink for apxs, bug 177697 524 # provide legacy symlink for apxs, bug 177697
480 dosym /usr/sbin/apxs /usr/sbin/apxs2 525 dosym /usr/sbin/apxs /usr/sbin/apxs2
481
482 # install some thirdparty scripts
483 exeinto /usr/sbin
484 use ssl && doexe "${GENTOO_PATCHDIR}"/scripts/gentestcrt.sh
485 526
486 # install some documentation 527 # install some documentation
487 dodoc ABOUT_APACHE CHANGES LAYOUT README README.platforms VERSIONING 528 dodoc ABOUT_APACHE CHANGES LAYOUT README README.platforms VERSIONING
488 dodoc "${GENTOO_PATCHDIR}"/docs/* 529 dodoc "${GENTOO_PATCHDIR}"/docs/*
489 530
493 else 534 else
494 rm -f "${D}/etc/apache2/modules.d/00_apache_manual.conf" 535 rm -f "${D}/etc/apache2/modules.d/00_apache_manual.conf"
495 rm -Rf "${D}/usr/share/doc/${PF}/manual" 536 rm -Rf "${D}/usr/share/doc/${PF}/manual"
496 fi 537 fi
497 538
498 # the default webroot gets stored in /usr/share/${PF}/webroot 539 # the default icons and error pages get stored in
499 ebegin "Installing default webroot to /usr/share/${PF}/webroot" 540 # /usr/share/apache2/{error,icons}
500 dodir /usr/share/${PF} 541 dodir /usr/share/apache2
501 mv -f "${D}/var/www/localhost" "${D}/usr/share/${PF}/webroot" 542 mv -f "${D}/var/www/localhost/error" "${D}/usr/share/apache2/error"
543 mv -f "${D}/var/www/localhost/icons" "${D}/usr/share/apache2/icons"
544 rm -rf "${D}/var/www/localhost/"
502 eend $? 545 eend $?
503 546
504 # set some sane permissions for suexec 547 # set some sane permissions for suexec
505 if use suexec ; then 548 if use suexec ; then
506 fowners 0:apache /usr/sbin/suexec 549 fowners 0:${SUEXEC_CALLER:-apache} /usr/sbin/suexec
507 fperms 4710 /usr/sbin/suexec 550 fperms 4710 /usr/sbin/suexec
508 # provide legacy symlink for suexec, bug 177697 551 # provide legacy symlink for suexec, bug 177697
509 dosym /usr/sbin/suexec /usr/sbin/suexec2 552 dosym /usr/sbin/suexec /usr/sbin/suexec2
510 fi 553 fi
511 554
512 # empty dirs 555 # empty dirs
513 for i in /var/lib/dav /var/log/apache2 /var/cache/apache2 ; do 556 for i in /var/lib/dav /var/log/apache2 /var/cache/apache2 ; do
514 keepdir ${i} 557 keepdir ${i}
515 fowners apache:apache ${i} 558 fowners apache:apache ${i}
516 fperms 0755 ${i} 559 fperms 0750 ${i}
517 done 560 done
518
519 # we need /etc/apache2/ssl if USE=ssl
520 use ssl && keepdir /etc/apache2/ssl
521} 561}
522 562
523# @FUNCTION: apache-2_pkg_postinst 563# @FUNCTION: apache-2_pkg_postinst
524# @DESCRIPTION: 564# @DESCRIPTION:
525# This function creates test certificates if SSL is enabled and installs the 565# This function creates test certificates if SSL is enabled and installs the
526# default webroot to /var/www/localhost if it does not exist. We do this here 566# default index.html to /var/www/localhost if it does not exist. We do this here
527# because the default webroot is a copy of the files that exist elsewhere and we 567# because the default webroot is a copy of the files that exist elsewhere and we
528# don't want them to be managed/removed by portage when apache is upgraded. 568# don't want them to be managed/removed by portage when apache is upgraded.
529apache-2_pkg_postinst() { 569apache-2_pkg_postinst() {
530 einfo
531
532 if use ssl && [[ ! -e "${ROOT}/etc/apache2/ssl/server.crt" ]] ; then 570 if use ssl && [[ ! -e "${ROOT}/etc/ssl/apache2/server.pem" ]]; then
533 cd "${ROOT}"/etc/apache2/ssl 571 SSL_ORGANIZATION="${SSL_ORGANIZATION:-Apache HTTP Server}"
534 einfo "Generating self-signed test certificate in ${ROOT}etc/apache2/ssl ..." 572 install_cert /etc/ssl/apache2/server
535 yes "" 2>/dev/null | \ 573 ewarn
536 "${ROOT}"/usr/sbin/gentestcrt.sh >/dev/null 2>&1 || \ 574 ewarn "The location of SSL certificates has changed. If you are"
537 die "gentestcrt.sh failed" 575 ewarn "upgrading from ${CATEGORY}/${PN}-2.2.13 or earlier (or remerged"
538 einfo 576 ewarn "*any* apache version), you might want to move your old"
577 ewarn "certificates from /etc/apache2/ssl/ to /etc/ssl/apache2/ and"
578 ewarn "update your config files."
579 ewarn
539 fi 580 fi
540 581
541 if [[ -e "${ROOT}/var/www/localhost" ]] ; then 582 if [[ ! -e "${ROOT}/var/www/localhost" ]] ; then
542 elog "The default webroot has not been installed into"
543 elog "${ROOT}var/www/localhost because the directory already exists"
544 elog "and we do not want to overwrite any files you have put there."
545 elog
546 elog "If you would like to install the latest webroot, please run"
547 elog "emerge --config =${PF}"
548 elog
549 else
550 einfo "Installing default webroot to ${ROOT}var/www/localhost"
551 mkdir -p "${ROOT}"/var/www/localhost 583 mkdir -p "${ROOT}/var/www/localhost/htdocs"
552 cp -R "${ROOT}"/usr/share/${PF}/webroot/* "${ROOT}"/var/www/localhost/ 584 echo "<html><body><h1>It works!</h1></body></html>" > "${ROOT}/var/www/localhost/htdocs/index.html"
553 einfo
554 fi 585 fi
555}
556 586
557# @FUNCTION: apache-2_pkg_config 587 echo
558# @DESCRIPTION: 588 elog "Attention: cgi and cgid modules are now handled via APACHE2_MODULES flags"
559# This function installs -- and overwrites -- the default webroot to 589 elog "in make.conf. Make sure to enable those in order to compile them."
560# /var/www/localhost 590 elog "In general, you should use 'cgid' with threaded MPMs and 'cgi' otherwise."
561apache-2_pkg_config() { 591 echo
562 einfo "Installing default webroot to ${ROOT}var/www/localhost"
563 mkdir -p "${ROOT}"/var/www/localhost
564 cp -R "${ROOT}"/usr/share/${PF}/webroot/* "${ROOT}"/var/www/localhost/
565}
566 592
593}
594
567EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst pkg_config 595EXPORT_FUNCTIONS pkg_setup src_prepare src_configure src_install pkg_postinst

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.35

  ViewVC Help
Powered by ViewVC 1.1.20