You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

228 lines
7.4 KiB

  1. {
  2. "variables": {
  3. "v8_enable_pointer_compression": "false",
  4. "v8_enable_31bit_smis_on_64bit_arch": "false"
  5. },
  6. "targets": [
  7. {
  8. "target_name": "fedoragold-crypto",
  9. "defines": [
  10. "NDEBUG",
  11. "NO_CRYPTO_EXPORTS",
  12. "FORCE_USE_HEAP",
  13. "NO_AES"
  14. ],
  15. "include_dirs": [
  16. "include",
  17. "<!(node -e \"require('nan')\")",
  18. "external/argon2/include",
  19. "external/argon2/lib",
  20. "external/ed25519"
  21. ],
  22. "sources": [
  23. "src/aesb.c",
  24. "src/blake256.c",
  25. "src/chacha8.cpp",
  26. "src/crypto.cpp",
  27. "src/groestl.c",
  28. "src/hash.c",
  29. "src/hash-extra-blake.c",
  30. "src/hash-extra-groestl.c",
  31. "src/hash-extra-jh.c",
  32. "src/hash-extra-skein.c",
  33. "src/jh.c",
  34. "src/keccak.c",
  35. "src/multisig.cpp",
  36. "src/oaes_lib.c",
  37. "src/random.cpp",
  38. "src/skein.c",
  39. "src/slow-hash-arm.c",
  40. "src/slow-hash-x86.c",
  41. "src/slow-hash-portable.c",
  42. "src/StringTools.cpp",
  43. "src/tree-hash.c",
  44. "external/argon2/lib/argon2.c",
  45. "external/argon2/arch/generic/lib/argon2-arch.c",
  46. "external/argon2/lib/core.c",
  47. "external/argon2/lib/encoding.c",
  48. "external/argon2/lib/genkat.c",
  49. "external/argon2/lib/impl-select.c",
  50. "external/argon2/lib/thread.c",
  51. "external/argon2/lib/blake2/blake2.c",
  52. "external/ed25519/equal.c",
  53. "external/ed25519/fe_0.c",
  54. "external/ed25519/fe_1.c",
  55. "external/ed25519/fe_add.c",
  56. "external/ed25519/fe_cmov.c",
  57. "external/ed25519/fe_copy.c",
  58. "external/ed25519/fe_divpowm1.c",
  59. "external/ed25519/fe_frombytes.c",
  60. "external/ed25519/fe_invert.c",
  61. "external/ed25519/fe_isnegative.c",
  62. "external/ed25519/fe_isnonzero.c",
  63. "external/ed25519/fe_mul.c",
  64. "external/ed25519/fe_neg.c",
  65. "external/ed25519/fe_sq.c",
  66. "external/ed25519/fe_sq2.c",
  67. "external/ed25519/fe_sub.c",
  68. "external/ed25519/fe_tobytes.c",
  69. "external/ed25519/ge_add.c",
  70. "external/ed25519/ge_cached_0.c",
  71. "external/ed25519/ge_cached_cmov.c",
  72. "external/ed25519/ge_check_subgroup_precomp_vartime.c",
  73. "external/ed25519/ge_double_scalarmult_base_vartime.c",
  74. "external/ed25519/ge_double_scalarmult_precomp_vartime.c",
  75. "external/ed25519/ge_dsm_precomp.c",
  76. "external/ed25519/ge_frombytes_vartime.c",
  77. "external/ed25519/ge_fromfe_frombytes_vartime.c",
  78. "external/ed25519/ge_madd.c",
  79. "external/ed25519/ge_msub.c",
  80. "external/ed25519/ge_mul8.c",
  81. "external/ed25519/ge_p1p1_to_p2.c",
  82. "external/ed25519/ge_p1p1_to_p3.c",
  83. "external/ed25519/ge_p2_0.c",
  84. "external/ed25519/ge_p2_dbl.c",
  85. "external/ed25519/ge_p3_0.c",
  86. "external/ed25519/ge_p3_dbl.c",
  87. "external/ed25519/ge_p3_to_cached.c",
  88. "external/ed25519/ge_p3_to_p2.c",
  89. "external/ed25519/ge_p3_tobytes.c",
  90. "external/ed25519/ge_precomp_0.c",
  91. "external/ed25519/ge_precomp_cmov.c",
  92. "external/ed25519/ge_scalarmult.c",
  93. "external/ed25519/ge_scalarmult_base.c",
  94. "external/ed25519/ge_sub.c",
  95. "external/ed25519/ge_tobytes.c",
  96. "external/ed25519/load_3.c",
  97. "external/ed25519/load_4.c",
  98. "external/ed25519/negative.c",
  99. "external/ed25519/sc_0.c",
  100. "external/ed25519/sc_add.c",
  101. "external/ed25519/sc_check.c",
  102. "external/ed25519/sc_isnonzero.c",
  103. "external/ed25519/sc_mul.c",
  104. "external/ed25519/sc_muladd.c",
  105. "external/ed25519/sc_mulsub.c",
  106. "external/ed25519/sc_reduce.c",
  107. "external/ed25519/sc_reduce32.c",
  108. "external/ed25519/sc_sub.c",
  109. "external/ed25519/signum.c",
  110. "external/ed25519/slide.c",
  111. "src/fedoragold-crypto.cpp",
  112. "src/fedoragold-crypto-node.cpp"
  113. ],
  114. "cflags!": [
  115. "-std=c11",
  116. "-Wall",
  117. "-Wextra",
  118. "-Wpointer-arith",
  119. "-Wvla",
  120. "-Wwrite-strings",
  121. "-Wno-error=extra",
  122. "-Wno-error=unused-function",
  123. "-Wno-error=sign-compare",
  124. "-Wno-error=strict-aliasing",
  125. "-Wno-error=type-limits",
  126. "-Wno-error=unused-parameter",
  127. "-Wno-error=unused-variable",
  128. "-Wno-error=undef",
  129. "-Wno-error=uninitialized",
  130. "-Wno-error=unused-result",
  131. "-Wlogical-op",
  132. "-Wno-error=maybe-uninitialized",
  133. "-Wno-error=clobbered",
  134. "-Wno-error=unused-but-set-variable",
  135. "-Waggregate-return",
  136. "-Wnested-externs",
  137. "-Wold-style-definition",
  138. "-Wstrict-prototypes",
  139. "-fno-exceptions"
  140. ],
  141. "cflags_cc!": [
  142. "-fno-exceptions"
  143. ],
  144. "cflags_cc": [
  145. "-Wall",
  146. "-Wextra",
  147. "-Wpointer-arith",
  148. "-Wvla",
  149. "-Wwrite-strings",
  150. "-Wno-error=extra",
  151. "-Wno-error=unused-function",
  152. "-Wno-error=sign-compare",
  153. "-Wno-error=strict-aliasing",
  154. "-Wno-error=type-limits",
  155. "-Wno-unused-parameter",
  156. "-Wno-error=unused-variable",
  157. "-Wno-error=undef",
  158. "-Wno-error=uninitialized",
  159. "-Wno-error=unused-result",
  160. "-Wlogical-op",
  161. "-Wno-error=maybe-uninitialized",
  162. "-Wno-error=clobbered",
  163. "-Wno-error=unused-but-set-variable",
  164. "-Wno-reorder",
  165. "-Wno-missing-field-initializers",
  166. "-fexceptions"
  167. ],
  168. "conditions": [
  169. [
  170. 'OS=="mac"',
  171. {
  172. 'xcode_settings': {
  173. 'OTHER_CPLUSPLUSFLAGS': [
  174. '-stdlib=libc++',
  175. '-fexceptions',
  176. ],
  177. 'CLANG_CXX_LIBRARY': 'libc++',
  178. 'CLANG_CXX_LANGUAGE_STANDARD':'c++17',
  179. 'MACOSX_DEPLOYMENT_TARGET': '10.7'
  180. }
  181. }
  182. ],
  183. [
  184. "OS=='win'",
  185. {
  186. "include_dirs": [
  187. "src/platform/msc"
  188. ],
  189. "configurations": {
  190. "Release": {
  191. "msvs_settings": {
  192. "VCCLCompilerTool": {
  193. "RuntimeLibrary": 0,
  194. "Optimization": 3,
  195. "FavorSizeOrSpeed": 1,
  196. "InlineFunctionExpansion": 2,
  197. "WholeProgramOptimization": "true",
  198. "OmitFramePointers": "true",
  199. "EnableFunctionLevelLinking": "true",
  200. "EnableIntrinsicFunctions": "true",
  201. "RuntimeTypeInfo": "false",
  202. "ExceptionHandling": "0",
  203. "AdditionalOptions": [
  204. "/EHsc -D_WIN32_WINNT=0x0501 /bigobj /MP /W3 /D_CRT_SECURE_NO_WARNINGS /wd4996 /wd4345 /D_WIN32_WINNT=0x0600 /DWIN32_LEAN_AND_MEAN /DGTEST_HAS_TR1_TUPLE=0 /D_VARIADIC_MAX=8 /D__SSE4_1__"
  205. ]
  206. },
  207. "VCLibrarianTool": {
  208. "AdditionalOptions": [
  209. "/LTCG"
  210. ]
  211. },
  212. "VCLinkerTool": {
  213. "LinkTimeCodeGeneration": 1,
  214. "OptimizeReferences": 2,
  215. "EnableCOMDATFolding": 2,
  216. "LinkIncremental": 1,
  217. "AdditionalLibraryDirectories": []
  218. }
  219. }
  220. }
  221. }
  222. }
  223. ]
  224. ]
  225. }
  226. ]
  227. }