diff options
author | Egor Kovetskiy | 2018-02-26 15:47:32 +0300 |
---|---|---|
committer | Egor Kovetskiy | 2018-02-26 15:47:32 +0300 |
commit | e2bc3dc0fa1c97a1a0c88240df1ffe88c2973d78 (patch) | |
tree | 9f5697c9e1c4294b03e21421d0bf469791cda345 | |
download | aur-e2bc3dc0fa1c97a1a0c88240df1ffe88c2973d78.tar.gz |
sync github.com/kovetskiy/pkgbuilds
-rw-r--r-- | .SRCINFO | 18 | ||||
-rw-r--r-- | PKGBUILD | 69 | ||||
-rw-r--r-- | fix-package-name.patch | 25 |
3 files changed, 112 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..f2e708a9a57b --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,18 @@ +# Generated by mksrcinfo v8 +# Mon Feb 26 12:47:27 UTC 2018 +pkgbase = goimports-improved-git + pkgdesc = goimports that doesn't write package name before import path + pkgver = 20180223.2328_2ae76fd1 + pkgrel = 1 + arch = i686 + arch = x86_64 + license = GPL + makedepends = go + makedepends = git + source = goimports-improved-git::git://github.com/golang/tools#branch=master + source = fix-package-name.patch + md5sums = SKIP + md5sums = SKIP + +pkgname = goimports-improved-git + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..9457d709dd78 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,69 @@ +# Maintainer: Egor Kovetskiy <e.kovetskiy@gmail.com> +pkgname=goimports-improved-git +pkgver=20180223.2328_2ae76fd1 +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 +} diff --git a/fix-package-name.patch b/fix-package-name.patch new file mode 100644 index 000000000000..404156764fd1 --- /dev/null +++ b/fix-package-name.patch @@ -0,0 +1,25 @@ +diff --git a/imports/fix.go b/imports/fix.go +index de660879..380ec8e9 100644 +--- a/imports/fix.go ++++ b/imports/fix.go +@@ -908,9 +908,19 @@ func findImportGoPath(pkgName string, symbols map[string]bool, filename string) + if pkg == nil { + continue + } ++ + // If the package name in the source doesn't match the import path's base, + // return true so the rewriter adds a name (import foo "github.com/bar/go-foo") +- needsRename := path.Base(pkg.importPath) != pkgName ++ baseName := path.Base(pkg.importPath) ++ for _, prefix := range []string{"go.", "go-"} { ++ baseName = strings.TrimPrefix(baseName, prefix) ++ } ++ for _, suffix := range []string{".go", "-go"} { ++ baseName = strings.TrimSuffix(baseName, suffix) ++ } ++ ++ needsRename := baseName != pkgName ++ + return pkg.importPathShort, needsRename, nil + } + return "", false, nil |