]> git.vpit.fr Git - perl/modules/re-engine-Plugin.git/blob - xsh/caps.h
6c0b9446e218f8f5f5ac40fddaef490faec09972
[perl/modules/re-engine-Plugin.git] / xsh / caps.h
1 #ifndef XSH_CAPS_H
2 #define XSH_CAPS_H 1
3
4 #ifdef __cplusplus
5 # error C++ compilers are not supported
6 #endif
7
8 #define XSH_HAS_PERL(R, V, S) (PERL_REVISION > (R) || (PERL_REVISION == (R) && (PERL_VERSION > (V) || (PERL_VERSION == (V) && (PERL_SUBVERSION >= (S))))))
9
10 #define XSH_HAS_PERL_BRANCH(R, V, S) (PERL_REVISION == (R) && PERL_VERSION == (V) && PERL_SUBVERSION >= (S))
11
12 #define XSH_HAS_PERL_EXACT(R, V, S) ((PERL_REVISION == (R)) && (PERL_VERSION == (V)) && (PERL_SUBVERSION == (S)))
13
14 #ifndef XSH_PERL_PATCHLEVEL
15 # ifdef PERL_PATCHNUM
16 #  define XSH_PERL_PATCHLEVEL PERL_PATCHNUM
17 # else
18 #  define XSH_PERL_PATCHLEVEL 0
19 # endif
20 #endif
21
22 #define XSH_HAS_PERL_MAINT(R, V, S, P) (PERL_REVISION == (R) && PERL_VERSION == (V) && (XSH_PERL_PATCHLEVEL >= (P) || (!XSH_PERL_PATCHLEVEL && PERL_SUBVERSION >= (S))))
23
24 #ifndef XSH_MULTIPLICITY
25 # if defined(MULTIPLICITY)
26 #  define XSH_MULTIPLICITY 1
27 # else
28 #  define XSH_MULTIPLICITY 0
29 # endif
30 #endif
31 #if XSH_MULTIPLICITY
32 # ifndef PERL_IMPLICIT_CONTEXT
33 #  error MULTIPLICITY builds must set PERL_IMPLICIT_CONTEXT
34 # endif
35 # ifndef tTHX
36 #  define tTHX PerlInterpreter*
37 # endif
38 #endif
39
40 #if XSH_MULTIPLICITY && defined(USE_ITHREADS) && defined(dMY_CXT) && defined(MY_CXT) && defined(START_MY_CXT) && defined(MY_CXT_INIT) && (defined(MY_CXT_CLONE) || defined(dMY_CXT_SV))
41 # define XSH_THREADSAFE 1
42 #else
43 # define XSH_THREADSAFE 0
44 #endif
45
46 /* Safe unless stated otherwise in Makefile.PL */
47 #ifndef XSH_FORKSAFE
48 # define XSH_FORKSAFE 1
49 #endif
50
51 #endif /* XSH_CAPS_H */