2019-09-07 10:03:22 +00:00
|
|
|
cmake_minimum_required(VERSION 3.0.2 FATAL_ERROR)
|
|
|
|
|
|
|
|
#BEGIN internal
|
2019-09-19 19:15:32 +00:00
|
|
|
if (NOT TON_ONLY_TONLIB)
|
2019-09-07 10:03:22 +00:00
|
|
|
set(ADNL_HEADERS
|
|
|
|
adnl-address-list.h
|
|
|
|
adnl-address-list.hpp
|
|
|
|
adnl-db.h
|
|
|
|
adnl-db.hpp
|
|
|
|
adnl-channel.h
|
|
|
|
adnl-channel.hpp
|
|
|
|
adnl-ext-client.h
|
|
|
|
adnl-ext-client.hpp
|
|
|
|
adnl-ext-connection.hpp
|
|
|
|
adnl-ext-server.h
|
|
|
|
adnl-ext-server.hpp
|
|
|
|
adnl-local-id.h
|
|
|
|
adnl-message.h
|
|
|
|
adnl-network-manager.h
|
|
|
|
adnl-network-manager.hpp
|
|
|
|
adnl-node.h
|
|
|
|
adnl-packet.h
|
|
|
|
adnl-peer-table.h
|
|
|
|
adnl-peer-table.hpp
|
|
|
|
adnl-peer.h
|
|
|
|
adnl-peer.hpp
|
|
|
|
adnl-query.h
|
|
|
|
adnl-static-nodes.h
|
|
|
|
adnl-static-nodes.hpp
|
|
|
|
adnl-proxy-types.h
|
|
|
|
adnl-proxy-types.hpp
|
|
|
|
adnl.h
|
|
|
|
utils.hpp
|
|
|
|
)
|
|
|
|
set(ADNL_SOURCE
|
|
|
|
adnl-address-list.cpp
|
|
|
|
adnl-db.cpp
|
|
|
|
adnl-ext-client.cpp
|
|
|
|
adnl-ext-server.cpp
|
|
|
|
adnl-ext-connection.cpp
|
|
|
|
adnl-local-id.cpp
|
|
|
|
adnl-message.cpp
|
|
|
|
adnl-network-manager.cpp
|
|
|
|
adnl-node.cpp
|
2020-02-08 19:24:24 +00:00
|
|
|
adnl-node-id.cpp
|
2019-09-07 10:03:22 +00:00
|
|
|
adnl-packet.cpp
|
|
|
|
adnl-peer-table.cpp
|
|
|
|
adnl-peer.cpp
|
|
|
|
adnl-query.cpp
|
|
|
|
adnl-channel.cpp
|
|
|
|
adnl-static-nodes.cpp
|
|
|
|
adnl-proxy-types.cpp
|
|
|
|
utils.cpp
|
|
|
|
${ADNL_HEADERS}
|
|
|
|
)
|
|
|
|
|
|
|
|
set(ADNL_TEST_SOURCE
|
|
|
|
adnl-test-loopback-implementation.h
|
|
|
|
adnl-test-loopback-implementation.cpp
|
|
|
|
)
|
|
|
|
|
|
|
|
set(ADNL_PROXY_SOURCE
|
|
|
|
adnl-proxy.cpp
|
|
|
|
adnl-proxy-types.h
|
|
|
|
adnl-proxy-types.hpp
|
|
|
|
adnl-proxy-types.cpp
|
|
|
|
)
|
|
|
|
|
|
|
|
#FIXME
|
|
|
|
set(ADNL_LITE_HEADERS ${ADNL_HEADERS})
|
2019-09-19 19:15:32 +00:00
|
|
|
endif()
|
2019-09-07 10:03:22 +00:00
|
|
|
#END internal
|
|
|
|
|
|
|
|
set(ADNL_LITE_SOURCE
|
|
|
|
adnl-ext-client.cpp
|
|
|
|
adnl-ext-connection.cpp
|
|
|
|
adnl-query.cpp
|
|
|
|
|
|
|
|
${ADNL_LITE_HEADERS}
|
|
|
|
)
|
|
|
|
|
|
|
|
#BEGIN internal
|
2019-09-19 19:15:32 +00:00
|
|
|
if (NOT TON_ONLY_TONLIB)
|
2019-09-07 10:03:22 +00:00
|
|
|
add_library(adnl STATIC ${ADNL_SOURCE})
|
|
|
|
|
|
|
|
target_include_directories(adnl PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>)
|
|
|
|
target_link_libraries(adnl PUBLIC tdactor ton_crypto tl_api tdnet tddb keys keyring )
|
|
|
|
|
|
|
|
add_executable(adnl-proxy ${ADNL_PROXY_SOURCE})
|
|
|
|
target_include_directories(adnl-proxy PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>)
|
|
|
|
target_link_libraries(adnl-proxy PUBLIC tdactor ton_crypto tl_api tdnet common
|
2021-03-25 22:26:49 +00:00
|
|
|
tl-utils git)
|
2019-09-07 10:03:22 +00:00
|
|
|
|
2019-09-11 12:50:29 +00:00
|
|
|
add_executable(adnl-pong adnl-pong.cpp)
|
|
|
|
target_include_directories(adnl-pong PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>)
|
|
|
|
target_link_libraries(adnl-pong PUBLIC tdactor ton_crypto tl_api tdnet common
|
2021-03-25 22:26:49 +00:00
|
|
|
tl-utils adnl dht git)
|
2019-09-11 12:50:29 +00:00
|
|
|
|
2019-09-07 10:03:22 +00:00
|
|
|
add_library(adnltest STATIC ${ADNL_TEST_SOURCE})
|
|
|
|
target_include_directories(adnltest PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>)
|
|
|
|
target_link_libraries(adnltest PUBLIC adnl )
|
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 09:32:41 +00:00
|
|
|
|
|
|
|
install(TARGETS adnl-proxy RUNTIME DESTINATION bin)
|
2019-09-19 19:15:32 +00:00
|
|
|
endif()
|
2019-09-07 10:03:22 +00:00
|
|
|
#END internal
|
|
|
|
|
|
|
|
add_library(adnllite STATIC ${ADNL_LITE_SOURCE})
|
|
|
|
|
|
|
|
target_include_directories(adnllite PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>)
|
2021-03-25 22:26:49 +00:00
|
|
|
target_link_libraries(adnllite PUBLIC tdactor ton_crypto tl_lite_api tdnet keys)
|