summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO14
-rw-r--r--PKGBUILD39
-rwxr-xr-xgumtree.sh2
-rw-r--r--patch24
4 files changed, 79 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..a18dd46db951
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,14 @@
+pkgbase = gumtree-git
+ pkgver = r985.c416c1f
+ pkgrel = 1
+ url = https://github.com/GumTreeDiff/gumtree
+ arch = any
+ license = LGPL3
+ depends = jdk17-openjdk
+ optdepends = gumtree-tree-sitter-git: tree-sitter parsers
+ source = gumtree::git+https://github.com/GumTreeDiff/gumtree
+ source = gumtree.sh
+ sha256sums = SKIP
+ sha256sums = 9a6e5c18cff2be9f1d03294017ee8392a6811f91e33ae382a08f3c23f92b8518
+
+pkgname = gumtree-git
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..58022aa85a61
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,39 @@
+pkgname=gumtree-git
+pkgver=r985.c416c1f
+pkgrel=1
+pkgdec='A syntax-aware diff tool'
+arch=('any')
+url='https://github.com/GumTreeDiff/gumtree'
+license=('LGPL3')
+depends=(
+ 'jdk17-openjdk'
+)
+optdepends=(
+ 'gumtree-tree-sitter-git: tree-sitter parsers'
+)
+source=(
+ "gumtree::git+https://github.com/GumTreeDiff/gumtree"
+ 'gumtree.sh'
+)
+sha256sums=(
+ SKIP
+ '9a6e5c18cff2be9f1d03294017ee8392a6811f91e33ae382a08f3c23f92b8518'
+)
+
+pkgver() {
+ cd "$srcdir/gumtree"
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
+}
+
+build() {
+ cd "$srcdir/gumtree"
+ JAVA_HOME="/usr/lib/jvm/java-17-openjdk" "./gradlew" build
+}
+
+package() {
+ cd "$srcdir/gumtree"
+ install -d "$pkgdir/usr/lib/gumtree" "$pkgdir/usr/bin"
+ install "../gumtree.sh" "$pkgdir/usr/lib/gumtree/gumtree.sh"
+ cp -r "./dist/build/install/gumtree" "$pkgdir/usr/lib"
+ ln -s "/usr/lib/gumtree/gumtree.sh" "$pkgdir/usr/bin/gumtree"
+}
diff --git a/gumtree.sh b/gumtree.sh
new file mode 100755
index 000000000000..9b6065ebc9f5
--- /dev/null
+++ b/gumtree.sh
@@ -0,0 +1,2 @@
+#!/bin/bash -e
+JAVA_HOME="/usr/lib/jvm/java-17-openjdk" PATH="$PATH:/usr/lib/gumtree-tree-sitter-git" "/usr/lib/gumtree/bin/gumtree" "$@"
diff --git a/patch b/patch
new file mode 100644
index 000000000000..915f41dff81e
--- /dev/null
+++ b/patch
@@ -0,0 +1,24 @@
+diff --git a/gen.jdt/build.gradle b/gen.jdt/build.gradle
+index 0dec746..3366c29 100644
+--- a/gen.jdt/build.gradle
++++ b/gen.jdt/build.gradle
+@@ -1,5 +1,18 @@
+ description = 'GumTree tree generator for Java code (Eclipse JDT based).'
+
+ dependencies {
+- implementation 'org.eclipse.jdt:org.eclipse.jdt.core:3.26.0'
++ implementation('org.eclipse.jdt:org.eclipse.jdt.core') { version { strictly '3.26.0' } }
++ implementation('org.eclipse.platform:org.eclipse.core.resources') { version { strictly '3.15.0' } }
++ implementation('org.eclipse.platform:org.eclipse.core.expressions') { version { strictly '3.7.100' } }
++ implementation('org.eclipse.platform:org.eclipse.core.runtime') { version { strictly '3.22.0' } }
++ implementation('org.eclipse.platform:org.eclipse.osgi') { version { strictly '3.16.300' } }
++ implementation('org.eclipse.platform:org.eclipse.equinox.common') { version { strictly '3.15.0' } }
++ implementation('org.eclipse.platform:org.eclipse.core.jobs') { version { strictly '3.11.0' } }
++ implementation('org.eclipse.platform:org.eclipse.equinox.registry') { version { strictly '3.10.200' } }
++ implementation('org.eclipse.platform:org.eclipse.equinox.preferences') { version { strictly '3.8.200' } }
++ implementation('org.eclipse.platform:org.eclipse.core.contenttype') { version { strictly '3.7.1000' } }
++ implementation('org.eclipse.platform:org.eclipse.equinox.app') { version { strictly '1.5.100' } }
++ implementation('org.eclipse.platform:org.eclipse.core.filesystem') { version { strictly '1.9.0' } }
++ implementation('org.eclipse.platform:org.eclipse.text') { version { strictly '3.12.0' } }
++ implementation('org.eclipse.platform:org.eclipse.core.commands') { version { strictly '3.10.0' } }
+ }