Mercurial > flash_v2
annotate packages/compat/posix/current/include/export.h @ 1777:c16341b1bac6 default tip
* Added execute permissions to files missed in conversion from CVS
| author | alexs |
|---|---|
| date | Mon, 12 Oct 2009 02:26:09 +0100 |
| parents | 2a653a83b91f |
| children |
| rev | line source |
|---|---|
|
128
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
1 #ifndef CYGONCE_POSIX_EXPORT_H |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
2 #define CYGONCE_POSIX_EXPORT_H |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
3 //============================================================================= |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
4 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
5 // export.h |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
6 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
7 // POSIX export header |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
8 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
9 //============================================================================= |
|
208
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
10 //####ECOSGPLCOPYRIGHTBEGIN#### |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
11 // ------------------------------------------- |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
12 // This file is part of eCos, the Embedded Configurable Operating System. |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
13 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
|
409
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
14 // Copyright (C) 2002 Nick Garnett |
|
208
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
15 // |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
16 // eCos is free software; you can redistribute it and/or modify it under |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
17 // the terms of the GNU General Public License as published by the Free |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
18 // Software Foundation; either version 2 or (at your option) any later version. |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
19 // |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
20 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
21 // WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
22 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
23 // for more details. |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
24 // |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
25 // You should have received a copy of the GNU General Public License along |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
26 // with eCos; if not, write to the Free Software Foundation, Inc., |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
27 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
28 // |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
29 // As a special exception, if other files instantiate templates or use macros |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
30 // or inline functions from this file, or you compile this file and link it |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
31 // with other works to produce a work based on this file, this file does not |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
32 // by itself cause the resulting work to be covered by the GNU General Public |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
33 // License. However the source code for this file must still be made available |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
34 // in accordance with section (3) of the GNU General Public License. |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
35 // |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
36 // This exception does not invalidate any other reasons why a work based on |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
37 // this file might be covered by the GNU General Public License. |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
38 // |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
39 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
|
210
d2c90368aeef
Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents:
208
diff
changeset
|
40 // at http://sources.redhat.com/ecos/ecos-license/ |
|
208
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
41 // ------------------------------------------- |
|
e0c0827131d1
Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
128
diff
changeset
|
42 //####ECOSGPLCOPYRIGHTEND#### |
|
128
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
43 //============================================================================= |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
44 //#####DESCRIPTIONBEGIN#### |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
45 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
46 // Author(s): nickg |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
47 // Contributors: nickg |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
48 // Date: 2000-09-18 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
49 // Purpose: POSIX export header |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
50 // Description: This header contains definitions that the POSIX package exports |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
51 // to other packages. These are generally interfaces that are not |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
52 // provided by the public API. |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
53 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
54 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
55 // Usage: |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
56 // #ifdef CYGPKG_POSIX |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
57 // #include <export.h> |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
58 // #endif |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
59 // ... |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
60 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
61 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
62 //####DESCRIPTIONEND#### |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
63 // |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
64 //============================================================================= |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
65 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
66 #include <pkgconf/hal.h> |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
67 #include <pkgconf/kernel.h> |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
68 #include <pkgconf/posix.h> |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
69 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
70 #include <cyg/infra/cyg_type.h> |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
71 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
72 #include <stddef.h> // NULL, size_t |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
73 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
74 #include <limits.h> |
|
409
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
75 #include <signal.h> |
|
128
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
76 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
77 #include <sys/types.h> |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
78 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
79 #include <sched.h> // SCHED_* |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
80 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
81 //============================================================================= |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
82 // POSIX API function management. |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
83 // These macros should be inserted near the start and all returns of |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
84 // any function that is part of the POSIX API. |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
85 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
86 __externC void cyg_posix_function_start(); |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
87 __externC void cyg_posix_function_finish(); |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
88 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
89 #define CYG_POSIX_FUNCTION_START() cyg_posix_function_start() |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
90 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
91 #define CYG_POSIX_FUNCTION_FINISH() cyg_posix_function_finish() |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
92 |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
93 //----------------------------------------------------------------------------- |
|
409
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
94 // Signal mask management |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
95 // |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
96 // These are exported to allow functions in other packages to |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
97 // manipulate the current threads signal mask. they are currently only |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
98 // used in the implementation of cyg_pselect() in the FILEIO package. |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
99 |
|
843
2a653a83b91f
Only export sigset_t stuff if CYGPKG_POSIX_SIGNALS is enabled.
bartv
parents:
409
diff
changeset
|
100 #ifdef CYGPKG_POSIX_SIGNALS |
|
409
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
101 __externC void cyg_pthread_sigmask_set (const sigset_t *set, sigset_t *oset); |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
102 __externC cyg_bool cyg_posix_sigpending(void); |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
103 __externC void cyg_posix_deliver_signals(const sigset_t *mask); |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
104 |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
105 #define CYG_PTHREAD_SIGMASK_SET cyg_pthread_sigmask_set |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
106 |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
107 #define CYG_POSIX_SIGPENDING() cyg_posix_sigpending() |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
108 |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
109 #define CYG_POSIX_DELIVER_SIGNALS cyg_posix_deliver_signals |
|
843
2a653a83b91f
Only export sigset_t stuff if CYGPKG_POSIX_SIGNALS is enabled.
bartv
parents:
409
diff
changeset
|
110 #endif |
|
409
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
111 |
|
10e7722168ad
* src/signal.cxx: Added three exportable routines that may be used
nickg
parents:
210
diff
changeset
|
112 //----------------------------------------------------------------------------- |
|
128
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
113 #endif // ifndef CYGONCE_POSIX_EXPORT_H |
|
0c2b7be0d798
Merge from eCos master repository on 2000-10-12-08:46:24-BST
jlarmour
parents:
diff
changeset
|
114 // End of export.h |
