ya.make 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. # Generated by devtools/yamaker from nixpkgs 22.05.
  2. LIBRARY()
  3. LICENSE(
  4. CC-PDDC AND
  5. MIT
  6. )
  7. LICENSE_TEXTS(.yandex_meta/licenses.list.txt)
  8. VERSION(3.3)
  9. ORIGINAL_SOURCE(https://github.com/libffi/libffi/archive/v3.3.tar.gz)
  10. ADDINCL(
  11. contrib/restricted/libffi
  12. contrib/restricted/libffi/include
  13. contrib/restricted/libffi/src
  14. GLOBAL contrib/restricted/libffi/include
  15. )
  16. NO_COMPILER_WARNINGS()
  17. NO_RUNTIME()
  18. CFLAGS(
  19. -DHAVE_CONFIG_H
  20. GLOBAL -DFFI_BUILDING
  21. )
  22. SRCS(
  23. src/closures.c
  24. src/java_raw_api.c
  25. src/prep_cif.c
  26. src/raw_api.c
  27. src/types.c
  28. )
  29. IF (ARCH_ARM64 AND OS_ANDROID)
  30. ADDINCL(
  31. contrib/restricted/libffi/configs/aarch64-unknown-linux-android21
  32. GLOBAL contrib/restricted/libffi/configs/aarch64-unknown-linux-android21/include
  33. )
  34. SRCS(
  35. src/aarch64/ffi.c
  36. src/aarch64/sysv.S
  37. )
  38. ELSEIF (ARCH_ARM64 AND OS_DARWIN)
  39. ADDINCL(
  40. contrib/restricted/libffi/configs/aarch64-apple-macos
  41. GLOBAL contrib/restricted/libffi/configs/aarch64-apple-macos/include
  42. )
  43. SRCS(
  44. src/aarch64/ffi.c
  45. src/aarch64/sysv.S
  46. )
  47. ELSEIF (ARCH_ARM64 AND OS_IOS)
  48. ADDINCL(
  49. contrib/restricted/libffi/configs/aarch64-apple-iphoneos
  50. GLOBAL contrib/restricted/libffi/configs/aarch64-apple-iphoneos/include
  51. )
  52. SRCS(
  53. src/aarch64/ffi.c
  54. src/aarch64/sysv.S
  55. )
  56. ELSEIF (ARCH_ARM64 AND OS_LINUX)
  57. ADDINCL(
  58. contrib/restricted/libffi/configs/aarch64-unknown-linux-gnu
  59. GLOBAL contrib/restricted/libffi/configs/aarch64-unknown-linux-gnu/include
  60. )
  61. SRCS(
  62. src/aarch64/ffi.c
  63. src/aarch64/sysv.S
  64. )
  65. ELSEIF (ARCH_ARM7 AND OS_ANDROID)
  66. ADDINCL(
  67. contrib/restricted/libffi/configs/armv7a-unknown-linux-androideabi16
  68. GLOBAL contrib/restricted/libffi/configs/armv7a-unknown-linux-androideabi16/include
  69. )
  70. SRCS(
  71. src/arm/ffi.c
  72. src/arm/sysv.S
  73. )
  74. ELSEIF (ARCH_ARM7 AND OS_LINUX)
  75. ADDINCL(
  76. contrib/restricted/libffi/configs/armv7a-unknown-linux-gnueabihf
  77. GLOBAL contrib/restricted/libffi/configs/armv7a-unknown-linux-gnueabihf/include
  78. )
  79. SRCS(
  80. src/arm/ffi.c
  81. src/arm/sysv.S
  82. )
  83. ELSEIF (ARCH_ARM7EM AND OS_NONE)
  84. ADDINCL(
  85. contrib/restricted/libffi/configs/x86_64-pc-linux-gnu
  86. GLOBAL contrib/restricted/libffi/configs/x86_64-pc-linux-gnu/include
  87. )
  88. ELSEIF (ARCH_ARM8M AND OS_NONE)
  89. ADDINCL(
  90. contrib/restricted/libffi/configs/x86_64-pc-linux-gnu
  91. GLOBAL contrib/restricted/libffi/configs/x86_64-pc-linux-gnu/include
  92. )
  93. ELSEIF (ARCH_I386 AND OS_ANDROID)
  94. ADDINCL(
  95. contrib/restricted/libffi/configs/i686-pc-linux-android16
  96. GLOBAL contrib/restricted/libffi/configs/i686-pc-linux-android16/include
  97. )
  98. SRCS(
  99. src/x86/ffi.c
  100. src/x86/sysv.S
  101. )
  102. ELSEIF (ARCH_I386 AND OS_WINDOWS)
  103. ADDINCL(
  104. contrib/restricted/libffi/configs/i386-microsoft-windows
  105. GLOBAL contrib/restricted/libffi/configs/i386-microsoft-windows/include
  106. )
  107. SRCS(
  108. configs/i386-microsoft-windows/sysv_intel.masm
  109. src/x86/ffi.c
  110. )
  111. ELSEIF (ARCH_PPC64LE AND OS_LINUX)
  112. ADDINCL(
  113. contrib/restricted/libffi/configs/powerpc64le-unknown-linux-gnu
  114. GLOBAL contrib/restricted/libffi/configs/powerpc64le-unknown-linux-gnu/include
  115. )
  116. SRCS(
  117. src/powerpc/ffi.c
  118. src/powerpc/ffi_linux64.c
  119. src/powerpc/ffi_sysv.c
  120. src/powerpc/linux64.S
  121. src/powerpc/linux64_closure.S
  122. src/powerpc/ppc_closure.S
  123. src/powerpc/sysv.S
  124. )
  125. ELSEIF (ARCH_RISCV32 AND OS_NONE)
  126. ADDINCL(
  127. contrib/restricted/libffi/configs/x86_64-pc-linux-gnu
  128. GLOBAL contrib/restricted/libffi/configs/x86_64-pc-linux-gnu/include
  129. )
  130. ELSEIF (ARCH_X86_64 AND OS_ANDROID)
  131. ADDINCL(
  132. contrib/restricted/libffi/configs/x86_64-pc-linux-android21
  133. GLOBAL contrib/restricted/libffi/configs/x86_64-pc-linux-android21/include
  134. )
  135. SRCS(
  136. src/x86/ffi64.c
  137. src/x86/ffiw64.c
  138. src/x86/unix64.S
  139. src/x86/win64.S
  140. )
  141. ELSEIF (ARCH_X86_64 AND OS_DARWIN)
  142. ADDINCL(
  143. contrib/restricted/libffi/configs/x86_64-apple-macosx
  144. GLOBAL contrib/restricted/libffi/configs/x86_64-apple-macosx/include
  145. )
  146. SRCS(
  147. src/x86/ffi64.c
  148. src/x86/ffiw64.c
  149. src/x86/unix64.S
  150. src/x86/win64.S
  151. )
  152. ELSEIF (ARCH_X86_64 AND OS_IOS)
  153. ADDINCL(
  154. contrib/restricted/libffi/configs/x86_64-apple-iphonesimulator
  155. GLOBAL contrib/restricted/libffi/configs/x86_64-apple-iphonesimulator/include
  156. )
  157. SRCS(
  158. src/x86/ffi64.c
  159. src/x86/ffiw64.c
  160. src/x86/unix64.S
  161. src/x86/win64.S
  162. )
  163. ELSEIF (ARCH_X86_64 AND OS_LINUX)
  164. ADDINCL(
  165. contrib/restricted/libffi/configs/x86_64-pc-linux-gnu
  166. GLOBAL contrib/restricted/libffi/configs/x86_64-pc-linux-gnu/include
  167. )
  168. SRCS(
  169. src/x86/ffi64.c
  170. src/x86/ffiw64.c
  171. src/x86/unix64.S
  172. src/x86/win64.S
  173. )
  174. ELSEIF (ARCH_X86_64 AND OS_WINDOWS)
  175. ADDINCL(
  176. contrib/restricted/libffi/configs/x86_64-microsoft-windows
  177. GLOBAL contrib/restricted/libffi/configs/x86_64-microsoft-windows/include
  178. )
  179. SRCS(
  180. configs/x86_64-microsoft-windows/win64_intel.masm
  181. src/x86/ffiw64.c
  182. )
  183. ELSEIF (ARCH_XTENSA AND OS_NONE)
  184. ADDINCL(
  185. contrib/restricted/libffi/configs/x86_64-pc-linux-gnu
  186. GLOBAL contrib/restricted/libffi/configs/x86_64-pc-linux-gnu/include
  187. )
  188. ELSE()
  189. MESSAGE(FATAL_ERROR Unsupported libffi platform: ${TARGET_PLATFORM} / ${HARDWARE_TYPE})
  190. ENDIF()
  191. END()
  192. RECURSE(
  193. testsuite
  194. )