aboutsummaryrefslogtreecommitdiff
path: root/scripts/ci
blob: f73df984db9cc4a16de5bbe3fdf096401156b21c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/bin/bash
mkdir -p ../.gopath
mkdir -p target
mkdir -p .tmp
export GOPATH=$(dirname $(pwd))/.gopath
export SHORTHEAD=${HEAD:0:7}
export VERSION=$(awk '/^Version:/ { print $2 }' deb/DEBIAN/control | sed -E 's/\-[0-9]+$//')

export CGO_ENABLED=0

echo "Compiling for linux/amd64"
go build -o "target/$PROJECT_NAME-linux-amd64"
echo "Compiling for linux/386"
GOARCH=386 go build -o "target/$PROJECT_NAME-linux-386"
echo "Compiling for linux/arm"
GOARCH=arm go build -o "target/$PROJECT_NAME-linux-arm"
echo "Compiling for linux/arm64"
GOARCH=arm64 go build -o "target/$PROJECT_NAME-linux-arm64"
echo "Compiling for darwin/amd64"
GOOS=darwin go build -o "target/$PROJECT_NAME-darwin-amd64"

echo "Packaging for debian (linux/amd64)"
mkdir -p deb/usr/bin/

cp target/$PROJECT_NAME-linux-amd64 deb/usr/bin/gomuks

git clone https://github.com/tulir/tcell.git .tmp/tcell
mkdir -p deb/usr/share/tcell/
rm -rf deb/usr/share/tcell/database
cp -r .tmp/tcell/terminfo/database deb/usr/share/tcell

sed -i.bak -E 's/(Version: [0-9]+\.[0-9]+\.[0-9]+\-[0-9]+)/\1+'$SHORTHEAD'/' deb/DEBIAN/control
chmod -R -s deb/DEBIAN
chmod -R 0755 deb/DEBIAN
dpkg-deb --build deb 'target/'$PROJECT_NAME'_linux_amd64.deb'
mv -f deb/DEBIAN/control.bak deb/DEBIAN/control

mkdir -p /srv/downloads/programs/gomuks/$VERSION-$SHORTHEAD
mv target/* /srv/downloads/programs/gomuks/$VERSION-$SHORTHEAD/