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: 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 5439913f..ed2f6d0a 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 4c01e639..5fa59f34 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 ; - */ #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 #include -- cgit v1.2.3