mirror of
https://github.com/ton-blockchain/ton
synced 2025-03-09 15:40:10 +00:00
* improve windows builds
* install nasm for openssl compilation on win
* install nasm for openssl compilation on win for github
* add create-state, proxy-liteserver, rldp-http-proxy, http-proxy, adnl-proxy, dht-server, libtonlibjson.so and libemulator.so to docker image
* build new artifacts inside Docker
* add files smartcont/auto/* to docker image
* build arm64 in docker branch build
* improve secp256k1 build
* adding natively portable binaries (all statically linked with libc++, without nixpkgs help) for x86-64 linux
* install missing headers on ubuntu 20.04
* use clang-16 on ubuntu 20.04
* remove gsl for portable artifacts; add -f key to generate-random-id in order to read addr_list from file;
* typo
* decode json
* decode json
* add github workflow for appimages creation
* add missing dependencies
* use libc++ for appimages artifacts
* typo
* appimages wihtout libc++
* appimages with libc++ and some checks
* add appimages to release (for testing)
* add appimages to release (for testing)
* add appimages to release (for testing)
* add appimages to release (for testing) 2
* add appimages to release (for testing) 3
* appimages only on ubuntu 22 with ssl-3 for now
* appimages only on ubuntu 20 with ssl-3 for now
* appimages only on ubuntu 20 with ssl-3 for now
* add export LD_LIBRARY_PATH="${APPDIR}/usr/lib:${LD_LIBRARY_PATH}" to appimage AppRun
* create release
* appimages without jemalloc
* bind specific libraries to appimages
* add libreadline
* add plain portable libs
* add proper /lib/x86_64-linux-gnu/libreadline.so.8
* app images build with libc
* try to ensure ABI compatibility with older glibc
* try to ensure ABI compatibility with older glibc for shared libraries
* shared lib without libc but with D_GLIBCXX_USE_CXX11_ABI and -static-libgcc -static-libstdc++
* add -fPIC -fcommon
* add /lib/x86_64-linux-gnu/libstdc++.so.6 to static binaries
* add -static-libgcc -static-libstdc++ to libtonlibjson and emulator when PORTABLE=1
* add -static-libgcc -static-libstdc++ to libtonlibjson and emulator when PORTABLE=1
* update emulator portable
* Update CMakeLists.txt
* test portable macos binaries
* do not use -static-libgcc -static-libstdc++ on mac for shared libs
* do not use -static-libgcc -static-libstdc++ on mac for shared libs
* adjust create-release.yml
* minor fixes, typos
* minor fixes
* linux apps double check
* avoid infinite loop when place in system bin dir
* avoid infinite loop when place in system bin dir 2
* test compilation on linux arm64
* test appimages on arm64 linux
* test appimages on arm64 linux 2
* add portable linux arm64 to release
* clean up
* update README.md
50 lines
1.5 KiB
Bash
50 lines
1.5 KiB
Bash
#!/bin/bash
|
|
|
|
if [ ! -d "artifacts" ]; then
|
|
echo "No artifacts found."
|
|
exit 2
|
|
fi
|
|
# x86_64 or aarch64
|
|
ARCH=$1
|
|
|
|
rm -rf appimages
|
|
|
|
mkdir -p appimages/artifacts
|
|
|
|
wget -nc https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-$ARCH.AppImage
|
|
chmod +x ./appimagetool-$ARCH.AppImage
|
|
|
|
cd appimages
|
|
for file in ../artifacts/*; do
|
|
if [[ -f "$file" && "$file" != *.so ]]; then
|
|
appName=$(basename "$file")
|
|
echo $appName
|
|
# prepare AppDir
|
|
mkdir -p $appName.AppDir/usr/{bin,lib}
|
|
cp ../AppRun $appName.AppDir/AppRun
|
|
sed -i "s/app/$appName/g" $appName.AppDir/AppRun
|
|
chmod +x ./$appName.AppDir/AppRun
|
|
printf '[Desktop Entry]\nName='$appName'\nExec='$appName'\nIcon='$appName'\nType=Application\nCategories=Utility;\n' > $appName.AppDir/$appName.desktop
|
|
cp ../ton.png $appName.AppDir/$appName.png
|
|
cp $file $appName.AppDir/usr/bin/
|
|
cp ../build/openssl_3/libcrypto.so.3 \
|
|
/lib/$ARCH-linux-gnu/libatomic.so.1 \
|
|
/lib/$ARCH-linux-gnu/libsodium.so.23 \
|
|
/lib/$ARCH-linux-gnu/libz.so.1 \
|
|
/lib/$ARCH-linux-gnu/liblz4.so.1 \
|
|
/lib/$ARCH-linux-gnu/libmicrohttpd.so.12 \
|
|
/lib/$ARCH-linux-gnu/libreadline.so.8 \
|
|
/lib/$ARCH-linux-gnu/libstdc++.so.6 \
|
|
$appName.AppDir/usr/lib/
|
|
|
|
chmod +x ./$appName.AppDir/usr/bin/$appName
|
|
# create AppImage
|
|
./../appimagetool-$ARCH.AppImage -l $appName.AppDir
|
|
mv $appName-$ARCH.AppImage artifacts/$appName
|
|
fi
|
|
done
|
|
|
|
ls -larth artifacts
|
|
cp -r ../artifacts/{smartcont,lib} artifacts/
|
|
pwd
|
|
ls -larth artifacts
|