Commit Graph

2666 Commits

Author SHA1 Message Date
merge-script
943479a7a3 Merge bitcoin-core/secp256k1#1694: Revert "cmake: configure libsecp256k1.pc during install"
44b205e9ee Revert "cmake: configure libsecp256k1.pc during install" (Daniel Pfeifer)

Pull request description:

  This reverts commit 7106dce6fd.

  This causes a regression for packaging, as the generated `.pc` file will contain the location that was used to build the package archive.

ACKs for top commit:
  real-or-random:
    ACK 44b205e9ee

Tree-SHA512: f4331c23534260bc21e69ccff65abad766e6a51aaba350c40674e32b3200768ca3c6742671e425aa8fcb681deb430cd6b3e20f34b9e8f8ab909371cf5e8976c5
2025-07-15 08:10:52 +02:00
Sebastian Falbesoner
3352f9d667 ci: enable musig module for native macOS arm64 job 2025-07-10 17:46:51 +02:00
Jonas Nick
ad60ef7ea7 Merge bitcoin-core/secp256k1#1689: ci: Convert arm64 Cirrus tasks to GHA jobs
004f57fcd8 ci: Move Valgrind build for `arm64` from Cirrus to GHA (Hennadii Stepanov)
5fafdfc30f ci: Move `gcc-snapshot` build for `arm64` from Cirrus to GHA (Hennadii Stepanov)
e814b79a8b ci: Switch `arm64_debian` from QEMU to native `arm64` Docker image (Hennadii Stepanov)
bcf77346b9 ci: Add `arm64` architecture to `docker_cache` job (Hennadii Stepanov)
b77aae9226 ci: Rename Docker image tag to reflect architecture (Hennadii Stepanov)

Pull request description:

ACKs for top commit:
  real-or-random:
    ACK 004f57fcd8
  jonasnick:
    ACK 004f57fcd8

Tree-SHA512: 5c502ac4ef0f8ca3a02354a07f53dd7818edab233fc55c1a579c48fd03bf879cca725027f435af4fbd92dd732cd2bdbf2935c77e2995eccb34cb54e1d64be61b
2025-07-08 07:37:55 +00:00
merge-script
c498779096 Merge bitcoin-core/secp256k1#1687: cmake: support the use of launchers in ctest -S scripts
0dfe387dbe cmake: support the use of launchers in ctest -S scripts (Daniel Pfeifer)

Pull request description:

  When `CTEST_USE_LAUNCHERS` is set to `ON` in a `ctest -S` script, the configure step fails with the error message:

  ```
  CMake Error:
    CTEST_USE_LAUNCHERS is enabled, but the RULE_LAUNCH_COMPILE global property
    is not defined.

    Did you forget to include(CTest) in the toplevel CMakeLists.txt ?
  ```

  However, `include(CTest)` produces unwanted clutter. `include(CTestUseLaunchers)` is a more lightweight alternative.

  To reproduce the issue, run the following script with and without the PR applied.

  ```cmake
  #!/usr/bin/env -S ctest -VV -S

  set(CTEST_SOURCE_DIRECTORY "/path/to/secp256k1")
  set(CTEST_BINARY_DIRECTORY "/path/to/secp256k1-build")

  set(CTEST_CMAKE_GENERATOR "Ninja")
  set(CTEST_USE_LAUNCHERS ON)

  ctest_empty_binary_directory(${CTEST_BINARY_DIRECTORY})
  ctest_start("Experimental")
  ctest_configure()
  ctest_build()
  ```

ACKs for top commit:
  hebasto:
    ACK 0dfe387dbe.

Tree-SHA512: 643d0fabd19ddfd5a64a0b34cfcca8ea2cff64438ee3441ba9a1745618daf99c468ec201ea6992c542d4e33152f4833691c42c8a90301fe3dfc3f0f49f755e55
2025-07-01 09:00:26 +02:00
Daniel Pfeifer
44b205e9ee Revert "cmake: configure libsecp256k1.pc during install"
This reverts commit 7106dce6fd.

This causes a regression for packaging, as the generated
`.pc` file will contain the location that was used to build
the package archive.
2025-06-30 16:49:14 +02:00
Daniel Pfeifer
0dfe387dbe cmake: support the use of launchers in ctest -S scripts 2025-06-30 12:41:16 +02:00
merge-script
89096c234d Merge bitcoin-core/secp256k1#1692: cmake: configure libsecp256k1.pc during install
7106dce6fd cmake: configure libsecp256k1.pc during install (Daniel Pfeifer)

Pull request description:

  When installing to a given prefix, make sure that the .pc file contains that prefix rather than the value of `CMAKE_INSTALL_PREFIX` that the project was configured with.

ACKs for top commit:
  real-or-random:
    ACK 7106dce6fd I verified that it fixes the path in libsecp256k1.pc

Tree-SHA512: 34841513d2dc52234718eab56ecb9224aa1e13ad2d13cd103624b355e0627c37441363ad24293e07da7a748191e6ed2b67649b489bf874bab35346146b78c16f
2025-06-30 08:13:32 +02:00
Daniel Pfeifer
7106dce6fd cmake: configure libsecp256k1.pc during install
When installing to a given prefix, make sure that the .pc file contains
that prefix rather than the value of CMAKE_INSTALL_PREFIX that the
project was configured with.
2025-06-27 18:59:51 +02:00
merge-script
29e73f4ba5 Merge bitcoin-core/secp256k1#1685: cmake: Emulate Libtool's behavior on FreeBSD
37dd422b5c cmake: Emulate Libtool's behavior on FreeBSD (Hennadii Stepanov)

Pull request description:

  Building the master branch @ f24b838bed on FreeBSD 14.3:
  - with Autotools:
  ```
  $ ./autogen.sh
  $ ./configure --disable-static --prefix /tmp/AUTOTOOLS
  $ gmake
  $ gmake install
  $ tree /tmp/AUTOTOOLS/lib
  /tmp/AUTOTOOLS/lib
  ├── libsecp256k1.la
  ├── libsecp256k1.so -> libsecp256k1.so.5.0.1
  ├── libsecp256k1.so.5 -> libsecp256k1.so.5.0.1
  ├── libsecp256k1.so.5.0.1
  └── pkgconfig
      └── libsecp256k1.pc

  2 directories, 5 files
  ```
  - with CMake:
  ```
  $ cmake -B build -DCMAKE_INSTALL_PREFIX=/tmp/CMAKE
  $ cmake --build build
  $ cmake --install build
  $ tree /tmp/CMAKE/lib
  /tmp/CMAKE/lib
  ├── cmake
  │   └── libsecp256k1
  │       ├── libsecp256k1-config-version.cmake
  │       ├── libsecp256k1-config.cmake
  │       ├── libsecp256k1-targets-relwithdebinfo.cmake
  │       └── libsecp256k1-targets.cmake
  ├── libsecp256k1.so -> libsecp256k1.so.5
  ├── libsecp256k1.so.5
  └── pkgconfig
      └── libsecp256k1.pc

  4 directories, 7 files
  ```

  With this PR:
  ```
  $ cmake -B build -DCMAKE_INSTALL_PREFIX=/tmp/CMAKE+PR
  $ cmake --build build
  $ cmake --install build
  $ tree /tmp/CMAKE+PR/lib
  /tmp/CMAKE+PR/lib
  ├── cmake
  │   └── libsecp256k1
  │       ├── libsecp256k1-config-version.cmake
  │       ├── libsecp256k1-config.cmake
  │       ├── libsecp256k1-targets-relwithdebinfo.cmake
  │       └── libsecp256k1-targets.cmake
  ├── libsecp256k1.so -> libsecp256k1.so.5
  ├── libsecp256k1.so.5 -> libsecp256k1.so.5.0.1
  ├── libsecp256k1.so.5.0.1
  └── pkgconfig
      └── libsecp256k1.pc

  4 directories, 8 files
  ```

  From [FreeBSD Developers' Handbook](https://docs.freebsd.org/en/books/developers-handbook/policies/#policies-shlib):
  > If you are adding shared library support to a port or other piece of software that does not have one, the version numbers should follow these rules. Generally, the resulting numbers will have nothing to do with the release version of the software.
  >
  > For ports:
  >
  >    - Prefer using the number already selected by upstream
  >
  >    - If upstream provides symbol versioning, ensure that we use their script

ACKs for top commit:
  real-or-random:
    utACK 37dd422b5c

Tree-SHA512: b603d7e293ae1fb15c2b3c05957dcc3cbe94294083ad1d8cb00b06b0e295597fa09719d32c18d628670952b6d00467f5bc884be9ab791baf59ec265e26032470
2025-06-24 11:45:28 +02:00
merge-script
746e36b141 Merge bitcoin-core/secp256k1#1678: cmake: add a helper for linking into static libs
145ae3e28d cmake: add a helper for linking into static libs (Cory Fields)

Pull request description:

  As discussed here: https://github.com/bitcoin-core/secp256k1/pull/1674#issuecomment-2934819801

  Parent projects (Bitcoin Core in this case) may wish to include secp256k1 in another static library (libbitcoinkernel) so that users are not forced to bring their own static libsecp256k1.

  Unfortunately, CMake lacks the machinery to link (combine) one static lib into another.

  To work around this, secp256k1_objs is exposed as an interface library which parent projects can "link" into static libs.

ACKs for top commit:
  hebasto:
    ACK 145ae3e28d, tested on Ubuntu 24.04 using cmake 3.22.6 and the default cmake 3.28.3.
  stickies-v:
    Light ACK 145ae3e28d

Tree-SHA512: bfe72e3f337eadce8bdbe613e4ce2f2cd92046f811c447311e5670af9d52dbf5b9dc91866f69251f52a7632ad66d6df102fb6f4c1de2688bb7611b7b42e969a3
2025-06-24 11:40:26 +02:00
merge-script
a28c2ffa5c Merge bitcoin-core/secp256k1#1683: README: add link to musig example
819210974b README: add link to musig example, generalize module enabling hint (Sebastian Falbesoner)

Pull request description:

ACKs for top commit:
  real-or-random:
    ACK 819210974b

Tree-SHA512: 9bfc7e59f0b6c6bacc591abe9835d1e6129e4daf286b91b35fad83ddf7d870a534d83ce2c27165ed8612f05695a5f15a3ef7bebbcbe63a5fe843d4c0617ebc9f
2025-06-24 11:38:17 +02:00
merge-script
2a9d374735 Merge bitcoin-core/secp256k1#1690: ci: Bump GCC snapshot major version to 16
add146e101 ci: Bump GCC snapshot major version to 16 (Hennadii Stepanov)

Pull request description:

ACKs for top commit:
  maflcko:
    lgtm ACK add146e101
  real-or-random:
    ACK add146e101

Tree-SHA512: 5569155f85982a4eed0d804963799962a1c0d20c5dde2432ce67b8ddca5a1f2dfebf796a5e8fc0603a06c8f159bd33f1ec620043db6f444134b9500b30513b27
2025-06-20 08:41:39 +02:00
Hennadii Stepanov
add146e101 ci: Bump GCC snapshot major version to 16 2025-06-19 21:12:05 +01:00
Hennadii Stepanov
004f57fcd8 ci: Move Valgrind build for arm64 from Cirrus to GHA 2025-06-19 20:09:36 +01:00
Hennadii Stepanov
5fafdfc30f ci: Move gcc-snapshot build for arm64 from Cirrus to GHA 2025-06-19 20:09:01 +01:00
Hennadii Stepanov
e814b79a8b ci: Switch arm64_debian from QEMU to native arm64 Docker image 2025-06-19 20:08:32 +01:00
Hennadii Stepanov
bcf77346b9 ci: Add arm64 architecture to docker_cache job 2025-06-19 19:09:18 +01:00
Hennadii Stepanov
b77aae9226 ci: Rename Docker image tag to reflect architecture 2025-06-19 18:57:48 +01:00
Cory Fields
145ae3e28d cmake: add a helper for linking into static libs
Parent projects (Bitcoin Core in this case) may wish to include secp256k1
in another static library (libbitcoinkernel) so that users are not forced
to bring their own static libsecp256k1.

Unfortunately, CMake lacks the machinery to link (combine) one static lib
into another.

To work around this, secp256k1_objs is exposed as an interface library which
parent projects can "link" into static libs..
2025-06-16 16:59:52 +00:00
Sebastian Falbesoner
819210974b README: add link to musig example, generalize module enabling hint
Co-authored-by: Jonas Nick <jonasd.nick@gmail.com>
2025-06-16 16:53:47 +02:00
merge-script
95db29b144 Merge bitcoin-core/secp256k1#1679: cmake: Use PUBLIC_HEADER target property in installation logic
6f67151ee2 cmake: Use `PUBLIC_HEADER` target property (Hennadii Stepanov)
c32715b2a0 cmake, move-only: Move module option processing to `src/CMakeLists.txt` (Hennadii Stepanov)

Pull request description:

  This PR updates the installation logic to the idiomatic approach.

ACKs for top commit:
  theuni:
    utACK 6f67151ee2

Tree-SHA512: b305c6ef15e8334a570823af4482dc097c09a1eec6472098bd2767bc2ad99c3c9e4b1b650087768160e682792ae8da15086bf5397b1d0f5fde4208b489781698
2025-06-16 08:24:40 +02:00
Hennadii Stepanov
37dd422b5c cmake: Emulate Libtool's behavior on FreeBSD 2025-06-11 01:01:34 +01:00
merge-script
f24b838bed Merge bitcoin-core/secp256k1#1680: doc: Promote "Building with CMake" to standard procedure
3f31ac43e0 doc: Promote "Building with CMake" to standard procedure (Hennadii Stepanov)

Pull request description:

  The CMake-based build system has demonstrated its maturity through its use in Bitcoin Core 29.0.

ACKs for top commit:
  real-or-random:
    utACK 3f31ac43e0

Tree-SHA512: be83494b60f4fd3ff08f4199d9cda4663b89efff32f3ec3bb856843707eeb6592ffdc6c84fdc18242cad422795901fb21e13cb15edd23a5d9cf2784324f8f7e0
2025-06-05 22:31:16 +02:00
Hennadii Stepanov
3f31ac43e0 doc: Promote "Building with CMake" to standard procedure
The CMake-based build system has demonstrated its maturity through its
use in Bitcoin Core 29.0.
2025-06-04 19:13:49 +01:00
Hennadii Stepanov
6f67151ee2 cmake: Use PUBLIC_HEADER target property
This change simplifies the installation logic.
2025-06-04 14:46:10 +01:00
Hennadii Stepanov
c32715b2a0 cmake, move-only: Move module option processing to src/CMakeLists.txt
This change simplifies the following commit.
2025-06-04 13:13:33 +01:00
merge-script
201b2b8f06 Merge bitcoin-core/secp256k1#1675: cmake: Bump minimum required CMake version to 3.22
3af71987a8 cmake: Bump minimum required CMake version to 3.22 (Hennadii Stepanov)

Pull request description:

  Ubuntu 20.04 LTS has [reached](https://wiki.ubuntu.com/Releases) the End of Standard Support. There no longer appear to be compelling reasons to maintain compatibility with CMake 3.16.
  The new suggested minimum, CMake 3.22, is shipped with Ubuntu 22.04 LTS, which is supported until April 2027.

  This PR also introduces new CMake policies, from CMP0098 to CMP0128. Some of these may warrant the reviewers' attention:
  - [CMP0099: Link properties are transitive over private dependencies of static libraries.](https://cmake.org/cmake/help/latest/policy/CMP0099.html)
  - [CMP0117: MSVC RTTI flag /GR is not added to CMAKE_CXX_FLAGS by default.](https://cmake.org/cmake/help/latest/policy/CMP0117.html)
  - [CMP0126: set(CACHE) does not remove a normal variable of the same name.](https://cmake.org/cmake/help/latest/policy/CMP0126.html)
  - [CMP0128: Selection of language standard and extension flags improved.](https://cmake.org/cmake/help/latest/policy/CMP0128.html)

ACKs for top commit:
  real-or-random:
    utACK 3af71987a8

Tree-SHA512: f0c70dd5beafe830513895f076cafa6902dfcaab79d40bf9e7b27f14d9c4818f91d75f6aa993ba843f1d28ccd13cf466ad11dca46ca022cab1b43aace17d3ff7
2025-06-04 12:29:59 +02:00
Hennadii Stepanov
3af71987a8 cmake: Bump minimum required CMake version to 3.22
Ubuntu 20.04 LTS has reached the end of standard support. There no
longer appear to be compelling reasons to maintain compatibility with
CMake 3.16.
The new suggested minimum, CMake 3.22, is shipped with Ubuntu 22.04 LTS,
which is supported until April 2027.

This change also introduces new CMake policies, from CMP0098 to CMP0128.
2025-05-30 11:59:31 +01:00
Jonas Nick
92394476e9 Merge bitcoin-core/secp256k1#1673: Assert field magnitude at control-flow join
3a4f448cb4 Assert field magnitude at control-flow join (Peter.Dettman)

Pull request description:

ACKs for top commit:
  sipa:
    ACK 3a4f448cb4
  jonasnick:
    ACK 3a4f448cb4

Tree-SHA512: b78b500458597104a1d76985b0b619886f6dc2a4b136ca7ee37823796c8920041459b5674985bb4e1cc93ee7be5a702f6a84f8e5ddd25b97da6babacf0f34c0e
2025-05-24 05:51:11 +00:00
Peter.Dettman
3a4f448cb4 Assert field magnitude at control-flow join 2025-05-20 17:48:22 +07:00
Jonas Nick
9fab425256 Merge bitcoin-core/secp256k1#1668: bench_ecmult: add benchmark for ecmult_const_xonly
05445377f4 bench_ecmult: add benchmark for ecmult_const_xonly (Sebastian Falbesoner)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK 05445377f4

Tree-SHA512: cb676bc561f742782795015a4e32c6c505817ae6a48fbe5accf4c0fb7690077a7f9f2836431b11be83983b3fffd494437e10ddea6e81226dbd2e05177647ea33
2025-05-14 20:00:54 +00:00
Sebastian Falbesoner
05445377f4 bench_ecmult: add benchmark for ecmult_const_xonly 2025-05-14 17:45:19 +02:00
Jonas Nick
bb597b3d39 Merge bitcoin-core/secp256k1#1670: tests: update wycheproof files
d73ed99479 tests: update wycheproof files (RandomLattice)

Pull request description:

ACKs for top commit:
  sipa:
    utACK d73ed99479
  jonasnick:
    ACK d73ed99479

Tree-SHA512: b772549d26ab8cf28416772a8fa4e53272bea7fabf4e33e85b943bbc9a568257b559db23045a29c209b017b1f758c6772aeefa79df85bc744df4c4fadacaeb5e
2025-05-14 06:52:01 +00:00
RandomLattice
d73ed99479 tests: update wycheproof files
Wycheproof ownership was recently moved to C2SP
(https://github.com/C2SP/wycheproof). This PR updates all references to the new
URL and bumps to the latest version of the vector files.

This commit does not change the content of processed .h testvector files. To test:
```
make clean-testvectors testvectors
```

See: https://github.com/bitcoin-core/secp256k1/pull/1492#discussion_r1572443456

Co-authored-by: Sean Andersen <6730974+andozw@users.noreply.github.com>
2025-05-13 19:46:47 +09:00
Jonas Nick
4187a46649 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11ae tests: Add Wycheproof ECDH vectors (RandomLattice)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK e266ba11ae

Tree-SHA512: a5cc59886595b134dadcc50e6cd6f03ce036c2857cdd848f138f0c49d4bd742ae5eb5ebca7840ec8666b5d43fa9c4f67cde4d0fb2245b1cf56b079ca3f7c7f8e
2025-05-12 19:50:56 +00:00
RandomLattice
e266ba11ae tests: Add Wycheproof ECDH vectors
Adds a test for the ECDH module using the Wycheproof vectors.
We use a python script to convert the JSON-formatted vectors
into C code, in the same spirit as https://github.com/bitcoin-core/secp256k1/pull/1245

Co-authored-by: Sean Andersen <6730974+andozw@users.noreply.github.com>
2025-05-12 11:27:45 -04:00
merge-script
13906b7154 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb03276 gitignore: Add Python cache files (Tim Ruffing)

Pull request description:

ACKs for top commit:
  theStack:
    ACK c1bcb03276

Tree-SHA512: 60db92e01145787e742f4852770b60eb006593d14d7f862a0b248c21f5bc458cb099e3907833aed18f02465c7ec3c1aee208a24c456837fde2bd9c2556998f74
2025-05-08 00:02:36 +02:00
Tim Ruffing
c1bcb03276 gitignore: Add Python cache files 2025-04-22 12:13:44 +02:00
Jonas Nick
70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb6 bench: add ellswift to bench help output (Jonas Nick)

Pull request description:

ACKs for top commit:
  sipa:
    utACK 6b3fe51fb6
  real-or-random:
    utACK 6b3fe51fb6

Tree-SHA512: 825cc3637cef5807bcfdacd5e9197bffd95e7932a9a34834bd5d01a572c05aa66dc39f75a013753825980b92fa7189da7210a8dbe3c5c7009e793a2e344bc248
2025-03-13 18:40:28 +00:00
Jonas Nick
6b3fe51fb6 bench: add ellswift to bench help output 2025-03-13 14:51:17 +00:00
Jonas Nick
d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
20b05c9d3f configure: Show exhaustive tests in summary (Tim Ruffing)

Pull request description:

ACKs for top commit:
  hebasto:
    ACK 20b05c9d3f, it aligns now with the CMake script: e56716a3bc/CMakeLists.txt (L348-L350)
  sipa:
    utACK 20b05c9d3f
  jonasnick:
    ACK 20b05c9d3f

Tree-SHA512: 30744ea5e5b7441ad252868c83cebfec2b02b75786b9ea55d4b0b0a696f1c7df39c48c243b29b13839a9f3a7757c192da8be0dd95412678a7583b123db6e99ac
2025-03-13 13:07:06 +00:00
merge-script
3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1 (Jonas Nick)

Pull request description:

  This makes the usage of the atribute consistent. In the musig and ellswift module, functions that return 1 always already don't have the WARN_UNUSED_RESULT attribute. In secp256k1.h and the extrakeys module, this has only been the case partially.

  In all cases where this was removed, the function only returns 0 if the illegal callback has been called.

  Fixes #1379

ACKs for top commit:
  real-or-random:
    utACK 1b6e081538
  sipa:
    utACK 1b6e081538

Tree-SHA512: 5d1f2563ddde34fb721dd0b96622e0888a9c72f95af6f1c8a94f7f1f72ca934b6af98a3357c1e922d8611a9869264bb0f3ceb7bed0164c6c3a6f92f9950d4f19
2025-03-13 13:45:41 +01:00
Tim Ruffing
20b05c9d3f configure: Show exhaustive tests in summary
Fixes #1658.
2025-03-13 12:57:27 +01:00
merge-script
e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58f ci: Fix exiting from ci.sh on error (Tim Ruffing)

Pull request description:

  Fixes the following bash error when make fails:
      ./ci/ci.sh: line 100: return: can only `return' from a function or
      sourced script

ACKs for top commit:
  hebasto:
    ACK d87c3bc58f

Tree-SHA512: 5ecd0f550f7659cc41b403fdb7d5d3d37d1a167d585cca02b0aca209c8b9592bb3067cf11aeb80775666e7232f31bf05cf1bb97fec8c67f3bc5fe2243ddbbcfa
2025-03-13 12:54:56 +01:00
Tim Ruffing
d87c3bc58f ci: Fix exiting from ci.sh on error
Fixes the following bash error when make fails:
    ./ci/ci.sh: line 100: return: can only `return' from a function or
    sourced script
2025-03-13 12:08:20 +01:00
Jonas Nick
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
This makes the usage of the atribute consistent. In the musig and ellswift
module, functions that return 1 always already don't have the WARN_UNUSED_RESULT
attribute. In secp256k1.h and the extrakeys module, this has only been the case
partially.

In all cases where this was removed, the function only returns 0 if the illegal
callback has been called.
2025-03-13 09:36:03 +00:00
Jonas Nick
2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa918 tests: remove unused uncounting_illegal_callback_fn (Jonas Nick)

Pull request description:

ACKs for top commit:
  real-or-random:
    utACK 51907fa918

Tree-SHA512: 6959671e31938be833eb17ee762aa6d0e7b6789c951058cd32e46bfd95ad96a65625a0b976541b4e6c7d648fdad8af66b8e5503b38fed6387216d281a1513eed
2025-03-13 09:07:16 +00:00
Jonas Nick
51907fa918 tests: remove unused uncounting_illegal_callback_fn
This callback function has been unused since
a1d52e3e12
2025-03-13 08:01:08 +00:00
merge-script
a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option (Hennadii Stepanov)
8ed1d83d92 ci: Run `tools/symbol-check.py` (Hennadii Stepanov)
41d32ab2de test: Add `tools/symbol-check.py` (Hennadii Stepanov)
88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro (Hennadii Stepanov)

Pull request description:

  Closes https://github.com/bitcoin-core/secp256k1/issues/1181.

  [Catches](https://github.com/bitcoin-core/secp256k1/pull/1359#issuecomment-2417892235) the actual symbol visibility issue.

  Replaces https://github.com/bitcoin-core/secp256k1/pull/1135.

ACKs for top commit:
  real-or-random:
    reACK d1478763a5

Tree-SHA512: 4d39f3c4cd32afa2b4418ca79331c72827c76a49a5422afa7c85e60d00a750b91b1b1ab10d91ba578f5817dd938016751168758461fb89de8da56f7d005ae2da
2025-03-13 08:29:42 +01:00
Jonas Nick
13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases from API
37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases (Sebastian Falbesoner)

Pull request description:

ACKs for top commit:
  real-or-random:
    utACK 37d2c60bec
  sipa:
    utACK 37d2c60bec
  jonasnick:
    ACK 37d2c60bec

Tree-SHA512: 5d3c836c3c4d5cde143fe5b5235f9fc108174439b056f3418834f33d12ea28bdf09d11a81917d679b4b9a93da26304241c8fe389549e72796bbda116e9ff4945
2025-03-12 20:01:59 +00:00