summaryrefslogtreecommitdiff
path: root/gnu/packages/patches
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2021-05-22 17:21:57 +0200
committerMarius Bakke <marius@gnu.org>2021-05-22 17:21:57 +0200
commit4ea6852c5ff1606cf6848f3ddbb669120b228c13 (patch)
tree6f21e3cad7a3cad4eb847f404b6ba6450dfc2bef /gnu/packages/patches
parentfcf45f8d756b92c5a99308d671af8992b489c4b4 (diff)
parentd4ffa9630277fa8699c783c08381d688626d4bc3 (diff)
downloadguix-patches-4ea6852c5ff1606cf6848f3ddbb669120b228c13.tar
guix-patches-4ea6852c5ff1606cf6848f3ddbb669120b228c13.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r--gnu/packages/patches/autotrace-glib-compat.patch50
-rw-r--r--gnu/packages/patches/disarchive-cross-compilation.patch77
-rw-r--r--gnu/packages/patches/graphviz-CVE-2020-18032.patch49
-rw-r--r--gnu/packages/patches/libblockdev-glib-compat.patch61
-rw-r--r--gnu/packages/patches/libxml2-xpath0-Add-option-xpath0.patch129
-rw-r--r--gnu/packages/patches/mercurial-hg-extension-path.patch29
-rw-r--r--gnu/packages/patches/pinball-const-fix.patch11
-rw-r--r--gnu/packages/patches/pinball-cstddef.patch38
-rw-r--r--gnu/packages/patches/pinball-missing-separators.patch101
-rw-r--r--gnu/packages/patches/pinball-src-deps.patch24
-rw-r--r--gnu/packages/patches/pinball-system-ltdl.patch24
-rw-r--r--gnu/packages/patches/rxvt-unicode-escape-sequences.patch35
-rw-r--r--gnu/packages/patches/ucx-tcp-iface-ioctl.patch43
13 files changed, 424 insertions, 247 deletions
diff --git a/gnu/packages/patches/autotrace-glib-compat.patch b/gnu/packages/patches/autotrace-glib-compat.patch
new file mode 100644
index 0000000000..e63dcedf83
--- /dev/null
+++ b/gnu/packages/patches/autotrace-glib-compat.patch
@@ -0,0 +1,50 @@
+Fix build with GLib 2.68 and later.
+
+Taken from upstream pull request:
+https://github.com/autotrace/autotrace/pull/41
+
+diff --git a/src/autotrace.h b/src/autotrace.h
+--- a/src/autotrace.h
++++ b/src/autotrace.h
+@@ -23,6 +23,9 @@
+
+ #include <stdio.h>
+
++#include "types.h"
++#include "color.h"
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif /* __cplusplus */
+@@ -35,9 +38,6 @@ extern "C" {
+ * Typedefs
+ * ===================================================================== */
+
+-#include "types.h"
+-#include "color.h"
+-
+ /* Third degree is the highest we deal with. */
+ enum _at_polynomial_degree {
+ AT_LINEARTYPE = 1,
+diff --git a/src/color.h b/src/color.h
+--- a/src/color.h
++++ b/src/color.h
+@@ -24,6 +24,10 @@
+ #include <glib.h>
+ #include <glib-object.h>
+
++#ifdef __cplusplus
++extern "C" {
++#endif /* __cplusplus */
++
+ typedef struct _at_color at_color;
+ struct _at_color {
+ guint8 r;
+@@ -43,4 +47,7 @@ void at_color_free(at_color * color);
+ GType at_color_get_type(void);
+ #define AT_TYPE_COLOR (at_color_get_type ())
+
++#ifdef __cplusplus
++}
++#endif /* __cplusplus */
+ #endif /* not AT_COLOR_H */
diff --git a/gnu/packages/patches/disarchive-cross-compilation.patch b/gnu/packages/patches/disarchive-cross-compilation.patch
new file mode 100644
index 0000000000..8061262168
--- /dev/null
+++ b/gnu/packages/patches/disarchive-cross-compilation.patch
@@ -0,0 +1,77 @@
+From dc0f8f8bf8608c39da32e3c8ca1484b766fc7452 Mon Sep 17 00:00:00 2001
+From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
+Date: Mon, 17 May 2021 16:47:19 -0400
+Subject: [PATCH] build: Fix cross-compilation.
+
+The cross-compilation issues corrected by this change were discovered
+when attempting to cross-compile disarchive for the i586-gnu target on
+GNU Guix.
+
+* configure.ac [O_NOFOLLOW]: Rewrite test using AC_COMPUTE_INT, which
+is supported even when cross-compiling.
+(GUILD_TARGET_OPTION): New computed variable.
+* build-aux/guile.am ($(AM_V_GUILEC)GUILE_AUTO_COMPILE): Use it.
+---
+ build-aux/guile.am | 6 +++---
+ configure.ac | 24 +++++++++++++++---------
+ 2 files changed, 18 insertions(+), 12 deletions(-)
+
+diff --git a/build-aux/guile.am b/build-aux/guile.am
+index bec04ea..7745125 100644
+--- a/build-aux/guile.am
++++ b/build-aux/guile.am
+@@ -54,7 +54,7 @@ AM_V_GUILEC_0 = @echo " GUILEC" $@;
+ SUFFIXES = .scm .go
+
+ .scm.go:
+- $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
+- $(top_builddir)/pre-inst-env \
+- $(GUILD) compile $(GUILE_WARNINGS) \
++ $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
++ $(top_builddir)/pre-inst-env \
++ $(GUILD) compile $(GUILE_WARNINGS) $(GUILD_TARGET_OPTION) \
+ -o "$@" "$<"
+diff --git a/configure.ac b/configure.ac
+index 99c5ac5..0cd0173 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -39,21 +39,27 @@ AS_IF([test "x$GUILD" = "x"],
+ [AC_MSG_ERROR(m4_normalize([
+ 'guild' binary not found; please check your Guile installation.]))])])
+
++dnl This argument is passed to guild; it ensures cross-compiling uses
++dnl the right target.
++if test -n "$host_alias"; then
++ AC_SUBST([GUILD_TARGET_OPTION], [--target=$host_alias])
++fi
++
+ GUILE_MODULE_REQUIRED(gcrypt hash)
+
+ dnl Guile defines a handful of values from <fcntl.h>, but it is
+ dnl missing O_NOFOLLOW.
+ AC_ARG_VAR([O_NOFOLLOW], [value to use for O_NOFOLLOW (cf. <fcntl.h>)])
+ AS_IF([test "x$O_NOFOLLOW" = "x"],
+- [AC_MSG_CHECKING([the value of O_NOFOLLOW])
+- AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+- #include <fcntl.h>
+- #include <stdio.h>
+- ]], [[
+- printf("%d\n", O_NOFOLLOW)
+- ]])],
+- [O_NOFOLLOW=`./conftest$EXEEXT`],
+- [AC_MSG_FAILURE([could find value for O_NOFOLLOW])])])
++ [AC_MSG_CHECKING([the value of O_NOFOLLOW])]
++ [AC_COMPUTE_INT([O_NOFOLLOW],
++ [O_NOFOLLOW],
++ [[
++ #include <fcntl.h>
++ #include <stdio.h>
++ ]],
++ [AC_MSG_FAILURE([could find value for O_NOFOLLOW])])]
++ [AC_MSG_RESULT([$O_NOFOLLOW])])
+
+ AC_ARG_VAR([TAR], [tar utility])
+ AS_IF([test "x$TAR" = "x"], [AC_PATH_PROG([TAR], [tar])])
+--
+2.31.1
+
diff --git a/gnu/packages/patches/graphviz-CVE-2020-18032.patch b/gnu/packages/patches/graphviz-CVE-2020-18032.patch
new file mode 100644
index 0000000000..4cf94a9a36
--- /dev/null
+++ b/gnu/packages/patches/graphviz-CVE-2020-18032.patch
@@ -0,0 +1,49 @@
+Fix CVE-2020-18032:
+
+https://cve.mitre.org/cgi-bin/cvename.cgi?name=2020-18032
+https://gitlab.com/graphviz/graphviz/-/issues/1700
+
+Patch copied from upstream source repository:
+
+https://gitlab.com/graphviz/graphviz/-/commit/784411ca3655c80da0f6025ab20634b2a6ff696b
+
+From 784411ca3655c80da0f6025ab20634b2a6ff696b Mon Sep 17 00:00:00 2001
+From: Matthew Fernandez <matthew.fernandez@gmail.com>
+Date: Sat, 25 Jul 2020 19:31:01 -0700
+Subject: [PATCH] fix: out-of-bounds write on invalid label
+
+When the label for a node cannot be parsed (due to it being malformed), it falls
+back on the symbol name of the node itself. I.e. the default label the node
+would have had if it had no label attribute at all. However, this is applied by
+dynamically altering the node's label to "\N", a shortcut for the symbol name of
+the node. All of this is fine, however if the hand written label itself is
+shorter than the literal string "\N", not enough memory would have been
+allocated to write "\N" into the label text.
+
+Here we account for the possibility of error during label parsing, and assume
+that the label text may need to be overwritten with "\N" after the fact. Fixes
+issue #1700.
+---
+ lib/common/shapes.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/lib/common/shapes.c b/lib/common/shapes.c
+index 0a0635fc3..9dca9ba6e 100644
+--- a/lib/common/shapes.c
++++ b/lib/common/shapes.c
+@@ -3546,9 +3546,10 @@ static void record_init(node_t * n)
+ reclblp = ND_label(n)->text;
+ len = strlen(reclblp);
+ /* For some forgotten reason, an empty label is parsed into a space, so
+- * we need at least two bytes in textbuf.
++ * we need at least two bytes in textbuf, as well as accounting for the
++ * error path involving "\\N" below.
+ */
+- len = MAX(len, 1);
++ len = MAX(MAX(len, 1), (int)strlen("\\N"));
+ textbuf = N_NEW(len + 1, char);
+ if (!(info = parse_reclbl(n, flip, TRUE, textbuf))) {
+ agerr(AGERR, "bad label format %s\n", ND_label(n)->text);
+--
+2.31.1
+
diff --git a/gnu/packages/patches/libblockdev-glib-compat.patch b/gnu/packages/patches/libblockdev-glib-compat.patch
new file mode 100644
index 0000000000..bb25d5d963
--- /dev/null
+++ b/gnu/packages/patches/libblockdev-glib-compat.patch
@@ -0,0 +1,61 @@
+Don't use g_memdup() which is removed in newer versions of GLib.
+
+See <https://github.com/storaged-project/libblockdev/pull/623>.
+
+Taken from upstream:
+https://github.com/storaged-project/libblockdev/commit/5528baef6ccc835a06c45f9db34a2c9c3f2dd940
+
+diff --git a/src/lib/plugin_apis/vdo.api b/src/lib/plugin_apis/vdo.api
+--- a/src/lib/plugin_apis/vdo.api
++++ b/src/lib/plugin_apis/vdo.api
+@@ -170,7 +170,22 @@ void bd_vdo_stats_free (BDVDOStats *stats) {
+ * Deprecated: 2.24: Use LVM-VDO integration instead.
+ */
+ BDVDOStats* bd_vdo_stats_copy (BDVDOStats *stats) {
+- return g_memdup (stats, sizeof (BDVDOStats));
++ if (stats == NULL)
++ return NULL;
++
++ BDVDOStats *new_stats = g_new0 (BDVDOStats, 1);
++
++ new_stats->block_size = stats->block_size;
++ new_stats->logical_block_size = stats->logical_block_size;
++ new_stats->physical_blocks = stats->physical_blocks;
++ new_stats->data_blocks_used = stats->data_blocks_used;
++ new_stats->overhead_blocks_used = stats->overhead_blocks_used;
++ new_stats->logical_blocks_used = stats->logical_blocks_used;
++ new_stats->used_percent = stats->used_percent;
++ new_stats->saving_percent = stats->saving_percent;
++ new_stats->write_amplification_ratio = stats->write_amplification_ratio;
++
++ return new_stats;
+ }
+
+ GType bd_vdo_stats_get_type () {
+diff --git a/src/plugins/vdo.c b/src/plugins/vdo.c
+--- a/src/plugins/vdo.c
++++ b/src/plugins/vdo.c
+@@ -81,7 +81,22 @@ void bd_vdo_stats_free (BDVDOStats *stats) {
+ }
+
+ BDVDOStats* bd_vdo_stats_copy (BDVDOStats *stats) {
+- return g_memdup (stats, sizeof (BDVDOStats));
++ if (stats == NULL)
++ return NULL;
++
++ BDVDOStats *new_stats = g_new0 (BDVDOStats, 1);
++
++ new_stats->block_size = stats->block_size;
++ new_stats->logical_block_size = stats->logical_block_size;
++ new_stats->physical_blocks = stats->physical_blocks;
++ new_stats->data_blocks_used = stats->data_blocks_used;
++ new_stats->overhead_blocks_used = stats->overhead_blocks_used;
++ new_stats->logical_blocks_used = stats->logical_blocks_used;
++ new_stats->used_percent = stats->used_percent;
++ new_stats->saving_percent = stats->saving_percent;
++ new_stats->write_amplification_ratio = stats->write_amplification_ratio;
++
++ return new_stats;
+ }
+
+
diff --git a/gnu/packages/patches/libxml2-xpath0-Add-option-xpath0.patch b/gnu/packages/patches/libxml2-xpath0-Add-option-xpath0.patch
new file mode 100644
index 0000000000..e83642eb37
--- /dev/null
+++ b/gnu/packages/patches/libxml2-xpath0-Add-option-xpath0.patch
@@ -0,0 +1,129 @@
+This patch adds an "--xpath0" option to xmllint so that NUL characters
+can be used as separators.
+
+See <https://gitlab.gnome.org/GNOME/libxml2/-/issues/227>.
+
+diff --git a/doc/xmllint.xml b/doc/xmllint.xml
+--- a/doc/xmllint.xml
++++ b/doc/xmllint.xml
+@@ -70,6 +70,7 @@
+ <arg choice="plain"><option>--debug</option></arg>
+ <arg choice="plain"><option>--shell</option></arg>
+ <arg choice="plain"><option>--xpath "<replaceable class="option">XPath_expression</replaceable>"</option></arg>
++ <arg choice="plain"><option>--xpath0 "<replaceable class="option">XPath_expression</replaceable>"</option></arg>
+ <arg choice="plain"><option>--debugent</option></arg>
+ <arg choice="plain"><option>--copy</option></arg>
+ <arg choice="plain"><option>--recover</option></arg>
+@@ -537,6 +538,21 @@
+ node set is serialized in full in the output. In case
+ of an empty node set the "XPath set is empty" result
+ will be shown and an error exit code will be returned.
++ Results are separated by the newline character.
++ </para>
++ </listitem>
++ </varlistentry>
++
++ <varlistentry>
++ <term><option>--xpath0 "<replaceable class="option">XPath_expression</replaceable>"</option></term>
++ <listitem>
++ <para>
++ Run an XPath expression given as argument and print the
++ result. In case of a nodeset result, each node in the
++ node set is serialized in full in the output. In case
++ of an empty node set the "XPath set is empty" result
++ will be shown and an error exit code will be returned.
++ Results are separated by the null character.
+ </para>
+ </listitem>
+ </varlistentry>
+diff --git a/xmllint.c b/xmllint.c
+--- a/xmllint.c
++++ b/xmllint.c
+@@ -194,6 +194,7 @@ static int sax1 = 0;
+ #endif /* LIBXML_SAX1_ENABLED */
+ #ifdef LIBXML_XPATH_ENABLED
+ static const char *xpathquery = NULL;
++static const char *xpathsep = "\n";
+ #endif
+ static int options = XML_PARSE_COMPACT | XML_PARSE_BIG_LINES;
+ static int sax = 0;
+@@ -2095,7 +2096,7 @@ static void doXPathDump(xmlXPathObjectPtr cur) {
+ for (i = 0;i < cur->nodesetval->nodeNr;i++) {
+ node = cur->nodesetval->nodeTab[i];
+ xmlNodeDumpOutput(buf, NULL, node, 0, 0, NULL);
+- xmlOutputBufferWrite(buf, 1, "\n");
++ xmlOutputBufferWrite(buf, 1, xpathsep);
+ }
+ xmlOutputBufferClose(buf);
+ #else
+@@ -2104,27 +2105,27 @@ static void doXPathDump(xmlXPathObjectPtr cur) {
+ break;
+ }
+ case XPATH_BOOLEAN:
+- if (cur->boolval) printf("true\n");
+- else printf("false\n");
++ if (cur->boolval) printf("true%s", xpathsep);
++ else printf("false%s", xpathsep);
+ break;
+ case XPATH_NUMBER:
+ switch (xmlXPathIsInf(cur->floatval)) {
+ case 1:
+- printf("Infinity\n");
++ printf("Infinity%s", xpathsep);
+ break;
+ case -1:
+- printf("-Infinity\n");
++ printf("-Infinity%s", xpathsep);
+ break;
+ default:
+ if (xmlXPathIsNaN(cur->floatval)) {
+- printf("NaN\n");
++ printf("NaN%s", xpathsep);
+ } else {
+- printf("%0g\n", cur->floatval);
++ printf("%0g%s", cur->floatval, xpathsep);
+ }
+ }
+ break;
+ case XPATH_STRING:
+- printf("%s\n", (const char *) cur->stringval);
++ printf("%s%s", (const char *) cur->stringval, xpathsep);
+ break;
+ case XPATH_UNDEFINED:
+ fprintf(stderr, "XPath Object is uninitialized\n");
+@@ -3098,7 +3099,8 @@ static void usage(FILE *f, const char *name) {
+ fprintf(f, "\t--sax: do not build a tree but work just at the SAX level\n");
+ fprintf(f, "\t--oldxml10: use XML-1.0 parsing rules before the 5th edition\n");
+ #ifdef LIBXML_XPATH_ENABLED
+- fprintf(f, "\t--xpath expr: evaluate the XPath expression, imply --noout\n");
++ fprintf(f, "\t--xpath expr: evaluate the XPath expression, results are separated by \\n, imply --noout\n");
++ fprintf(f, "\t--xpath0 expr: evaluate the XPath expression, results are separated by \\0, imply --noout\n");
+ #endif
+
+ fprintf(f, "\nLibxml project home page: http://xmlsoft.org/\n");
+@@ -3480,6 +3482,13 @@ main(int argc, char **argv) {
+ i++;
+ noout++;
+ xpathquery = argv[i];
++ xpathsep = "\n";
++ } else if ((!strcmp(argv[i], "-xpath0")) ||
++ (!strcmp(argv[i], "--xpath0"))) {
++ i++;
++ noout++;
++ xpathquery = argv[i];
++ xpathsep = "\0";
+ #endif
+ } else if ((!strcmp(argv[i], "-oldxml10")) ||
+ (!strcmp(argv[i], "--oldxml10"))) {
+@@ -3712,6 +3721,11 @@ main(int argc, char **argv) {
+ i++;
+ continue;
+ }
++ if ((!strcmp(argv[i], "-xpath0")) ||
++ (!strcmp(argv[i], "--xpath0"))) {
++ i++;
++ continue;
++ }
+ #endif
+ if ((timing) && (repeat))
+ startTimer();
diff --git a/gnu/packages/patches/mercurial-hg-extension-path.patch b/gnu/packages/patches/mercurial-hg-extension-path.patch
new file mode 100644
index 0000000000..d1073dd01c
--- /dev/null
+++ b/gnu/packages/patches/mercurial-hg-extension-path.patch
@@ -0,0 +1,29 @@
+This is needed to make Mercurial read the HGEXTENSIONPATH to detect
+third-party extensions. It is called HGEXTENSIONPATH and not
+HG_EXTENSION_PATH to keep it consistent with other environment variables for
+Mercurial, e.g. HGENCODINGAMBIGUOUS, HGEDITOR ... Hopefully I or someone else
+will get this into Mercurial proper.
+
+diff --git a/mercurial/extensions.py b/mercurial/extensions.py
+--- a/mercurial/extensions.py
++++ b/mercurial/extensions.py
+@@ -13,6 +13,7 @@
+ import imp
+ import inspect
+ import os
++import sys
+
+ from .i18n import (
+ _,
+@@ -108,6 +109,11 @@
+
+ def _importh(name):
+ """import and return the <name> module"""
++ # Read HGEXTENSIONSPATH environment variable when import extensions.
++ extension_path = os.getenv("HGEXTENSIONSPATH")
++ if extension_path is not None:
++ for path in extension_path:
++ sys.path.append(path)
+ mod = __import__(pycompat.sysstr(name))
+ components = name.split(b'.')
+ for comp in components[1:]:
diff --git a/gnu/packages/patches/pinball-const-fix.patch b/gnu/packages/patches/pinball-const-fix.patch
deleted file mode 100644
index 6d7b75dd48..0000000000
--- a/gnu/packages/patches/pinball-const-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- pinball-0.3.1/base/Config.cpp 2009-10-13 18:33:38.000000000 +0200
-+++ pinball-0.3.1/base/Config.cpp 2009-10-13 18:37:12.000000000 +0200
-@@ -416,7 +416,7 @@
- m_sDataDir = string(EM_DATADIR) + "/";
- m_sExeDir = "./";
- if ( *( m_sDataDir.c_str() ) != '/' ) {
-- char* ptr=0;
-+ const char* ptr=0;
- char* ptrw = 0;
- //cout<<"relative to exe file"<<endl;
- ptr = (strrchr(argv0,'/')); // unix /cygwin / check win32
diff --git a/gnu/packages/patches/pinball-cstddef.patch b/gnu/packages/patches/pinball-cstddef.patch
deleted file mode 100644
index e43a132d84..0000000000
--- a/gnu/packages/patches/pinball-cstddef.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Description: Add missing inlcudes of cstddef, fixing FTBFS13.1
-Author: Regis Boudin <regis@debian.org>
-Bug-Debian: http://bugs.debian.org/624953
-Bug-Debian: http://bugs.debian.org/640726
-
---- pinball-0.3.1/base/Behavior.cpp
-+++ pinball-0.3.1/base/Behavior.cpp
-@@ -10,6 +10,8 @@
- #include "Behavior.h"
- #include "Group.h"
-
-+#include <cstddef>
-+
- Behavior::Behavior() {
- //EM_COUT("Behavior::Behavior", 1);
- p_Light = NULL;
---- pinball-0.3.1/base/SignalSender.cpp
-+++ pinball-0.3.1/base/SignalSender.cpp
-@@ -12,6 +12,8 @@
- #include "Group.h"
- #include "Behavior.h"
-
-+#include <cstddef>
-+
- SignalSender * SignalSender::p_SignalSender = NULL;
-
- SignalSender::SignalSender() {
---- pinball-0.3.1/base/BehaviorVisitor.cpp
-+++ pinball-0.3.1/base/BehaviorVisitor.cpp
-@@ -10,6 +10,8 @@
- #include "Behavior.h"
- #include "Group.h"
-
-+#include <cstddef>
-+
- BehaviorVisitor * BehaviorVisitor::p_BehaviorVisitor = NULL;
-
- BehaviorVisitor::BehaviorVisitor() {
diff --git a/gnu/packages/patches/pinball-missing-separators.patch b/gnu/packages/patches/pinball-missing-separators.patch
deleted file mode 100644
index eb00314a3d..0000000000
--- a/gnu/packages/patches/pinball-missing-separators.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From: Markus Koschany <apo@gambaru.de>
-Date: Sun, 3 Aug 2014 22:50:46 +0200
-Subject: missing separators
-
-Bug: https://bugs.debian.org/750082
-
----
- src/Makefile.am | 14 +++++++-------
- src/Makefile.in | 14 +++++++-------
- test/Makefile.am | 2 +-
- test/Makefile.in | 2 +-
- 4 files changed, 16 insertions(+), 16 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index fbd7e8f..96768d3 100755
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -29,7 +29,7 @@ Script.cpp \
- StateBehavior.cpp \
- Table.cpp
-
--dnl libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
-+# libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
-
- pininclude_HEADERS = \
- ArmBehavior.h \
-@@ -56,10 +56,10 @@ Table.h
- # libemilia_pin.a libemilia_addon.a libemilia_base.a libltdlc.a
- wpinball.exe: ${pinball_OBJECTS} ${pinball_DEPENDENCIES}
- ${GCCLOCALDIR}g++ -g -W -Wall -O2 -o$@ $^ \
-- -lSDL_mixer -lvorbisfile -lvorbis -logg -lsmpeg \
-- -lSDL_image -lSDLmain -lSDL \
-- -lglu32 -lopengl32 -ljpeg -lpng \
-- -lwinmm -luser32 -lgdi32 -ldxguid \
-- -lmingw32 -lSDLmain -lSDL -mwindows \
-- -L${GCCLOCALDIR}../lib
-+ -lSDL_mixer -lvorbisfile -lvorbis -logg -lsmpeg \
-+ -lSDL_image -lSDLmain -lSDL \
-+ -lglu32 -lopengl32 -ljpeg -lpng \
-+ -lwinmm -luser32 -lgdi32 -ldxguid \
-+ -lmingw32 -lSDLmain -lSDL -mwindows \
-+ -L${GCCLOCALDIR}../lib
- # !-rzr : # have to solve it later # -lstdc++
-diff --git a/src/Makefile.in b/src/Makefile.in
-index ea7651b..8e95cd6 100644
---- a/src/Makefile.in
-+++ b/src/Makefile.in
-@@ -505,7 +505,7 @@ uninstall-am: uninstall-binPROGRAMS uninstall-info-am \
- uninstall-pinincludeHEADERS uninstall-pinlibLIBRARIES
-
-
--dnl libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
-+ dnl libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
-
- # !+rzr : This trick workaround a bad generated rule (under Linux mingw32)
- # src/ litool returns: -L/usr/local//lib /usr/lib/libjpeg.so
-@@ -514,12 +514,12 @@ dnl libemilia_pin_la_SOURCES = $(libemilia_pin_a_SOURCES)
- # libemilia_pin.a libemilia_addon.a libemilia_base.a libltdlc.a
- wpinball.exe: ${pinball_OBJECTS} ${pinball_DEPENDENCIES}
- ${GCCLOCALDIR}g++ -g -W -Wall -O2 -o$@ $^ \
-- -lSDL_mixer -lvorbisfile -lvorbis -logg -lsmpeg \
-- -lSDL_image -lSDLmain -lSDL \
-- -lglu32 -lopengl32 -ljpeg -lpng \
-- -lwinmm -luser32 -lgdi32 -ldxguid \
-- -lmingw32 -lSDLmain -lSDL -mwindows \
-- -L${GCCLOCALDIR}../lib
-+ -lSDL_mixer -lvorbisfile -lvorbis -logg -lsmpeg \
-+ -lSDL_image -lSDLmain -lSDL \
-+ -lglu32 -lopengl32 -ljpeg -lpng \
-+ -lwinmm -luser32 -lgdi32 -ldxguid \
-+ -lmingw32 -lSDLmain -lSDL -mwindows \
-+ -L${GCCLOCALDIR}../lib
- # !-rzr : # have to solve it later # -lstdc++
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
-diff --git a/test/Makefile.am b/test/Makefile.am
-index d87cf34..ea3ffc9 100755
---- a/test/Makefile.am
-+++ b/test/Makefile.am
-@@ -4,7 +4,7 @@ testlibdir = $(EM_LIBDIR)
- testdatadir = $(pkgdatadir)
-
- noinst_PROGRAMS = scale simple light texture load explode collision signal billboard font thread menu joy sound trans math misc varray unittest
--dnl noinst_PROGRAMS = unittest
-+# noinst_PROGRAMS = unittest
-
- INCLUDES = -I../base -I../addon -I../src @INCLTDL@
- LDADD = ../src/libemilia_pin.a ../addon/libemilia_addon.a ../base/libemilia_base.a @LIBLTDL@
-diff --git a/test/Makefile.in b/test/Makefile.in
-index 6ba2646..47654dc 100644
---- a/test/Makefile.in
-+++ b/test/Makefile.in
-@@ -621,7 +621,7 @@ uninstall-am: uninstall-info-am uninstall-testlibLTLIBRARIES
- mostlyclean-generic mostlyclean-libtool tags uninstall \
- uninstall-am uninstall-info-am uninstall-testlibLTLIBRARIES
-
--dnl noinst_PROGRAMS = unittest
-+# noinst_PROGRAMS = unittest
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
- .NOEXPORT:
diff --git a/gnu/packages/patches/pinball-src-deps.patch b/gnu/packages/patches/pinball-src-deps.patch
deleted file mode 100644
index 3ab806bae9..0000000000
--- a/gnu/packages/patches/pinball-src-deps.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Fixes error during make:
-
-"No rule to make target '../src/libemilia_pin.a', needed by 'pinball'. Stop."
-
---- pinball-0.3.1/src/Makefile.in 2003-12-10 05:34:47.000000000 -0600
-+++ pinball-0.3.1/src/Makefile.in 2016-01-31 22:29:13.134519889 -0600
-@@ -116,7 +116,7 @@
-
- INCLUDES = -I../base -I../addon @INCLTDL@
-
--pinball_LDADD = ../src/libemilia_pin.a ../addon/libemilia_addon.a ../base/libemilia_base.a @LIBLTDL@
-+pinball_LDADD = libemilia_pin.a ../addon/libemilia_addon.a ../base/libemilia_base.a @LIBLTDL@
- pinball_LDFLAGS = -export-dynamic
-
- pinball_SOURCES = Pinball.cpp
-@@ -174,7 +174,7 @@
-
- am_pinball_OBJECTS = Pinball.$(OBJEXT)
- pinball_OBJECTS = $(am_pinball_OBJECTS)
--pinball_DEPENDENCIES = ../src/libemilia_pin.a ../addon/libemilia_addon.a \
-+pinball_DEPENDENCIES = libemilia_pin.a ../addon/libemilia_addon.a \
- ../base/libemilia_base.a
-
- DEFS = @DEFS@
diff --git a/gnu/packages/patches/pinball-system-ltdl.patch b/gnu/packages/patches/pinball-system-ltdl.patch
index 0495880940..fb45eee827 100644
--- a/gnu/packages/patches/pinball-system-ltdl.patch
+++ b/gnu/packages/patches/pinball-system-ltdl.patch
@@ -1,18 +1,10 @@
---- pinball-0.3.1/configure.ac 2010-01-14 17:26:25.000000000 +0100
-+++ pinball-0.3.1/configure.ac 2010-01-14 17:26:25.000000000 +0100
-@@ -22,14 +22,12 @@
- [ --with-cxxflags=CXXFLAGS use CXXFLAGS as compile time arguments.],
- [CXXFLAGS=$with_cxxflags; export CXXFLAGS])
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,6 +1,6 @@
+ AUTOMAKE_OPTIONS = gnu
--AC_CONFIG_SUBDIRS(libltdl)
--
- dnl Checks for programs.
- AC_PROG_CC
- AC_PROG_CXX
- AC_PROG_INSTALL
- AC_LIBTOOL_DLOPEN
--AC_LIBLTDL_CONVENIENCE
-+LTDL_INIT
- AC_PROG_LIBTOOL
+-SUBDIRS = libltdl addon base data src test
++SUBDIRS = addon base data src test
+
+ EXTRA_DIST = bootstrap pinball.spec clean pinball.desktop
- AC_SUBST(INCLTDL)
diff --git a/gnu/packages/patches/rxvt-unicode-escape-sequences.patch b/gnu/packages/patches/rxvt-unicode-escape-sequences.patch
deleted file mode 100644
index 064dd51e2d..0000000000
--- a/gnu/packages/patches/rxvt-unicode-escape-sequences.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-This patch prevents a code execution vector involving terminal escape
-sequences when rxvt-unicode is in "secure mode".
-
-This change was spurred by the following conversation on the
-oss-security mailing list:
-
-Problem description and proof of concept:
-http://seclists.org/oss-sec/2017/q2/190
-
-Upstream response:
-http://seclists.org/oss-sec/2017/q2/291
-
-Patch copied from upstream source repository:
-http://cvs.schmorp.de/rxvt-unicode/src/command.C?r1=1.582&r2=1.583
-
---- rxvt-unicode/src/command.C 2016/07/14 05:33:26 1.582
-+++ rxvt-unicode/src/command.C 2017/05/18 02:43:18 1.583
-@@ -2695,7 +2695,7 @@
- /* kidnapped escape sequence: Should be 8.3.48 */
- case C1_ESA: /* ESC G */
- // used by original rxvt for rob nations own graphics mode
-- if (cmd_getc () == 'Q')
-+ if (cmd_getc () == 'Q' && option (Opt_insecure))
- tt_printf ("\033G0\012"); /* query graphics - no graphics */
- break;
-
-@@ -2914,7 +2914,7 @@
- break;
-
- case CSI_CUB: /* 8.3.18: (1) CURSOR LEFT */
-- case CSI_HPB: /* 8.3.59: (1) CHARACTER POSITION BACKWARD */
-+ case CSI_HPB: /* 8.3.59: (1) CHARACTER POSITION BACKWARD */
- #ifdef ISO6429
- arg[0] = -arg[0];
- #else /* emulate common DEC VTs */
diff --git a/gnu/packages/patches/ucx-tcp-iface-ioctl.patch b/gnu/packages/patches/ucx-tcp-iface-ioctl.patch
index d5df7047bc..56f06fc920 100644
--- a/gnu/packages/patches/ucx-tcp-iface-ioctl.patch
+++ b/gnu/packages/patches/ucx-tcp-iface-ioctl.patch
@@ -4,29 +4,29 @@ provides alternative code that uses the SIOCGIFCONF ioctl to get the
names of the available TCP network interfaces.
diff --git a/src/uct/tcp/tcp_iface.c b/src/uct/tcp/tcp_iface.c
-index 81ad459..10024a6 100644
+index cad4a2709..7c1d2c9de 100644
--- a/src/uct/tcp/tcp_iface.c
+++ b/src/uct/tcp/tcp_iface.c
-@@ -12,6 +12,8 @@
+@@ -17,6 +17,8 @@
#include <sys/poll.h>
#include <netinet/tcp.h>
#include <dirent.h>
+#include <net/if.h>
+#include <sys/ioctl.h>
- static ucs_config_field_t uct_tcp_iface_config_table[] = {
- {"", "MAX_SHORT=8k", NULL,
-@@ -483,6 +485,70 @@ static UCS_CLASS_DEFINE_NEW_FUNC(uct_tcp_iface_t, uct_iface_t, uct_md_h,
+
+ extern ucs_class_t UCS_CLASS_DECL_NAME(uct_tcp_iface_t);
+@@ -586,6 +588,68 @@ static UCS_CLASS_DEFINE_NEW_FUNC(uct_tcp_iface_t, uct_iface_t, uct_md_h,
uct_worker_h, const uct_iface_params_t*,
const uct_iface_config_t*);
+/* Fetch information about available network devices through an ioctl. */
+static ucs_status_t query_devices_ioctl(uct_md_h md,
-+ uct_tl_resource_desc_t **resource_p,
-+ unsigned *num_resources_p)
++ uct_tl_device_resource_t **tl_devices_p,
++ unsigned *num_tl_devices_p)
+{
+ int sock, err, i;
-+ uct_tl_resource_desc_t *resources, *tmp;
++ uct_tl_device_resource_t *resources, *tmp;
+ unsigned num_resources;
+ ucs_status_t status;
+ struct ifconf conf;
@@ -67,27 +67,25 @@ index 81ad459..10024a6 100644
+ }
+ resources = tmp;
+
-+ ucs_snprintf_zero(resources[i].tl_name, sizeof(resources[i].tl_name),
-+ "%s", UCT_TCP_NAME);
-+ ucs_snprintf_zero(resources[i].dev_name, sizeof(resources[i].dev_name),
++ ucs_snprintf_zero(resources[i].name, sizeof(resources[i].name),
+ "%s", name);
-+ resources[i].dev_type = UCT_DEVICE_TYPE_NET;
++ resources[i].type = UCT_DEVICE_TYPE_NET;
+ ++num_resources;
+ }
+
-+ *num_resources_p = num_resources;
-+ *resource_p = resources;
-+ status = UCS_OK;
++ *num_tl_devices_p = num_resources;
++ *tl_devices_p = resources;
++ status = UCS_OK;
+
+out:
+ if (sock >= 0) close(sock);
+ return status;
+}
+
- static ucs_status_t uct_tcp_query_tl_resources(uct_md_h md,
- uct_tl_resource_desc_t **resource_p,
- unsigned *num_resources_p)
-@@ -496,9 +562,9 @@ static ucs_status_t uct_tcp_query_tl_resources(uct_md_h md,
+ ucs_status_t uct_tcp_query_devices(uct_md_h md,
+ uct_tl_device_resource_t **devices_p,
+ unsigned *num_devices_p)
+@@ -599,9 +663,9 @@ ucs_status_t uct_tcp_query_devices(uct_md_h md,
dir = opendir(netdev_dir);
if (dir == NULL) {
@@ -96,14 +94,15 @@ index 81ad459..10024a6 100644
- goto out;
+ /* When /sys is unavailable, as can be the case in a container,
+ * resort to a good old 'ioctl'. */
-+ return query_devices_ioctl(md, resource_p, num_resources_p);
++ return query_devices_ioctl(md, devices_p, num_devices_p);
}
- resources = NULL;
-@@ -543,6 +609,5 @@ static ucs_status_t uct_tcp_query_tl_resources(uct_md_h md,
+ devices = NULL;
+@@ -655,7 +719,6 @@ ucs_status_t uct_tcp_query_devices(uct_md_h md,
out_closedir:
closedir(dir);
-out:
return status;
}
+