summaryrefslogtreecommitdiff
path: root/net-libs/serf/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /net-libs/serf/files
reinit the tree, so we can have metadata
Diffstat (limited to 'net-libs/serf/files')
-rw-r--r--net-libs/serf/files/serf-1.3.2-disable_linking_against_unneeded_libraries.patch13
-rw-r--r--net-libs/serf/files/serf-1.3.8-openssl.patch28
-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-static-lib.patch49
-rw-r--r--net-libs/serf/files/serf-1.3.8-tests.patch95
5 files changed, 295 insertions, 0 deletions
diff --git a/net-libs/serf/files/serf-1.3.2-disable_linking_against_unneeded_libraries.patch b/net-libs/serf/files/serf-1.3.2-disable_linking_against_unneeded_libraries.patch
new file mode 100644
index 000000000000..f86646a28d89
--- /dev/null
+++ b/net-libs/serf/files/serf-1.3.2-disable_linking_against_unneeded_libraries.patch
@@ -0,0 +1,13 @@
+--- SConstruct
++++ SConstruct
+@@ -345,8 +345,8 @@
+ ### there is probably a better way to run/capture output.
+ ### env.ParseConfig() may be handy for getting this stuff into the build
+ if CALLOUT_OKAY:
+- apr_libs = os.popen(env.subst('$APR --link-libtool --libs')).read().strip()
+- apu_libs = os.popen(env.subst('$APU --link-libtool --libs')).read().strip()
++ apr_libs = os.popen(env.subst('$APR --link-ld')).read().strip()
++ apu_libs = os.popen(env.subst('$APU --link-ld')).read().strip()
+ else:
+ apr_libs = ''
+ apu_libs = ''
diff --git a/net-libs/serf/files/serf-1.3.8-openssl.patch b/net-libs/serf/files/serf-1.3.8-openssl.patch
new file mode 100644
index 000000000000..4cc3719303bb
--- /dev/null
+++ b/net-libs/serf/files/serf-1.3.8-openssl.patch
@@ -0,0 +1,28 @@
+the build doesn't actually use the openssl var for anything useful.
+it blindly adds it to the -I/-L paths which causes problems when you
+cross-compile and when you link (it also adds it to -rpath). punt
+the setting and forget about it.
+
+--- a/SConstruct
++++ b/SConstruct
+@@ -354,8 +354,6 @@ else:
+ apr_libs = ''
+ apu_libs = ''
+
+- env.Append(CPPPATH=['$OPENSSL/include'])
+- env.Append(LIBPATH=['$OPENSSL/lib'])
+
+
+ # If build with gssapi, get its information and define SERF_HAVE_GSSAPI
+@@ -369,8 +369,9 @@ if sys.platform == 'win32':
+ # On some systems, the -R values that APR describes never make it into actual
+ # RPATH flags. We'll manually map all directories in LIBPATH into new
+ # flags to set RPATH values.
+-for d in env['LIBPATH']:
+- env.Append(RPATH=':'+d)
++if env.get('LIBPATH', None):
++ for d in env['LIBPATH']:
++ env.Append(RPATH=':'+d)
+
+ # Set up the construction of serf-*.pc
+ pkgconfig = env.Textfile('serf-%d.pc' % (MAJOR,),
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-static-lib.patch b/net-libs/serf/files/serf-1.3.8-static-lib.patch
new file mode 100644
index 000000000000..1538328ece66
--- /dev/null
+++ b/net-libs/serf/files/serf-1.3.8-static-lib.patch
@@ -0,0 +1,49 @@
+respect the active archiver tool instead of using `ar` all the time.
+same for `ranlib`.
+
+also add support for BUILD_STATIC bool for controlling the libserf.a.
+
+--- a/SConstruct
++++ b/SConstruct
+@@ -103,6 +103,9 @@
+ BoolVariable('APR_STATIC',
+ "Enable using a static compiled APR",
+ False),
++ RawListVariable('AR', "Command name or path of the archiver", None),
++ RawListVariable('RANLIB', "Command name or path of the archiver indexer", None),
++ BoolVariable('BUILD_STATIC', 'Build libserf static library', True),
+ RawListVariable('CC', "Command name or path of the C compiler", None),
+ RawListVariable('CFLAGS', "Extra flags for the C compiler (space-separated)",
+ None),
+@@ -193,6 +196,7 @@ if gssapi and os.path.isdir(gssapi):
+
+ debug = env.get('DEBUG', None)
+ aprstatic = env.get('APR_STATIC', None)
++build_static = env.get('BUILD_STATIC', True)
+
+ Help(opts.GenerateHelpText(env))
+ opts.Save(SAVED_CONFIG, env)
+@@ -384,7 +388,9 @@ pkgconfig = env.Textfile('serf-%d.pc' % (MAJOR,),
+ env.get('GSSAPI_LIBS', '')),
+ })
+
+-env.Default(lib_static, lib_shared, pkgconfig)
++env.Default(lib_shared, pkgconfig)
++if build_static:
++ env.Default(lib_static)
+
+ if CALLOUT_OKAY:
+ conf = Configure(env)
+@@ -420,8 +420,10 @@ if sys.platform == 'darwin':
+ % (target_install_shared_path,
+ install_shared_path)))
+
+-env.Alias('install-lib', [install_static, install_shared,
+- ])
++install_libs = [install_shared]
++if build_static:
++ install_libs.append(install_static)
++env.Alias('install-lib', install_libs)
+ env.Alias('install-inc', env.Install(incdir, HEADER_FILES))
+ env.Alias('install-pc', env.Install(os.path.join(libdir, 'pkgconfig'),
+ pkgconfig))
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;
+ }
+