OSDN Git Service

Cleanup the toploevel makefile handing of shared libs. Add weak_alias
[uclinux-h8/uClibc.git] / include / ucontext.h
1 /* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
2    This file is part of the GNU C Library.
3
4    The GNU C Library is free software; you can redistribute it and/or
5    modify it under the terms of the GNU Library General Public License as
6    published by the Free Software Foundation; either version 2 of the
7    License, or (at your option) any later version.
8
9    The GNU C Library is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12    Library General Public License for more details.
13
14    You should have received a copy of the GNU Library General Public
15    License along with the GNU C Library; see the file COPYING.LIB.  If not,
16    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17    Boston, MA 02111-1307, USA.  */
18
19 /* System V ABI compliant user-level context switching support.  */
20
21 #ifndef _UCONTEXT_H
22 #define _UCONTEXT_H     1
23
24 #include <features.h>
25
26 /* Get machine dependent definition of data structures.  */
27 #if 0
28 #include <sys/ucontext.h>
29
30 __BEGIN_DECLS
31
32 /* Get user context and store it in variable pointed to by UCP.  */
33 extern int getcontext __P ((ucontext_t *__ucp));
34
35 /* Set user context from information of variable pointed to by UCP.  */
36 extern int setcontext __P ((__const ucontext_t *__ucp));
37
38 /* Save current context in context variable pointed to by OUCP and set
39    context from variable pointed to by UCP.  */
40 extern int swapcontext __P ((ucontext_t *__oucp, __const ucontext_t *__ucp));
41
42 /* Manipulate user context UCP to continue with calling functions FUNC
43    and the ARGC-1 parameters following ARGC when the context is used
44    the next time in `setcontext' or `swapcontext'.
45
46    We cannot say anything about the parameters FUNC takes; `void'
47    is as good as any other choice.  */
48 extern void makecontext __P ((ucontext_t *__ucp, void (*__func) (void),
49                               int __argc, ...));
50 __END_DECLS
51 #endif
52
53 #endif /* ucontext.h */