SwiftPM only allows major.minor.patch version syntax, but we
need to avoid collisions.
E.g. OpenSSL 3.2.5 and script version 34 (0-99)
normalized_patch = (patch + 1) * 100 + script
-> 3.2.634
The +1 is necessary because e.g. 3.2.0 with script 34 would
translate to 3.2.34, which collides with OpenSSL versioning.
In this scheme, the repo tag will be of the form:
- .1xx (for 3.2.0)
- .2xx (for 3.2.1)
- ...
which is reversible to infer the OpenSSL patch.
E.g. 3.2.434
- Patch is 434
- OpenSSL patch is 434 / 100 - 1 = 3
- Script version is 434 % 100 = 34 (precondition is 0-99)
So 3.2.434 is OpenSSL 3.2.3 with script version 34
* OpenSSL 1.1.1x is EOL, this should make it work for 3.x.x versions.
See https://www.openssl.org/blog/blog/2023/03/28/1.1.1-EOL/
* Removed asm inheritance from config
* Make 3.x the standard parsing logic
* Drop all references to Bitcode
* Use newer -platform_version
* Default to 3.2.0
---------
Co-authored-by: Davide De Rosa <keeshux@gmail.com>
Some targets enforce iOS 13.0 as minimum SDK, whereas current
script was overriding IOS_MIN_SDK_VERSION at a global scope.
Override min SDK 13.0 in those targets specifically.
See 1cf972d36fFixes#30