summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gilbert <floppym@gentoo.org>2014-11-05 15:40:37 +0000
committerMike Gilbert <floppym@gentoo.org>2014-11-05 15:40:37 +0000
commitc901d0642d0b5ca52f8ec71ee130b69b95ed2f10 (patch)
tree06d5ffadf9ae6268eaed493216a9abb624f2cb8b /net-libs/serf
parentWhitespace. (diff)
downloadgentoo-2-c901d0642d0b5ca52f8ec71ee130b69b95ed2f10.tar.gz
gentoo-2-c901d0642d0b5ca52f8ec71ee130b69b95ed2f10.tar.bz2
gentoo-2-c901d0642d0b5ca52f8ec71ee130b69b95ed2f10.zip
Version bump. Ebuild by Arfrever. Fix RUNPATH (bug #509242). Usage of SSL 2 and 3 disabled.
(Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 0BBEEA1FEA4843A4)
Diffstat (limited to 'net-libs/serf')
-rw-r--r--net-libs/serf/ChangeLog10
-rw-r--r--net-libs/serf/files/serf-1.3.8-scons_variables.patch110
-rw-r--r--net-libs/serf/files/serf-1.3.8-tests.patch95
-rw-r--r--net-libs/serf/serf-1.3.8.ebuild61
4 files changed, 275 insertions, 1 deletions
diff --git a/net-libs/serf/ChangeLog b/net-libs/serf/ChangeLog
index fe097edab54a..c9a98d4727a5 100644
--- a/net-libs/serf/ChangeLog
+++ b/net-libs/serf/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for net-libs/serf
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/serf/ChangeLog,v 1.147 2014/08/30 17:02:39 ago Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/serf/ChangeLog,v 1.148 2014/11/05 15:40:37 floppym Exp $
+
+*serf-1.3.8 (05 Nov 2014)
+
+ 05 Nov 2014; Mike Gilbert <floppym@gentoo.org>
+ +files/serf-1.3.8-scons_variables.patch, +files/serf-1.3.8-tests.patch,
+ +serf-1.3.8.ebuild:
+ Version bump. Ebuild by Arfrever. Fix RUNPATH (bug #509242). Usage of SSL 2
+ and 3 disabled.
30 Aug 2014; Agostino Sarubbo <ago@gentoo.org> serf-1.3.7.ebuild:
Stable for ppc64, wrt bug #519202
diff --git a/net-libs/serf/files/serf-1.3.8-scons_variables.patch b/net-libs/serf/files/serf-1.3.8-scons_variables.patch
new file mode 100644
index 000000000000..b51e846d8932
--- /dev/null
+++ b/net-libs/serf/files/serf-1.3.8-scons_variables.patch
@@ -0,0 +1,110 @@
+https://code.google.com/p/serf/issues/detail?id=151
+https://code.google.com/p/serf/source/detail?r=2413
+
+--- SConstruct
++++ SConstruct
+@@ -223,12 +223,12 @@
+
+ if sys.platform == 'darwin':
+ # linkflags.append('-Wl,-install_name,@executable_path/%s.dylib' % (LIBNAME,))
+- env.Append(LINKFLAGS='-Wl,-install_name,%s/%s.dylib' % (thisdir, LIBNAME,))
++ env.Append(LINKFLAGS=['-Wl,-install_name,%s/%s.dylib' % (thisdir, LIBNAME,)])
+
+ if sys.platform != 'win32':
+ ### gcc only. figure out appropriate test / better way to check these
+ ### flags, and check for gcc.
+- env.Append(CFLAGS='-std=c89')
++ env.Append(CFLAGS=['-std=c89'])
+
+ ### These warnings are not available on Solaris
+ if sys.platform != 'sunos5':
+@@ -237,17 +237,17 @@
+ '-Wall'])
+
+ if debug:
+- env.Append(CCFLAGS='-g')
++ env.Append(CCFLAGS=['-g'])
+ env.Append(CPPDEFINES=['DEBUG', '_DEBUG'])
+ else:
+- env.Append(CCFLAGS='-O2')
+- env.Append(CPPDEFINES='NDEBUG')
++ env.Append(CCFLAGS=['-O2'])
++ env.Append(CPPDEFINES=['NDEBUG'])
+
+ ### works for Mac OS. probably needs to change
+ env.Append(LIBS=['ssl', 'crypto', 'z', ])
+
+ if sys.platform == 'sunos5':
+- env.Append(LIBS='m')
++ env.Append(LIBS=['m'])
+ else:
+ # Warning level 4, no unused argument warnings
+ env.Append(CCFLAGS=['/W4', '/wd4100'])
+@@ -260,8 +260,8 @@
+ else:
+ # Optimize for speed, use DLL runtime
+ env.Append(CCFLAGS=['/O2', '/MD'])
+- env.Append(CPPDEFINES='NDEBUG')
+- env.Append(LINKFLAGS='/RELEASE')
++ env.Append(CPPDEFINES=['NDEBUG'])
++ env.Append(LINKFLAGS=['/RELEASE'])
+
+ # PLAN THE BUILD
+ SHARED_SOURCES = []
+@@ -307,25 +307,25 @@
+ CPPPATH=['$APR/include', '$APU/include'])
+
+ # zlib
+- env.Append(LIBS='zlib.lib')
++ env.Append(LIBS=['zlib.lib'])
+ if not env.get('SOURCE_LAYOUT', None):
+- env.Append(CPPPATH='$ZLIB/include',
+- LIBPATH='$ZLIB/lib')
++ env.Append(CPPPATH=['$ZLIB/include'],
++ LIBPATH=['$ZLIB/lib'])
+ else:
+- env.Append(CPPPATH='$ZLIB',
+- LIBPATH='$ZLIB')
++ env.Append(CPPPATH=['$ZLIB'],
++ LIBPATH=['$ZLIB'])
+
+ # openssl
+ env.Append(LIBS=['libeay32.lib', 'ssleay32.lib'])
+ if not env.get('SOURCE_LAYOUT', None):
+- env.Append(CPPPATH='$OPENSSL/include/openssl',
+- LIBPATH='$OPENSSL/lib')
++ env.Append(CPPPATH=['$OPENSSL/include/openssl'],
++ LIBPATH=['$OPENSSL/lib'])
+ elif 0: # opensslstatic:
+- env.Append(CPPPATH='$OPENSSL/inc32',
+- LIBPATH='$OPENSSL/out32')
++ env.Append(CPPPATH=['$OPENSSL/inc32'],
++ LIBPATH=['$OPENSSL/out32'])
+ else:
+- env.Append(CPPPATH='$OPENSSL/inc32',
+- LIBPATH='$OPENSSL/out32dll')
++ env.Append(CPPPATH=['$OPENSSL/inc32'],
++ LIBPATH=['$OPENSSL/out32dll'])
+ else:
+ if os.path.isdir(apr):
+ apr = os.path.join(apr, 'bin', 'apr-1-config')
+@@ -351,8 +351,8 @@
+ apr_libs = ''
+ apu_libs = ''
+
+- env.Append(CPPPATH='$OPENSSL/include')
+- env.Append(LIBPATH='$OPENSSL/lib')
++ env.Append(CPPPATH=['$OPENSSL/include'])
++ env.Append(LIBPATH=['$OPENSSL/lib'])
+
+
+ # If build with gssapi, get its information and define SERF_HAVE_GSSAPI
+@@ -362,7 +362,7 @@
+ env['GSSAPI_LIBS'] = cmd.strip()
+ return env.MergeFlags(cmd, unique)
+ env.ParseConfig('$GSSAPI --libs gssapi', parse_libs)
+- env.Append(CPPDEFINES='SERF_HAVE_GSSAPI')
++ env.Append(CPPDEFINES=['SERF_HAVE_GSSAPI'])
+ if sys.platform == 'win32':
+ env.Append(CPPDEFINES=['SERF_HAVE_SSPI'])
+
diff --git a/net-libs/serf/files/serf-1.3.8-tests.patch b/net-libs/serf/files/serf-1.3.8-tests.patch
new file mode 100644
index 000000000000..65b9962f2529
--- /dev/null
+++ b/net-libs/serf/files/serf-1.3.8-tests.patch
@@ -0,0 +1,95 @@
+https://code.google.com/p/serf/source/detail?r=2443
+https://code.google.com/p/serf/source/detail?r=2444
+https://code.google.com/p/serf/source/detail?r=2445
+
+--- test/test_buckets.c
++++ test/test_buckets.c
+@@ -1232,9 +1232,9 @@
+
+ /* The largest buffer we should need is 0.1% larger than the
+ uncompressed data, + 12 bytes. This info comes from zlib.h.
++ buf_size = orig_len + (orig_len / 1000) + 12;
+ Note: This isn't sufficient when using Z_NO_FLUSH and extremely compressed
+ data. Use a buffer bigger than what we need. */
+-// buf_size = orig_len + (orig_len / 1000) + 12;
+ buf_size = 100000;
+
+ write_buf = apr_palloc(pool, buf_size);
+@@ -1309,12 +1309,12 @@
+ expected_len);
+ }
+
+-static void deflate_buckets(CuTest *tc, int nr_of_loops)
++static void deflate_buckets(CuTest *tc, int nr_of_loops, apr_pool_t *pool)
+ {
+ const char *msg = "12345678901234567890123456789012345678901234567890";
+
+ test_baton_t *tb = tc->testBaton;
+- serf_bucket_alloc_t *alloc = serf_bucket_allocator_create(tb->pool, NULL,
++ serf_bucket_alloc_t *alloc = serf_bucket_allocator_create(pool, NULL,
+ NULL);
+ z_stream zdestr;
+ int i;
+@@ -1333,8 +1333,8 @@
+ {
+ serf_config_t *config;
+
+- serf_context_t *ctx = serf_context_create(tb->pool);
+- /* status = */ serf__config_store_get_config(ctx, NULL, &config, tb->pool);
++ serf_context_t *ctx = serf_context_create(pool);
++ /* status = */ serf__config_store_get_config(ctx, NULL, &config, pool);
+
+ serf_bucket_set_config(defbkt, config);
+ }
+@@ -1356,11 +1356,11 @@
+ if (i == nr_of_loops - 1) {
+ CuAssertIntEquals(tc, APR_SUCCESS,
+ deflate_compress(&data, &len, &zdestr, msg,
+- strlen(msg), 1, tb->pool));
++ strlen(msg), 1, pool));
+ } else {
+ CuAssertIntEquals(tc, APR_SUCCESS,
+ deflate_compress(&data, &len, &zdestr, msg,
+- strlen(msg), 0, tb->pool));
++ strlen(msg), 0, pool));
+ }
+
+ if (len == 0)
+@@ -1378,10 +1378,15 @@
+ static void test_deflate_buckets(CuTest *tc)
+ {
+ int i;
++ apr_pool_t *iterpool;
++ test_baton_t *tb = tc->testBaton;
+
++ apr_pool_create(&iterpool, tb->pool);
+ for (i = 1; i < 1000; i++) {
+- deflate_buckets(tc, i);
++ apr_pool_clear(iterpool);
++ deflate_buckets(tc, i, iterpool);
+ }
++ apr_pool_destroy(iterpool);
+ }
+
+ static apr_status_t discard_data(serf_bucket_t *bkt,
+--- test/test_util.c
++++ test/test_util.c
+@@ -363,10 +363,18 @@
+ return status;
+ }
+
++static int pool_abort_func(int retcode)
++{
++ fprintf(stderr, "Out of memory\n");
++ abort();
++ return 0;
++}
++
+ void *test_setup(void *dummy)
+ {
+ apr_pool_t *test_pool;
+ apr_pool_create(&test_pool, NULL);
++ apr_pool_abort_set(pool_abort_func, test_pool);
+ return test_pool;
+ }
+
diff --git a/net-libs/serf/serf-1.3.8.ebuild b/net-libs/serf/serf-1.3.8.ebuild
new file mode 100644
index 000000000000..8bcdc31b3999
--- /dev/null
+++ b/net-libs/serf/serf-1.3.8.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/serf/serf-1.3.8.ebuild,v 1.1 2014/11/05 15:40:37 floppym Exp $
+
+EAPI="5"
+
+inherit eutils scons-utils toolchain-funcs
+
+DESCRIPTION="HTTP client library"
+HOMEPAGE="https://code.google.com/p/serf/"
+SRC_URI="https://serf.googlecode.com/svn/src_releases/${P}.tar.bz2"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="kerberos"
+
+RDEPEND="dev-libs/apr:1=
+ dev-libs/apr-util:1=
+ dev-libs/openssl:0=
+ sys-libs/zlib:0=
+ kerberos? ( virtual/krb5 )"
+DEPEND="${RDEPEND}
+ >=dev-util/scons-2.3.0"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.3.2-disable_linking_against_unneeded_libraries.patch"
+ epatch "${FILESDIR}/${PN}-1.3.8-scons_variables.patch"
+ epatch "${FILESDIR}/${PN}-1.3.8-tests.patch"
+
+ # https://code.google.com/p/serf/issues/detail?id=133
+ sed -e "/env.Append(CCFLAGS='-O2')/d" -i SConstruct
+}
+
+src_compile() {
+ local myesconsargs=(
+ PREFIX="${EPREFIX}/usr"
+ LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+ APR="${EPREFIX}/usr/bin/apr-1-config"
+ APU="${EPREFIX}/usr/bin/apu-1-config"
+ OPENSSL="${EPREFIX}/usr"
+ CC="$(tc-getCC)"
+ CPPFLAGS="${CPPFLAGS}"
+ CFLAGS="${CFLAGS}"
+ LINKFLAGS="${LDFLAGS}"
+ )
+
+ if use kerberos; then
+ myesconsargs+=(GSSAPI="${EPREFIX}/usr/bin/krb5-config")
+ fi
+
+ escons
+}
+
+src_test() {
+ escons check
+}
+
+src_install() {
+ escons install --install-sandbox="${D}"
+}