public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
Search results ordered by [date|relevance]  view[summary|nested|Atom feed]
thread overview below | download mbox.gz: |
* [gentoo-commits] repo/gentoo:master commit in: www-servers/mongrel2/, www-servers/mongrel2/files/
@ 2016-01-29  9:29 99% Ian Delaney
  0 siblings, 0 replies; 1+ results
From: Ian Delaney @ 2016-01-29  9:29 UTC (permalink / raw
  To: gentoo-commits

commit:     0527ba7e6e43d985f73d600fdfe9ef10cd724abc
Author:     Jason Miller <aidenn0 <AT> geocities <DOT> com>
AuthorDate: Fri Jan 29 07:30:20 2016 +0000
Commit:     Ian Delaney <idella4 <AT> gentoo <DOT> org>
CommitDate: Fri Jan 29 09:29:34 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0527ba7e

www-servers/mongrel2: New package

Gentoo bug: #350826

Add jasom as Proxied maintainer.

Package-Manager: portage-2.2.26

 www-servers/mongrel2/Manifest               |   1 +
 www-servers/mongrel2/files/systemtls.mak    | 136 ++++++++++++++++++++++++++++
 www-servers/mongrel2/metadata.xml           |  16 ++++
 www-servers/mongrel2/mongrel2-1.11.0.ebuild |  28 ++++++
 4 files changed, 181 insertions(+)

diff --git a/www-servers/mongrel2/Manifest b/www-servers/mongrel2/Manifest
new file mode 100644
index 0000000..8ebca85
--- /dev/null
+++ b/www-servers/mongrel2/Manifest
@@ -0,0 +1 @@
+DIST v1.11.0.tar.gz 1060770 SHA256 dd7accbe4be25ee841b1d73e1fc2e6230e90f5783e1d25527037416e5f519c86 SHA512 60ee5036c2ac826a08bb1300969f5ad7ec2bc67c7f47635a3b458a0bad6d7e2fa37183c2708d512632c86101f537a4eb64eeef0775137705898480da70d61e90 WHIRLPOOL 928b50b5170ac8015bb63c623de644302329bd5ca47608a9f3dfd96b403c95f2ea78475b33b11f8c64403882d4130a5ba1658ba286b5339fbb174b2ebe93d3ba

diff --git a/www-servers/mongrel2/files/systemtls.mak b/www-servers/mongrel2/files/systemtls.mak
new file mode 100644
index 0000000..e449b76
--- /dev/null
+++ b/www-servers/mongrel2/files/systemtls.mak
@@ -0,0 +1,136 @@
+CFLAGS?=-g -O2
+CFLAGS += -Wall -Wextra -I./src -DNDEBUG -D_FILE_OFFSET_BITS=64 -pthread
+LIBS+=-lzmq -ldl -lsqlite3 -lmbedtls -lmbedx509 -lmbedcrypto
+PREFIX?=/usr/local
+
+get_objs = $(addsuffix .o,$(basename $(wildcard $(1))))
+
+ASM=$(wildcard src/**/*.S src/*.S)
+RAGEL_TARGETS=src/state.c src/http11/http11_parser.c
+SOURCES=$(wildcard src/**/*.c src/*.c) $(RAGEL_TARGETS)
+OBJECTS=$(patsubst %.c,%.o,${SOURCES}) $(patsubst %.S,%.o,${ASM})
+OBJECTS_NOEXT=$(filter-out ${OBJECTS_EXTERNAL},${OBJECTS})
+LIB_SRC=$(filter-out src/mongrel2.c,${SOURCES})
+LIB_OBJ=$(filter-out src/mongrel2.o,${OBJECTS})
+TEST_SRC=$(wildcard tests/*_tests.c)
+TESTS=$(patsubst %.c,%,${TEST_SRC})
+MAKEOPTS=OPTFLAGS="${NOEXTCFLAGS} ${OPTFLAGS}" LIBS="${LIBS}" DESTDIR="${DESTDIR}" PREFIX="${PREFIX}"
+
+all: builddirs bin/mongrel2 tests m2sh procer
+
+${OBJECTS_NOEXT}: CFLAGS += ${NOEXTCFLAGS}
+${OBJECTS}:
+
+# 
+# CFLAGS_DEFS: The $(CC) flags required to obtain C pre-processor #defines, per:
+# 
+#   http://nadeausoftware.com/articles/2011/12/c_c_tip_how_list_compiler_predefined_macros
+# 
+# It may be appropriate to copy some of these platform-specific CFLAGS_DEFS assignments into the
+# appropriate platform target at the end of this file, eg:
+# 
+#   solaris: CFLAGS_DEF=...
+#   solaris: all
+
+#CFLAGS_DEFS=-dM -E		# Portland Group PGCC
+#CFLAGS_DEFS=-xdumpmacros -E	# Oracle Solaris Studio
+#CFLAGS_DEFS=-qshowmacros -E	# IBM XL C
+CFLAGS_DEFS=-dM -E -x c 	# clang, gcc, HP C, Intel icc
+
+.PHONY: builddirs
+builddirs:
+	@mkdir -p build
+	@mkdir -p bin
+
+bin/mongrel2: build/libm2.a src/mongrel2.o
+	$(CC) $(CFLAGS) $(LDFLAGS) src/mongrel2.o -o $@ $< $(LIBS)
+
+build/libm2.a: CFLAGS += -fPIC
+build/libm2.a: ${LIB_OBJ}
+	ar rcs $@ ${LIB_OBJ}
+	ranlib $@
+
+clean:
+	rm -rf build bin lib ${OBJECTS} ${TESTS} tests/config.sqlite
+	rm -f tests/perf.log 
+	rm -f tests/test.pid 
+	rm -f tests/tests.log 
+	rm -f tests/empty.sqlite 
+	rm -f tools/lemon/lemon
+	rm -f tools/m2sh/tests/tests.log 
+	rm -rf release-scripts/output
+	find . \( -name "*.gcno" -o -name "*.gcda" \) -exec rm {} \;
+	${MAKE} -C tools/m2sh OPTLIB=${OPTLIB} clean
+	${MAKE} -C tools/filters OPTLIB=${OPTLIB} clean
+	${MAKE} -C tests/filters OPTLIB=${OPTLIB} clean
+	${MAKE} -C tools/config_modules OPTLIB=${OPTLIB} clean
+	${MAKE} -C tools/procer OPTLIB=${OPTLIB} clean
+
+pristine: clean
+	sudo rm -rf examples/python/build examples/python/dist examples/python/m2py.egg-info
+	sudo find . -name "*.pyc" -exec rm {} \;
+	${MAKE} -C docs/manual clean
+	cd docs/ && ${MAKE} clean
+	${MAKE} -C examples/kegogi clean
+	rm -f logs/*
+	rm -f run/*
+	${MAKE} -C tools/m2sh pristine
+	${MAKE} -C tools/procer pristine
+	git submodule deinit -f src/mbedtls
+
+.PHONY: tests
+tests: tests/config.sqlite ${TESTS} test_filters filters config_modules
+	sh ./tests/runtests.sh
+
+tests/config.sqlite: src/config/config.sql src/config/example.sql src/config/mimetypes.sql
+	sqlite3 $@ < src/config/config.sql
+	sqlite3 $@ < src/config/example.sql
+	sqlite3 $@ < src/config/mimetypes.sql
+
+$(TESTS): %: %.c build/libm2.a
+	$(CC) $(CFLAGS) -o $@ $< build/libm2.a $(LIBS)
+
+src/state.c: src/state.rl src/state_machine.rl
+src/http11/http11_parser.c: src/http11/http11_parser.rl
+src/http11/httpclient_parser.c: src/http11/httpclient_parser.rl
+
+check:
+	@echo Files with potentially dangerous functions.
+	@egrep '[^_.>a-zA-Z0-9](str(n?cpy|n?cat|xfrm|n?dup|str|pbrk|tok|_)|stpn?cpy|a?sn?printf|byte_)' $(filter-out src/bstr/bsafe.c,${SOURCES})
+
+m2sh: build/libm2.a
+	${MAKE} ${MAKEOPTS} -C tools/m2sh all
+
+procer: build/libm2.a
+	${MAKE} ${MAKEOPTS} -C tools/procer all
+
+test_filters: build/libm2.a
+	${MAKE} ${MAKEOPTS} -C tests/filters all
+
+filters: build/libm2.a
+	${MAKE} ${MAKEOPTS} -C tools/filters all
+
+config_modules: build/libm2.a
+	${MAKE} ${MAKEOPTS} -C tools/config_modules all
+
+# Try to install first before creating target directory and trying again
+install: all
+	install bin/mongrel2 $(DESTDIR)/$(PREFIX)/bin/ \
+	    || ( install -d $(DESTDIR)/$(PREFIX)/bin/ \
+	        && install bin/mongrel2 $(DESTDIR)/$(PREFIX)/bin/ )
+	${MAKE} ${MAKEOPTS} -C tools/m2sh install
+	${MAKE} ${MAKEOPTS} -C tools/config_modules install
+	${MAKE} ${MAKEOPTS} -C tools/filters install
+	${MAKE} ${MAKEOPTS} -C tools/procer install
+
+examples/python/mongrel2/sql/config.sql: src/config/config.sql src/config/mimetypes.sql
+	cat src/config/config.sql src/config/mimetypes.sql > $@
+
+ragel:
+	ragel -G2 src/state.rl
+	ragel -G2 src/http11/http11_parser.rl
+	ragel -G2 src/handler_parser.rl
+	ragel -G2 src/http11/httpclient_parser.rl
+
+%.o: %.S
+	$(CC) $(CFLAGS) -c $< -o $@

diff --git a/www-servers/mongrel2/metadata.xml b/www-servers/mongrel2/metadata.xml
new file mode 100644
index 0000000..82ce1c3
--- /dev/null
+++ b/www-servers/mongrel2/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+  <maintainer type="project">
+    <email>proxy-maint@gentoo.org</email>
+    <name>proxy-mintainers</name>
+  </maintainer>
+  <maintainer type="person">
+    <email>Aidenn0@geocities.com</email>
+    <name>Jason Miller</name>
+    <description>Proxied maintainer; set to assignee in all bugs</description>
+  </maintainer>
+  <upstream>
+      <remote-id type="github">mongrel2/mongrel2</remote-id>
+  </upstream>
+</pkgmetadata>

diff --git a/www-servers/mongrel2/mongrel2-1.11.0.ebuild b/www-servers/mongrel2/mongrel2-1.11.0.ebuild
new file mode 100644
index 0000000..7a3aa38
--- /dev/null
+++ b/www-servers/mongrel2/mongrel2-1.11.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="A language agnostic web server focused on web applications"
+HOMEPAGE="http://mongrel2.org"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="net-libs/zeromq
+	>=net-libs/mbedtls-2.1[havege]
+	dev-db/sqlite:3"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	cp "${FILESDIR}/systemtls.mak" Makefile || die
+}
+
+src_install() {
+	emake install PREFIX=/usr DESTDIR=${D} || die
+	dodoc README examples/configs/mongrel2.conf || die
+}


^ permalink raw reply related	[relevance 99%]

Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2016-01-29  9:29 99% [gentoo-commits] repo/gentoo:master commit in: www-servers/mongrel2/, www-servers/mongrel2/files/ Ian Delaney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox