diff options
author | Marius Bakke <marius@gnu.org> | 2020-10-11 16:44:00 +0200 |
---|---|---|
committer | Marius Bakke <marius@gnu.org> | 2020-10-13 23:48:15 +0200 |
commit | 0caf236b3b5c9b19ee8709865ae7df9c59e7fe9b (patch) | |
tree | f1aff1f12fca4558f12f06133584e60cef13e4cb /gnu/packages/patches | |
parent | 8008ef29f2f13d998e82bbc5bb66f8489321ae85 (diff) | |
download | guix-0caf236b3b5c9b19ee8709865ae7df9c59e7fe9b.tar guix-0caf236b3b5c9b19ee8709865ae7df9c59e7fe9b.tar.gz |
gnu: libcyaml: Fix build with libyaml 0.2.5.
* gnu/packages/patches/libcyaml-libyaml-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/web.scm (libcyaml)[source](patches): New field.
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r-- | gnu/packages/patches/libcyaml-libyaml-compat.patch | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/gnu/packages/patches/libcyaml-libyaml-compat.patch b/gnu/packages/patches/libcyaml-libyaml-compat.patch new file mode 100644 index 0000000000..dcb8cb51b8 --- /dev/null +++ b/gnu/packages/patches/libcyaml-libyaml-compat.patch @@ -0,0 +1,51 @@ +Fix build against libyaml 0.2.5. + +Taken from upstream: +https://github.com/tlsa/libcyaml/commit/0e947264b947f51f7ea785068637c4bfce5d4171 + +diff --git a/test/units/save.c b/test/units/save.c +--- a/test/units/save.c ++++ b/test/units/save.c +@@ -3476,7 +3476,7 @@ static bool test_save_sequence_null_values_int( + ttest_report_ctx_t *report, + const cyaml_config_t *config) + { +- static const unsigned char ref[] = ++ static const unsigned char ref1[] = + "---\n" + "- 7\n" + "- 6\n" +@@ -3487,6 +3487,18 @@ static bool test_save_sequence_null_values_int( + "- \n" + "- 0\n" + "...\n"; ++ /* As of libyaml 0.2.5, trailing spaces are not emitted. */ ++ static const unsigned char ref2[] = ++ "---\n" ++ "- 7\n" ++ "- 6\n" ++ "- 5\n" ++ "-\n" ++ "- 3\n" ++ "- 2\n" ++ "-\n" ++ "- 0\n" ++ "...\n"; + static const int d[] = { 7, 6, 5, 4, 3, 2, 1, 0 }; + static const int *data[] = { d + 0, d + 1, d + 2, NULL, + d + 4, d + 5, NULL, d + 7, }; +@@ -3515,11 +3527,12 @@ static bool test_save_sequence_null_values_int( + return ttest_fail(&tc, cyaml_strerror(err)); + } + +- if (len != YAML_LEN(ref) || memcmp(ref, buffer, len) != 0) { ++ if ((len != YAML_LEN(ref1) || memcmp(ref1, buffer, len) != 0) && ++ (len != YAML_LEN(ref2) || memcmp(ref2, buffer, len) != 0)) { + return ttest_fail(&tc, "Bad data:\n" + "EXPECTED (%zu):\n\n%.*s\n\n" + "GOT (%zu):\n\n%.*s\n", +- YAML_LEN(ref), YAML_LEN(ref), ref, ++ YAML_LEN(ref1), YAML_LEN(ref1), ref1, + len, len, buffer); + } + |