mirror of
https://github.com/zyedidia/micro.git
synced 2025-06-18 14:55:38 -04:00
128 lines
2.9 KiB
Bash
Executable File
128 lines
2.9 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
VERSION="$1"
|
|
if [ -z "$VERSION" ]; then
|
|
VERSION="$(go run tools/build-version.go)"
|
|
fi
|
|
|
|
mkdir -p binaries
|
|
mkdir -p micro-$VERSION
|
|
|
|
cp LICENSE micro-$VERSION
|
|
cp README.md micro-$VERSION
|
|
cp LICENSE-THIRD-PARTY micro-$VERSION
|
|
cp assets/packaging/micro.1 micro-$VERSION
|
|
cp assets/packaging/micro.desktop micro-$VERSION
|
|
cp assets/micro-logo-mark.svg micro-$VERSION/micro.svg
|
|
|
|
create_artefact_generic()
|
|
{
|
|
mv micro micro-$VERSION/
|
|
tar -czf micro-$VERSION-$1.tar.gz micro-$VERSION
|
|
sha256sum micro-$VERSION-$1.tar.gz > micro-$VERSION-$1.tar.gz.sha
|
|
mv micro-$VERSION-$1.* binaries
|
|
rm micro-$VERSION/micro
|
|
}
|
|
|
|
create_artefact_windows()
|
|
{
|
|
mv micro.exe micro-$VERSION/
|
|
zip -r -q -T micro-$VERSION-$1.zip micro-$VERSION
|
|
sha256sum micro-$VERSION-$1.zip > micro-$VERSION-$1.zip.sha
|
|
mv micro-$VERSION-$1.* binaries
|
|
rm micro-$VERSION/micro.exe
|
|
}
|
|
|
|
# Mac
|
|
echo "OSX 64"
|
|
GOOS=darwin GOARCH=amd64 make build
|
|
create_artefact_generic "osx"
|
|
|
|
# Mac ARM64
|
|
echo "MacOS ARM64"
|
|
GOOS=darwin GOARCH=arm64 make build
|
|
create_artefact_generic "macos-arm64"
|
|
|
|
# Linux
|
|
echo "Linux 64"
|
|
GOOS=linux GOARCH=amd64 make build
|
|
if ./tools/package-deb.sh $VERSION; then
|
|
sha256sum micro-$VERSION-amd64.deb > micro-$VERSION-amd64.deb.sha
|
|
mv micro-$VERSION-amd64.* binaries
|
|
fi
|
|
create_artefact_generic "linux64"
|
|
|
|
echo "Linux 64 fully static (same as linux64)"
|
|
# It is kept for the next release only to support...
|
|
# https://github.com/benweissmann/getmic.ro/blob/f90870e948afab8be9ec40884050044b59ed5b7c/index.sh#L197-L204
|
|
# ...and allow a fluent switch via:
|
|
# https://github.com/benweissmann/getmic.ro/pull/40
|
|
GOOS=linux GOARCH=amd64 make build
|
|
create_artefact_generic "linux64-static"
|
|
|
|
echo "Linux 32"
|
|
GOOS=linux GOARCH=386 make build
|
|
create_artefact_generic "linux32"
|
|
|
|
echo "Linux ARM 32"
|
|
GOOS=linux GOARM=6 GOARCH=arm make build
|
|
create_artefact_generic "linux-arm"
|
|
|
|
echo "Linux ARM 64"
|
|
GOOS=linux GOARCH=arm64 make build
|
|
create_artefact_generic "linux-arm64"
|
|
|
|
# Solaris
|
|
echo "Solaris 64"
|
|
GOOS=solaris GOARCH=amd64 make build
|
|
create_artefact_generic "solaris64"
|
|
|
|
# Illumos
|
|
echo "Illumos 64"
|
|
GOOS=illumos GOARCH=amd64 make build
|
|
create_artefact_generic "illumos64"
|
|
|
|
# NetBSD
|
|
echo "NetBSD 64"
|
|
GOOS=netbsd GOARCH=amd64 make build
|
|
create_artefact_generic "netbsd64"
|
|
|
|
echo "NetBSD 32"
|
|
GOOS=netbsd GOARCH=386 make build
|
|
create_artefact_generic "netbsd32"
|
|
|
|
# OpenBSD
|
|
echo "OpenBSD 64"
|
|
GOOS=openbsd GOARCH=amd64 make build
|
|
create_artefact_generic "openbsd64"
|
|
|
|
echo "OpenBSD 32"
|
|
GOOS=openbsd GOARCH=386 make build
|
|
create_artefact_generic "openbsd32"
|
|
|
|
# FreeBSD
|
|
echo "FreeBSD 64"
|
|
GOOS=freebsd GOARCH=amd64 make build
|
|
create_artefact_generic "freebsd64"
|
|
|
|
echo "FreeBSD 32"
|
|
GOOS=freebsd GOARCH=386 make build
|
|
create_artefact_generic "freebsd32"
|
|
|
|
# Windows
|
|
echo "Windows 64"
|
|
GOOS=windows GOARCH=amd64 make build
|
|
create_artefact_windows "win64"
|
|
|
|
echo "Windows ARM 64"
|
|
GOOS=windows GOARCH=arm64 make build
|
|
create_artefact_windows "win-arm64"
|
|
|
|
echo "Windows 32"
|
|
GOOS=windows GOARCH=386 make build
|
|
create_artefact_windows "win32"
|
|
|
|
rm -rf micro-$VERSION
|