summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 5cc5214f1c4236aaf407cc6657423a83c034401c (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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Maintainer: Egor Kovetskiy <e.kovetskiy@gmail.com>
pkgname=goimports-improved-git
pkgver=${PKGVER:-autogenerated}
pkgrel=${PKGREL:-1}
pkgdesc="goimports that doesn't write package name before import path"
arch=('i686' 'x86_64')
license=('GPL')
depends=(
)
makedepends=(
    'go'
    'git'
)

source=(
    "$pkgname::git://github.com/golang/tools#branch=${BRANCH:-master}"
    "fix-package-name.patch"
)

md5sums=(
    'SKIP'
    'SKIP'
)

backup=(
)

pkgver() {
    if [[ "$PKGVER" ]]; then
        echo "$PKGVER"
        return
    fi

    cd "$srcdir/$pkgname"
    local date=$(git log -1 --format="%cd" --date=short | sed s/-//g)
    local count=$(git rev-list --count HEAD)
    local commit=$(git rev-parse --short HEAD)
    echo "$date.${count}_$commit"
}

build() {
    if [ -L "$srcdir/$pkgname" ]; then
        rm "$srcdir/$pkgname" -rf
        mv "$srcdir/go/src/$pkgname/" "$srcdir/$pkgname"
    fi

    rm -rf "$srcdir/go/src"
    mkdir -p "$srcdir/go/src/golang.org/x/"

    mv "$srcdir/$pkgname" "$srcdir/go/src/golang.org/x/tools/"
    cd "$srcdir/go/src/golang.org/x/tools/"

    git submodule update --init

    export GOPATH="$srcdir/go"
    export GOBIN=""

    patch -p1 < $srcdir/../fix-package-name.patch

    go get -v \
        -gcflags "-trimpath $GOPATH/src" \
        ./cmd/goimports
}

package() {
    find "$srcdir/go/bin/" -type f -executable | while read filename; do
        install -DT "$filename" "$pkgdir/usr/bin/$(basename $filename)"
    done
}