Increase emulator capability to (de)serialize data #2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Ubuntu 22.04 Compile | |
on: [push,workflow_dispatch,workflow_call] | |
jobs: | |
build: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v3 | |
with: | |
submodules: 'recursive' | |
- name: Install libraries | |
run: | | |
sudo apt update | |
sudo apt install -y build-essential git make cmake clang libgflags-dev zlib1g-dev libssl-dev libreadline-dev libmicrohttpd-dev pkg-config libgsl-dev python3 python3-dev ninja-build libsecp256k1-dev libsodium-dev | |
- name: Show CPU flags | |
run: | | |
cat /proc/cpuinfo | |
- name: Configure & Build | |
run: | | |
export CC=$(which clang) | |
export CXX=$(which clang++) | |
export CCACHE_DISABLE=1 | |
git clone https://github.com/openssl/openssl openssl_3 | |
cd openssl_3 | |
git checkout openssl-3.1.4 | |
./config | |
make build_libs -j4 | |
cd .. | |
rootPath=`pwd` | |
mkdir build | |
cd build | |
cmake -GNinja -DOPENSSL_FOUND=1 -DOPENSSL_INCLUDE_DIR=$rootPath/openssl_3/include -DOPENSSL_CRYPTO_LIBRARY=$rootPath/openssl_3/libcrypto.a -DCMAKE_BUILD_TYPE=Release -DPORTABLE=1 -DTON_ARCH= .. | |
ninja storage-daemon storage-daemon-cli fift func tonlib tonlibjson tonlib-cli validator-engine lite-client \ | |
pow-miner validator-engine-console generate-random-id json2tlo dht-server http-proxy rldp-http-proxy \ | |
adnl-proxy create-state emulator \ | |
test-ed25519 test-ed25519-crypto test-bigint test-vm test-fift test-cells test-smartcont test-net test-tdactor \ | |
test-tdutils test-tonlib-offline test-adnl test-dht test-rldp test-rldp2 test-catchain test-fec test-tddb test-db test-validator-session-state | |
- name: Strip binaries | |
run: | | |
strip -g build/storage/storage-daemon/storage-daemon build/storage/storage-daemon/storage-daemon-cli build/crypto/fift build/crypto/tlbc build/crypto/func build/crypto/create-state build/validator-engine-console/validator-engine-console build/tonlib/tonlib-cli build/tonlib/libtonlibjson.so.0.5 build/http/http-proxy build/rldp-http-proxy/rldp-http-proxy build/dht-server/dht-server build/lite-client/lite-client build/validator-engine/validator-engine build/utils/generate-random-id build/utils/json2tlo build/adnl/adnl-proxy build/emulator/libemulator.* | |
- name: Run tests | |
run: | | |
cd build | |
ctest --output-on-failure -E "test-catchain|test-actors" | |
- name: Find & copy binaries | |
run: | | |
mkdir artifacts | |
cp build/storage/storage-daemon/storage-daemon build/storage/storage-daemon/storage-daemon-cli build/crypto/fift build/crypto/tlbc build/crypto/func build/crypto/create-state build/validator-engine-console/validator-engine-console build/tonlib/tonlib-cli build/tonlib/libtonlibjson.so.0.5 build/http/http-proxy build/rldp-http-proxy/rldp-http-proxy build/dht-server/dht-server build/lite-client/lite-client build/validator-engine/validator-engine build/utils/generate-random-id build/utils/json2tlo build/adnl/adnl-proxy build/emulator/libemulator.* artifacts | |
chmod +x artifacts/* | |
cp -R crypto/smartcont artifacts/ | |
cp -R crypto/fift/lib artifacts/ | |
- name: Simple binaries test | |
run: | | |
artifacts/validator-engine -V | |
artifacts/lite-client -V | |
artifacts/fift -V | |
artifacts/func -V | |
- name: Upload artifacts | |
uses: actions/upload-artifact@master | |
with: | |
name: ton-ubuntu-binaries | |
path: artifacts |