gnustep-libs/sope: initial import of version 2.3.2

Based on Michael Webers work.

Gentoo-Bug: 564562
This commit is contained in:
Julian Ospald
2015-11-03 19:37:44 +01:00
parent 12f079c443
commit daa2aa89b3
4 changed files with 224 additions and 0 deletions

View File

@@ -0,0 +1 @@
DIST sope-2.3.2.tar.gz 2184555 SHA256 f37877eb5915d5a6a3bc831a4d38ef2bd60e7fdaa40354056b10c4cfbc0ecdc1 SHA512 17d0ee6474410692c6b81bf32b730f4352e7d9c367f18c4a53d7aebbbe65aa2ca2f6eeaea8c722c8367835973b96395b932c9fdb81f08fdf79f299a926e14c9d WHIRLPOOL 17ca7912056d6d6a33c70af56c44819eaff8f640a87de76aa8858f2cd85114026ce108d6d424d50b6fa4085649c1873aee1854482379708785a9162fdc94daf1

View File

@@ -0,0 +1,138 @@
From 36e3816a89fd03261d7a50163a4b36a1fa4baded Mon Sep 17 00:00:00 2001
From: hasufell <hasufell@hasufell.de>
Date: Tue, 3 Nov 2015 17:09:02 +0100
Subject: [PATCH] configure: allow more explicit control over dependencies
Previously the 'checkLinking <lib> optional' strings caused
trouble for distributions, because these checks are automagic, as in:
even if the user doesn't want ldap support, but ldap exists on the
system, it will still be used, possibly causing problems if
ldap is removed afterwards.
Making these things explicit fixes those problems. Default is
still automagic, unless --enable-<feature> or --disable-<feature>
is passed.
---
configure | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++------
1 file changed, 66 insertions(+), 6 deletions(-)
diff --git a/configure b/configure
index 0c4b5cf..90ee783 100755
--- a/configure
+++ b/configure
@@ -22,6 +22,10 @@ ARG_FHSMAKE="$PWD/fhs-postinstall.make"
ARG_WITH_GNUSTEP=0
ARG_WITH_DEBUG=1
ARG_WITH_STRIP=1
+ARG_WITH_MYSQL=auto
+ARG_WITH_POSTGRESQL=auto
+ARG_WITH_OPENLDAP=auto
+ARG_WITH_XML=auto
DARG_GNUSTEP_SH="$ARG_GSMAKE/GNUstep.sh"
DARG_IS_FHS=1
@@ -65,10 +69,16 @@ Installation directories:
--frameworks=DIR build frameworks and install in DIR
--gsmake=PATH path to gnustep-make tree
--configmake=PATH path to the config file being created
+
+Build flags:
--with-gnustep install in GNUstep tree
--enable-debug turn on debugging and compile time warnings
--enable-strip turn on stripping of debug symbols
--with-ssl=SSL specify ssl library (none, libssl, gnutls, auto) [auto]
+ --enable-xml Enable xml support (auto if unspecified)
+ --enable-mysql Enable mysql support (auto if unspecified)
+ --enable-postgresql Enable postgresql support (auto if unspecified)
+ --enable-openldap Enable ldap support (auto if unspecified)
_ACEOF
@@ -475,9 +485,22 @@ checkDependencies() {
cfgwrite ""
cfgwrite "# library dependencies"
cfgwrite "BASE_LIBS := `gnustep-config --base-libs`"
-
- checkLinking "xml2" optional;
- checkLinking "ldap" optional;
+
+ if test "x$ARG_WITH_XML" = "xauto" ; then
+ checkLinking "xml2" optional;
+ elif test $ARG_WITH_XML = 1 ; then
+ checkLinking "xml2" required;
+ else
+ cfgwrite "HAS_LIBRARY_xml2=no"
+ fi
+
+ if test "x$ARG_WITH_OPENLDAP" = "xauto" ; then
+ checkLinking "ldap" optional;
+ elif test $ARG_WITH_OPENLDAP = 1 ; then
+ checkLinking "ldap" required;
+ else
+ cfgwrite "HAS_LIBRARY_ldap=no"
+ fi
if test "x$ARG_CFGSSL" = "xauto"; then
checkLinking "ssl" optional;
@@ -490,10 +513,24 @@ checkDependencies() {
checkLinking "gnutls" required;
fi
- checkLinking "pq" optional;
+ if test "x$ARG_WITH_POSTGRESQL" = "xauto" ; then
+ checkLinking "pq" optional;
+ elif test $ARG_WITH_POSTGRESQL = 1 ; then
+ checkLinking "pq" required;
+ else
+ cfgwrite "HAS_LIBRARY_pq=no"
+ fi
+
# checkLinking "sqlite3" optional;
cfgwrite "HAS_LIBRARY_sqlite3=no"
- checkLinking "mysqlclient" optional;
+
+ if test "x$ARG_WITH_MYSQL" = "xauto" ; then
+ checkLinking "mysqlclient" optional;
+ elif test $ARG_WITH_MYSQL = 1 ; then
+ checkLinking "mysqlclient" required;
+ else
+ cfgwrite "HAS_LIBRARY_mysqlclient=no"
+ fi
}
runIt() {
@@ -575,7 +612,30 @@ processOption() {
extractFuncValue $1;
ARG_CFGSSL="$VALUE"
;;
-
+ "x--enable-mysql")
+ ARG_WITH_MYSQL=1
+ ;;
+ "x--enable-postgresql")
+ ARG_WITH_POSTGRESQL=1
+ ;;
+ "x--enable-openldap")
+ ARG_WITH_OPENLDAP=1
+ ;;
+ "x--enable-xml")
+ ARG_WITH_XML=1
+ ;;
+ "x--disable-mysql")
+ ARG_WITH_MYSQL=0
+ ;;
+ "x--disable-postgresql")
+ ARG_WITH_POSTGRESQL=0
+ ;;
+ "x--disable-openldap")
+ ARG_WITH_OPENLDAP=0
+ ;;
+ "x--disable-xml")
+ ARG_WITH_XML=0
+ ;;
*) echo "error: cannot process argument: $1"; exit 1; ;;
esac
}
--
2.6.1

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>gnustep</herd>
<maintainer>
<email>hasufell@gentoo.org</email>
<name>Julian Ospald</name>
</maintainer>
<maintainer>
<email>xmw@gentoo.org</email>
<name>Michael Weber</name>
</maintainer>
<upstream>
<remote-id type='github'>inverse-inc/sope</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,69 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
inherit eutils gnustep-2 vcs-snapshot
DESCRIPTION="An extensive set of frameworks which form a complete Web application server environment"
HOMEPAGE="http://www.sogo.nu/"
SRC_URI="https://github.com/inverse-inc/sope/archive/SOPE-${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="gnutls ldap libressl mysql postgres +ssl +xml"
RDEPEND="
sys-libs/zlib
ldap? ( net-nds/openldap )
gnutls? ( net-libs/gnutls:= )
!gnutls? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:= )
)
mysql? ( virtual/libmysqlclient:= )
postgres? ( dev-db/postgresql:= )
xml? ( dev-libs/libxml2:2 )
"
DEPEND="${RDEPEND}"
pkg_pretend() {
if use ssl && use gnutls && use libressl ; then
ewarn "You have enabled both gnutls and libressl, but only"
ewarn "one provider can be active. Using gnutls!"
fi
}
src_prepare() {
# https://github.com/inverse-inc/sope/pull/33
epatch "${FILESDIR}"/${P}-optional-deps.patch
gnustep-base_src_prepare
}
src_configure() {
local ssl_provider
if use ssl ; then
if use gnutls ; then
ssl_provider=gnutls
else
ssl_provider=ssl
fi
else
ssl_provider=none
fi
egnustep_env
# Non-standard configure script
./configure \
--disable-strip \
$(use_enable debug) \
$(use_enable ldap openldap) \
$(use_enable mysql) \
$(use_enable postgres postgresql) \
$(use_enable xml) \
--with-ssl="${ssl_provider}" \
--with-gnustep || die "configure failed"
}