adding nginx with wsgi from https://connectical.com/

This commit is contained in:
Micha Glave 2009-05-26 11:09:39 +00:00
parent 37d1b4bb8b
commit 1a7b9ed2d8
2 changed files with 179 additions and 0 deletions

View File

@ -0,0 +1,6 @@
DIST mod_scgi-b466baa5fcdb.tar.gz 10947 RMD160 dcf8f5dae78a1ec068afcc1f0b35dca093db5ba7 SHA1 b2eae98cd08675da21ee1f58ecab50574f9ba1fe SHA256 d6172ae5ce7608d9fe0e08f0e43debf6f24857216e8c4a420a1e6b1deb0ddd3f
DIST mod_wsgi-8994b058d2db.tar.gz 52044 RMD160 e879e5a5cfe462ba4902893cdb740e0b92a23e6d SHA1 2c2c46116d1f0e2619b8b72d54297e65b1d126cd SHA256 15419c1a188d1c11f36ca460c975eba3a0cc9f25e9a8b8ab7bd0e13a5ae50cb3
DIST nginx-0.7.58.tar.gz 592868 RMD160 d58ad06852a52b8eadae49204a4a48bd27d58b91 SHA1 ec7a3038ea3f7c6c1dc7f7f54acae652319da7f3 SHA256 9bfeb136eb28127a0cceaf1bcbf78ff0dc043371ee69470fd967a2d706a6cc42
DIST ngx-fancyindex-0.2.tar.bz2 11404 RMD160 9558d7e4aa5954107f400afb97ff01fe3566d1e1 SHA1 8ec6f5e9239bccfe8d148ce5e8e69d43b2219193 SHA256 6de457f2433ea5d7f790163f8ae5208eff400957c1944b8686606e4532ce40e2
DIST ngx_http_auth_pam_module-1.0.tar.gz 5097 RMD160 cea6ce3de57eb81cd77fa1abd97c1f72ba7b9fd5 SHA1 097ffb5e09fb1d5b75401d358ea04a031f08e0c4 SHA256 2b764e2468cce60ae303e29411540a861cc3ca38992e27e159cc054b2825984c
EBUILD nginx-0.7.58-r1.ebuild 5073 RMD160 bf81e79f8f6e3acc8091095c79b5b9cdd26d0a2a SHA1 7b25645600c5b1acef8c5b174d35af7ca34afd58 SHA256 b8865afd140b061a578b05b9251155c7c99847a5d6ea7e08d74f94859b86406a

View File

@ -0,0 +1,173 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/nginx-0.7.1.ebuild,v 1.1 2008/05/27 13:41:06 voxus Exp $
inherit eutils ssl-cert
DESCRIPTION="Robust, small and high performance http and reverse proxy server"
FANCYINDEX="ngx-fancyindex-0.2"
WSGI="mod_wsgi-8994b058d2db"
SCGI="mod_scgi-b466baa5fcdb"
PAM="ngx_http_auth_pam_module-1.0"
HOMEPAGE="http://nginx.net/"
SRC_URI="http://sysoev.ru/nginx/${P}.tar.gz
fancyindex? ( http://files.connectical.com/gentoo/${FANCYINDEX}.tar.bz2 )
python? ( http://files.connectical.com/gentoo/${WSGI}.tar.gz )
scgi? ( http://files.connectical.com/gentoo/${SCGI}.tar.gz )
pam? ( http://web.iti.upv.es/~sto/nginx/${PAM}.tar.gz )"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="addition debug fastcgi flv imap pcre perl ssl status sub webdav zlib
fancyindex python scgi gzip-static googleperf pam"
DEPEND="dev-lang/perl
pcre? ( >=dev-libs/libpcre-4.2 )
ssl? ( dev-libs/openssl )
zlib? ( sys-libs/zlib )
perl? ( >=dev-lang/perl-5.8 )
python? ( >=dev-lang/python-2.4 )
pam? ( virtual/pam )"
pkg_setup() {
ebegin "Creating nginx user and group"
enewgroup nginx
enewuser nginx -1 -1 /dev/null nginx
eend ${?}
}
src_unpack () {
unpack ${A}
cd "${S}"
epatch "${FILESDIR}/use_x_forwarded_host.patch"
if use python ; then
cd "${WORKDIR}/${WSGI}"
epatch "${FILESDIR}/nginx-0.6-mod_wsgi.patch"
fi
}
src_compile() {
local myconf
# threads support is broken atm.
#
# if use threads; then
# einfo
# ewarn "threads support is experimental at the moment"
# ewarn "do not use it on production systems - you've been warned"
# einfo
# myconf="${myconf} --with-threads"
# fi
use addition && myconf="${myconf} --with-http_addition_module"
use fastcgi || myconf="${myconf} --without-http_fastcgi_module"
use fastcgi && myconf="${myconf} --with-http_realip_module"
use flv && myconf="${myconf} --with-http_flv_module"
use zlib || myconf="${myconf} --without-http_gzip_module"
use pcre || {
myconf="${myconf} --without-pcre --without-http_rewrite_module"
}
use debug && myconf="${myconf} --with-debug"
use ssl && myconf="${myconf} --with-http_ssl_module"
use imap && myconf="${myconf} --with-imap" # pop3/imap4 proxy support
use perl && myconf="${myconf} --with-http_perl_module"
use status && myconf="${myconf} --with-http_stub_status_module"
use webdav && myconf="${myconf} --with-http_dav_module"
use sub && myconf="${myconf} --with-http_sub_module"
use googleperf && myconf="${myconf} --with-google_perftools_module"
use gzip-static && myconf="${myconf} --with-http_gzip_static_module"
use fancyindex && myconf="${myconf} --add-module=../${FANCYINDEX}"
use python && myconf="${myconf} --add-module=../${WSGI}"
use scgi && myconf="${myconf} --add-module=../${SCGI}"
use pam && myconf="${myconf} --add-module=../${PAM}"
./configure \
--prefix=/usr \
--conf-path=/etc/${PN}/${PN}.conf \
--http-log-path=/var/log/${PN}/access_log \
--error-log-path=/var/log/${PN}/error_log \
--pid-path=/var/run/${PN}.pid \
--http-client-body-temp-path=/var/tmp/${PN}/client \
--http-proxy-temp-path=/var/tmp/${PN}/proxy \
--http-fastcgi-temp-path=/var/tmp/${PN}/fastcgi \
--with-md5-asm --with-md5=/usr/include \
--with-sha1-asm --with-sha1=/usr/include \
${myconf} || die "configure failed"
emake || die "failed to compile"
}
src_install() {
keepdir /var/log/${PN} /var/tmp/${PN}/{client,proxy,fastcgi}
dosbin objs/nginx
cp "${FILESDIR}"/nginx-r1 "${T}"/nginx
doinitd "${T}"/nginx
cp "${FILESDIR}"/nginx.conf-r4 conf/nginx.conf
dodir "${ROOT}"/etc/${PN}
insinto "${ROOT}"/etc/${PN}
doins conf/*
dodoc CHANGES{,.ru} LICENSE README
use perl && {
cd "${S}"/objs/src/http/modules/perl/
einstall DESTDIR="${D}"|| die "failed to install perl stuff"
}
if use fancyindex ; then
cd "${WORKDIR}/${FANCYINDEX}"
cp README.rst README.fancyindex
dodoc README.fancyindex
fi
if use python ; then
cd "${WORKDIR}/${WSGI}"
cp LICENSE LICENSE.wsgi && dodoc LICENSE.wsgi
cp README README.wsgi && dodoc README.wsgi
cp NEWS.txt NEWS.wsgi && dodoc NEWS.wsgi
cp BUGS BUGS.wsgi && dodoc BUGS.wsgi
cp TODO TODO.wsgi && dodoc TODO.wsgi
insinto /usr/share/doc/${PF}/wsgi_examples
doins examples/*
insinto /etc/nginx
doins conf/wsgi_vars
dosbin bin/*
fi
if use scgi ; then
cd "${WORKDIR}/${SCGI}"
cp LICENSE LICENSE.scgi && dodoc LICENSE.scgi
cp README README.scgi && dodoc README.scgi
insinto /etc/nginx
doins conf/scgi_vars
fi
if use pam ; then
cd "${WORKDIR}/${PAM}"
cp LICENSE LICENSE.pam && dodoc LICENSE.pam
cp README README.pam && dodoc README.pam
cp ChangLog NEWS.pam && dodoc NEWS.pam
fi
}
pkg_postinst() {
use ssl && {
if [ ! -f "${ROOT}"/etc/ssl/${PN}/${PN}.key ]; then
dodir "${ROOT}"/etc/ssl/${PN}
insinto "${ROOT}"etc/ssl/${PN}/
insopts -m0644 -o nginx -g nginx
install_cert /etc/ssl/nginx/nginx
fi
}
}