unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
blob 20d62b8ce27e917fce704cd5a54bb8898c247325 2062 bytes (raw)
name: packages/patches/fontforge-hurd.patch 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
 
Upstream status: Taken from upstream.

From dca87c025665f0f010f906a4eba96da9794a4d04 Mon Sep 17 00:00:00 2001
From: Anthony Fok <foka@debian.org>
Date: Thu, 16 Jun 2022 02:40:23 -0600
Subject: [PATCH] Define PATH_MAX and MAXPATHLEN for GNU/Hurd compatibility

Special thanks to @henrich, @ucko and @kilobyte for reporting the issue
and offering suggestions on a fix.

See also https://bugs.debian.org/877795

Fixes #3119
---
 inc/basics.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/inc/basics.h b/inc/basics.h
index b8d65823b..14590c5b1 100644
--- a/inc/basics.h
+++ b/inc/basics.h
@@ -123,5 +123,13 @@ static inline int imax(int a, int b)
 			last = newitem;		       \
 		    }
 
+#ifdef __GNU__
+# ifndef PATH_MAX
+#  define PATH_MAX 4096
+# endif
+# ifndef MAXPATHLEN
+#  define MAXPATHLEN 4096
+# endif
+#endif
 
 #endif /* FONTFORGE_BASICS_H */
-- 
2.40.1

From e0480f143f27f8f2686b5b14d7d302fe22f35002 Mon Sep 17 00:00:00 2001
From: Anthony Fok <foka@debian.org>
Date: Thu, 16 Jun 2022 03:06:56 -0600
Subject: [PATCH] Undefine "extended" macro temporarily on GNU Hurd

GNU Mach microkernel header files (gnumach-dev 1.8+git20201129) added to
struct i386_xfp_save in /usr/include/i386-gnu/include/mach/i386/fp_reg.h
a new "extended" field which happens to collide with the macro definition
"#define extended double" in FontForge, leading to FTBFS on GNU Hurd.

This issue may be circumvented by temporarily undefining the "extended"
macro before loading `<gio/gio.h>` and friends, and redefining the
"extended" macro right after.
---
 inc/ffglib.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/inc/ffglib.h b/inc/ffglib.h
index f3419f0ab..25fe9ebde 100644
--- a/inc/ffglib.h
+++ b/inc/ffglib.h
@@ -26,11 +26,19 @@
 #define GMenuItem GMenuItem_GIO
 #define GTimer GTimer_GTK
 
+#ifdef __GNU__
+# undef extended
+#endif
+
 #include <gio/gio.h>
 #include <glib-object.h>
 #include <glib.h>
 #include <glib/gstdio.h>
 
+#ifdef __GNU__
+# define extended	double
+#endif
+
 #undef GList
 #undef GMenuItem
 #undef GTimer
-- 
2.40.1


debug log:

solving 20d62b8ce27e917fce704cd5a54bb8898c247325 ...
found 20d62b8ce27e917fce704cd5a54bb8898c247325 in https://git.savannah.gnu.org/cgit/guix.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).