From d5ea2babf5ee13ef01a9eabe12e09b5775c2085d Mon Sep 17 00:00:00 2001 From: Francesco Abbate Date: Sun, 21 Jun 2020 13:11:00 +0200 Subject: [PATCH] Add script to build release package --- build-package-meson.sh | 52 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100755 build-package-meson.sh diff --git a/build-package-meson.sh b/build-package-meson.sh new file mode 100755 index 00000000..ccd85b41 --- /dev/null +++ b/build-package-meson.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +lite_build_pgo () { + build="$1" + if [[ $build == */* || -z "$build" ]]; then + echo "invalid build directory, no path allowed: \"$build\"" + exit 1 + fi + git ls-files --error-unmatch "$build" &> /dev/null + if [ $? == 0 ]; then + echo "invalid path, \"$build\" is under revision control" + exit 1 + fi + rm -fr "$build" + meson setup --buildtype=release -Db_pgo=generate "$build" || exit 1 + ninja -C "$build" || exit 1 + cp -r data "$build/src" + "$build/src/lite" + meson configure -Db_pgo=use "$build" + ninja -C "$build" || exit 1 +} + +lite_build_package () { + build="$1" + version="$2" + arch="$3" + local pdir=".package-build/lite-xl-$version" + mkdir -p "$pdir" + cp -r data "$pdir" + cp "$build/src/lite" "$pdir" + strip "$pdir/lite" + pushd ".package-build" + local package_name="lite-xl-$version-$arch.tar.gz" + tar czf "$package_name" "lite-xl-$version" + mv "$package_name" .. + popd + rm -fr ".package-build" + echo "created package $package_name" +} + +if [[ -z "$1" || -z "$2" ]]; then + echo "usage: $0 " + exit 1 +fi + +version="$1" +arch="$2" +build_dir=".build-$arch" + +lite_build_pgo "$build_dir" +lite_build_package "$build_dir" "$version" "$arch" +