1
0
mirror of https://github.com/golang/go synced 2024-11-20 05:44:44 -07:00
go/misc/windows/package.bash
Joe Poirier e4eacf39e9 misc/windows: Go for Windows installer in MSI format
Requesting suggestions for the comment and description strings in installer.wxs.
Fixes #2394.

R=rsc, alex.brainman, tjyang2001
CC=golang-dev
https://golang.org/cl/5339046
2011-11-09 17:20:34 -06:00

53 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/env bash
# Copyright 2011 The Go Authors. All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.
set -e
PROGS="
candle
light
heat
"
echo "%%%%% Checking for WiX executables %%%%%" 1>&2
for i in $PROGS; do
if ! which -a $1 >/dev/null; then
echo "Cannot find '$i' on search path." 1>$2
exit 1
fi
done
echo "%%%%% Checking the packager's path %%%%%" 1>&2
if ! test -f ../../src/env.bash; then
echo "package.bash must be run from $GOROOT/misc/windows" 1>&2
fi
echo "%%%%% Setting the go package version info %%%%%" 1>&2
ver="$(bash ../../src/version.bash | sed 's/ .*//')"
rm -rf go
mkdir go
echo "%%%%% Cloning the go tree %%%%%" 1>&2
hg clone -r $(hg id -n | sed 's/+//') $(hg root) go
rm -rf ./go/.hg ./go/.hgignore ./go/.hgtags
echo "%%%%% Copying pkg and bin %%%%%" 1>&2
cp -a ../../pkg go/pkg
cp -a ../../bin go/bin
echo "%%%%% Starting zip packaging %%%%%" 1>&2
7za a -tzip -mx=9 gowin$GOARCH"_"$ver.zip "go/" >/dev/null
echo "%%%%% Starting Go directory file harvesting %%%%%" 1>&2
heat dir go -nologo -cg AppFiles -gg -g1 -srd -sfrag -template fragment -dr APPLICATIONROOTDIRECTORY -var var.SourceDir -out AppFiles.wxs
echo "%%%%% Starting installer packaging %%%%%" 1>&2
candle -nologo -dVersion=$ver -dArch=$GOARCH -dSourceDir=go installer.wxs AppFiles.wxs
light -nologo installer.wixobj AppFiles.wixobj -o gowin$GOARCH"_"$ver.msi
rm -f *.wixobj AppFiles.wxs *.wixpdb