aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-05-07 12:19:33 -0400
committerMark H Weaver <mhw@netris.org>2015-05-07 12:22:09 -0400
commit88b6b125baeb41908a40591d403bceb6a9aafb10 (patch)
tree61024eec12b8c44fda361b88c71c861f819d8541
parentdc77f0d321be96a8f6817dbd33f5414d333d7fba (diff)
downloadgnu-guix-88b6b125baeb41908a40591d403bceb6a9aafb10.tar
gnu-guix-88b6b125baeb41908a40591d403bceb6a9aafb10.tar.gz
gnu: serf: Apply upstream fixes.
* gnu/packages/patches/serf-comment-style-fix.patch, gnu/packages/patches/serf-deflate-buckets-test-fix.patch: New file. * gnu-system.am (dist_patch_DATA): Add them. * gnu/packages/web.scm (serf): Add patches. Remove 'remove-non-c89-comment' phase.
-rw-r--r--gnu-system.am2
-rw-r--r--gnu/packages/patches/serf-comment-style-fix.patch23
-rw-r--r--gnu/packages/patches/serf-deflate-buckets-test-fix.patch69
-rw-r--r--gnu/packages/web.scm12
4 files changed, 98 insertions, 8 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 852d558ad3..b5b71abdb0 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -538,6 +538,8 @@ dist_patch_DATA = \
gnu/packages/patches/scheme48-tests.patch \
gnu/packages/patches/scotch-test-threading.patch \
gnu/packages/patches/sdl-libx11-1.6.patch \
+ gnu/packages/patches/serf-comment-style-fix.patch \
+ gnu/packages/patches/serf-deflate-buckets-test-fix.patch \
gnu/packages/patches/slim-session.patch \
gnu/packages/patches/slim-config.patch \
gnu/packages/patches/slim-sigusr1.patch \
diff --git a/gnu/packages/patches/serf-comment-style-fix.patch b/gnu/packages/patches/serf-comment-style-fix.patch
new file mode 100644
index 0000000000..5d336fb3c8
--- /dev/null
+++ b/gnu/packages/patches/serf-comment-style-fix.patch
@@ -0,0 +1,23 @@
+r2443 | andreas.stieger@gmx.de | 2014-10-21 17:42:56 -0400 (Tue, 21 Oct 2014) | 7 lines
+
+Follow-up to r2419: Correct comment style
+
+* test/test_buckets.c
+ (deflate_compress): Correct comment style not supported by strict
+ compilers, fails on /branches/1.3.x
+
+Index: test/test_buckets.c
+===================================================================
+--- test/test_buckets.c (revision 2442)
++++ test/test_buckets.c (revision 2443)
+@@ -1323,9 +1323,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);
diff --git a/gnu/packages/patches/serf-deflate-buckets-test-fix.patch b/gnu/packages/patches/serf-deflate-buckets-test-fix.patch
new file mode 100644
index 0000000000..be8be1b1e8
--- /dev/null
+++ b/gnu/packages/patches/serf-deflate-buckets-test-fix.patch
@@ -0,0 +1,69 @@
+r2445 | chemodax | 2014-10-23 12:15:22 -0400 (Thu, 23 Oct 2014) | 6 lines
+
+Reduce memory usage by deflate buckets test.
+
+* test/test_buckets.c
+ (deflate_buckets): Add POOL argument and use it instead of tb->pool.
+ (test_deflate_buckets): Use iterpool for deflate_buckets() call.
+
+Index: test/test_buckets.c
+===================================================================
+--- test/test_buckets.c (revision 2444)
++++ test/test_buckets.c (revision 2445)
+@@ -1400,12 +1400,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;
+@@ -1424,8 +1424,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);
+ }
+@@ -1447,11 +1447,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)
+@@ -1469,10 +1469,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,
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 396c5f2474..e77bad76d6 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -559,7 +559,10 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
(uri (string-append "http://serf.googlecode.com/svn/src_releases/serf-"
version ".tar.bz2"))
(sha256
- (base32 "14155g48gamcv5s0828bzij6vr14nqmbndwq8j8f9g6vcph0nl70"))))
+ (base32 "14155g48gamcv5s0828bzij6vr14nqmbndwq8j8f9g6vcph0nl70"))
+ (patches (map search-patch '("serf-comment-style-fix.patch"
+ "serf-deflate-buckets-test-fix.patch")))
+ (patch-flags '("-p0"))))
(build-system gnu-build-system)
(native-inputs
`(("scons" ,scons)
@@ -587,13 +590,6 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
(substitute* "SConstruct"
(("^env = Environment\\(")
"env = Environment(ENV=os.environ, "))))
- (add-after 'unpack 'remove-non-c89-comment
- (lambda _
- ;; The SConstruct file asks to compile with -std=c89,
- ;; but there is a non-c89 comment in one of the files.
- ;; Remove it.
- (substitute* "test/test_buckets.c"
- (("^//.*") ""))))
(replace 'build
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))