rugged 0.27.7 → 0.27.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rugged/version.rb +1 -1
  3. data/vendor/libgit2/AUTHORS +1 -0
  4. data/vendor/libgit2/CMakeLists.txt +99 -51
  5. data/vendor/libgit2/COPYING +28 -0
  6. data/vendor/libgit2/cmake/Modules/AddCFlagIfSupported.cmake +15 -1
  7. data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.c.in +29 -0
  8. data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.cmake +96 -0
  9. data/vendor/libgit2/cmake/Modules/EnableWarnings.cmake +9 -8
  10. data/vendor/libgit2/cmake/Modules/FindCoreFoundation.cmake +2 -2
  11. data/vendor/libgit2/cmake/Modules/FindGSSAPI.cmake +1 -1
  12. data/vendor/libgit2/cmake/Modules/FindGSSFramework.cmake +28 -0
  13. data/vendor/libgit2/cmake/Modules/FindIconv.cmake +11 -6
  14. data/vendor/libgit2/cmake/Modules/FindPCRE.cmake +38 -0
  15. data/vendor/libgit2/cmake/Modules/FindPCRE2.cmake +37 -0
  16. data/vendor/libgit2/cmake/Modules/FindSecurity.cmake +2 -2
  17. data/vendor/libgit2/cmake/Modules/FindStatNsec.cmake +6 -0
  18. data/vendor/libgit2/cmake/Modules/PkgBuildConfig.cmake +110 -0
  19. data/vendor/libgit2/cmake/Modules/SelectGSSAPI.cmake +53 -0
  20. data/vendor/libgit2/cmake/Modules/SelectHTTPSBackend.cmake +124 -0
  21. data/vendor/libgit2/cmake/Modules/SelectHashes.cmake +66 -0
  22. data/vendor/libgit2/deps/http-parser/http_parser.c +11 -6
  23. data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +21 -0
  24. data/vendor/libgit2/deps/ntlmclient/compat.h +33 -0
  25. data/vendor/libgit2/deps/ntlmclient/crypt.h +64 -0
  26. data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.c +120 -0
  27. data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.h +18 -0
  28. data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.c +145 -0
  29. data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.h +18 -0
  30. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +130 -0
  31. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.h +21 -0
  32. data/vendor/libgit2/deps/ntlmclient/ntlm.c +1420 -0
  33. data/vendor/libgit2/deps/ntlmclient/ntlm.h +174 -0
  34. data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +320 -0
  35. data/vendor/libgit2/deps/ntlmclient/unicode.h +36 -0
  36. data/vendor/libgit2/deps/ntlmclient/unicode_builtin.c +445 -0
  37. data/vendor/libgit2/deps/ntlmclient/unicode_iconv.c +201 -0
  38. data/vendor/libgit2/deps/ntlmclient/utf8.h +1257 -0
  39. data/vendor/libgit2/deps/ntlmclient/util.c +21 -0
  40. data/vendor/libgit2/deps/ntlmclient/util.h +14 -0
  41. data/vendor/libgit2/deps/pcre/CMakeLists.txt +140 -0
  42. data/vendor/libgit2/deps/pcre/COPYING +5 -0
  43. data/vendor/libgit2/deps/pcre/cmake/COPYING-CMAKE-SCRIPTS +22 -0
  44. data/vendor/libgit2/deps/pcre/cmake/FindEditline.cmake +17 -0
  45. data/vendor/libgit2/deps/pcre/cmake/FindPackageHandleStandardArgs.cmake +58 -0
  46. data/vendor/libgit2/deps/pcre/cmake/FindReadline.cmake +29 -0
  47. data/vendor/libgit2/deps/pcre/config.h.in +57 -0
  48. data/vendor/libgit2/deps/pcre/pcre.h +641 -0
  49. data/vendor/libgit2/deps/pcre/pcre_byte_order.c +319 -0
  50. data/vendor/libgit2/deps/pcre/pcre_chartables.c +198 -0
  51. data/vendor/libgit2/deps/pcre/pcre_compile.c +9800 -0
  52. data/vendor/libgit2/deps/pcre/pcre_config.c +190 -0
  53. data/vendor/libgit2/deps/pcre/pcre_dfa_exec.c +3676 -0
  54. data/vendor/libgit2/deps/pcre/pcre_exec.c +7173 -0
  55. data/vendor/libgit2/deps/pcre/pcre_fullinfo.c +245 -0
  56. data/vendor/libgit2/deps/pcre/pcre_get.c +669 -0
  57. data/vendor/libgit2/deps/pcre/pcre_globals.c +86 -0
  58. data/vendor/libgit2/deps/pcre/pcre_internal.h +2787 -0
  59. data/vendor/libgit2/deps/pcre/pcre_jit_compile.c +11913 -0
  60. data/vendor/libgit2/deps/pcre/pcre_maketables.c +156 -0
  61. data/vendor/libgit2/deps/pcre/pcre_newline.c +210 -0
  62. data/vendor/libgit2/deps/pcre/pcre_ord2utf8.c +94 -0
  63. data/vendor/libgit2/deps/pcre/pcre_printint.c +834 -0
  64. data/vendor/libgit2/deps/pcre/pcre_refcount.c +92 -0
  65. data/vendor/libgit2/deps/pcre/pcre_string_utils.c +211 -0
  66. data/vendor/libgit2/deps/pcre/pcre_study.c +1686 -0
  67. data/vendor/libgit2/deps/pcre/pcre_tables.c +727 -0
  68. data/vendor/libgit2/deps/pcre/pcre_ucd.c +3644 -0
  69. data/vendor/libgit2/deps/pcre/pcre_valid_utf8.c +301 -0
  70. data/vendor/libgit2/deps/pcre/pcre_version.c +98 -0
  71. data/vendor/libgit2/deps/pcre/pcre_xclass.c +268 -0
  72. data/vendor/libgit2/deps/pcre/pcreposix.c +421 -0
  73. data/vendor/libgit2/deps/pcre/pcreposix.h +117 -0
  74. data/vendor/libgit2/deps/pcre/ucp.h +224 -0
  75. data/vendor/libgit2/deps/winhttp/COPYING.GPL +993 -0
  76. data/vendor/libgit2/deps/winhttp/COPYING.LGPL +502 -0
  77. data/vendor/libgit2/deps/zlib/CMakeLists.txt +1 -0
  78. data/vendor/libgit2/deps/zlib/COPYING +27 -0
  79. data/vendor/libgit2/deps/zlib/adler32.c +0 -7
  80. data/vendor/libgit2/deps/zlib/crc32.c +0 -7
  81. data/vendor/libgit2/include/git2/annotated_commit.h +9 -0
  82. data/vendor/libgit2/include/git2/apply.h +149 -0
  83. data/vendor/libgit2/include/git2/attr.h +20 -13
  84. data/vendor/libgit2/include/git2/blame.h +4 -4
  85. data/vendor/libgit2/include/git2/blob.h +44 -12
  86. data/vendor/libgit2/include/git2/buffer.h +20 -26
  87. data/vendor/libgit2/include/git2/cert.h +135 -0
  88. data/vendor/libgit2/include/git2/checkout.h +53 -21
  89. data/vendor/libgit2/include/git2/cherrypick.h +3 -3
  90. data/vendor/libgit2/include/git2/clone.h +5 -5
  91. data/vendor/libgit2/include/git2/commit.h +25 -3
  92. data/vendor/libgit2/include/git2/common.h +35 -10
  93. data/vendor/libgit2/include/git2/config.h +29 -19
  94. data/vendor/libgit2/include/git2/cred.h +308 -0
  95. data/vendor/libgit2/include/git2/deprecated.h +493 -0
  96. data/vendor/libgit2/include/git2/describe.h +4 -4
  97. data/vendor/libgit2/include/git2/diff.h +177 -135
  98. data/vendor/libgit2/include/git2/errors.h +53 -46
  99. data/vendor/libgit2/include/git2/filter.h +8 -0
  100. data/vendor/libgit2/include/git2/index.h +74 -52
  101. data/vendor/libgit2/include/git2/indexer.h +76 -6
  102. data/vendor/libgit2/include/git2/merge.h +25 -10
  103. data/vendor/libgit2/include/git2/net.h +0 -5
  104. data/vendor/libgit2/include/git2/notes.h +1 -1
  105. data/vendor/libgit2/include/git2/object.h +17 -29
  106. data/vendor/libgit2/include/git2/odb.h +12 -11
  107. data/vendor/libgit2/include/git2/odb_backend.h +10 -9
  108. data/vendor/libgit2/include/git2/oid.h +2 -2
  109. data/vendor/libgit2/include/git2/pack.h +14 -3
  110. data/vendor/libgit2/include/git2/proxy.h +5 -3
  111. data/vendor/libgit2/include/git2/rebase.h +46 -2
  112. data/vendor/libgit2/include/git2/refs.h +34 -16
  113. data/vendor/libgit2/include/git2/remote.h +111 -14
  114. data/vendor/libgit2/include/git2/repository.h +69 -34
  115. data/vendor/libgit2/include/git2/revert.h +1 -1
  116. data/vendor/libgit2/include/git2/revwalk.h +7 -7
  117. data/vendor/libgit2/include/git2/signature.h +2 -2
  118. data/vendor/libgit2/include/git2/stash.h +5 -5
  119. data/vendor/libgit2/include/git2/status.h +26 -17
  120. data/vendor/libgit2/include/git2/submodule.h +23 -6
  121. data/vendor/libgit2/include/git2/sys/alloc.h +18 -18
  122. data/vendor/libgit2/include/git2/sys/commit.h +1 -1
  123. data/vendor/libgit2/include/git2/sys/config.h +13 -13
  124. data/vendor/libgit2/include/git2/sys/cred.h +90 -0
  125. data/vendor/libgit2/include/git2/sys/filter.h +6 -6
  126. data/vendor/libgit2/include/git2/sys/merge.h +3 -3
  127. data/vendor/libgit2/include/git2/sys/odb_backend.h +66 -22
  128. data/vendor/libgit2/include/git2/sys/path.h +14 -5
  129. data/vendor/libgit2/include/git2/sys/refdb_backend.h +76 -40
  130. data/vendor/libgit2/include/git2/sys/repository.h +5 -1
  131. data/vendor/libgit2/include/git2/sys/stream.h +92 -12
  132. data/vendor/libgit2/include/git2/sys/transport.h +129 -83
  133. data/vendor/libgit2/include/git2/tag.h +13 -4
  134. data/vendor/libgit2/include/git2/trace.h +2 -2
  135. data/vendor/libgit2/include/git2/transport.h +11 -311
  136. data/vendor/libgit2/include/git2/tree.h +4 -4
  137. data/vendor/libgit2/include/git2/types.h +25 -106
  138. data/vendor/libgit2/include/git2/version.h +3 -3
  139. data/vendor/libgit2/include/git2/worktree.h +5 -5
  140. data/vendor/libgit2/include/git2.h +4 -0
  141. data/vendor/libgit2/src/CMakeLists.txt +104 -235
  142. data/vendor/libgit2/src/alloc.c +14 -18
  143. data/vendor/libgit2/src/{stdalloc.c → allocators/stdalloc.c} +7 -8
  144. data/vendor/libgit2/src/{stdalloc.h → allocators/stdalloc.h} +4 -4
  145. data/vendor/libgit2/src/allocators/win32_crtdbg.c +118 -0
  146. data/vendor/libgit2/src/{transports/cred.h → allocators/win32_crtdbg.h} +5 -4
  147. data/vendor/libgit2/src/annotated_commit.c +18 -11
  148. data/vendor/libgit2/src/apply.c +535 -28
  149. data/vendor/libgit2/src/apply.h +3 -1
  150. data/vendor/libgit2/src/array.h +2 -2
  151. data/vendor/libgit2/src/attr.c +77 -71
  152. data/vendor/libgit2/src/attr_file.c +203 -117
  153. data/vendor/libgit2/src/attr_file.h +9 -9
  154. data/vendor/libgit2/src/attrcache.c +49 -51
  155. data/vendor/libgit2/src/attrcache.h +2 -1
  156. data/vendor/libgit2/src/blame.c +38 -18
  157. data/vendor/libgit2/src/blame.h +1 -1
  158. data/vendor/libgit2/src/blame_git.c +29 -15
  159. data/vendor/libgit2/src/blob.c +123 -37
  160. data/vendor/libgit2/src/blob.h +19 -2
  161. data/vendor/libgit2/src/branch.c +47 -23
  162. data/vendor/libgit2/src/buf_text.c +7 -6
  163. data/vendor/libgit2/src/buffer.c +60 -53
  164. data/vendor/libgit2/src/cache.c +38 -45
  165. data/vendor/libgit2/src/cache.h +3 -3
  166. data/vendor/libgit2/src/cc-compat.h +20 -3
  167. data/vendor/libgit2/src/checkout.c +77 -67
  168. data/vendor/libgit2/src/cherrypick.c +12 -6
  169. data/vendor/libgit2/src/clone.c +36 -14
  170. data/vendor/libgit2/src/clone.h +4 -0
  171. data/vendor/libgit2/src/commit.c +103 -48
  172. data/vendor/libgit2/src/commit.h +7 -0
  173. data/vendor/libgit2/src/commit_list.c +36 -78
  174. data/vendor/libgit2/src/commit_list.h +2 -2
  175. data/vendor/libgit2/src/common.h +24 -90
  176. data/vendor/libgit2/src/config.c +203 -176
  177. data/vendor/libgit2/src/config.h +8 -20
  178. data/vendor/libgit2/src/config_backend.h +96 -0
  179. data/vendor/libgit2/src/config_cache.c +41 -35
  180. data/vendor/libgit2/src/config_entries.c +229 -0
  181. data/vendor/libgit2/src/config_entries.h +24 -0
  182. data/vendor/libgit2/src/config_file.c +422 -680
  183. data/vendor/libgit2/src/config_mem.c +220 -0
  184. data/vendor/libgit2/src/config_parse.c +96 -68
  185. data/vendor/libgit2/src/config_parse.h +15 -14
  186. data/vendor/libgit2/src/config_snapshot.c +206 -0
  187. data/vendor/libgit2/src/crlf.c +219 -196
  188. data/vendor/libgit2/src/delta.c +25 -18
  189. data/vendor/libgit2/src/describe.c +42 -41
  190. data/vendor/libgit2/src/diff.c +52 -67
  191. data/vendor/libgit2/src/diff.h +2 -1
  192. data/vendor/libgit2/src/diff_driver.c +44 -46
  193. data/vendor/libgit2/src/diff_file.c +16 -14
  194. data/vendor/libgit2/src/diff_file.h +1 -1
  195. data/vendor/libgit2/src/diff_generate.c +158 -103
  196. data/vendor/libgit2/src/diff_generate.h +3 -3
  197. data/vendor/libgit2/src/diff_parse.c +4 -4
  198. data/vendor/libgit2/src/diff_print.c +34 -22
  199. data/vendor/libgit2/src/diff_stats.c +22 -7
  200. data/vendor/libgit2/src/diff_tform.c +18 -16
  201. data/vendor/libgit2/src/diff_xdiff.c +3 -3
  202. data/vendor/libgit2/src/errors.c +51 -39
  203. data/vendor/libgit2/src/errors.h +81 -0
  204. data/vendor/libgit2/src/features.h.in +9 -3
  205. data/vendor/libgit2/src/fetch.c +8 -3
  206. data/vendor/libgit2/src/fetchhead.c +12 -12
  207. data/vendor/libgit2/src/filebuf.c +28 -32
  208. data/vendor/libgit2/src/filebuf.h +2 -2
  209. data/vendor/libgit2/src/filter.c +47 -33
  210. data/vendor/libgit2/src/filter.h +0 -10
  211. data/vendor/libgit2/src/{fileops.c → futils.c} +70 -63
  212. data/vendor/libgit2/src/{fileops.h → futils.h} +6 -6
  213. data/vendor/libgit2/src/global.c +35 -55
  214. data/vendor/libgit2/src/global.h +0 -2
  215. data/vendor/libgit2/src/hash/sha1/collisiondetect.c +48 -0
  216. data/vendor/libgit2/src/hash/sha1/collisiondetect.h +19 -0
  217. data/vendor/libgit2/src/hash/{hash_common_crypto.h → sha1/common_crypto.c} +17 -17
  218. data/vendor/libgit2/src/hash/sha1/common_crypto.h +19 -0
  219. data/vendor/libgit2/src/hash/{hash_generic.c → sha1/generic.c} +22 -10
  220. data/vendor/libgit2/src/hash/{hash_generic.h → sha1/generic.h} +4 -10
  221. data/vendor/libgit2/src/hash/{hash_mbedtls.c → sha1/mbedtls.c} +15 -7
  222. data/vendor/libgit2/src/hash/{hash_mbedtls.h → sha1/mbedtls.h} +6 -7
  223. data/vendor/libgit2/src/hash/sha1/openssl.c +59 -0
  224. data/vendor/libgit2/src/hash/sha1/openssl.h +19 -0
  225. data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/sha1.c +14 -3
  226. data/vendor/libgit2/src/hash/{hash_win32.c → sha1/win32.c} +47 -37
  227. data/vendor/libgit2/src/hash/{hash_win32.h → sha1/win32.h} +6 -19
  228. data/vendor/libgit2/src/hash/sha1.h +38 -0
  229. data/vendor/libgit2/src/hash.c +61 -0
  230. data/vendor/libgit2/src/hash.h +20 -21
  231. data/vendor/libgit2/src/hashsig.c +5 -5
  232. data/vendor/libgit2/src/idxmap.c +107 -61
  233. data/vendor/libgit2/src/idxmap.h +153 -31
  234. data/vendor/libgit2/src/ignore.c +38 -42
  235. data/vendor/libgit2/src/index.c +264 -199
  236. data/vendor/libgit2/src/index.h +7 -1
  237. data/vendor/libgit2/src/indexer.c +338 -167
  238. data/vendor/libgit2/src/integer.h +71 -26
  239. data/vendor/libgit2/src/iterator.c +134 -62
  240. data/vendor/libgit2/src/iterator.h +15 -0
  241. data/vendor/libgit2/src/mailmap.c +8 -8
  242. data/vendor/libgit2/src/map.h +1 -1
  243. data/vendor/libgit2/src/merge.c +137 -93
  244. data/vendor/libgit2/src/merge_driver.c +11 -11
  245. data/vendor/libgit2/src/merge_file.c +2 -2
  246. data/vendor/libgit2/src/mwindow.c +24 -29
  247. data/vendor/libgit2/src/mwindow.h +4 -4
  248. data/vendor/libgit2/src/net.c +184 -0
  249. data/vendor/libgit2/src/net.h +36 -0
  250. data/vendor/libgit2/src/netops.c +55 -156
  251. data/vendor/libgit2/src/netops.h +3 -23
  252. data/vendor/libgit2/src/notes.c +14 -9
  253. data/vendor/libgit2/src/object.c +120 -69
  254. data/vendor/libgit2/src/object.h +22 -9
  255. data/vendor/libgit2/src/object_api.c +8 -8
  256. data/vendor/libgit2/src/odb.c +111 -88
  257. data/vendor/libgit2/src/odb.h +8 -7
  258. data/vendor/libgit2/src/odb_loose.c +58 -47
  259. data/vendor/libgit2/src/odb_mempack.c +21 -34
  260. data/vendor/libgit2/src/odb_pack.c +17 -13
  261. data/vendor/libgit2/src/offmap.c +53 -35
  262. data/vendor/libgit2/src/offmap.h +108 -21
  263. data/vendor/libgit2/src/oid.c +12 -7
  264. data/vendor/libgit2/src/oidmap.c +49 -47
  265. data/vendor/libgit2/src/oidmap.h +101 -24
  266. data/vendor/libgit2/src/pack-objects.c +87 -86
  267. data/vendor/libgit2/src/pack-objects.h +2 -8
  268. data/vendor/libgit2/src/pack.c +94 -96
  269. data/vendor/libgit2/src/pack.h +16 -18
  270. data/vendor/libgit2/src/parse.c +17 -4
  271. data/vendor/libgit2/src/parse.h +3 -3
  272. data/vendor/libgit2/src/patch.c +3 -3
  273. data/vendor/libgit2/src/patch_generate.c +18 -18
  274. data/vendor/libgit2/src/patch_parse.c +147 -79
  275. data/vendor/libgit2/src/path.c +207 -62
  276. data/vendor/libgit2/src/path.h +14 -0
  277. data/vendor/libgit2/src/pathspec.c +18 -18
  278. data/vendor/libgit2/src/pool.c +26 -22
  279. data/vendor/libgit2/src/pool.h +7 -7
  280. data/vendor/libgit2/src/posix.c +10 -10
  281. data/vendor/libgit2/src/posix.h +12 -1
  282. data/vendor/libgit2/src/proxy.c +8 -3
  283. data/vendor/libgit2/src/push.c +35 -29
  284. data/vendor/libgit2/src/push.h +2 -1
  285. data/vendor/libgit2/src/reader.c +265 -0
  286. data/vendor/libgit2/src/reader.h +107 -0
  287. data/vendor/libgit2/src/rebase.c +97 -38
  288. data/vendor/libgit2/src/refdb.c +15 -3
  289. data/vendor/libgit2/src/refdb_fs.c +318 -222
  290. data/vendor/libgit2/src/reflog.c +13 -15
  291. data/vendor/libgit2/src/refs.c +122 -89
  292. data/vendor/libgit2/src/refs.h +5 -3
  293. data/vendor/libgit2/src/refspec.c +27 -33
  294. data/vendor/libgit2/src/regexp.c +221 -0
  295. data/vendor/libgit2/src/regexp.h +97 -0
  296. data/vendor/libgit2/src/remote.c +229 -178
  297. data/vendor/libgit2/src/remote.h +11 -2
  298. data/vendor/libgit2/src/repository.c +227 -172
  299. data/vendor/libgit2/src/repository.h +52 -40
  300. data/vendor/libgit2/src/reset.c +7 -7
  301. data/vendor/libgit2/src/revert.c +11 -6
  302. data/vendor/libgit2/src/revparse.c +46 -46
  303. data/vendor/libgit2/src/revwalk.c +89 -54
  304. data/vendor/libgit2/src/revwalk.h +20 -0
  305. data/vendor/libgit2/src/settings.c +22 -9
  306. data/vendor/libgit2/src/signature.c +15 -13
  307. data/vendor/libgit2/src/sortedcache.c +22 -36
  308. data/vendor/libgit2/src/sortedcache.h +1 -1
  309. data/vendor/libgit2/src/stash.c +56 -76
  310. data/vendor/libgit2/src/status.c +27 -21
  311. data/vendor/libgit2/src/stream.h +17 -2
  312. data/vendor/libgit2/src/streams/mbedtls.c +100 -80
  313. data/vendor/libgit2/src/streams/mbedtls.h +5 -2
  314. data/vendor/libgit2/src/streams/openssl.c +93 -81
  315. data/vendor/libgit2/src/streams/openssl.h +5 -2
  316. data/vendor/libgit2/src/streams/registry.c +118 -0
  317. data/vendor/libgit2/src/streams/registry.h +19 -0
  318. data/vendor/libgit2/src/streams/socket.c +55 -30
  319. data/vendor/libgit2/src/streams/stransport.c +57 -32
  320. data/vendor/libgit2/src/streams/stransport.h +5 -0
  321. data/vendor/libgit2/src/streams/tls.c +48 -20
  322. data/vendor/libgit2/src/streams/tls.h +12 -4
  323. data/vendor/libgit2/src/strmap.c +47 -74
  324. data/vendor/libgit2/src/strmap.h +108 -33
  325. data/vendor/libgit2/src/submodule.c +190 -169
  326. data/vendor/libgit2/src/submodule.h +1 -1
  327. data/vendor/libgit2/src/sysdir.c +25 -15
  328. data/vendor/libgit2/src/tag.c +39 -26
  329. data/vendor/libgit2/src/tag.h +2 -1
  330. data/vendor/libgit2/src/trace.c +2 -2
  331. data/vendor/libgit2/src/trace.h +2 -2
  332. data/vendor/libgit2/src/trailer.c +46 -32
  333. data/vendor/libgit2/src/transaction.c +30 -29
  334. data/vendor/libgit2/src/transport.c +3 -3
  335. data/vendor/libgit2/src/transports/auth.c +14 -10
  336. data/vendor/libgit2/src/transports/auth.h +10 -3
  337. data/vendor/libgit2/src/transports/auth_negotiate.c +31 -16
  338. data/vendor/libgit2/src/transports/auth_negotiate.h +2 -2
  339. data/vendor/libgit2/src/transports/auth_ntlm.c +223 -0
  340. data/vendor/libgit2/src/transports/auth_ntlm.h +35 -0
  341. data/vendor/libgit2/src/transports/cred.c +24 -24
  342. data/vendor/libgit2/src/transports/git.c +25 -30
  343. data/vendor/libgit2/src/transports/http.c +871 -335
  344. data/vendor/libgit2/src/transports/http.h +2 -0
  345. data/vendor/libgit2/src/transports/local.c +28 -28
  346. data/vendor/libgit2/src/transports/smart.c +64 -46
  347. data/vendor/libgit2/src/transports/smart.h +5 -6
  348. data/vendor/libgit2/src/transports/smart_pkt.c +162 -151
  349. data/vendor/libgit2/src/transports/smart_protocol.c +64 -94
  350. data/vendor/libgit2/src/transports/ssh.c +76 -65
  351. data/vendor/libgit2/src/transports/winhttp.c +328 -319
  352. data/vendor/libgit2/src/tree-cache.c +21 -14
  353. data/vendor/libgit2/src/tree.c +119 -112
  354. data/vendor/libgit2/src/tree.h +1 -0
  355. data/vendor/libgit2/src/unix/map.c +3 -3
  356. data/vendor/libgit2/src/unix/posix.h +1 -11
  357. data/vendor/libgit2/src/userdiff.h +3 -1
  358. data/vendor/libgit2/src/util.c +154 -93
  359. data/vendor/libgit2/src/util.h +19 -23
  360. data/vendor/libgit2/src/vector.c +15 -10
  361. data/vendor/libgit2/src/wildmatch.c +320 -0
  362. data/vendor/libgit2/src/wildmatch.h +23 -0
  363. data/vendor/libgit2/src/win32/dir.c +3 -3
  364. data/vendor/libgit2/src/win32/findfile.c +1 -1
  365. data/vendor/libgit2/src/win32/map.c +9 -11
  366. data/vendor/libgit2/src/win32/msvc-compat.h +6 -0
  367. data/vendor/libgit2/src/win32/path_w32.c +113 -9
  368. data/vendor/libgit2/src/win32/path_w32.h +18 -29
  369. data/vendor/libgit2/src/win32/posix.h +1 -4
  370. data/vendor/libgit2/src/win32/posix_w32.c +69 -44
  371. data/vendor/libgit2/src/win32/precompiled.h +0 -2
  372. data/vendor/libgit2/src/win32/thread.c +5 -10
  373. data/vendor/libgit2/src/win32/w32_buffer.c +9 -5
  374. data/vendor/libgit2/src/win32/w32_common.h +39 -0
  375. data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.c +2 -95
  376. data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.h +0 -2
  377. data/vendor/libgit2/src/win32/w32_stack.c +6 -11
  378. data/vendor/libgit2/src/win32/w32_stack.h +3 -3
  379. data/vendor/libgit2/src/win32/w32_util.c +27 -64
  380. data/vendor/libgit2/src/win32/w32_util.h +5 -49
  381. data/vendor/libgit2/src/worktree.c +44 -30
  382. data/vendor/libgit2/src/xdiff/xdiffi.c +5 -5
  383. data/vendor/libgit2/src/xdiff/xhistogram.c +1 -1
  384. data/vendor/libgit2/src/xdiff/xmerge.c +27 -15
  385. data/vendor/libgit2/src/xdiff/xpatience.c +3 -0
  386. data/vendor/libgit2/src/zstream.c +4 -4
  387. metadata +115 -38
  388. data/vendor/libgit2/deps/regex/CMakeLists.txt +0 -2
  389. data/vendor/libgit2/deps/regex/config.h +0 -7
  390. data/vendor/libgit2/deps/regex/regcomp.c +0 -3857
  391. data/vendor/libgit2/deps/regex/regex.c +0 -92
  392. data/vendor/libgit2/deps/regex/regex.h +0 -582
  393. data/vendor/libgit2/deps/regex/regex_internal.c +0 -1744
  394. data/vendor/libgit2/deps/regex/regex_internal.h +0 -819
  395. data/vendor/libgit2/deps/regex/regexec.c +0 -4369
  396. data/vendor/libgit2/include/git2/inttypes.h +0 -309
  397. data/vendor/libgit2/include/git2/sys/time.h +0 -31
  398. data/vendor/libgit2/libgit2.pc.in +0 -13
  399. data/vendor/libgit2/src/config_file.h +0 -73
  400. data/vendor/libgit2/src/fnmatch.c +0 -248
  401. data/vendor/libgit2/src/fnmatch.h +0 -48
  402. data/vendor/libgit2/src/hash/hash_collisiondetect.h +0 -47
  403. data/vendor/libgit2/src/hash/hash_openssl.h +0 -59
  404. data/vendor/libgit2/src/streams/curl.c +0 -385
  405. data/vendor/libgit2/src/streams/curl.h +0 -17
  406. /data/vendor/libgit2/deps/http-parser/{LICENSE-MIT → COPYING} +0 -0
  407. /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/sha1.h +0 -0
  408. /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/ubc_check.c +0 -0
  409. /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/ubc_check.h +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ff10e024463517713720e2d4e8ea45634f6960c3fe0f5f2aa6e3dd653b271c6d
4
- data.tar.gz: 359d2509194e1c6841fac18cfca3fd94ae4e23285da330ce7e94405d41e0c5f5
3
+ metadata.gz: 60877d4cbb2ebf7883b23ed495e44d5aee569227cb3d708e430f2cda0477d149
4
+ data.tar.gz: dd362a1862f13fea15e02619590bffc233b76ebc54f0fce022f14df0c664b0c2
5
5
  SHA512:
6
- metadata.gz: 1e20fdce0243b2fb693702bfda14459813fabae492f1884f477ab2e6070e715e112eee09c210daee609bb51402cb45bb2d5a096512789070bdba3938343a799e
7
- data.tar.gz: f4fca979a4d7d027a1f79c40a350d54776e0d659dba531e65a6677f335295c3209f5c55e903639b3bdb33dbc4f1c9be12f8f3b1d8990303ace013e603c558d2a
6
+ metadata.gz: 5fb127dd23146018109bf859280e31f68d3d3634f8657f8771364603b9d79fcbf5d9402805d25a169bd83f606dfdae9019ed911a0486d430f5154ab5e1dcbc63
7
+ data.tar.gz: aff42c35c12233cafcea2314ec0dc4d932fe408bf396ea43f9b003ed0c398a412a57965949a09e98cc27bede1586881af792d7b2b8d42cccbc75d51b9e715a16
@@ -4,5 +4,5 @@
4
4
  # For full terms see the included LICENSE file.
5
5
 
6
6
  module Rugged
7
- Version = VERSION = '0.27.7'
7
+ Version = VERSION = '0.27.10'
8
8
  end
@@ -23,6 +23,7 @@ Dmitry Kovega
23
23
  Emeric Fermas
24
24
  Emmanuel Rodriguez
25
25
  Eric Myhre
26
+ Erik Aigner
26
27
  Florian Forster
27
28
  Holger Weiss
28
29
  Ingmar Vanhassel
@@ -12,14 +12,17 @@
12
12
  # > cmake --build . --target install
13
13
 
14
14
  PROJECT(libgit2 C)
15
- CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11)
15
+ CMAKE_MINIMUM_REQUIRED(VERSION 3.5.1)
16
16
  CMAKE_POLICY(SET CMP0015 NEW)
17
- IF (POLICY CMP0051)
17
+ IF(POLICY CMP0051)
18
18
  CMAKE_POLICY(SET CMP0051 NEW)
19
19
  ENDIF()
20
- IF (POLICY CMP0042)
20
+ IF(POLICY CMP0042)
21
21
  CMAKE_POLICY(SET CMP0042 NEW)
22
22
  ENDIF()
23
+ IF(POLICY CMP0054)
24
+ CMAKE_POLICY(SET CMP0054 NEW)
25
+ ENDIF()
23
26
 
24
27
  # Add find modules to the path
25
28
  SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${libgit2_SOURCE_DIR}/cmake/Modules/")
@@ -28,6 +31,7 @@ INCLUDE(CheckLibraryExists)
28
31
  INCLUDE(CheckFunctionExists)
29
32
  INCLUDE(CheckSymbolExists)
30
33
  INCLUDE(CheckStructHasMember)
34
+ INCLUDE(CheckPrototypeDefinition) # Added in CMake 3.0
31
35
  INCLUDE(AddCFlagIfSupported)
32
36
  INCLUDE(FindPkgLibraries)
33
37
  INCLUDE(FindThreads)
@@ -38,63 +42,66 @@ INCLUDE(EnableWarnings)
38
42
 
39
43
  # Build options
40
44
  #
41
- OPTION( SONAME "Set the (SO)VERSION of the target" ON )
42
- OPTION( BUILD_SHARED_LIBS "Build Shared Library (OFF for Static)" ON )
43
- OPTION( THREADSAFE "Build libgit2 as threadsafe" ON )
44
- OPTION( BUILD_CLAR "Build Tests using the Clar suite" ON )
45
- OPTION( BUILD_EXAMPLES "Build library usage example apps" OFF )
46
- OPTION( TAGS "Generate tags" OFF )
47
- OPTION( PROFILE "Generate profiling information" OFF )
48
- OPTION( ENABLE_TRACE "Enables tracing support" OFF )
49
- OPTION( LIBGIT2_FILENAME "Name of the produced binary" OFF )
50
-
51
- SET(SHA1_BACKEND "CollisionDetection" CACHE STRING "Backend to use for SHA1. One of Generic, OpenSSL, Win32, CommonCrypto, mbedTLS, CollisionDetection. ")
52
- OPTION( USE_SSH "Link with libssh to enable SSH support" ON )
53
- OPTION( USE_HTTPS "Enable HTTPS support. Can be set to a specific backend" ON )
54
- OPTION( USE_GSSAPI "Link with libgssapi for SPNEGO auth" OFF )
55
- OPTION( VALGRIND "Configure build for valgrind" OFF )
56
- OPTION( CURL "Use curl for HTTP if available" ON)
57
- OPTION( USE_EXT_HTTP_PARSER "Use system HTTP_Parser if available" ON)
58
- OPTION( DEBUG_POOL "Enable debug pool allocator" OFF )
59
- OPTION( ENABLE_WERROR "Enable compilation with -Werror" OFF )
60
- OPTION( USE_BUNDLED_ZLIB "Use the bundled version of zlib" OFF )
45
+ OPTION(SONAME "Set the (SO)VERSION of the target" ON)
46
+ OPTION(BUILD_SHARED_LIBS "Build Shared Library (OFF for Static)" ON)
47
+ OPTION(THREADSAFE "Build libgit2 as threadsafe" ON)
48
+ OPTION(BUILD_CLAR "Build Tests using the Clar suite" ON)
49
+ OPTION(BUILD_EXAMPLES "Build library usage example apps" OFF)
50
+ OPTION(BUILD_FUZZERS "Build the fuzz targets" OFF)
51
+ OPTION(TAGS "Generate tags" OFF)
52
+ OPTION(PROFILE "Generate profiling information" OFF)
53
+ OPTION(ENABLE_TRACE "Enables tracing support" ON)
54
+ OPTION(LIBGIT2_FILENAME "Name of the produced binary" OFF)
55
+ OPTION(USE_SSH "Link with libssh2 to enable SSH support" ON)
56
+ OPTION(USE_HTTPS "Enable HTTPS support. Can be set to a specific backend" ON)
57
+ OPTION(USE_SHA1 "Enable SHA1. Can be set to CollisionDetection(ON)/HTTPS/Generic" ON)
58
+ OPTION(USE_GSSAPI "Link with libgssapi for SPNEGO auth" OFF)
59
+ OPTION(USE_STANDALONE_FUZZERS "Enable standalone fuzzers (compatible with gcc)" OFF)
60
+ OPTION(USE_LEAK_CHECKER "Run tests with leak checker" OFF)
61
+ OPTION(VALGRIND "Configure build for valgrind" OFF)
62
+ OPTION(DEBUG_POOL "Enable debug pool allocator" OFF)
63
+ OPTION(ENABLE_WERROR "Enable compilation with -Werror" OFF)
64
+ OPTION(USE_BUNDLED_ZLIB "Use the bundled version of zlib" OFF)
65
+ SET(USE_HTTP_PARSER "" CACHE STRING "Specifies the HTTP Parser implementation; either system or builtin.")
66
+ OPTION(DEPRECATE_HARD "Do not include deprecated functions in the library" OFF)
67
+ SET(REGEX_BACKEND "" CACHE STRING "Regular expression implementation. One of regcomp_l, pcre2, pcre, regcomp, or builtin.")
68
+
69
+ IF (UNIX)
70
+ IF (NOT USE_HTTPS)
71
+ OPTION(USE_NTLMCLIENT "Enable NTLM support on Unix." OFF )
72
+ ELSE()
73
+ OPTION(USE_NTLMCLIENT "Enable NTLM support on Unix." ON )
74
+ ENDIF()
75
+ ENDIF()
61
76
 
62
77
  IF (UNIX AND NOT APPLE)
63
- OPTION( ENABLE_REPRODUCIBLE_BUILDS "Enable reproducible builds" OFF )
78
+ OPTION(ENABLE_REPRODUCIBLE_BUILDS "Enable reproducible builds" OFF)
64
79
  ENDIF()
65
80
 
66
81
  IF (APPLE)
67
- OPTION( USE_ICONV "Link with and use iconv library" ON )
82
+ OPTION(USE_ICONV "Link with and use iconv library" ON)
68
83
  ENDIF()
69
84
 
70
85
  IF(MSVC)
71
- # This option is only available when building with MSVC. By default, libgit2
72
- # is build using the cdecl calling convention, which is useful if you're
73
- # writing C. However, the CLR and Win32 API both expect stdcall.
74
- #
75
- # If you are writing a CLR program and want to link to libgit2, you'll want
76
- # to turn this on by invoking CMake with the "-DSTDCALL=ON" argument.
77
- OPTION( STDCALL "Build libgit2 with the __stdcall convention" OFF )
78
-
79
86
  # This option must match the settings used in your program, in particular if you
80
87
  # are linking statically
81
- OPTION( STATIC_CRT "Link the static CRT libraries" ON )
88
+ OPTION(STATIC_CRT "Link the static CRT libraries" ON)
82
89
 
83
90
  # If you want to embed a copy of libssh2 into libgit2, pass a
84
91
  # path to libssh2
85
- OPTION( EMBED_SSH_PATH "Path to libssh2 to embed (Windows)" OFF )
92
+ OPTION(EMBED_SSH_PATH "Path to libssh2 to embed (Windows)" OFF)
86
93
  ENDIF()
87
94
 
88
95
 
89
96
  IF(WIN32)
90
97
  # By default, libgit2 is built with WinHTTP. To use the built-in
91
98
  # HTTP transport, invoke CMake with the "-DWINHTTP=OFF" argument.
92
- OPTION( WINHTTP "Use Win32 WinHTTP routines" ON )
99
+ OPTION(WINHTTP "Use Win32 WinHTTP routines" ON)
93
100
  ENDIF()
94
101
 
95
102
  IF(MSVC)
96
103
  # Enable MSVC CRTDBG memory leak reporting when in debug mode.
97
- OPTION(MSVC_CRTDBG "Enable CRTDBG memory leak reporting" OFF)
104
+ OPTION(MSVC_CRTDBG "Enable CRTDBG memory leak reporting" OFF)
98
105
  ENDIF()
99
106
 
100
107
  FILE(STRINGS "${libgit2_SOURCE_DIR}/include/git2/version.h" GIT2_HEADER REGEX "^#define LIBGIT2_VERSION \"[^\"]*\"$")
@@ -107,8 +114,16 @@ SET(LIBGIT2_VERSION_STRING "${LIBGIT2_VERSION_MAJOR}.${LIBGIT2_VERSION_MINOR}.${
107
114
  FILE(STRINGS "${libgit2_SOURCE_DIR}/include/git2/version.h" GIT2_HEADER_SOVERSION REGEX "^#define LIBGIT2_SOVERSION [0-9]+$")
108
115
  STRING(REGEX REPLACE "^.*LIBGIT2_SOVERSION ([0-9]+)$" "\\1" LIBGIT2_SOVERSION "${GIT2_HEADER_SOVERSION}")
109
116
 
117
+ IF (DEPRECATE_HARD)
118
+ ADD_DEFINITIONS(-DGIT_DEPRECATE_HARD)
119
+ ENDIF()
120
+
110
121
  # Platform specific compilation flags
111
122
  IF (MSVC)
123
+ IF (STDCALL)
124
+ MESSAGE(FATAL_ERROR "The STDCALL option is no longer supported; libgit2 is now always built as a cdecl library. If you're using PInvoke, please add the CallingConventions.Cdecl attribute for support.")
125
+ ENDIF()
126
+
112
127
  ADD_DEFINITIONS(-D_SCL_SECURE_NO_WARNINGS)
113
128
  ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)
114
129
  ADD_DEFINITIONS(-D_CRT_NONSTDC_NO_DEPRECATE)
@@ -119,10 +134,8 @@ IF (MSVC)
119
134
  # /MP - Parallel build
120
135
  SET(CMAKE_C_FLAGS "/GF /MP /nologo ${CMAKE_C_FLAGS}")
121
136
 
122
- IF (STDCALL)
123
- # /Gz - stdcall calling convention
124
- SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /Gz")
125
- ENDIF ()
137
+ # /Gd - explicitly set cdecl calling convention
138
+ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /Gd")
126
139
 
127
140
  IF (STATIC_CRT)
128
141
  SET(CRT_FLAG_DEBUG "/MTd")
@@ -161,6 +174,9 @@ IF (MSVC)
161
174
  # /O1 - Optimize for size
162
175
  SET(CMAKE_C_FLAGS_MINSIZEREL "/DNDEBUG /O1 /Oy /GL /Gy ${CRT_FLAG_RELEASE}")
163
176
 
177
+ # /IGNORE:4221 - Ignore empty compilation units
178
+ SET(CMAKE_STATIC_LINKER_FLAGS "/IGNORE:4221")
179
+
164
180
  # /DYNAMICBASE - Address space load randomization (ASLR)
165
181
  # /NXCOMPAT - Data execution prevention (DEP)
166
182
  # /LARGEADDRESSAWARE - >2GB user address space on x86
@@ -222,11 +238,23 @@ ELSE ()
222
238
  ENABLE_WARNINGS(strict-prototypes)
223
239
  ENABLE_WARNINGS(declaration-after-statement)
224
240
  ENABLE_WARNINGS(shift-count-overflow)
225
- DISABLE_WARNINGS(unused-const-variable)
226
- DISABLE_WARNINGS(unused-function)
241
+ ENABLE_WARNINGS(unused-const-variable)
242
+ ENABLE_WARNINGS(unused-function)
243
+ ENABLE_WARNINGS(int-conversion)
244
+
245
+ # MinGW uses gcc, which expects POSIX formatting for printf, but
246
+ # uses the Windows C library, which uses its own format specifiers.
247
+ # Disable format specifier warnings.
248
+ IF(MINGW)
249
+ DISABLE_WARNINGS(format)
250
+ DISABLE_WARNINGS(format-security)
251
+ ELSE()
252
+ ENABLE_WARNINGS(format)
253
+ ENABLE_WARNINGS(format-security)
254
+ ENDIF()
227
255
 
228
- IF (APPLE) # Apple deprecated OpenSSL
229
- DISABLE_WARNINGS(deprecated-declarations)
256
+ IF("${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
257
+ DISABLE_WARNINGS(documentation-deprecated-sync)
230
258
  ENDIF()
231
259
 
232
260
  IF (PROFILE)
@@ -235,6 +263,11 @@ ELSE ()
235
263
  ENDIF ()
236
264
  ENDIF()
237
265
 
266
+ # Ensure that MinGW provides the correct header files.
267
+ IF (WIN32 AND NOT CYGWIN)
268
+ ADD_DEFINITIONS(-DWIN32 -D_WIN32_WINNT=0x0600)
269
+ ENDIF()
270
+
238
271
  IF( NOT CMAKE_CONFIGURATION_TYPES )
239
272
  # Build Debug by default
240
273
  IF (NOT CMAKE_BUILD_TYPE)
@@ -245,6 +278,14 @@ ELSE()
245
278
  # that uses CMAKE_CONFIGURATION_TYPES and not CMAKE_BUILD_TYPE
246
279
  ENDIF()
247
280
 
281
+ IF(BUILD_FUZZERS AND NOT USE_STANDALONE_FUZZERS)
282
+ # The actual sanitizer link target will be added when linking the fuzz
283
+ # targets.
284
+ SET(CMAKE_REQUIRED_FLAGS "-fsanitize=fuzzer-no-link")
285
+ ADD_C_FLAG(-fsanitize=fuzzer-no-link)
286
+ UNSET(CMAKE_REQUIRED_FLAGS)
287
+ ENDIF ()
288
+
248
289
  ADD_SUBDIRECTORY(src)
249
290
 
250
291
  # Tests
@@ -282,10 +323,17 @@ IF (BUILD_EXAMPLES)
282
323
  ADD_SUBDIRECTORY(examples)
283
324
  ENDIF ()
284
325
 
285
- IF(CMAKE_VERSION VERSION_GREATER 3)
286
- FEATURE_SUMMARY(WHAT ENABLED_FEATURES DESCRIPTION "Enabled features:")
287
- FEATURE_SUMMARY(WHAT DISABLED_FEATURES DESCRIPTION "Disabled features:")
288
- ELSE()
289
- PRINT_ENABLED_FEATURES()
290
- PRINT_DISABLED_FEATURES()
326
+ IF(BUILD_FUZZERS)
327
+ IF(NOT USE_STANDALONE_FUZZERS)
328
+ IF(BUILD_EXAMPLES)
329
+ MESSAGE(FATAL_ERROR "Cannot build the fuzzer targets and the examples together")
330
+ ENDIF()
331
+ IF(BUILD_CLAR)
332
+ MESSAGE(FATAL_ERROR "Cannot build the fuzzer targets and the tests together")
333
+ ENDIF()
334
+ ENDIF()
335
+ ADD_SUBDIRECTORY(fuzzers)
291
336
  ENDIF()
337
+
338
+ FEATURE_SUMMARY(WHAT ENABLED_FEATURES DESCRIPTION "Enabled features:")
339
+ FEATURE_SUMMARY(WHAT DISABLED_FEATURES DESCRIPTION "Disabled features:")
@@ -991,3 +991,31 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
991
991
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
992
992
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
993
993
  SOFTWARE.
994
+
995
+ ----------------------------------------------------------------------
996
+
997
+ The bundled wildmatch code is licensed under the BSD license:
998
+
999
+ Copyright Rich Salz.
1000
+ All rights reserved.
1001
+
1002
+ Redistribution and use in any form are permitted provided that the
1003
+ following restrictions are are met:
1004
+
1005
+ 1. Source distributions must retain this entire copyright notice
1006
+ and comment.
1007
+ 2. Binary distributions must include the acknowledgement ``This
1008
+ product includes software developed by Rich Salz'' in the
1009
+ documentation or other materials provided with the
1010
+ distribution. This must not be represented as an endorsement
1011
+ or promotion without specific prior written permission.
1012
+ 3. The origin of this software must not be misrepresented, either
1013
+ by explicit claim or by omission. Credits must appear in the
1014
+ source and documentation.
1015
+ 4. Altered versions must be plainly marked as such in the source
1016
+ and documentation and must not be misrepresented as being the
1017
+ original software.
1018
+
1019
+ THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
1020
+ WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
1021
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
@@ -5,9 +5,23 @@
5
5
 
6
6
  INCLUDE(CheckCCompilerFlag)
7
7
 
8
+ MACRO(ADD_C_FLAG _FLAG)
9
+ STRING(TOUPPER ${_FLAG} UPCASE)
10
+ STRING(REGEX REPLACE "[-=]" "_" UPCASE_PRETTY ${UPCASE})
11
+ STRING(REGEX REPLACE "^_+" "" UPCASE_PRETTY ${UPCASE_PRETTY})
12
+ CHECK_C_COMPILER_FLAG(${_FLAG} IS_${UPCASE_PRETTY}_SUPPORTED)
13
+
14
+ IF(IS_${UPCASE_PRETTY}_SUPPORTED)
15
+ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_FLAG}")
16
+ ELSE()
17
+ MESSAGE(FATAL_ERROR "Required flag ${_FLAG} is not supported")
18
+ ENDIF()
19
+ ENDMACRO()
20
+
8
21
  MACRO(ADD_C_FLAG_IF_SUPPORTED _FLAG)
9
22
  STRING(TOUPPER ${_FLAG} UPCASE)
10
- STRING(REGEX REPLACE "^-" "" UPCASE_PRETTY ${UPCASE})
23
+ STRING(REGEX REPLACE "[-=]" "_" UPCASE_PRETTY ${UPCASE})
24
+ STRING(REGEX REPLACE "^_+" "" UPCASE_PRETTY ${UPCASE_PRETTY})
11
25
  CHECK_C_COMPILER_FLAG(${_FLAG} IS_${UPCASE_PRETTY}_SUPPORTED)
12
26
 
13
27
  IF(IS_${UPCASE_PRETTY}_SUPPORTED)
@@ -0,0 +1,29 @@
1
+ @CHECK_PROTOTYPE_DEFINITION_HEADER@
2
+
3
+ static void cmakeRequireSymbol(int dummy, ...) {
4
+ (void) dummy;
5
+ }
6
+
7
+ static void checkSymbol(void) {
8
+ #ifndef @CHECK_PROTOTYPE_DEFINITION_SYMBOL@
9
+ cmakeRequireSymbol(0, &@CHECK_PROTOTYPE_DEFINITION_SYMBOL@);
10
+ #endif
11
+ }
12
+
13
+ @CHECK_PROTOTYPE_DEFINITION_PROTO@ {
14
+ return @CHECK_PROTOTYPE_DEFINITION_RETURN@;
15
+ }
16
+
17
+ #ifdef __CLASSIC_C__
18
+ int main() {
19
+ int ac;
20
+ char*av[];
21
+ #else
22
+ int main(int ac, char *av[]) {
23
+ #endif
24
+ checkSymbol();
25
+ if (ac > 1000) {
26
+ return *av[0];
27
+ }
28
+ return 0;
29
+ }
@@ -0,0 +1,96 @@
1
+ # - Check if the protoype we expect is correct.
2
+ # check_prototype_definition(FUNCTION PROTOTYPE RETURN HEADER VARIABLE)
3
+ # FUNCTION - The name of the function (used to check if prototype exists)
4
+ # PROTOTYPE- The prototype to check.
5
+ # RETURN - The return value of the function.
6
+ # HEADER - The header files required.
7
+ # VARIABLE - The variable to store the result.
8
+ # Example:
9
+ # check_prototype_definition(getpwent_r
10
+ # "struct passwd *getpwent_r(struct passwd *src, char *buf, int buflen)"
11
+ # "NULL"
12
+ # "unistd.h;pwd.h"
13
+ # SOLARIS_GETPWENT_R)
14
+ # The following variables may be set before calling this macro to
15
+ # modify the way the check is run:
16
+ #
17
+ # CMAKE_REQUIRED_FLAGS = string of compile command line flags
18
+ # CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
19
+ # CMAKE_REQUIRED_INCLUDES = list of include directories
20
+ # CMAKE_REQUIRED_LIBRARIES = list of libraries to link
21
+
22
+ #=============================================================================
23
+ # Copyright 2005-2009 Kitware, Inc.
24
+ # Copyright 2010-2011 Andreas Schneider <asn@cryptomilk.org>
25
+ #
26
+ # Distributed under the OSI-approved BSD License (the "License");
27
+ # see accompanying file Copyright.txt for details.
28
+ #
29
+ # This software is distributed WITHOUT ANY WARRANTY; without even the
30
+ # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
31
+ # See the License for more information.
32
+ #=============================================================================
33
+ # (To distribute this file outside of CMake, substitute the full
34
+ # License text for the above reference.)
35
+ #
36
+
37
+ get_filename_component(__check_proto_def_dir "${CMAKE_CURRENT_LIST_FILE}" PATH)
38
+
39
+ function(CHECK_PROTOTYPE_DEFINITION _FUNCTION _PROTOTYPE _RETURN _HEADER _VARIABLE)
40
+
41
+ if ("${_VARIABLE}" MATCHES "^${_VARIABLE}$")
42
+ set(CHECK_PROTOTYPE_DEFINITION_CONTENT "/* */\n")
43
+
44
+ set(CHECK_PROTOTYPE_DEFINITION_FLAGS ${CMAKE_REQUIRED_FLAGS})
45
+ if (CMAKE_REQUIRED_LIBRARIES)
46
+ set(CHECK_PROTOTYPE_DEFINITION_LIBS
47
+ "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
48
+ else(CMAKE_REQUIRED_LIBRARIES)
49
+ set(CHECK_PROTOTYPE_DEFINITION_LIBS)
50
+ endif(CMAKE_REQUIRED_LIBRARIES)
51
+ if (CMAKE_REQUIRED_INCLUDES)
52
+ set(CMAKE_SYMBOL_EXISTS_INCLUDES
53
+ "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}")
54
+ else(CMAKE_REQUIRED_INCLUDES)
55
+ set(CMAKE_SYMBOL_EXISTS_INCLUDES)
56
+ endif(CMAKE_REQUIRED_INCLUDES)
57
+
58
+ foreach(_FILE ${_HEADER})
59
+ set(CHECK_PROTOTYPE_DEFINITION_HEADER
60
+ "${CHECK_PROTOTYPE_DEFINITION_HEADER}#include <${_FILE}>\n")
61
+ endforeach(_FILE)
62
+
63
+ set(CHECK_PROTOTYPE_DEFINITION_SYMBOL ${_FUNCTION})
64
+ set(CHECK_PROTOTYPE_DEFINITION_PROTO ${_PROTOTYPE})
65
+ set(CHECK_PROTOTYPE_DEFINITION_RETURN ${_RETURN})
66
+
67
+ configure_file("${__check_proto_def_dir}/CheckPrototypeDefinition.c.in"
68
+ "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckPrototypeDefinition.c" @ONLY)
69
+
70
+ file(READ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckPrototypeDefinition.c _SOURCE)
71
+
72
+ try_compile(${_VARIABLE}
73
+ ${CMAKE_BINARY_DIR}
74
+ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckPrototypeDefinition.c
75
+ COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}
76
+ CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${CHECK_PROTOTYPE_DEFINITION_FLAGS}
77
+ "${CHECK_PROTOTYPE_DEFINITION_LIBS}"
78
+ "${CMAKE_SYMBOL_EXISTS_INCLUDES}"
79
+ OUTPUT_VARIABLE OUTPUT)
80
+
81
+ if (${_VARIABLE})
82
+ set(${_VARIABLE} 1 CACHE INTERNAL "Have correct prototype for ${_FUNCTION}")
83
+ message(STATUS "Checking prototype ${_FUNCTION} for ${_VARIABLE} - True")
84
+ file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
85
+ "Determining if the prototype ${_FUNCTION} exists for ${_VARIABLE} passed with the following output:\n"
86
+ "${OUTPUT}\n\n")
87
+ else (${_VARIABLE})
88
+ message(STATUS "Checking prototype ${_FUNCTION} for ${_VARIABLE} - False")
89
+ set(${_VARIABLE} 0 CACHE INTERNAL "Have correct prototype for ${_FUNCTION}")
90
+ file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
91
+ "Determining if the prototype ${_FUNCTION} exists for ${_VARIABLE} failed with the following output:\n"
92
+ "${OUTPUT}\n\n${_SOURCE}\n\n")
93
+ endif (${_VARIABLE})
94
+ endif("${_VARIABLE}" MATCHES "^${_VARIABLE}$")
95
+
96
+ endfunction(CHECK_PROTOTYPE_DEFINITION)
@@ -1,14 +1,15 @@
1
1
  MACRO(ENABLE_WARNINGS flag)
2
- IF(ENABLE_WERROR)
3
- ADD_C_FLAG_IF_SUPPORTED(-Werror=${flag})
4
- ELSE()
5
- ADD_C_FLAG_IF_SUPPORTED(-W${flag})
6
- ENDIF()
2
+ ADD_C_FLAG_IF_SUPPORTED(-W${flag})
7
3
  ENDMACRO()
8
4
 
9
5
  MACRO(DISABLE_WARNINGS flag)
10
6
  ADD_C_FLAG_IF_SUPPORTED(-Wno-${flag})
11
- IF(ENABLE_WERROR)
12
- ADD_C_FLAG_IF_SUPPORTED(-Wno-error=${flag})
13
- ENDIF()
14
7
  ENDMACRO()
8
+
9
+ IF(ENABLE_WERROR)
10
+ IF(MSVC)
11
+ ADD_COMPILE_OPTIONS(-WX)
12
+ ELSE()
13
+ ADD_C_FLAG_IF_SUPPORTED(-Werror)
14
+ ENDIF()
15
+ ENDIF()
@@ -10,14 +10,14 @@ FIND_PATH(COREFOUNDATION_INCLUDE_DIR NAMES CoreFoundation.h)
10
10
  FIND_LIBRARY(COREFOUNDATION_LIBRARIES NAMES CoreFoundation)
11
11
  IF (COREFOUNDATION_INCLUDE_DIR AND COREFOUNDATION_LIBRARIES)
12
12
  IF (NOT CoreFoundation_FIND_QUIETLY)
13
- MESSAGE("-- Found CoreFoundation ${COREFOUNDATION_LIBRARIES}")
13
+ MESSAGE(STATUS "Found CoreFoundation ${COREFOUNDATION_LIBRARIES}")
14
14
  ENDIF()
15
15
  SET(COREFOUNDATION_FOUND TRUE)
16
16
  SET(COREFOUNDATION_LDFLAGS "-framework CoreFoundation")
17
17
  ENDIF ()
18
18
 
19
19
  IF (CoreFoundation_FIND_REQUIRED AND NOT COREFOUNDATION_FOUND)
20
- MESSAGE(FATAL "-- CoreFoundation not found")
20
+ MESSAGE(FATAL_ERROR "CoreFoundation not found")
21
21
  ENDIF()
22
22
 
23
23
  MARK_AS_ADVANCED(
@@ -6,7 +6,7 @@
6
6
  #
7
7
  # Read-Only variables:
8
8
  # GSSAPI_FLAVOR_MIT - set to TURE if MIT Kerberos has been found
9
- # GSSAPI_FLAVOR_HEIMDAL - set to TRUE if Heimdal Keberos has been found
9
+ # GSSAPI_FLAVOR_HEIMDAL - set to TRUE if Heimdal Kerberos has been found
10
10
  # GSSAPI_FOUND - system has GSSAPI
11
11
  # GSSAPI_INCLUDE_DIR - the GSSAPI include directory
12
12
  # GSSAPI_LIBRARIES - Link these to use GSSAPI
@@ -0,0 +1,28 @@
1
+ # Find GSS.framework
2
+ # This will define :
3
+ #
4
+ # GSSFRAMEWORK_FOUND
5
+ # GSSFRAMEWORK_INCLUDE_DIR
6
+ # GSSFRAMEWORK_LIBRARIES
7
+ # GSSFRAMEWORK_LDFLAGS
8
+ #
9
+
10
+ FIND_PATH(GSSFRAMEWORK_INCLUDE_DIR NAMES GSS.h)
11
+ FIND_LIBRARY(GSSFRAMEWORK_LIBRARIES NAMES GSS)
12
+ IF (GSSFRAMEWORK_INCLUDE_DIR AND GSSFRAMEWORK_LIBRARIES)
13
+ IF (NOT CoreFoundation_FIND_QUIETLY)
14
+ MESSAGE(STATUS "Found GSS.framework ${GSSFRAMEWORK_LIBRARIES}")
15
+ ENDIF()
16
+ SET(GSSFRAMEWORK_FOUND TRUE)
17
+ SET(GSSFRAMEWORK_LDFLAGS "-framework GSS")
18
+ ENDIF ()
19
+
20
+ IF (GSS_FIND_REQUIRED AND NOT GSSFRAMEWORK_FOUND)
21
+ MESSAGE(FATAL_ERROR "CoreFoundation not found")
22
+ ENDIF()
23
+
24
+ MARK_AS_ADVANCED(
25
+ GSSFRAMEWORK_INCLUDE_DIR
26
+ GSSFRAMEWORK_LIBRARIES
27
+ GSSFRAMEWORK_LDFLAGS
28
+ )
@@ -12,14 +12,19 @@ IF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
12
12
  ENDIF()
13
13
 
14
14
  FIND_PATH(ICONV_INCLUDE_DIR iconv.h)
15
+ CHECK_FUNCTION_EXISTS(iconv_open libc_has_iconv)
15
16
  FIND_LIBRARY(iconv_lib NAMES iconv libiconv libiconv-2 c)
16
17
 
17
- IF(ICONV_INCLUDE_DIR AND iconv_lib)
18
- SET(ICONV_FOUND TRUE)
19
- ENDIF()
20
-
21
- IF(ICONV_FOUND)
22
- # split iconv into -L and -l linker options, so we can set them for pkg-config
18
+ IF(ICONV_INCLUDE_DIR AND libc_has_iconv)
19
+ SET(ICONV_FOUND TRUE)
20
+ SET(ICONV_LIBRARIES "")
21
+ IF(NOT ICONV_FIND_QUIETLY)
22
+ MESSAGE(STATUS "Found Iconv: provided by libc")
23
+ ENDIF(NOT ICONV_FIND_QUIETLY)
24
+ ELSEIF(ICONV_INCLUDE_DIR AND iconv_lib)
25
+ SET(ICONV_FOUND TRUE)
26
+ # split iconv into -L and -l linker options, so we can
27
+ # set them for pkg-config
23
28
  GET_FILENAME_COMPONENT(iconv_path ${iconv_lib} PATH)
24
29
  GET_FILENAME_COMPONENT(iconv_name ${iconv_lib} NAME_WE)
25
30
  STRING(REGEX REPLACE "^lib" "" iconv_name ${iconv_name})
@@ -0,0 +1,38 @@
1
+ # Copyright (C) 2007-2009 LuaDist.
2
+ # Created by Peter Kapec <kapecp@gmail.com>
3
+ # Redistribution and use of this file is allowed according to the terms of the MIT license.
4
+ # For details see the COPYRIGHT file distributed with LuaDist.
5
+ # Note:
6
+ # Searching headers and libraries is very simple and is NOT as powerful as scripts
7
+ # distributed with CMake, because LuaDist defines directories to search for.
8
+ # Everyone is encouraged to contact the author with improvements. Maybe this file
9
+ # becomes part of CMake distribution sometimes.
10
+
11
+ # - Find pcre
12
+ # Find the native PCRE headers and libraries.
13
+ #
14
+ # PCRE_INCLUDE_DIRS - where to find pcre.h, etc.
15
+ # PCRE_LIBRARIES - List of libraries when using pcre.
16
+ # PCRE_FOUND - True if pcre found.
17
+
18
+ # Look for the header file.
19
+ FIND_PATH(PCRE_INCLUDE_DIR NAMES pcreposix.h)
20
+
21
+ # Look for the library.
22
+ FIND_LIBRARY(PCRE_LIBRARY NAMES pcre)
23
+ FIND_LIBRARY(PCRE_POSIX_LIBRARY NAMES pcreposix)
24
+
25
+ # Handle the QUIETLY and REQUIRED arguments and set PCRE_FOUND to TRUE if all listed variables are TRUE.
26
+ INCLUDE(FindPackageHandleStandardArgs)
27
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_LIBRARY PCRE_POSIX_LIBRARY PCRE_INCLUDE_DIR)
28
+
29
+ # Copy the results to the output variables.
30
+ IF(PCRE_FOUND)
31
+ SET(PCRE_LIBRARIES ${PCRE_LIBRARY} ${PCRE_POSIX_LIBRARY})
32
+ SET(PCRE_INCLUDE_DIRS ${PCRE_INCLUDE_DIR})
33
+ ELSE(PCRE_FOUND)
34
+ SET(PCRE_LIBRARIES)
35
+ SET(PCRE_INCLUDE_DIRS)
36
+ ENDIF(PCRE_FOUND)
37
+
38
+ MARK_AS_ADVANCED(PCRE_INCLUDE_DIRS PCRE_LIBRARIES)
@@ -0,0 +1,37 @@
1
+ # Copyright (C) 2007-2009 LuaDist.
2
+ # Created by Peter Kapec <kapecp@gmail.com>
3
+ # Redistribution and use of this file is allowed according to the terms of the MIT license.
4
+ # For details see the COPYRIGHT file distributed with LuaDist.
5
+ # Note:
6
+ # Searching headers and libraries is very simple and is NOT as powerful as scripts
7
+ # distributed with CMake, because LuaDist defines directories to search for.
8
+ # Everyone is encouraged to contact the author with improvements. Maybe this file
9
+ # becomes part of CMake distribution sometimes.
10
+
11
+ # - Find pcre
12
+ # Find the native PCRE2 headers and libraries.
13
+ #
14
+ # PCRE2_INCLUDE_DIRS - where to find pcre.h, etc.
15
+ # PCRE2_LIBRARIES - List of libraries when using pcre.
16
+ # PCRE2_FOUND - True if pcre found.
17
+
18
+ # Look for the header file.
19
+ FIND_PATH(PCRE2_INCLUDE_DIR NAMES pcre2posix.h)
20
+
21
+ # Look for the library.
22
+ FIND_LIBRARY(PCRE2_LIBRARY NAMES pcre2-8)
23
+
24
+ # Handle the QUIETLY and REQUIRED arguments and set PCRE2_FOUND to TRUE if all listed variables are TRUE.
25
+ INCLUDE(FindPackageHandleStandardArgs)
26
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE2 DEFAULT_MSG PCRE2_LIBRARY PCRE2_INCLUDE_DIR)
27
+
28
+ # Copy the results to the output variables.
29
+ IF(PCRE2_FOUND)
30
+ SET(PCRE2_LIBRARIES ${PCRE2_LIBRARY})
31
+ SET(PCRE2_INCLUDE_DIRS ${PCRE2_INCLUDE_DIR})
32
+ ELSE(PCRE2_FOUND)
33
+ SET(PCRE2_LIBRARIES)
34
+ SET(PCRE2_INCLUDE_DIRS)
35
+ ENDIF(PCRE2_FOUND)
36
+
37
+ MARK_AS_ADVANCED(PCRE2_INCLUDE_DIRS PCRE2_LIBRARIES)
@@ -11,7 +11,7 @@ FIND_PATH(SECURITY_INCLUDE_DIR NAMES Security/Security.h)
11
11
  FIND_LIBRARY(SECURITY_LIBRARIES NAMES Security)
12
12
  IF (SECURITY_INCLUDE_DIR AND SECURITY_LIBRARIES)
13
13
  IF (NOT Security_FIND_QUIETLY)
14
- MESSAGE("-- Found Security ${SECURITY_LIBRARIES}")
14
+ MESSAGE(STATUS "Found Security ${SECURITY_LIBRARIES}")
15
15
  ENDIF()
16
16
  SET(SECURITY_FOUND TRUE)
17
17
  SET(SECURITY_LDFLAGS "-framework Security")
@@ -19,7 +19,7 @@ IF (SECURITY_INCLUDE_DIR AND SECURITY_LIBRARIES)
19
19
  ENDIF ()
20
20
 
21
21
  IF (Security_FIND_REQUIRED AND NOT SECURITY_FOUND)
22
- MESSAGE(FATAL "-- Security not found")
22
+ MESSAGE(FATAL_ERROR "Security not found")
23
23
  ENDIF()
24
24
 
25
25
  MARK_AS_ADVANCED(