diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-libs/axtls/axtls-1.5.3.ebuild | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-libs/axtls/axtls-1.5.3.ebuild')
-rw-r--r-- | net-libs/axtls/axtls-1.5.3.ebuild | 177 |
1 files changed, 177 insertions, 0 deletions
diff --git a/net-libs/axtls/axtls-1.5.3.ebuild b/net-libs/axtls/axtls-1.5.3.ebuild new file mode 100644 index 000000000000..ea6a5d6e8211 --- /dev/null +++ b/net-libs/axtls/axtls-1.5.3.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +inherit eutils multilib multilib-minimal savedconfig toolchain-funcs user + +################################################################################ +# axtls CONFIG MINI-HOWTO +# +# Note: axtls is highly configurable and uses mconf, like the linux kernel. +# You can configure it in a couple of ways: +# +# 1) USE="-savedconfig" and set/unset the remaining flags to obtain the features +# you want, and possibly a lot more. +# +# 2) You can create your own configuration file by doing +# +# FEATURES="keepwork" USE="savedconfig -*" emerge axtls +# cd /var/tmp/portage/net-libs/axtls*/work/axTLS +# make menuconfig +# +# Now configure axtls as you want. Finally save your config file: +# +# cp config/.config /etc/portage/savedconfig/net-libs/axtls-${PV} +# +# where ${PV} is the current version. You can then run emerge again with +# your configuration by doing +# +# USE="savedconfig" emerge axtls +# +################################################################################ + +MY_PN=${PN/tls/TLS} + +DESCRIPTION="Embedded client/server TLSv1 SSL library and small HTTP(S) server" +HOMEPAGE="http://axtls.sourceforge.net/" +SRC_URI="mirror://sourceforge/axtls/${MY_PN}-${PV}.tar.gz" +S="${WORKDIR}/${PN}-code" + +LICENSE="BSD GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~s390 ~x86" + +IUSE="httpd cgi-lua cgi-php static static-libs doc" + +# TODO: add ipv6, and c#, java, lua, perl bindings +# Currently these all have some issue +DEPEND="doc? ( app-doc/doxygen )" +RDEPEND=" + httpd? ( + cgi-lua? ( dev-lang/lua ) + cgi-php? ( dev-lang/php[cgi] ) + )" + +#Note1: static, cgi-* makes no sense if httpd is not given +REQUIRED_USE=" + static? ( httpd ) + cgi-lua? ( httpd ) + cgi-php? ( httpd )" + +AXTLS_GROUP="axtls" +AXTLS_USER="axtls" + +pkg_setup() { + use httpd && { + ebegin "Creating axtls user and group" + enewgroup ${AXTLS_GROUP} + enewuser ${AXTLS_USER} -1 -1 -1 ${AXTLS_GROUP} + } +} + +src_prepare() { + tc-export AR CC + + epatch "${FILESDIR}/explicit-libdir-r1.patch" + + #We want CONFIG_DEBUG to avoid stripping + #but not for debugging info + sed -i -e 's: -g::' config/Rules.mak || die + sed -i -e 's: -g::' config/makefile.conf || die + + multilib_copy_sources +} + +use_flag_config() { + cp "${FILESDIR}"/config config/.config || die + + #Respect CFLAGS/LDFLAGS + sed -i -e "s:^CONFIG_EXTRA_CFLAGS_OPTIONS.*$:CONFIG_EXTRA_CFLAGS_OPTIONS=\"${CFLAGS}\":" \ + config/.config || die + sed -i -e "s:^CONFIG_EXTRA_LDFLAGS_OPTIONS.*$:CONFIG_EXTRA_LDFLAGS_OPTIONS=\"${LDLAGS}\":" \ + config/.config || die + + #The logic is that the default config file enables everything and we disable + #here with sed unless a USE flags says to keep it + if use httpd; then + if ! use static; then + sed -i -e 's:^CONFIG_HTTP_STATIC_BUILD:# CONFIG_HTTP_STATIC_BUILD:' \ + config/.config || die + fi + if ! use cgi-php && ! use cgi-lua; then + sed -i -e 's:^CONFIG_HTTP_HAS_CGI:# CONFIG_HTTP_HAS_CGI:' \ + config/.config || die + fi + if ! use cgi-php; then + sed -i -e 's:,.php::' config/.config || die + fi + if ! use cgi-lua; then + sed -i -e 's:\.lua,::' \ + -e 's:lua:php:' \ + -e 's:^CONFIG_HTTP_ENABLE_LUA:# CONFIG_HTTP_ENABLE_LUA:' \ + config/.config || die + fi + else + sed -i -e 's:^CONFIG_AXHTTPD:# CONFIG_AXHTTPD:' \ + config/.config || die + fi + + yes "n" | emake -j1 oldconfig > /dev/null || die +} + +multilib_src_configure() { + #Per-ABI substitutions. + sed -i -e 's:^LIBDIR.*/lib:LIBDIR = $(PREFIX)/'"$(get_libdir):" \ + Makefile || die + + #Use CC as the host compiler for mconf + sed -i -e "s:^HOSTCC.*:HOSTCC=${CC}:" \ + config/Rules.mak || die + + if use savedconfig; then + restore_config config/.config + if [[ -f config/.config ]]; then + ewarn "Using saved config, all other USE flags ignored" + else + ewarn "No saved config, seeding with the default" + cp "${FILESDIR}"/config config/.config || die + fi + yes "" | emake -j1 oldconfig > /dev/null || die + else + use_flag_config + fi +} + +multilib_src_install() { + if multilib_is_native_abi && use savedconfig; then + save_config config/.config + fi + + emake PREFIX="${ED}/usr" install + + if ! use static-libs; then + rm -f "${ED}"/usr/$(get_libdir)/libaxtls.a || die + fi + + # The build system needs to install before it builds docs + if multilib_is_native_abi && use doc; then + emake docs + dodoc -r docsrc/html + fi +} + +multilib_src_install_all() { + if [[ -f "${ED}"/usr/bin/htpasswd ]]; then + mv "${ED}"/usr/bin/{,ax}htpasswd || die + fi + + if use httpd; then + newinitd "${FILESDIR}"/axhttpd.initd axhttpd + newconfd "${FILESDIR}"/axhttpd.confd axhttpd + fi + + docompress -x /usr/share/doc/${PF}/README + dodoc README +} |