1 #ifndef __XPC_AVAILABILITY_H__
2 #define __XPC_AVAILABILITY_H__
3 
4 #include <Availability.h>
5 
6 // Certain parts of the project use all the project's headers but have to build
7 // against newer OSX SDKs than ebuild uses -- liblaunch_host being the example.
8 // So we need to define these.
9 #ifndef __MAC_10_16
10 #define __MAC_10_16 101600
11 #endif // __MAC_10_16
12 
13 #ifndef __MAC_10_15
14 #define __MAC_10_15 101500
15 #define __AVAILABILITY_INTERNAL__MAC_10_15 \
16 __attribute__((availability(macosx, introduced=10.15)))
17 #endif // __MAC_10_15
18 
19 #ifndef __MAC_10_14
20 #define __MAC_10_14 101400
21 #define __AVAILABILITY_INTERNAL__MAC_10_14 \
22 __attribute__((availability(macosx, introduced=10.14)))
23 #endif // __MAC_10_14
24 
25 #ifndef __MAC_10_13
26 #define __MAC_10_13 101300
27 #define __AVAILABILITY_INTERNAL__MAC_10_13 \
28 	__attribute__((availability(macosx, introduced=10.13)))
29 #endif // __MAC_10_13
30 
31 #ifndef __MAC_10_12
32 #define __MAC_10_12 101200
33 #define __AVAILABILITY_INTERNAL__MAC_10_12 \
34 	__attribute__((availability(macosx, introduced=10.12)))
35 #endif // __MAC_10_12
36 
37 #ifndef __MAC_10_11
38 #define __MAC_10_11 101100
39 #define __AVAILABILITY_INTERNAL__MAC_10_11 \
40 	__attribute__((availability(macosx, introduced=10.11)))
41 #endif // __MAC_10_11
42 
43 #ifndef __MAC_12_0
44 #define __MAC_12_0 120000
45 #define __AVAILABILITY_INTERNAL__MAC_12_0 \
46 	__attribute__((availability(macosx, introduced=12.0)))
47 #endif // __MAC_12_0
48 
49 #ifndef __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11
50 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11
51 #endif // __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11
52 
53 #ifndef __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11
54 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11
55 #endif // __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11
56 
57 #ifndef __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11
58 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11
59 #endif // __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11
60 
61 #ifndef __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11
62 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11
63 #endif // __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11
64 
65 #ifndef __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11
66 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11
67 #endif // __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11
68 
69 #ifndef __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11
70 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11
71 #endif // __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11
72 
73 #ifndef __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11
74 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11
75 #endif // __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11
76 
77 #ifndef __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11
78 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11
79 #endif // __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11
80 
81 #ifndef __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11
82 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11
83 #endif // __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11
84 
85 #ifndef __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11
86 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11
87 #endif // __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11
88 
89 #ifndef __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_13
90 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_13
91 #endif // __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_13
92 
93 #if __has_include(<simulator_host.h>)
94 #include <simulator_host.h>
95 #else // __has_include(<simulator_host.h>)
96 #ifndef IPHONE_SIMULATOR_HOST_MIN_VERSION_REQUIRED
97 #define IPHONE_SIMULATOR_HOST_MIN_VERSION_REQUIRED 999999
98 #endif // IPHONE_SIMULATOR_HOST_MIN_VERSION_REQUIRED
99 #endif // __has_include(<simulator_host.h>)
100 
101 #ifndef __WATCHOS_UNAVAILABLE
102 #define __WATCHOS_UNAVAILABLE
103 #endif
104 
105 #ifndef __TVOS_UNAVAILABLE
106 #define __TVOS_UNAVAILABLE
107 #endif
108 
109 // simulator host-side bits build against SDKs not having __*_AVAILABLE() yet
110 #ifndef __OSX_AVAILABLE
111 #define __OSX_AVAILABLE(...)
112 #endif
113 
114 #ifndef __IOS_AVAILABLE
115 #define __IOS_AVAILABLE(...)
116 #endif
117 
118 #ifndef __TVOS_AVAILABLE
119 #define __TVOS_AVAILABLE(...)
120 #endif
121 
122 #ifndef __WATCHOS_AVAILABLE
123 #define __WATCHOS_AVAILABLE(...)
124 #endif
125 
126 #ifndef __API_AVAILABLE
127 #define __API_AVAILABLE(...)
128 #endif
129 
130 #endif // __XPC_AVAILABILITY_H__