summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorEgor Kovetskiy2018-02-26 15:47:32 +0300
committerEgor Kovetskiy2018-02-26 15:47:32 +0300
commite2bc3dc0fa1c97a1a0c88240df1ffe88c2973d78 (patch)
tree9f5697c9e1c4294b03e21421d0bf469791cda345
downloadaur-e2bc3dc0fa1c97a1a0c88240df1ffe88c2973d78.tar.gz
sync github.com/kovetskiy/pkgbuilds
-rw-r--r--.SRCINFO18
-rw-r--r--PKGBUILD69
-rw-r--r--fix-package-name.patch25
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