Comments (3)
It is also possible to get inspired by libcurl they use define macros for major , minor and patch versions as well as hexadecimal (24-bit , 6 digit) version identifier that can be used to compare older to newer version. I used exactly this when interacting with libcurl to check if building against a curl library version that is lower than a certain desired version.
for example , adapting from https://github.com/curl/curl/blob/master/include/curl/curlver.h . you could just go for hexadecimal 24-bit since its always comparable between recent and older versions and will never fall in the problem above for example :
#define CRYPTOPP_VERSION_HEX 0x0810AF
#define CRYPTOPP_VERSION_MAJOR 8
#define CRYPTOPP_VERSION_MINOR 10
#define CRYPTOPP_VERSION_PATCH 175
with a fictional 175 version patch number used only for demonstration purposes
from cryptopp.
I think we need to use two digits for each component:
#define CRYPTOPP_VERSION 081000
from cryptopp.
Not sure about inspiration, but this is versioning in Windows: https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-makedllverull
from cryptopp.
Related Issues (20)
- CRYPTOPP_DISABLE_ASM is broken in 8.9.0 for MSVC x64 builds HOT 20
- Unable to link using MSYS2 Clang64 toolchain HOT 8
- An invalid parameter was passed to a function that considers invalid parameters fatal. Only when building in debug mode. HOT 3
- Linker command
- Loss of data after inflation using gunzip HOT 3
- page www.cryptopp.com/wiki | Obsolete links
- Crypto++ vulnerable to the Marvin Attack HOT 1
- EC2N::DecodePoint can crash if exponents are not in descending order HOT 2
- A security issue in the `ModularSquareRoot` function leads to a DOS attack
- Compile warnings in VS 2022 17.8.0 - stdext::make_checked_array_iterator stdext::make_unchecked_array_iterator beeing deprecated HOT 1
- Memory leak problem!! HOT 2
- Crypto++ needs to support a fixed target HOT 2
- Poly1305 null pointer passed as argument 1 HOT 1
- Django cipher texts not matching Crypto++ cipher texts.
- destructor delete problem with own dialog program with MFC (Unicode/Use MFC in a Shared DLL) VS2015
- Memory leak in signature verification HOT 2
- repo too large, git clone often failed due to rpm connection timeout
- Compilation fails using MSYS2 CLANGARM64 toolchain
- Leak the Secret Key of Elgamal Encryption in Cryptopp via Rowhammer HOT 1
- ld.lld: error: duplicate symbol: CryptoPP::CallNewHandler()
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cryptopp.