You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
set(SECP256K1_ECMULT_WINDOW_SIZE "AUTO"CACHESTRING"Window size for ecmult precomputation for verification, specified as integer in range [2..24]. \"AUTO\"is a reasonable setting for desktop machines (currently 15). [default=AUTO]")
set(SECP256K1_ECMULT_WINDOW_SIZE 15CACHESTRING"Window size for ecmult precomputation for verification, specified as integer in range [2..24]. The default value is a reasonable setting for desktop machines (currently 15). [default=15]")
set(SECP256K1_ECMULT_GEN_KB "AUTO"CACHESTRING"The size of the precomputed table for signing in multiples of 1024 bytes (on typical platforms). Larger values result in possibly better signing or key generation performance at the cost of a larger table. Valid choices are 2, 22, 86. \"AUTO\"is a reasonable setting for desktop machines (currently 22). [default=AUTO]")
set(SECP256K1_ECMULT_GEN_KB 86CACHESTRING"The size of the precomputed table for signing in multiples of 1024 bytes (on typical platforms). Larger values result in possibly better signing or key generation performance at the cost of a larger table. Valid choices are 2, 22, 86. The default value is a reasonable setting for desktop machines (currently 86). [default=86]")
# We do not use CTest's BUILD_TESTING because a single toggle for all tests is too coarse for our needs.
345
329
mark_as_advanced(BUILD_TESTING)
346
330
if(SECP256K1_BUILD_BENCHMARK OR SECP256K1_BUILD_TESTS OR SECP256K1_BUILD_EXHAUSTIVE_TESTS OR SECP256K1_BUILD_CTIME_TESTS OR SECP256K1_BUILD_EXAMPLES)
347
331
enable_testing()
348
332
endif()
349
333
350
-
set(SECP256K1_LATE_CFLAGS ""CACHESTRING"Compiler flags that are added to the command line after all other flags added by the build system.")
351
-
include(AllTargetsCompileOptions)
334
+
set(SECP256K1_APPEND_CFLAGS ""CACHESTRING"Compiler flags that are appended to the command line after all other flags added by the build system. This variable is intended for debugging and special builds.")
335
+
if(SECP256K1_APPEND_CFLAGS)
336
+
# Appending to this low-level rule variable is the only way to
337
+
# guarantee that the flags appear at the end of the command line.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,6 +49,7 @@ In addition, libsecp256k1 tries to maintain the following coding conventions:
49
49
* Operations involving secret data should be tested for being constant time with respect to the secrets (see [src/ctime_tests.c](src/ctime_tests.c)).
50
50
* Local variables containing secret data should be cleared explicitly to try to delete secrets from memory.
51
51
* Use `secp256k1_memcmp_var` instead of `memcmp` (see [#823](https://github.com/bitcoin-core/secp256k1/issues/823)).
52
+
* As a rule of thumb, the default values for configuration options should target standard desktop machines and align with Bitcoin Core's defaults, and the tests should mostly exercise the default configuration (see [#1549](https://github.com/bitcoin-core/secp256k1/issues/1549#issuecomment-2200559257)).
To compile optional modules (such as Schnorr signatures), you need to run `cmake` with additional flags (such as `-DSECP256K1_ENABLE_MODULE_SCHNORRSIG=ON`). Run `cmake .. -LH` to see the full list of available flags.
46
46
@@ -73,6 +73,7 @@ Usage examples can be found in the [examples](examples) directory. To compile th
73
73
*[ECDSA example](examples/ecdsa.c)
74
74
*[Schnorr signatures example](examples/schnorr.c)
75
75
*[Deriving a shared secret (ECDH) example](examples/ecdh.c)
To compile the Schnorr signature, ECDH and MuSig examples, you need to enable the corresponding module by providing a flag to the `configure` script, for example `--enable-module-schnorrsig`.
0 commit comments