UltrafastSecp256k1
3.68.0
Ultra high-performance secp256k1 elliptic curve cryptography library
Loading...
Searching...
No Matches
ufsecp_version.h
Go to the documentation of this file.
1
/* ============================================================================
2
* UltrafastSecp256k1 -- Version & ABI Compatibility
3
* ============================================================================
4
* NOTE: When building with CMake the real header is generated from
5
* ufsecp_version.h.in and placed in the build tree (takes priority).
6
* This source-tree copy contains dev placeholders for non-CMake use.
7
* ============================================================================
8
* RULES:
9
* UFSECP_VERSION_MAJOR bump -> ABI breaking (struct layout, removed funcs)
10
* UFSECP_VERSION_MINOR bump -> ABI compatible (new funcs only)
11
* UFSECP_VERSION_PATCH bump -> ABI compatible (bugfixes only)
12
* UFSECP_ABI_VERSION bump -> only on ABI-incompatible changes
13
*
14
* Clients should check: ufsecp_abi_version() == expected_abi
15
* ============================================================================ */
16
17
#ifndef UFSECP_VERSION_H
18
#define UFSECP_VERSION_H
19
20
#ifdef __cplusplus
21
extern
"C"
{
22
#endif
23
24
/* -- Compile-time version.
25
* NOTE: when building with CMake the generated copy in ${CMAKE_BINARY_DIR}/include
26
* SHOULD override this, but because ufsecp.h includes "ufsecp_version.h" with a
27
* relative path, the compiler finds this co-located copy first. Both files must
28
* stay in sync. Keep this file updated to match ufsecp_version.h.in. */
29
30
#define UFSECP_VERSION_MAJOR 3
31
#define UFSECP_VERSION_MINOR 68
32
#define UFSECP_VERSION_PATCH 0
33
35
#define UFSECP_VERSION_PACKED \
36
((UFSECP_VERSION_MAJOR << 16) | (UFSECP_VERSION_MINOR << 8) | UFSECP_VERSION_PATCH)
37
38
#define UFSECP_VERSION_STRING "3.68.0"
39
40
/* -- ABI version (incremented ONLY on binary-incompatible changes) ---------- */
41
42
#define UFSECP_ABI_VERSION 1
43
44
/* -- Runtime queries -------------------------------------------------------- */
45
46
#ifndef UFSECP_API
47
#if defined(_WIN32) || defined(__CYGWIN__)
48
#ifdef UFSECP_BUILDING
49
#define UFSECP_API __declspec(dllexport)
50
#elif defined(UFSECP_STATIC_LIB)
51
#define UFSECP_API
52
#else
53
#define UFSECP_API __declspec(dllimport)
54
#endif
55
#elif __GNUC__ >= 4
56
#define UFSECP_API __attribute__((visibility("default")))
57
#else
58
#define UFSECP_API
59
#endif
60
#endif
61
63
UFSECP_API
unsigned
int
ufsecp_version
(
void
);
64
66
UFSECP_API
unsigned
int
ufsecp_abi_version
(
void
);
67
69
UFSECP_API
const
char
*
ufsecp_version_string
(
void
);
70
71
#ifdef __cplusplus
72
}
73
#endif
74
75
#endif
/* UFSECP_VERSION_H */
ufsecp_version
UFSECP_API unsigned int ufsecp_version(void)
ufsecp_version_string
UFSECP_API const char * ufsecp_version_string(void)
UFSECP_API
#define UFSECP_API
Definition
ufsecp_version.h:58
ufsecp_abi_version
UFSECP_API unsigned int ufsecp_abi_version(void)
include
ufsecp
ufsecp_version.h
Generated by
1.9.8