diff options
author | Mike Gilbert <floppym@gentoo.org> | 2014-11-05 15:40:37 +0000 |
---|---|---|
committer | Mike Gilbert <floppym@gentoo.org> | 2014-11-05 15:40:37 +0000 |
commit | c901d0642d0b5ca52f8ec71ee130b69b95ed2f10 (patch) | |
tree | 06d5ffadf9ae6268eaed493216a9abb624f2cb8b /net-libs/serf | |
parent | Whitespace. (diff) | |
download | gentoo-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/ChangeLog | 10 | ||||
-rw-r--r-- | net-libs/serf/files/serf-1.3.8-scons_variables.patch | 110 | ||||
-rw-r--r-- | net-libs/serf/files/serf-1.3.8-tests.patch | 95 | ||||
-rw-r--r-- | net-libs/serf/serf-1.3.8.ebuild | 61 |
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}" +} |