Cherry picks the first commit from #1359.
TODO: Add change log entry for
14    - Document `doc/musig.md` for further notes on API usage.
15    - Usage example `examples/musig.c`.
16+ - New CMake variable `SECP256K1_APPEND_LDFLAGS` for appending linker flags to the build command.
17+
18+#### Changed
19+ - Any type `secp256k1_foo` can now be forward-declared using `typedef struct secp256k1_foo secp256k1_foo;` (or also `struct secp256k1_foo` in C++)
nit:
0 - Any type `secp256k1_foo` can now be forward-declared using `typedef struct secp256k1_foo secp256k1_foo;` (or also `struct secp256k1_foo` in C++).
15    - Usage example `examples/musig.c`.
16+ - New CMake variable `SECP256K1_APPEND_LDFLAGS` for appending linker flags to the build command.
17+
18+#### Changed
19+ - API functions now use a significantly more robust method to clear secrets from the stack before returning. However, secret clearing remains a best-effort security measure and cannot guarantee complete removal.
20+ - Any type `secp256k1_foo` can now be forward-declared using `typedef struct secp256k1_foo secp256k1_foo;` (or also `struct secp256k1_foo` in C++).
0 - Any type `secp256k1_foo` can now be forward-declared using `typedef struct secp256k1_foo secp256k1_foo;` (or also `struct secp256k1_foo;` in C++).
sorry -.-
39d5dfd542a12bb1ad236c78e9fcc1f044998385
I have reviewed build systems changes and they look OK.
        
        
          
            
              
              jonasnick
            
          
            
              
              real-or-random
            
          
            
              
              hebasto
            
          
            
              
              sipa
            
          
        
          Labels
          
          
  
    
release