From: Eric Botcazou Date: Tue, 8 Apr 2014 20:35:14 +0000 (+0000) Subject: re PR ada/60411 (Ada bootstrap failure on ARM) X-Git-Tag: basepoints/gcc-5~32 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=edb2b1b1fa0af901ab22ed58a4644115d3f4bbff;p=thirdparty%2Fgcc.git re PR ada/60411 (Ada bootstrap failure on ARM) PR ada/60411 * sigtramp.h: Add Android support. From-SVN: r209227 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 3353b89867a6..e3a690ad0ec4 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -5,6 +5,7 @@ * s-linux-android.ads: New file. * s-intman-android.adb: Likewise. * sigtramp-armdroid.c: Likewise. + * sigtramp.h: Add Android support. 2014-04-07 Eric Botcazou diff --git a/gcc/ada/sigtramp.h b/gcc/ada/sigtramp.h index cf5f4707ee34..7419e172510e 100644 --- a/gcc/ada/sigtramp.h +++ b/gcc/ada/sigtramp.h @@ -6,7 +6,7 @@ * * * C Header File * * * - * Copyright (C) 2011-2013, Free Software Foundation, Inc. * + * Copyright (C) 2011-2014, Free Software Foundation, Inc. * * * * GNAT is free software; you can redistribute it and/or modify it under * * terms of the GNU General Public License as published by the Free Soft- * @@ -41,10 +41,29 @@ extern "C" { #endif - typedef void sighandler_t (int signo, void *siginfo, void *sigcontext); +#ifdef __ANDROID__ +#include +#include +#include + +/* Android SDK doesn't define these structs */ +typedef struct sigcontext mcontext_t; + +typedef struct ucontext + { + unsigned long uc_flags; + struct ucontext *uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; +} ucontext_t; +#endif + + /* This typedef signature sometimes conflicts with the sighandler_t from + system headers so call it something unique. */ + typedef void __sigtramphandler_t (int signo, void *siginfo, void *sigcontext); void __gnat_sigtramp (int signo, void *siginfo, void *sigcontext, - sighandler_t * handler); + __sigtramphandler_t * handler); /* To be called from an established signal handler. Setup the DWARF CFI bits letting unwinders walk through the signal frame up into the