1 #ifndef PROTO_EXECLOCK_H
2 #define PROTO_EXECLOCK_H
5 Copyright © 2017, The AROS Development Team. All rights reserved.
8 #include <exec/types.h>
9 #include <aros/system.h>
11 #include <clib/execlock_protos.h>
13 #ifndef __EXECLOCK_RELLIBBASE__
14 #if !defined(__NOLIBBASE__) && !defined(__EXECLOCK_NOLIBBASE__)
15 #if !defined(ExecLockBase)
16 #ifdef __EXECLOCK_STDLIBBASE__
17 extern struct Library
*ExecLockBase
;
19 extern struct Library
*ExecLockBase
;
23 #ifndef __aros_getbase_ExecLockBase
24 #define __aros_getbase_ExecLockBase() (ExecLockBase)
26 #else /* __EXECLOCK_RELLIBASE__ */
27 extern const IPTR __aros_rellib_offset_ExecLockBase
;
28 #define AROS_RELLIB_OFFSET_EXECLOCK __aros_rellib_offset_ExecLockBase
29 #define AROS_RELLIB_BASE_EXECLOCK __aros_rellib_base_ExecLockBase
30 #ifndef __aros_getbase_ExecLockBase
31 #ifndef __aros_getoffsettable
32 char *__aros_getoffsettable(void);
34 #define __aros_getbase_ExecLockBase() (*(struct Library **)(__aros_getoffsettable()+__aros_rellib_offset_ExecLockBase))
38 #if !defined(NOLIBINLINE) && !defined(EXECLOCK_NOLIBINLINE) && !defined(__EXECLOCK_RELLIBBASE__)
39 # include <inline/execlock.h>
40 #elif !defined(NOLIBDEFINES) && !defined(EXECLOCK_NOLIBDEFINES)
41 # include <defines/execlock.h>
44 #endif /* PROTO_EXECLOCK_H */