Blame publish.sh

Ivan Mahonin 57263e
#!/bin/bash
Ivan Mahonin 57263e
Ivan Mahonin 94a33e
# you may set env var EXAMPLESROOT (helianthus-examples repo)
Ivan Mahonin 94a33e
Ivan Mahonin 57263e
set -e
Ivan Mahonin 57263e
Ivan Mahonin 57263e
ROOT="$(cd `dirname "$0"`; pwd)"
Ivan Mahonin 57263e
cd "$ROOT"
Ivan Mahonin 57263e
Ivan Mahonin 94a33e
if [ -z "$EXAMPLESROOT" ]; then
Ivan Mahonin 94a33e
	EXAMPLESROOT="$ROOT/../helianthus-examples"
Ivan Mahonin 94a33e
fi
Ivan Mahonin 94a33e
Ivan Mahonin 57263e
VER="$(git describe --tags)"
Ivan Mahonin 57263e
PUBDIR="$ROOT/build-publish"
Ivan Mahonin 57263e
mkdir -p "$PUBDIR"
Ivan Mahonin 57263e
Ivan Mahonin 57263e
Ivan Mahonin 57263e
# build win
Ivan Mahonin 57263e
if [ "$1" != "fast" ]; then
Ivan Mahonin 57263e
	echo " -- build win -- "
Ivan Mahonin 57263e
	cd "$ROOT/win"
Ivan Mahonin 57263e
	./rebuild-heli-win.sh
Ivan Mahonin 57263e
	cd "$ROOT"
Ivan Mahonin 57263e
fi
Ivan Mahonin 57263e
Ivan Mahonin 57263e
Ivan Mahonin 57263e
# prepare sources
Ivan Mahonin 57263e
echo " -- prepare sources -- "
Ivan Mahonin 57263e
SRCNAME="helianthus-src-$VER"
Ivan Mahonin 57263e
SRCDIR="$PUBDIR/$SRCNAME"
Ivan Mahonin 57263e
rm -rf "$SRCDIR"
Ivan Mahonin 57263e
mkdir -p "$SRCDIR"
Ivan Mahonin 57263e
cd "$SRCDIR"
Ivan Mahonin 57263e
git --work-tree=. checkout .
Ivan Mahonin 57263e
cd "$ROOT"
Ivan Mahonin 57263e
Ivan Mahonin 57263e
Ivan Mahonin 57263e
# prepare binaries
Ivan Mahonin 57263e
echo " -- prepare binaries -- "
Ivan Mahonin 57263e
BINNAME="helianthus-bin-$VER"
Ivan Mahonin 57263e
BINDIR="$PUBDIR/$BINNAME"
Ivan Mahonin 57263e
rm -rf "$BINDIR"
Ivan Mahonin 57263e
cp -r "$ROOT/win/release" "$BINDIR"
Ivan Mahonin 57263e
cp -r "$ROOT/win/unpack" "$BINDIR/src"
Ivan Mahonin 57263e
rm -f "$BINDIR/src/"*.done
Ivan Mahonin 57263e
cp -r "$SRCDIR" "$BINDIR/src/"
Ivan Mahonin 57263e
echo "Binary files licensed under GPL. Look license notes in src directory and subdirectories" >> "$BINDIR/readme"
Ivan Mahonin 57263e
Ivan Mahonin 57263e
Ivan Mahonin 94a33e
# prepare examples
Ivan Mahonin 94a33e
echo " -- prepare examples -- "
Ivan Mahonin 94a33e
HELIROOT="$ROOT" "$EXAMPLESROOT/publish.sh"
Ivan Mahonin 94a33e
cp -r "$EXAMPLESROOT/build-publish/"* "$BINDIR/"
Ivan Mahonin 94a33e
cp -r "$EXAMPLESROOT/build-publish/"* "$SRCDIR/"
Ivan Mahonin 94a33e
rm -rf "$SRCDIR/examples"*/bin
Ivan Mahonin 94a33e
Ivan Mahonin 94a33e
Ivan Mahonin 57263e
# prepare archives
Ivan Mahonin 57263e
cd "$PUBDIR"
Ivan Mahonin 57263e
echo " -- prepare archives -- "
Ivan Mahonin 57263e
rm -f "$BINNAME.tar.gz"
Ivan Mahonin 57263e
rm -f "$SRCNAME.tar.gz"
Ivan Mahonin 57263e
rm -f "$BINNAME.zip"
Ivan Mahonin 57263e
rm -f "$SRCNAME.zip"
Ivan Mahonin 57263e
echo     "$BINNAME.tar.gz"
Ivan Mahonin 57263e
tar -czf "$BINNAME.tar.gz" "$BINNAME"
Ivan Mahonin 57263e
echo     "$SRCNAME.tar.gz"
Ivan Mahonin 57263e
tar -czf "$SRCNAME.tar.gz" "$SRCNAME"
Ivan Mahonin 57263e
echo     "$BINNAME.zip"
Ivan Mahonin 57263e
zip -rq  "$BINNAME.zip" "$BINNAME"
Ivan Mahonin 57263e
echo     "$SRCNAME.zip"
Ivan Mahonin 57263e
zip -rq  "$SRCNAME.zip" "$SRCNAME"
Ivan Mahonin 57263e
cd "$ROOT"
Ivan Mahonin 57263e
Ivan Mahonin 57263e
echo " -- done -- "