65 Commits

Author SHA1 Message Date
izzy2lost
7df1b5d494 Update Build.yml 2025-07-31 01:32:45 -04:00
izzy2lost
38475ce925 Update build_ssl.sh 2025-07-31 01:31:31 -04:00
izzy2lost
d54dc419b4 Update build_ssl.sh 2025-07-31 01:26:59 -04:00
izzy2lost
808c94c761 Update Build.yml 2025-07-31 01:17:01 -04:00
izzy2lost
48a1cb488b Update Build.yml 2025-07-31 00:58:39 -04:00
izzy2lost
4f9cb6f8aa Make workflow to build .so's 2025-07-31 00:56:28 -04:00
izzy2lost
c47c3170eb Ndk 26 sdk 24 2025-07-31 00:51:24 -04:00
Alessandro Ambrosano
0025bbe48f Automatically link to OpenSSL when calling add_android_openssl_libraries() (#67)
Automatically link to OpenSSL::SSL OpenSSL::Crypto under add_android_openssl_libraries().

Also, start using add_library() to add OpenSSL libraries to the project. If the OpenSSL targets are not defined, add them with add_library() and set OPENSSL_LIB_DIR and OPENSSL_INCLUDE_DIR and store the paths to the shared libraries in the cache so that add_android_openssl_libraries() can re-use them later if OpenSSL targets are already defined.
2025-07-02 17:23:40 +03:00
Assam Boudjelthia
6b9ba2b962 Update library artefacts after script changes 2025-02-17 15:07:49 +02:00
Assam Boudjelthia
970e2742b0 Add test to check the libs are working properly
It's a simple check at runtime to see if ssl is supported using the included libs.
2025-02-17 15:07:49 +02:00
Assam Boudjelthia
7ccc0bcede Get rid of patchelf requirement
OpenSSL has the configuration option shlib_variant, so we can use that instead.

This works for version 1.x and 3.x, so it would make the build script more similar between the two versions.

Also, this avoid issues that can come from patchelf, as this patch comes after a bug found in patchelf 0.18 that created wrongly aligned libraries. See https://github.com/NixOS/patchelf/issues/492.
2025-02-17 15:07:49 +02:00
Assam Boudjelthia
278fcd2602 Simplifications and cleanup to the build script
* The script now supports zsh and bash to allow building from macOS and
  Linux with builtin zsh and bash version 3 or 4.
* It now uses curl instead of wget, wget is not builtin on macOS.
* Use the default NDk path from the Android SDK.
* Allow to set custom build and output folders.
* The various build folders for each version are now kept around under
  the 'build' folder.
* At the same time add the build folder to .gitignore.
* Create relative symlinks #61.
2025-02-17 15:07:49 +02:00
Dominik Berner
57056d6dd9 Add symlinks to no-asm dir and to include dir in each ABI (#57)
* Add symlinks to no-asm libraries
* Create symlinks to include dir
* Added symlinks to include dir
2024-03-24 15:06:21 +02:00
Dominik Berner
8cd5e081af Build script creates symlinks as well 2023-11-28 11:05:43 +02:00
Dominik Berner
5c0e9a5228 Add symbolic links so cmake can find the shared libraries 2023-11-28 11:05:43 +02:00
Dominik Berner
5dece53f62 Set OPENSSL_ROOT_DIR for cmake if not set
This will allow people to use find_package(OpenSSL) in their root CMakeLists.txt
after including the cmake files
2023-11-28 11:05:43 +02:00
Assam Boudjelthia
7f5f34d160 Bring back CMakeLists.txt for compability (#54)
This file is being used by other parties (users, IDEs), so
keep it around for compatibility.
2023-06-30 14:59:56 +03:00
Adam
8df104940f Add a CMake function to include the OpenSSL libs for specific targets (#48)
Changes include:
* Rename CMakeLists.txt to android_openssl.cmake
* Move the CMake code into a function android_add_openssl_to_targets(), so that the caller can decide what targets get the OpenSSL libs
* update README
2023-06-20 19:56:20 +03:00
BogDan Vatra
74e464a98b Recompile libs 2023-06-19 21:38:19 +03:00
Assam Boudjelthia
4c2f6daad9 Add some notes about the build script to README.md 2023-06-19 21:38:19 +03:00
Assam Boudjelthia
3df6b5f37c Fix patchelf operations for OpenSSL 3.x
The previous refactoring commit 841f289 changed that command by
prepending relative path to the libs files, and that seem to break
what we try to achieve with patchelf. This reverts that part.
2023-06-19 21:38:19 +03:00
Assam Boudjelthia
5b9a936349 Fix build script case when building an OpenSSL 3.0.x version
If building for an OpenSSL version that doesn't start with 3.1.x, like
3.0.7, the script fails to set ANDROID_API value and the build fails.
This makes the script more inclusive for other OpenSSL 3.x.x versions.
2023-06-19 21:38:19 +03:00
BogDan Vatra
de37220440 Bump ssl versions
* version 1.1.1t to 1.1.1u with NDK 21.4.7075529
* version 3.1.0 to 3.1.1 with NDK 25.2.9519653

Fixed: #47
2023-06-15 15:09:49 +03:00
Assam Boudjelthia
841f28981d Refactor the build script
* Refactor the build script to be more readable by using funcitons
* Forward configure and build output to log files
* Add more progress messages and print only stderr to the
  console while building
* Build Openssl 1.1 for API 21 and OpenSSL 3.1 for 23
* Tested the script on macOS (needs bash version 4+)
2023-06-11 09:09:38 +03:00
Daniel Nicoletti
82c850cbc6 Fix CMake usage instructions
fixes #44
closes #45
2023-05-09 12:29:57 +03:00