summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'www-servers/monkeyd')
-rw-r--r--www-servers/monkeyd/Manifest1
-rw-r--r--www-servers/monkeyd/monkeyd-1.6.2.ebuild139
2 files changed, 140 insertions, 0 deletions
diff --git a/www-servers/monkeyd/Manifest b/www-servers/monkeyd/Manifest
index ff2c24120f9e..abe7245dc4b2 100644
--- a/www-servers/monkeyd/Manifest
+++ b/www-servers/monkeyd/Manifest
@@ -2,3 +2,4 @@ DIST monkey-1.5.3.tar.gz 892478 SHA256 0ac300e04f052818bc26b7da0183c3c5cd13be809
DIST monkey-1.5.5.tar.gz 898602 SHA256 5a0554fdb4d8746f5eb665f305bd120c8f2bef3e7fea2a43be6b472461b45b05 SHA512 faf86a36a91c8b1e47f3a2ea7f19aee98eada6f3348ff64f160fc388c268a146d49ad9434043731cf928fca6708db40fa5e1daedc41d4b8cce671f98d590b920 WHIRLPOOL 26b44624f77b72bbd31da6be5855429199a0fc9ab163548f1d0f21a34b84a1f0325241ed7ad5ecbb28c9e9f899458b5d8c15f9f91e27b73a53023c2e3152947d
DIST monkey-1.5.6.tar.gz 902636 SHA256 7c3d845306aa74ee6effd7ab6169d16ac4e6450e564954d0d0baa2d1e9be1a22 SHA512 4c7c627cb047252252b22da5fba179a21fb5b8dc6280b96307af52757ad049d24b0daaaea51dca4f0429af5e6499c239f6b62a03654cc9e7ad98ae8f5149b64c WHIRLPOOL aba1a928023fc67224f254182eb9707c6594c7092d9ff98ecfa297c91d5c61f79235e7467192b5d46ac114ae67a3cee98e06704721348a40ee825755ab39d9a1
DIST monkey-1.6.1.tar.gz 1916812 SHA256 acf2ba04578c362b2b1c509ee4a998b6b2951e51b16bd339d300743de1752961 SHA512 c7c0f83bb74193bfd7008a0327012a45474b65befb47ac514d3a10095c41aeb2ec49067249377d18cc3a6ec77eb14c5ae25e36d2550e47971a43e156ef24d619 WHIRLPOOL 70545f343b6675d456b4ed426ad27435302c0e122f1b26640e3aa65343a5912af4c431d799f018fe19f3183c904a876fc157f5f0e257f6dcf9b76cf2422ed1f0
+DIST monkey-1.6.2.tar.gz 1913867 SHA256 d26ff514d64bb2de503a9a4d61fce20d89deff0f2f9f958977db4b98e44ece3e SHA512 2fe3b82386d580974509b03ea66caa05adec76178296d736d994ff7f4aedd52fcd298fad083050c59378b1a6cc37cbe8fd34c437a95830fd78304c710bb16b8b WHIRLPOOL 1b1bc34b0534130ce489040e2283d9b074c43ca58f9005832ceb92be92d38e70e482daf405022e1933a9300b782231747d91f937a5b2468a44f0eaa5a4fb984a
diff --git a/www-servers/monkeyd/monkeyd-1.6.2.ebuild b/www-servers/monkeyd/monkeyd-1.6.2.ebuild
new file mode 100644
index 000000000000..e0f015929ad5
--- /dev/null
+++ b/www-servers/monkeyd/monkeyd-1.6.2.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit flag-o-matic toolchain-funcs multilib
+
+DESCRIPTION="A small, fast, and scalable web server"
+HOMEPAGE="http://www.monkey-project.com/"
+MY_P="${PN/d}-${PV}"
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://github.com/monkey/monkey.git"
+ inherit git-2
+ KEYWORDS=""
+else
+ SRC_URI="http://monkey-project.com/releases/${PV:0:3}/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+# Currently monkeyd_plugins_tls is off. It provides mbed TLS (formerly PolarSSL).
+# jemalloc is also off until we figure out how to work CMakeLists.txt magic.
+#PLUGINS="monkeyd_plugins_auth monkeyd_plugins_cheetah monkeyd_plugins_dirlisting +monkeyd_plugins_liana monkeyd_plugins_logger monkeyd_plugins_mandril monkeyd_plugins_tls"
+#IUSE="cgi -debug fastcgi jemalloc php static-plugins ${PLUGINS}"
+
+PLUGINS="monkeyd_plugins_auth monkeyd_plugins_cheetah monkeyd_plugins_dirlisting +monkeyd_plugins_liana monkeyd_plugins_logger monkeyd_plugins_mandril"
+IUSE="cgi -debug fastcgi php static-plugins ${PLUGINS}"
+
+# uclibc is often compiled without backtrace info so we should
+# force this off. If someone complains, consider relaxing it.
+REQUIRED_USE="
+ elibc_uclibc? ( !debug )
+ cgi? ( php )"
+
+#DEPEND="jemalloc? ( >=dev-libs/jemalloc-3.3.1 )"
+DEPEND="dev-util/cmake"
+RDEPEND="
+ php? ( dev-lang/php )
+ cgi? ( dev-lang/php[cgi] )"
+
+S="${WORKDIR}/${MY_P}"
+
+WEBROOT="/var/www/localhost"
+
+pkg_setup() {
+ if use debug; then
+ ewarn
+ ewarn "\033[1;33m**************************************************\033[00m"
+ ewarn "Do not use debug in production!"
+ ewarn "\033[1;33m**************************************************\033[00m"
+ ewarn
+ fi
+}
+
+src_prepare() {
+ # Unconditionally get rid of the bundled jemalloc and mbedTLS
+ rm -rf "${S}"/deps
+}
+
+src_configure() {
+ local myconf=""
+
+ use elibc_uclibc && myconf+=" --uclib-mode"
+ use elibc_musl && myconf+=" --musl-mode"
+
+ #use jemalloc || myconf+=" --malloc-libc"
+ myconf+=" --malloc-libc"
+
+ if use debug; then
+ myconf+=" --debug --trace"
+ else
+ myconf+=" --no-backtrace"
+ fi
+
+ local enable_plugins=""
+ local disable_plugins=""
+ # We use 'cgi' and 'fastcgi' because they are global flags
+ # instead of the corresponding monkeyd_plugins_*
+ use cgi && enable_plugins+="cgi," || disable_plugins+="cgi,"
+ use fastcgi && enable_plugins+="fastcgi," || disable_plugins+="fastcgi,"
+ # For the rest, we scan the monkeyd_plugins_* and parse out the plugin name.
+ for p in ${PLUGINS}; do
+ pp=${p/+/}
+ cp=${pp/monkeyd_plugins_/}
+ use $pp && enable_plugins+="${cp}," || disable_plugins+="${cp},"
+ done
+ myconf+=" --enable-plugins=${enable_plugins%,} --disable-plugins=${disable_plugins%,}"
+ if use static-plugins; then
+ myconf+=" --static-plugins=${enable_plugins%,}"
+ fi
+
+ # For O_CLOEXEC which is guarded by _GNU_SOURCE in uClibc,
+ # but shouldn't because it is POSIX. This needs to be fixed
+ # in uClibc. Also, we really should us append-cppflags but
+ # monkey's build system doesn't respect CPPFLAGS. This needs
+ # to be fixed in monkey.
+ use elibc_uclibc && append-cflags -D_GNU_SOURCE
+
+ # Non-autotools configure
+ ./configure \
+ --pthread-tls \
+ --prefix=/usr \
+ --sbindir=/usr/sbin \
+ --webroot=${WEBROOT}/htdocs \
+ --logdir=/var/log/${PN} \
+ --mandir=/usr/share/man \
+ --libdir=/usr/$(get_libdir) \
+ --pidfile=/run/monkey.pid \
+ --sysconfdir=/etc/${PN} \
+ ${myconf} \
+ || die
+}
+
+src_compile() {
+ emake VERBOSE=1
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/monkeyd.initd-r1 monkeyd
+ newconfd "${FILESDIR}"/monkeyd.confd monkeyd
+
+ # Move htdocs to docdir, bug #429632
+ docompress -x /usr/share/doc/"${PF}"/htdocs.dist
+ mv "${D}"${WEBROOT}/htdocs \
+ "${D}"/usr/share/doc/"${PF}"/htdocs.dist
+ mkdir "${D}"${WEBROOT}/htdocs
+
+ keepdir \
+ /var/log/monkeyd \
+ ${WEBROOT}/htdocs
+
+ # This needs to be created at runtime
+ rm -rf "${D}"/run
+}