diff options
-rw-r--r-- | debian/patches/0001-hurd-make-the-protected-payload-changes-less-intrusi.patch | 63 | ||||
-rw-r--r-- | debian/patches/series | 1 |
2 files changed, 64 insertions, 0 deletions
diff --git a/debian/patches/0001-hurd-make-the-protected-payload-changes-less-intrusi.patch b/debian/patches/0001-hurd-make-the-protected-payload-changes-less-intrusi.patch new file mode 100644 index 00000000..818cb8ae --- /dev/null +++ b/debian/patches/0001-hurd-make-the-protected-payload-changes-less-intrusi.patch @@ -0,0 +1,63 @@ +From 89c2cbb53b8ad14ae9d5d06ec230a696bea4a6ba Mon Sep 17 00:00:00 2001 +From: Justus Winter <4winter@informatik.uni-hamburg.de> +Date: Fri, 12 Dec 2014 17:09:07 +0100 +Subject: [PATCH hurd] hurd: make the protected payload changes less intrusive + +The changes to `hurd_types.defs' caused the glibc build to fail. +Guard the problematic parts with `HURD_SERVER' similar how it is done +in GNU Mach. + +* Makeconf: Define `HURD_SERVER' when preprocessing the RPC +definitions for the server side. +* hurd/hurd_types.defs: Guard problematic parts with `HURD_SERVER'. +--- + Makeconf | 1 + + hurd/hurd_types.defs | 5 ++--- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/Makeconf b/Makeconf +index 5439913..ed2f6d0 100644 +--- a/Makeconf ++++ b/Makeconf +@@ -546,6 +546,7 @@ MIGCOMFLAGS := -subrprefix __ + + %.sdefsi %.sdefs.d: %.defs + $(CPP) $(CPPFLAGS) $(MIGSFLAGS) $($*-MIGSFLAGS) -DSERVERPREFIX=S_ \ ++ -DHURD_SERVER=1 \ + -MD -MF $*.sdefs.d.new \ + $< -o $*.sdefsi + sed -e 's/[^:]*:/$*Server.c $(mig-sheader-prefix)$*_S.h:/' \ +diff --git a/hurd/hurd_types.defs b/hurd/hurd_types.defs +index 4c01e63..5fa59f3 100644 +--- a/hurd/hurd_types.defs ++++ b/hurd/hurd_types.defs +@@ -18,6 +18,7 @@ along with the GNU Hurd; see the file COPYING. If not, write to + the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + + ++#ifdef HURD_SERVER + /* The Hurd uses protected payloads to quickly look up the object + receiving a message. Looking up objects is optimized at the cost + of having to translate payloads back to port names if the server +@@ -42,10 +43,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + #undef HURD_DEFAULT_PAYLOAD_TO_PORT + #endif + #else +-/* Ideally we would include this here, to make sure ports_payload_get_name gets +- declared, but this leads to an inclusion loop via hurd/signal.h + import <hurd/ports.h>; +- */ + #define HURD_DEFAULT_PAYLOAD_TO_PORT ports_payload_get_name + #endif + +@@ -55,6 +53,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + #ifdef HURD_DEFAULT_PAYLOAD_TO_PORT + #define MACH_PAYLOAD_TO_PORT HURD_DEFAULT_PAYLOAD_TO_PORT + #endif ++#endif /* HURD_SERVER */ + + #include <mach/std_types.defs> + #include <mach/mach_types.defs> +-- +2.1.3 + diff --git a/debian/patches/series b/debian/patches/series index ef03f009..aab9614e 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -45,3 +45,4 @@ startup-avoid-broken-puts.patch pfinet_dhcp.patch libports-payloads.patch proc-task-notify-0005-proc-fix-build.patch +0001-hurd-make-the-protected-payload-changes-less-intrusi.patch |