ya.make 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259
  1. # Generated by devtools/yamaker from nixpkgs 22.05.
  2. LIBRARY()
  3. LICENSE(
  4. BSD-3-Clause AND
  5. Beerware AND
  6. IJG AND
  7. Libpbm AND
  8. Public-Domain AND
  9. Zlib
  10. )
  11. LICENSE_TEXTS(.yandex_meta/licenses.list.txt)
  12. VERSION(2.1.4)
  13. ORIGINAL_SOURCE(https://github.com/libjpeg-turbo/libjpeg-turbo/archive/2.1.4.tar.gz)
  14. ADDINCL(
  15. contrib/libs/libjpeg-turbo
  16. FOR
  17. asm
  18. contrib/libs/libjpeg-turbo/simd/nasm
  19. )
  20. IF (OS_DARWIN OR OS_IOS)
  21. SET(ASM_PREFIX '_')
  22. ENDIF()
  23. NO_COMPILER_WARNINGS()
  24. NO_RUNTIME()
  25. CFLAGS(
  26. -DBMP_SUPPORTED
  27. -DPPM_SUPPORTED
  28. )
  29. IF (SANITIZER_TYPE)
  30. CFLAGS(
  31. -DWITH_SANITIZER
  32. )
  33. ENDIF()
  34. IF (OS_ANDROID)
  35. SRCS(
  36. jsimd_none.c
  37. )
  38. ELSEIF (ARCH_I386)
  39. SRCS(
  40. simd/i386/jccolor-avx2.asm
  41. simd/i386/jccolor-mmx.asm
  42. simd/i386/jccolor-sse2.asm
  43. simd/i386/jcgray-avx2.asm
  44. simd/i386/jcgray-mmx.asm
  45. simd/i386/jcgray-sse2.asm
  46. simd/i386/jchuff-sse2.asm
  47. simd/i386/jcphuff-sse2.asm
  48. simd/i386/jcsample-avx2.asm
  49. simd/i386/jcsample-mmx.asm
  50. simd/i386/jcsample-sse2.asm
  51. simd/i386/jdcolor-avx2.asm
  52. simd/i386/jdcolor-mmx.asm
  53. simd/i386/jdcolor-sse2.asm
  54. simd/i386/jdmerge-avx2.asm
  55. simd/i386/jdmerge-mmx.asm
  56. simd/i386/jdmerge-sse2.asm
  57. simd/i386/jdsample-avx2.asm
  58. simd/i386/jdsample-mmx.asm
  59. simd/i386/jdsample-sse2.asm
  60. simd/i386/jfdctflt-3dn.asm
  61. simd/i386/jfdctflt-sse.asm
  62. simd/i386/jfdctfst-mmx.asm
  63. simd/i386/jfdctfst-sse2.asm
  64. simd/i386/jfdctint-avx2.asm
  65. simd/i386/jfdctint-mmx.asm
  66. simd/i386/jfdctint-sse2.asm
  67. simd/i386/jidctflt-3dn.asm
  68. simd/i386/jidctflt-sse.asm
  69. simd/i386/jidctflt-sse2.asm
  70. simd/i386/jidctfst-mmx.asm
  71. simd/i386/jidctfst-sse2.asm
  72. simd/i386/jidctint-avx2.asm
  73. simd/i386/jidctint-mmx.asm
  74. simd/i386/jidctint-sse2.asm
  75. simd/i386/jidctred-mmx.asm
  76. simd/i386/jidctred-sse2.asm
  77. simd/i386/jquant-3dn.asm
  78. simd/i386/jquant-mmx.asm
  79. simd/i386/jquant-sse.asm
  80. simd/i386/jquantf-sse2.asm
  81. simd/i386/jquanti-avx2.asm
  82. simd/i386/jquanti-sse2.asm
  83. simd/i386/jsimd.c
  84. simd/i386/jsimdcpu.asm
  85. )
  86. ELSEIF (ARCH_X86_64)
  87. SRCS(
  88. simd/x86_64/jccolor-avx2.asm
  89. simd/x86_64/jccolor-sse2.asm
  90. simd/x86_64/jcgray-avx2.asm
  91. simd/x86_64/jcgray-sse2.asm
  92. simd/x86_64/jchuff-sse2.asm
  93. simd/x86_64/jcphuff-sse2.asm
  94. simd/x86_64/jcsample-avx2.asm
  95. simd/x86_64/jcsample-sse2.asm
  96. simd/x86_64/jdcolor-avx2.asm
  97. simd/x86_64/jdcolor-sse2.asm
  98. simd/x86_64/jdmerge-avx2.asm
  99. simd/x86_64/jdmerge-sse2.asm
  100. simd/x86_64/jdsample-avx2.asm
  101. simd/x86_64/jdsample-sse2.asm
  102. simd/x86_64/jfdctflt-sse.asm
  103. simd/x86_64/jfdctfst-sse2.asm
  104. simd/x86_64/jfdctint-avx2.asm
  105. simd/x86_64/jfdctint-sse2.asm
  106. simd/x86_64/jidctflt-sse2.asm
  107. simd/x86_64/jidctfst-sse2.asm
  108. simd/x86_64/jidctint-avx2.asm
  109. simd/x86_64/jidctint-sse2.asm
  110. simd/x86_64/jidctred-sse2.asm
  111. simd/x86_64/jquantf-sse2.asm
  112. simd/x86_64/jquanti-avx2.asm
  113. simd/x86_64/jquanti-sse2.asm
  114. simd/x86_64/jsimd.c
  115. simd/x86_64/jsimdcpu.asm
  116. )
  117. ELSEIF (ARCH_ARM7_NEON AND NOT MSVC)
  118. ADDINCL(
  119. contrib/libs/libjpeg-turbo/simd/arm
  120. )
  121. SRCS(
  122. simd/arm/aarch32/jchuff-neon.c
  123. simd/arm/aarch32/jsimd.c
  124. simd/arm/aarch32/jsimd_neon.S
  125. simd/arm/jccolor-neon.c
  126. simd/arm/jcgray-neon.c
  127. simd/arm/jcphuff-neon.c
  128. simd/arm/jcsample-neon.c
  129. simd/arm/jdcolor-neon.c
  130. simd/arm/jdmerge-neon.c
  131. simd/arm/jdsample-neon.c
  132. simd/arm/jfdctfst-neon.c
  133. simd/arm/jfdctint-neon.c
  134. simd/arm/jidctfst-neon.c
  135. simd/arm/jidctint-neon.c
  136. simd/arm/jidctred-neon.c
  137. simd/arm/jquanti-neon.c
  138. )
  139. ELSEIF (ARCH_ARM7 AND NOT MSVC)
  140. SRCS(
  141. simd/arm/aarch32/jchuff-neon.c
  142. simd/arm/aarch32/jsimd.c
  143. simd/arm/aarch32/jsimd_neon.S
  144. )
  145. ELSEIF (ARCH_ARM64 AND NOT MSVC)
  146. ADDINCL(
  147. contrib/libs/libjpeg-turbo/simd/arm
  148. )
  149. SRCS(
  150. simd/arm/aarch64/jchuff-neon.c
  151. simd/arm/aarch64/jsimd.c
  152. simd/arm/jccolor-neon.c
  153. simd/arm/jcgray-neon.c
  154. simd/arm/jcphuff-neon.c
  155. simd/arm/jcsample-neon.c
  156. simd/arm/jdcolor-neon.c
  157. simd/arm/jdmerge-neon.c
  158. simd/arm/jdsample-neon.c
  159. simd/arm/jfdctfst-neon.c
  160. simd/arm/jfdctint-neon.c
  161. simd/arm/jidctfst-neon.c
  162. simd/arm/jidctint-neon.c
  163. simd/arm/jidctred-neon.c
  164. simd/arm/jquanti-neon.c
  165. )
  166. ELSE()
  167. SRCS(
  168. jsimd_none.c
  169. )
  170. ENDIF()
  171. SRCS(
  172. jaricom.c
  173. jcapimin.c
  174. jcapistd.c
  175. jcarith.c
  176. jccoefct.c
  177. jccolor.c
  178. jcdctmgr.c
  179. jchuff.c
  180. jcicc.c
  181. jcinit.c
  182. jcmainct.c
  183. jcmarker.c
  184. jcmaster.c
  185. jcomapi.c
  186. jcparam.c
  187. jcphuff.c
  188. jcprepct.c
  189. jcsample.c
  190. jctrans.c
  191. jdapimin.c
  192. jdapistd.c
  193. jdarith.c
  194. jdatadst-tj.c
  195. jdatadst.c
  196. jdatasrc-tj.c
  197. jdatasrc.c
  198. jdcoefct.c
  199. jdcolor.c
  200. jddctmgr.c
  201. jdhuff.c
  202. jdicc.c
  203. jdinput.c
  204. jdmainct.c
  205. jdmarker.c
  206. jdmaster.c
  207. jdmerge.c
  208. jdphuff.c
  209. jdpostct.c
  210. jdsample.c
  211. jdtrans.c
  212. jerror.c
  213. jfdctflt.c
  214. jfdctfst.c
  215. jfdctint.c
  216. jidctflt.c
  217. jidctfst.c
  218. jidctint.c
  219. jidctred.c
  220. jmemmgr.c
  221. jmemnobs.c
  222. jquant1.c
  223. jquant2.c
  224. jutils.c
  225. rdbmp.c
  226. rdppm.c
  227. transupp.c
  228. turbojpeg.c
  229. wrbmp.c
  230. wrppm.c
  231. )
  232. END()
  233. RECURSE(
  234. cjpeg
  235. djpeg
  236. jpegtran
  237. tjunittest
  238. )
  239. IF (NOT OS_ANDROID AND NOT OS_IOS)
  240. RECURSE_FOR_TESTS(
  241. ut
  242. )
  243. ENDIF()