aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorJán Jančár2024-03-28 15:45:21 +0100
committerGitHub2024-03-28 15:45:21 +0100
commitfb8ce97e06363637ccf0846c012e5e3c6bfa6f44 (patch)
treec7582af73c6951de54725e1f8b8e32744dde3682 /.github/workflows
parent6945707a9b34acb275506bd89010b3d3e92c16c8 (diff)
parent8e388999ceec941a8f26d3ee6ee7ece91c10ee0e (diff)
downloadECTester-fb8ce97e06363637ccf0846c012e5e3c6bfa6f44.tar.gz
ECTester-fb8ce97e06363637ccf0846c012e5e3c6bfa6f44.tar.zst
ECTester-fb8ce97e06363637ccf0846c012e5e3c6bfa6f44.zip
Merge pull request #22 from crocs-muni/fix/libressl-build
Try to fix LibreSSL build.
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/build.yml34
1 files changed, 24 insertions, 10 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 9948751..fe294ee 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -91,12 +91,15 @@ jobs:
java: [ "11", "17", "21" ]
env:
# ffs: https://github.com/adoptium/adoptium-support/issues/485 !!!
- LD_LIBRARY_PATH: "/usr/lib/x86_64-linux-gnu/"
+ # also, add the wolfcrypt JNI path
+ LD_LIBRARY_PATH: "/usr/lib/x86_64-linux-gnu/:${{github.workspace}}/ext/wolfcrypt-jni/lib/"
name: Build standalone on Java ${{ matrix.java }}
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
+ fetch-tags: true
+ fetch-depth: -1
- name: Set up JDK
uses: actions/setup-java@v4
@@ -110,22 +113,24 @@ jobs:
- name: Setup libraries
run: |
sudo apt update
- sudo apt install libmbedtls-dev libtomcrypt-dev libtommath-dev libssl-dev libcrypto++-dev libgcrypt20-dev nettle-dev libbotan-2-dev libwolfssl-dev nasm
- echo "BORINGSSL_VERSION=$(git submodule status ext/boringssl | cut -f2 -d' ')" >> $GITHUB_ENV
- echo "LIBRESSL_VERSION=$(git submodule status ext/libressl | cut -f2 -d' ')" >> $GITHUB_ENV
- echo "IPPCP_VERSION=$(git submodule status ext/ipp-crypto | cut -f2 -d' ')" >> $GITHUB_ENV
- echo "WOLFCRYPT_VERSION=$(git submodule status ext/wolfcrypt-jni | cut -f2 -d' ')" >> $GITHUB_ENV
+ sudo apt install libtomcrypt-dev libtommath-dev libssl-dev libcrypto++-dev libgcrypt20-dev nettle-dev libbotan-2-dev libwolfssl-dev nasm
+ echo "BORINGSSL_VERSION=$(git submodule status ext/boringssl | cut -f2 -d' ' | cut -c1-10)" >> $GITHUB_ENV
+ echo "LIBRESSL_VERSION=$(git submodule status ext/libressl | cut -f2 -d' ' | cut -c1-10)" >> $GITHUB_ENV
+ echo "IPPCP_VERSION=$(git submodule status ext/ipp-crypto | cut -f2 -d' ' | cut -c1-10)" >> $GITHUB_ENV
+ echo "MBEDTLS_VERSION=$(git submodule status ext/mbedtls | cut -f2 -d' ' | cut -c1-10)" >> $GITHUB_ENV
+ echo "WOLFCRYPT_VERSION=$(git submodule status ext/wolfcrypt-jni | cut -f2 -d' ' | cut -c1-10)" >> $GITHUB_ENV
echo "WOLFSSL_VERSION=$(dpkg -s libwolfssl-dev | grep 'Version' | cut -f2 -d' ')" >> $GITHUB_ENV
- name: Cache libs
uses: actions/cache@v4
id: cache-libs
with:
- key: libs-${{ env.BORINGSSL_VERSION }}-${{ env.LIBRESSL_VERSION }}-${{ env.IPPCP_VERSION }}-${{ env.WOLFCRYPT_VERSION }}-${{ env.WOLFSSL_VERSION }}-${{ matrix.java }}
+ key: libs-${{ env.BORINGSSL_VERSION }}-${{ env.LIBRESSL_VERSION }}-${{ env.LIBRESSL_VERSION }}-${{ env.IPPCP_VERSION }}-${{ env.WOLFCRYPT_VERSION }}-${{ env.WOLFSSL_VERSION }}-${{ hashFiles('.github/workflows/build.yml') }}-${{ matrix.java }}
path: |
- ext/boringssl/build/crypto/libcrypto.so
- ext/libressl/build/crypto/libcrypto.so
- ext/ipp-crypto/build/.build/RELEASE/lib/libippcp.so
+ ext/boringssl/build/
+ ext/libressl/build/
+ ext/ipp-crypto/build/
+ ext/mbedtls/build/
ext/wolfcrypt-jni/lib/wolfcrypt-jni.jar
ext/wolfcrypt-jni/lib/libwolfcryptjni.so
@@ -158,6 +163,15 @@ jobs:
wget -P junit/ https://repo1.maven.org/maven2/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar
make -j4 -f makefile.linux
env JUNIT_HOME=junit/ ant build-jce-release
+ cd ../..
+ # ------------ Build mbedTLS ------------
+ cd ext/mbedtls
+ python -m venv virt
+ . virt/bin/activate
+ pip install -r scripts/basic.requirements.txt
+ cmake -DUSE_SHARED_MBEDTLS_LIBRARY=On -Bbuild -G "Unix Makefiles"
+ cd build
+ make -j4
cd ../../..
- name: Build standalone