y_thirdpartyinclude.inc 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290
  1. /*+
  2. * <library name="y_thirdpartyinclude">
  3. * <section>
  4. * Description
  5. * </section>
  6. * Try and include all YSI dependencies, looking in as many places as needed.
  7. * <section>
  8. * Version
  9. * </section>
  10. * 1.0
  11. * </library>
  12. *//** *//*
  13. Legal:
  14. Version: MPL 1.1
  15. The contents of this file are subject to the Mozilla Public License Version
  16. 1.1 the "License"; you may not use this file except in compliance with
  17. the License. You may obtain a copy of the License at
  18. http://www.mozilla.org/MPL/
  19. Software distributed under the License is distributed on an "AS IS" basis,
  20. WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  21. for the specific language governing rights and limitations under the
  22. License.
  23. The Original Code is the YSI framework.
  24. The Initial Developer of the Original Code is Alex "Y_Less" Cole.
  25. Portions created by the Initial Developer are Copyright C 2011
  26. the Initial Developer. All Rights Reserved.
  27. Contributors:
  28. Y_Less
  29. koolk
  30. JoeBullet/Google63
  31. g_aSlice/Slice
  32. Misiur
  33. samphunter
  34. tianmeta
  35. maddinat0r
  36. spacemud
  37. Crayder
  38. Dayvison
  39. Ahmad45123
  40. Zeex
  41. irinel1996
  42. Yiin-
  43. Chaprnks
  44. Konstantinos
  45. Masterchen09
  46. Southclaws
  47. PatchwerkQWER
  48. m0k1
  49. paulommu
  50. udan111
  51. Thanks:
  52. JoeBullet/Google63 - Handy arbitrary ASM jump code using SCTRL.
  53. ZeeX - Very productive conversations.
  54. koolk - IsPlayerinAreaEx code.
  55. TheAlpha - Danish translation.
  56. breadfish - German translation.
  57. Fireburn - Dutch translation.
  58. yom - French translation.
  59. 50p - Polish translation.
  60. Zamaroht - Spanish translation.
  61. Los - Portuguese translation.
  62. Dracoblue, sintax, mabako, Xtreme, other coders - Producing other modes for
  63. me to strive to better.
  64. Pixels^ - Running XScripters where the idea was born.
  65. Matite - Pestering me to release it and using it.
  66. Very special thanks to:
  67. Thiadmer - PAWN, whose limits continue to amaze me!
  68. Kye/Kalcor - SA:MP.
  69. SA:MP Team past, present and future - SA:MP.
  70. Optional plugins:
  71. Gamer_Z - GPS.
  72. Incognito - Streamer.
  73. Me - sscanf2, fixes2, Whirlpool.
  74. */
  75. // If the files only exist in one place, they will only be included once because
  76. // of using "#tryinclude". If they happen to exist in two places, their own
  77. // internal include guards (or the compiler's one) will prevent their multiple
  78. // inclusions. I don't know why I ever made YSI use its own internal version...
  79. #if defined CODE_SCAN_MAX_PATTERN
  80. #if CODE_SCAN_MAX_PATTERN < (32)
  81. #undef CODE_SCAN_MAX_PATTERN
  82. #define CODE_SCAN_MAX_PATTERN (32)
  83. #endif
  84. #else
  85. #define CODE_SCAN_MAX_PATTERN (32)
  86. #endif
  87. #tryinclude "..\amx\amx"
  88. #tryinclude <amx_assembly\amx>
  89. #tryinclude "..\amx_assembly\amx"
  90. #tryinclude "..\..\amx_assembly\amx"
  91. #tryinclude "amx"
  92. #tryinclude <amx>
  93. #if !defined AMX_INC
  94. #define AMX_INCLUDING_FAILED
  95. #endif
  96. #tryinclude "..\amx\amx_base"
  97. #tryinclude <amx_assembly\amx_base>
  98. #tryinclude "..\amx_assembly\amx_base"
  99. #tryinclude "..\..\amx_assembly\amx_base"
  100. #tryinclude "amx_base"
  101. #tryinclude <amx_base>
  102. #if !defined AMX_BASE_INC
  103. #define AMX_INCLUDING_FAILED
  104. #endif
  105. #tryinclude "..\amx\amx_header"
  106. #tryinclude <amx_assembly\amx_header>
  107. #tryinclude "..\amx_assembly\amx_header"
  108. #tryinclude "..\..\amx_assembly\amx_header"
  109. #tryinclude "amx_header"
  110. #tryinclude <amx_header>
  111. #if !defined AMX_HEADER_INC
  112. #define AMX_INCLUDING_FAILED
  113. #endif
  114. #tryinclude "..\amx\amx_memory"
  115. #tryinclude <amx_assembly\amx_memory>
  116. #tryinclude "..\amx_assembly\amx_memory"
  117. #tryinclude "..\..\amx_assembly\amx_memory"
  118. #tryinclude "amx_memory"
  119. #tryinclude <amx_memory>
  120. #if !defined AMX_MEMORY_INC
  121. #define AMX_INCLUDING_FAILED
  122. #endif
  123. #if !defined deref
  124. #error Please update "https://github.com/Zeex/amx_assembly" to get "deref()"
  125. #endif
  126. #if !defined GetAmxNextInstructionPointer
  127. #error Please update "https://github.com/Zeex/amx_assembly" to get "GetAmxNextInstructionPointer()"
  128. #endif
  129. #tryinclude "..\amx\asm"
  130. #tryinclude <amx_assembly\asm>
  131. #tryinclude "..\amx_assembly\asm"
  132. #tryinclude "..\..\amx_assembly\asm"
  133. #tryinclude "asm"
  134. #tryinclude <asm>
  135. #if !defined ASM_INC
  136. #define AMX_INCLUDING_FAILED
  137. #endif
  138. #tryinclude "..\amx\asm_macros"
  139. #tryinclude <amx_assembly\asm_macros>
  140. #tryinclude "..\amx_assembly\asm_macros"
  141. #tryinclude "..\..\amx_assembly\asm_macros"
  142. #tryinclude "asm_macros"
  143. #tryinclude <asm_macros>
  144. #if !defined ASM_MACROS_INC
  145. #define AMX_INCLUDING_FAILED
  146. #endif
  147. #tryinclude "..\amx\codescan"
  148. #tryinclude <amx_assembly\codescan>
  149. #tryinclude "..\amx_assembly\codescan"
  150. #tryinclude "..\..\amx_assembly\codescan"
  151. #tryinclude "codescan"
  152. #tryinclude <codescan>
  153. #if !defined CODESCAN_INC
  154. #error Please update "https://github.com/Zeex/amx_assembly" to get "codescan.inc"
  155. #endif
  156. #if !defined AsmEmitCallAbs
  157. #error Please update "https://github.com/Zeex/amx_assembly" to get "AsmEmitCallAbs()"
  158. #endif
  159. #tryinclude "..\amx\disasm"
  160. #tryinclude <amx_assembly\disasm>
  161. #tryinclude "..\amx_assembly\disasm"
  162. #tryinclude "..\..\amx_assembly\disasm"
  163. #tryinclude "disasm"
  164. #tryinclude <disasm>
  165. #if !defined DISASM_INC
  166. #define AMX_INCLUDING_FAILED
  167. #endif
  168. #tryinclude "..\amx\dynamic_call"
  169. #tryinclude <amx_assembly\dynamic_call>
  170. #tryinclude "..\amx_assembly\dynamic_call"
  171. #tryinclude "..\..\amx_assembly\dynamic_call"
  172. #tryinclude "dynamic_call"
  173. #tryinclude <dynamic_call>
  174. #if !defined DYNAMIC_CALL_INC
  175. #define AMX_INCLUDING_FAILED
  176. #endif
  177. #tryinclude "..\amx\frame_info"
  178. #tryinclude <amx_assembly\frame_info>
  179. #tryinclude "..\amx_assembly\frame_info"
  180. #tryinclude "..\..\amx_assembly\frame_info"
  181. #tryinclude "dynamic_call"
  182. #tryinclude <dynamic_call>
  183. #if !defined FRAME_INFO_INC
  184. #define AMX_INCLUDING_FAILED
  185. #endif
  186. #tryinclude "..\amx\heap_alloc"
  187. #tryinclude <amx_assembly\heap_alloc>
  188. #tryinclude "..\amx_assembly\heap_alloc"
  189. #tryinclude "..\..\amx_assembly\heap_alloc"
  190. #tryinclude "heap_alloc"
  191. #tryinclude <heap_alloc>
  192. #if !defined HEAP_ALLOC_INC
  193. #define AMX_INCLUDING_FAILED
  194. #endif
  195. #tryinclude "..\amx\opcode"
  196. #tryinclude <amx_assembly\opcode>
  197. #tryinclude "..\amx_assembly\opcode"
  198. #tryinclude "..\..\amx_assembly\opcode"
  199. #tryinclude "opcode"
  200. #tryinclude <opcode>
  201. #if !defined OPCODE_INC
  202. #define AMX_INCLUDING_FAILED
  203. #endif
  204. #tryinclude "..\amx\os"
  205. #tryinclude <amx_assembly\os>
  206. #tryinclude "..\amx_assembly\os"
  207. #tryinclude "..\..\amx_assembly\os"
  208. #tryinclude "os"
  209. #tryinclude <os>
  210. #if !defined OS_INC
  211. #define AMX_INCLUDING_FAILED
  212. #endif
  213. #tryinclude "..\amx\phys_memory"
  214. #tryinclude <amx_assembly\phys_memory>
  215. #tryinclude "..\amx_assembly\phys_memory"
  216. #tryinclude "..\..\amx_assembly\phys_memory"
  217. #tryinclude "phys_memory"
  218. #tryinclude <phys_memory>
  219. #if !defined PHYS_MEMORY_INC
  220. #define AMX_INCLUDING_FAILED
  221. #endif
  222. #tryinclude "..\amx\profiler"
  223. #tryinclude <amx_assembly\profiler>
  224. #tryinclude "..\amx_assembly\profiler"
  225. #tryinclude "..\..\amx_assembly\profiler"
  226. #tryinclude "profiler"
  227. #tryinclude <profiler>
  228. #if !defined PROFILER_INC
  229. #define AMX_INCLUDING_FAILED
  230. #endif
  231. //#tryinclude "..\amx\shellcode"
  232. //#tryinclude <amx_assembly\shellcode>
  233. //#tryinclude "..\amx_assembly\shellcode"
  234. //#tryinclude "..\..\amx_assembly\shellcode"
  235. //#tryinclude "shellcode"
  236. //#tryinclude <shellcode>
  237. //#if !defined SHELLCODE_INC
  238. // #define AMX_INCLUDING_FAILED
  239. //#endif
  240. #tryinclude "..\amx\stack_dump"
  241. #tryinclude <amx_assembly\stack_dump>
  242. #tryinclude "..\amx_assembly\stack_dump"
  243. #tryinclude "..\..\amx_assembly\stack_dump"
  244. #tryinclude "stack_dump"
  245. #tryinclude <stack_dump>
  246. #if !defined STACK_DUMP_INC
  247. #define AMX_INCLUDING_FAILED
  248. #endif
  249. #tryinclude "..\amx\stack_trace"
  250. #tryinclude <amx_assembly\stack_trace>
  251. #tryinclude "..\amx_assembly\stack_trace"
  252. #tryinclude "..\..\amx_assembly\stack_trace"
  253. #tryinclude "stack_trace"
  254. #tryinclude <stack_trace>
  255. #if !defined STACK_TRACE_INC
  256. #define AMX_INCLUDING_FAILED
  257. #endif
  258. #if defined AMX_INCLUDING_FAILED
  259. #error Could not include "https://github.com/Zeex/amx_assembly" - ensure its files are in "includes\amx_assembly\"
  260. #endif