gotty/Makefile

101 lines
3.2 KiB
Makefile
Raw Normal View History

2015-10-12 10:57:14 +08:00
OUTPUT_DIR = ./builds
2017-08-23 10:15:41 +08:00
GIT_COMMIT = `git rev-parse HEAD | cut -c1-7`
2021-04-22 23:20:08 +08:00
VERSION = $(shell git describe --tags)
BUILD_OPTIONS = -ldflags "-X main.Version=$(VERSION)"
2017-08-23 10:15:41 +08:00
gotty: main.go server/*.go webtty/*.go backend/*.go Makefile asset
2020-02-28 14:47:10 +08:00
go build ${BUILD_OPTIONS}
2015-08-16 17:47:23 +08:00
2020-02-28 20:49:19 +08:00
docker:
docker build . -t gotty-bash:$(VERSION)
2017-10-03 14:34:51 +08:00
.PHONY: asset
asset: bindata/static/js/gotty.js bindata/static/index.html bindata/static/favicon.png bindata/static/css/index.css bindata/static/css/xterm.css bindata/static/css/xterm_customize.css bindata/static/manifest.json bindata/static/icon_192.png server/asset.go
server/asset.go:
2017-02-26 06:37:07 +08:00
go-bindata -prefix bindata -pkg server -ignore=\\.gitkeep -o server/asset.go bindata/...
gofmt -w server/asset.go
2015-08-16 17:47:23 +08:00
2017-10-03 14:34:51 +08:00
.PHONY: all
2020-02-28 20:49:19 +08:00
all: asset gotty docker
2015-08-16 17:47:23 +08:00
bindata:
mkdir bindata
2015-08-17 06:00:17 +08:00
bindata/static: bindata
mkdir bindata/static
2015-08-23 19:40:18 +08:00
bindata/static/index.html: bindata/static resources/index.html
cp resources/index.html bindata/static/index.html
bindata/static/manifest.json: bindata/static resources/manifest.json
cp resources/manifest.json bindata/static/manifest.json
2015-08-30 15:27:40 +08:00
bindata/static/favicon.png: bindata/static resources/favicon.png
cp resources/favicon.png bindata/static/favicon.png
bindata/static/icon_192.png: bindata/static resources/icon_192.png
cp resources/icon_192.png bindata/static/icon_192.png
bindata/static/js: bindata/static
2015-08-30 15:27:40 +08:00
mkdir -p bindata/static/js
bindata/static/css: bindata/static
mkdir -p bindata/static/css
bindata/static/css/index.css: bindata/static/css resources/index.css
cp resources/index.css bindata/static/css/index.css
bindata/static/css/xterm_customize.css: bindata/static/css resources/xterm_customize.css
cp resources/xterm_customize.css bindata/static/css/xterm_customize.css
2021-04-23 00:54:55 +08:00
bindata/static/css/xterm.css: bindata/static/css js/node_modules/xterm/css/xterm.css
cp js/node_modules/xterm/css/xterm.css bindata/static/css/xterm.css
2017-08-22 11:10:52 +08:00
js/node_modules/xterm/dist/xterm.css:
cd js && \
npm install
bindata/static/js/gotty.js: js/src/* js/node_modules/webpack
cd js && \
npx webpack
2017-10-03 14:34:51 +08:00
js/node_modules/webpack:
cd js && \
npm install
2015-10-12 10:57:14 +08:00
2021-04-18 23:07:21 +08:00
README.md: README.md.in
2021-04-19 18:20:01 +08:00
git log --pretty=format:' * %aN' | \
grep -v 'S.*ren L. Hansen' | \
grep -v 'Iwasaki Yudai' | \
2021-04-19 18:20:01 +08:00
sort -u > contributors.txt.tmp
./gotty --help | sed '1,/GLOBAL OPTIONS/ d' > options.txt.tmp
sed -f README.md.sed < $< > $@
rm contributors.txt.tmp options.txt.tmp
2021-04-18 23:07:21 +08:00
2015-10-12 10:57:14 +08:00
tools:
go get github.com/mitchellh/gox
go get github.com/tcnksm/ghr
2016-04-13 15:01:14 +08:00
go get github.com/jteeuwen/go-bindata/...
2015-10-12 10:57:14 +08:00
test:
2016-04-13 15:01:14 +08:00
if [ `go fmt $(go list ./... | grep -v /vendor/) | wc -l` -gt 0 ]; then echo "go fmt error"; exit 1; fi
2015-10-12 10:57:14 +08:00
cross_compile:
GOARM=5 gox -os="darwin linux freebsd netbsd openbsd solaris" -arch="386 amd64 arm" -osarch="!darwin/386" -osarch="!darwin/arm" $(BUILD_OPTIONS) -output "${OUTPUT_DIR}/pkg/{{.OS}}_{{.Arch}}/{{.Dir}}"
2015-10-12 10:57:14 +08:00
targz:
mkdir -p ${OUTPUT_DIR}/dist
2017-08-23 10:15:41 +08:00
cd ${OUTPUT_DIR}/pkg/; for osarch in *; do (cd $$osarch; tar zcvf ../../dist/gotty_${VERSION}_$$osarch.tar.gz ./*); done;
2015-10-12 10:57:14 +08:00
2015-10-18 10:38:12 +08:00
shasums:
2016-08-11 15:48:03 +08:00
cd ${OUTPUT_DIR}/dist; sha256sum * > ./SHA256SUMS
2015-10-18 10:38:12 +08:00
2021-04-11 14:51:24 +08:00
release-artifacts: asset gotty cross_compile targz shasums
2015-10-12 10:57:14 +08:00
release:
ghr -draft ${VERSION} ${OUTPUT_DIR}/dist # -c ${GIT_COMMIT} --delete --prerelease -u sorenisanerd -r gotty ${VERSION}
2021-04-11 14:51:24 +08:00
clean:
2021-04-18 23:27:24 +08:00
rm -fr gotty builds bindata server/asset.go js/dist