1
0
Fork 0
mirror of https://github.com/ton-blockchain/ton synced 2025-02-12 19:22:37 +00:00
Commit graph

37 commits

Author SHA1 Message Date
neodiX42
e62830fb10
Fix failing release creation due to missing windows binaries (#632)
* Update create-release.yml

* Update win-2019-compile.yml

* Update create-release.yml
2023-03-04 15:34:36 +03:00
neodiX42
5a47495d87
Add cross-platform Linux and macOS binaries (statically compiled with NixPkgs) + wasm artifacts (#621)
* fix build

* nix flake

* nix package

* static musl build env

* make all builds in static env

* GH Actions nightly and static workflows

* deb package

* cmake install {adnl-proxy,blockchain-explorer,create-state,http-proxy,rldp-http-proxy,storage-cli}

* nix flake: add static glibc build variant

* GH Actions: deb-nightly-{musl,glibc_static}, tests-rolling jobs

* rpm package

* build blockchain-explorer

* GH Actions: deb_rpm-nightly: ubuntu-{latest=>22.04}

* crypto/pow-miner: skip install

* ghactions: tests-rolling: show tests run, progress

* ghactions: deb_rpm-nightly: add manual trigger [skip ci]

* nix flake refactor

* find_package=>pkg-config(zlib)

FindZLIB.cmake can't find static zlib prior to CMake 3.24, so use
pkg-config.

* nix old glibc build

* nix aarch64 support

* packages: Populate APT and RPM repos at ton-repo

- {deb,rpm}.sh: Separate build and install dirs
- rpm.sh: Conditionally include lib/
- Accomodate local CI runs w/act

* [skip ci] README packages

* fix aarch64 build -Wnoerror=address

* [skip ci] rpm set releasever

* [skip ci] document local packages upload

* m1 build: gate cpu=apple-m1 by clang version

* packages: Ship musl binaries + old glibc dylibs

* packages: macos build

* nix: bump nixpkgs

* fix windows CI build

* [skip ci] nix: static aarch64 builds

* packages: deb,rpm multiarch

* ghactions: aarch64 musl deb,rpm build

* [skip ci] deb build: deref source links, -x

* [skip ci] nix darwin static build

* [skip ci] nix common hostPkgs

* [skip ci] brew: move formula over to homebrew-ton-repo

* [skip ci] nix fix aarch64-linux build

* [skip ci] ghactions: nix use GITHUB_TOKEN

* [skip ci] Move from ton-repo to gh releases

* [skip ci] ghactions aarch64-darwin self-hosted runner

* [skip ci] ghactions deb,rpm nightly 10h timeout

* [skip ci] fix brew install

fixes
Errno::EACCES: Permission denied @ dir_s_mkdir - /private/tmp/ton-XXX/bin/.brew_home

* [skip ci] ghactions deb,rpm nightly: don't upload ton-packages as we gh release them later

* [skip ci] README: brew instructions

* [skip ci] nightly linux binaries release

* [skip ci] packages: ship macos dylib

* [skip ci] ghactions: Run Windows build nightly, upload to gh releases

* nix: remove defaultPackage, switch to different oldglibc build method

We used to rebuild nixpkgs-stable with old glibc, which broke on aarch64
due to its particular bootstrap toolchain. This just takes nixos 19.09's
version of GCC but new dependencies, sidestepping the issue.

* fix rpm release, add aur release

* fix local (act) ci run

* ghactions: linux-nightly: Print out SSH public keys

* ghactions: bump cachix actions

* nix: default devShell

* [skip ci] rpm,aur: Ship lib

* [skip ci] packages: windows: Remove CMake files from out

* [skip ci] packages: Import chocolatey package

* fixup! fix rpm release, add aur release

* [skip ci] packages: aarch64-linux: build dylib as well

* [skip ci] ghactions: run on self-hosted

* [skip ci] ghactions: windows-nightly: Bump nodejs actions

* [skip ci] nix: Only add Linux packaging tools on Linux

* [skip ci] doc: document direct download binaries in README

* fix tonlib android jni ci

* fixup! fix tonlib android jni ci

* [skip ci] ghactions: Update GH release dates

Errata: doesn't update tags.

* [skip ci] ghactions: Fix racy brew gh release by splitting arch

* initiali commit - binaries only

* fixes

* fixes

* fixes

* fixes

* remove packages dir for now

* add storage-daemon storage-daemon-cli

* fix emulator

* try macos aarch64

* try macos aarch64

* try macos aarch64

* try macos aarch64

* try macos aarch64

* try macos aarch64

* try macos aarch64

* try macos aarch64

* try macos aarch64

* try macos aarch64

* try macos aarch64 sh

* try macos aarch64 sh

* try macos aarch64 bash

* try macos aarch64 bash

* try macos aarch64 bash

* try macos aarch64 bash

* try macos aarch64 bash

* try macos aarch64 bash

* try macos aarch64 bash

* fix funcfiftlib compilation with emscripten

* fix funcfiftlib compilation with emscripten

* add github action to compile TON with emscripten

* add github action to compile TON with emscripten

* add github action to compile TON with emscripten

* add github action to compile TON with emscripten

* add github action to compile TON with emscripten

* add github action to compile TON with emscripten

* try macos aarch64

* fix funcfiftlib compilation with emscripten

* fix funcfiftlib compilation with emscripten

* add github action to compile TON with emscripten

* disable aarch64 github actions for now

* disable aarch64 github actions for now

* trigger all GH actions

* trigger all GH actions 2

* trigger all GH actions 3

* trigger all GH actions 4

* trigger all GH actions 5

* put back rldp-http-proxy to win build

* put back rldp-http-proxy to win build

* dont use pkgConfig for zlib

* fix zlib_library

* use BUILD_SHARED_LIBS flag for static compilation

* test 1

* test 2

* add wasm binaries to release.
test 3

* add simple binaries' execution test

* build emulator-emscripten

* build and add into artifacts wasm tlbc and emulator-emscripten

* build and add into artifacts wasm tlbc and emulator-emscripten, 2

* build and add into artifacts wasm tlbc and emulator-emscripten, 3

* build and add into artifacts wasm tlbc and emulator-emscripten, 4

* build emulator-emscripten with static libs

* minor nix mac aarch64 fix

* add single artifacts to release

* bypass $repo to Dockerfile

* add wasm artifacts to release

* add wasm artifacts to release

* add wasm artifacts to release

* add wasm artifacts to release

* add more artifacts to release; remove compilation against Ubuntu 18.04.

* retrieve GITHUB_TOKEN for ton-blockchain/ton

* remove binary check for arm64

---------

Co-authored-by: tonthemoon <tonthemoon@mailbox.org>
2023-02-27 12:32:41 +03:00
neodiX42
681b494410
Include blockchain-explorer to artifacts (#593)
* Update create-release.yml

minor test

* Update macos-12.6-compile.yml

Add blockchain-explorer

* Update macos-11.7-compile.yml

add blockchain-explorer

* Update win-2019-compile.yml

add blockchain-explorer

* Update macos-12.6-compile.yml

* Update macos-11.7-compile.yml

* Update macos-12.6-compile.yml

* Update macos-12.6-compile.yml

* Update macos-12.6-compile.yml

* Update macos-11.7-compile.yml

---------

Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
2023-02-02 10:06:17 +03:00
neodiX42
44198205f1
Fix arm64 docker builds (#581)
* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* force GSL 2.7.1 version

* force GSL 2.7.1 version

* handle missing BLAS library

* handle missing BLAS library, force GSL 2.7.1 version, build storage-daemon and storage-daemon-cli binaries

* Revert "handle missing BLAS library"

This reverts commit 67ebd4abfa.

* remove GSL

* remove GSL only for 18.04

* remove GSL only for 18.04

* link blas library; leave gsl

* merge upstream

* Fix arm64 docker builds
2022-12-30 21:51:54 +03:00
neodiX42
446b9f536f
Ignore usage of AVX512 and force AVX2 CPU instructions for better binaries' portability. (#580)
* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* force GSL 2.7.1 version

* force GSL 2.7.1 version

* handle missing BLAS library

* handle missing BLAS library, force GSL 2.7.1 version, build storage-daemon and storage-daemon-cli binaries

* Revert "handle missing BLAS library"

This reverts commit 67ebd4abfa.

* remove GSL

* remove GSL only for 18.04

* remove GSL only for 18.04

* link blas library; leave gsl

* merge upstream

* make more portable binaries by excluding AVX512 CPU flag

* make rocksdb to produce portable binaries

* make rocksdb to produce portable binaries

* make rocksdb to produce portable binaries

* show OS CPU flags & force AVX2

* DPORTABLE=1 and -DTON_ARCH=

* DPORTABLE=1 and -DTON_ARCH= and -DCMAKE_CXX_FLAGS="-mavx2"

* DPORTABLE=1 and -DTON_ARCH= and -DCMAKE_CXX_FLAGS="-mavx2"

* DPORTABLE=1 and -DCMAKE_CXX_FLAGS="-mavx2" only

* Ignore usage of AVX512 and force AVX2 CPU instructions for better binaries portability.

* Ignore usage of AVX512 and force AVX2 CPU instructions for better binaries' portability.

* minor fix
2022-12-30 20:13:10 +03:00
neodiX42
ebde4e022e
Include storage-daemon and storage-daemon-cli binaries into artifacts (#579)
* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* build storage-daemon and storage-daemon-cli binaries

* force GSL 2.7.1 version

* force GSL 2.7.1 version

* handle missing BLAS library

* handle missing BLAS library, force GSL 2.7.1 version, build storage-daemon and storage-daemon-cli binaries

* Revert "handle missing BLAS library"

This reverts commit 67ebd4abfa.

* remove GSL

* remove GSL only for 18.04

* remove GSL only for 18.04

* link blas library; leave gsl

* merge upstream
2022-12-30 20:00:54 +03:00
neodiX42
1a07edfed4
Upload to the docker repository only images from the master branch (#569) 2022-12-24 13:06:52 +03:00
neodiX42
b4c55742a6
Fix TON compilation on Windows (#544)
* fix missing tlbc in MacOS builds

* fix missing tlbc in MacOS builds

* fix windows build
2022-12-15 13:14:43 +03:00
neodiX42
adfa724583
Fix missing tlbc in MacOS builds (#542)
* fix missing tlbc in MacOS builds

* fix missing tlbc in MacOS builds
2022-12-03 12:31:31 +03:00
EmelyanenkoK
ff5c6593b0
Merge pull request #531 from ton-blockchain/master
Merge upstream
2022-11-25 18:35:23 +03:00
neodiX42
ee43c39340
Update docker-ubuntu-image.yml
Update host OS to 20.04
2022-11-22 15:23:18 +02:00
neodiX42
d3e177b49e
Add Github action to create TON release (#514)
* add: TON Overflow

* Create release and tag.

* add permission to read GITHUB_TOKEN

* register token

* register token

* register token

* register token

* correct tag name

* call sub workflow and upload its artifact to the release

* call sub workflow and upload its artifact to the release

* define jobs dependency

* add 2nd dependency; upload ubuntu and windows artifacts; show all artifacts

* add 2nd dependency; upload ubuntu and windows artifacts; show all artifacts

* create folder for all artifacts; download artifacts from previous workflows

* add macos-compile

* fix download artifacts

* fix download artifacts

* test all upload to release

* fix bug in finding windows artifact

* fix execution order

* fix execution order

* fix download artifact

* fix download artifact

* fix download artifact

* fix download artifact

* fix versioning

* fix versioning

* zip artifacts; copy macos artifacts one by one;

* zip artifacts; copy macos artifacts one by one;

* zip artifacts; copy macos artifacts one by one;

* fix lib name in macos

* Update create-release.yml

* Update create-release.yml

* better packing

* better packing

* Update win-2019-compile.yml

* minor improvements

* minor improvements

* add ninja to macos

* add ninja to windows

* add ninja to windows

* remove ninja grom windows

* fix macos copy

* reuse exising jobs

* reuse existing jobs

* use other ubuntu action

* use other ubuntu action

* add smartcont and fift libs to artifacts

* GH action for release creation

* update actions/checkout to v3

* sync abseil with testnet
2022-11-03 12:41:49 +03:00
neodiX42
b2ddaa08d5
Add GitHub action to build Tonlib for Android OS (#517)
* GitHub action to build native-lib (tonlibjson) JNI library for Android (x86, x86_64, armeabi-v7a, arm64-v8a);
Cleanup fossil actions;

* update actions/checkout to v3

* update actions/checkout to v3

* silent removal of TonApi.java

* remove *.debug files

* minor fix

* strip files; add README.md

* put back ninja

* correct spelling

* correct README.md

* fix README.md
2022-11-02 21:27:30 +03:00
neodiX42
906336f881
Upgrade MacOS github actions (#511)
* add: TON Overflow

* upgrade MacOS version from 10.15 to 11.7

* enable Ninja build tool

* add github action for MacOS 12.6

* add smartcont and fift lib folders to artifacts

Co-authored-by: Doge <awesomedogewow@gmail.com>
Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
2022-10-28 22:06:34 +03:00
neodiX42
89308d428a
Fix timeout issue for Github action Docker Compile Ubuntu arm64 (#510)
* add: TON Overflow

* GitHub action to build native-lib (tonlibjson) JNI library for Android (x86, x86_64, armeabi-v7a, arm64-v8a);
Cleanup fossil actions;

* fix gh action timeout; delete old actions;

* fix gh action timeout; delete old actions;

* leave only arm64 architecture

* leave only arm64 architecture

* leave only arm64 architecture, remove create-hardfork

* leave only arm64 architecture, remove create-hardfork; sync with testnet

Co-authored-by: Doge <awesomedogewow@gmail.com>
Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
2022-10-28 17:31:38 +03:00
neodiX42
caa52c98d7
Fix timeout issue for Github action Docker Compile Ubuntu x86-64 & arm64 (#501)
* fix gh action timeout; delete old actions;

* fix gh action timeout; delete old actions;
2022-10-27 09:13:50 +03:00
neodiX42
6e8df7bcb2
TON binaries for Ubuntu with aarch64-arm64 CPU architecture (#493)
* add: TON Overflow

* macOS compile with docker

* QEMU does not run on macOS itself

* QEMU does not run on macOS itself

* QEMU does not run on macOS itself

* QEMU does not run on macOS itself

* QEMU does not run on macOS itself

* QEMU does not run on macOS itself

* QEMU does not run on macOS itself

* ubuntu multi-platform compile

* ubuntu multi-platform compile

* ubuntu multi-platform compile

* ubuntu multi-platform compile test matrix

* ubuntu multi-platform compile test matrix

* ubuntu multi-platform compile test matrix

* copy from container and publish

* copy from container and publish

* copy from container and publish

* copy from container and publish

* copy from container and publish

* copy from container and publish

* copy from container and publish

* copy from container and publish

* multi platform with upload

* bug fix

* bug fix

* bug fix

* bug fix

* bug fix

* bug fix

* bug fix without exec

* bug fix without filename

* bug fix without filename

* Update docker-compile-ubuntu.yml

* Update docker-compile-ubuntu.yml

* Update docker-compile-ubuntu.yml

* Update docker-compile-ubuntu.yml

* Update docker-compile-ubuntu.yml

* Update docker-compile-ubuntu.yml

* fix tzdata

Co-authored-by: Doge <awesomedogewow@gmail.com>
Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
2022-10-24 20:50:26 +03:00
AlexeyFSL
e2cca03a78
Func and Fift lib for WASM (#455)
* Add social badges

Add telegram, Twitter and Stack Overflow badges in Readme

* update README.md badges

* patch for wasm build

* fix narrowing conversion error for clang compiler

* refactor func code

* funcfift lib implementation

* fix funcfift lib
fix CMakeFile

* fix rvalue missing

* remove unused field from result json

* name fix
remove unused target

* rename

* added script for building funcfiftlib to wasm

* fix json fild names

* fix commit hash for script

* added version function to funcfiftlib

* update commit hash for script

* add realpath fail processing
fix DISABLE_EXCEPTION_CATCHING option

* update hash in script

Co-authored-by: Anthony Tsivarev <tsivarev.a@gmail.com>
Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
Co-authored-by: tolya-yanot <1449561+tolya-yanot@users.noreply.github.com>
2022-09-14 12:36:01 +03:00
EmelyanenkoK
5101b404a4 Merge branch 'master' into testnet 2022-08-04 17:45:31 +03:00
neodiX42
fecf760aae
Adjust Mac OS non-arm build for upgraded abseil (#416)
* Update and rename ubuntu-18.04-compile.yml to ubuntu-compile.yml

* Update ubuntu-compile.yml

segregate output binaries

* Update macos-10.15-compile.yml

Add testnet branch to github action and compilation flag -std=c++17

* Update macos-10.15-compile.yml

remove branch filter

* Update windows2019x64-compile.yml

* Update windows2019x64-compile.yml

add flag /std:c++17

* Update windows2019x64-compile.yml

* Update windows2019x64-compile.yml

* Update ubuntu-compile.yml

Add  -DCMAKE_CXX_FLAGS="-std=c++17"

* use CMAKE_CXX_STANDARD

* Update macos-10.15-compile.yml

remove -std=c++17 flag

* Update ubuntu-compile.yml

remove -DCMAKE_CXX_FLAGS="-std=c++17" flag

* Update ubuntu-compile.yml

remove space

* Update ubuntu-18.04-ton-ccpcheck.yml

remove branch filter

* Update docker-ubuntu-image.yml

remove branch filter

Co-authored-by: dungeon-master-666 <dungeon666master@protonmail.com>
2022-07-05 19:52:12 +03:00
neodiX42
f6bf3d696d
Update windows2019x64-compile.yml (#418)
Allow Windows github action to run against any branch
2022-06-30 15:18:11 +03:00
neodiX42
6fb01df1d2
Compile TON against Ubuntu 18.04, 20.04 and 22.04 in a single github action (#415)
* Update and rename ubuntu-18.04-compile.yml to ubuntu-compile.yml

* Update ubuntu-compile.yml

segregate output binaries
2022-06-29 22:08:02 +03:00
BAnon
739422e346
chore: provide a new issue template 2022-06-06 23:36:36 +08:00
neodiX42
65e3177def
Fix windows validator-engine.exe runtime access violation error (#387)
* Fix runtime access violation error on Windows
2022-06-03 16:01:55 +03:00
neodiX42
a9ba27382c
Add tonlibjson.dll to github windows artifacts (#384)
Add tonlibjson.dll to final artifacts
2022-05-25 23:27:36 +03:00
neodiX42
85b5be4e70
Improve gitactions; separate cpp-check (#346)
* Use ninja build tool and compile blockchain-explorer 

Ninja builds TON much faster;

* Use clang instead of gcc

* remove blockchain-explorer

since target not found on github action

* move ccpcheck to other gitaction

* run nativelib-java only against wallets branch for now

* rename gitaction

* Update windows2019x64-tonlib-java.yml

* Update windows2019x64-tonlib-java.yml

* Update macos-10.15-tonlib-java.yml

* Update windows2019x64-tonlib-java.yml

* Update windows2019x64-tonlib-java.yml
2022-05-25 21:50:11 +03:00
neodiX42
fade39cfb1
Add workflow-dispatch option to docker build 2022-05-11 14:20:39 +02:00
neodiX42
a216ebbc9a
Update windows2019x64-compile.yml
Use pre-compiled OpenSSL Win64 from TON developer's repo
2022-05-04 16:40:52 +03:00
neodiX42
2f1ce43588
Move native-lib build into other github action (#343)
* move native-lib build into other git action

* Update macos-10.15-compile.yml

* Update ubuntu-18.04-compile.yml

* Update ubuntu-18.04-compile.yml
2022-05-03 14:31:16 +03:00
Tolya
9e9351903a Update win autobuild 2022-04-25 01:43:31 +03:00
Alex Melman
75de8d85a7 Add java native-lib and update git actions 2022-01-12 15:36:11 +03:00
neodiX42
d6412ee30b Update windows2019x64-compile.yml
Updating Win64 OpenSSL library
2021-09-13 10:58:29 +03:00
akme
dd606e5e07 Add docker workflow 2021-07-27 13:20:35 +03:00
neodiX42
f5436a5940 Update and rename build ymls 2021-03-26 10:25:13 +03:00
Alex Melman
5c992d6a93 Using Howard Hinnant's free, open-source header-only and thread-safe datetime library.
https://howardhinnant.github.io/date/date.html
All logs will display a datetime in format "2021-02-23 12:57:21.1023272" UTC, instead of simply displaying double formatted timestamp.

Update ccpp-linux.yml

Soon github actions will use ubuntu 20.04 as latest. Let's avoid surprised and stick to ubuntu-18.04 fow now.
2021-02-23 14:31:58 +03:00
Kirill A
013038c2ff Add proper declarations for MHD result >=v0.9.71 2021-02-10 23:21:29 +03:00
AleksejMelman
b22611a123 Create ccpp-linux.yaml
Taken from https://github.com/akme/ton/blob/master/.github/workflows/ccpp-linux.yml

Fixing error LNK2019: unresolved external symbol _GetProcessMemoryInfo@12 when building windows desktop client

Fixes compilation error of lite-client on windows

Fixes compilation error:
error C2664: 'std::pair<td::int64,td::int64> std::make_pair<td::int64,td::int64>(_Ty1 &&,_Ty2 &&) noexcept (<expr>)': cannot convert argument 1 from 'const td::uint64' to '_Ty1 &&'

make_pair() has been changed in VS2012 to support a new C++11 feature called move semantics and I suspect that explicitly specifying the types for make_pair() is getting in the way.

The fix should be safe for linux distro as well.

Adding Github action - Win64 ton compile (#14)

* Add github action win64 compile
* manager.cpp - Strange though, but due to this kind of type usage win64 compilation fails. Let's make it more generic.
2021-02-09 11:15:50 +03:00