summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoaquim Monteiro2020-04-04 19:53:32 +0100
committerJoaquim Monteiro2020-04-04 19:53:32 +0100
commitc70187c060ed36eed7aa4b0ebaa7a18425405f5b (patch)
treeddec91e959571aa14007af3a4b28c51124fa1533
downloadaur-ret-sync-ghidra-git.tar.gz
Initial commit
-rw-r--r--.SRCINFO19
-rw-r--r--.gitignore4
-rw-r--r--PKGBUILD43
3 files changed, 66 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..fb5d7f098781
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,19 @@
+pkgbase = ret-sync-ghidra-git
+ pkgdesc = Set of plugins that help to synchronize a debugging session with a disassembler - Ghidra plugin
+ pkgver = r54.ba51775
+ pkgrel = 1
+ url = https://github.com/bootleg/ret-sync
+ arch = any
+ license = GPL
+ makedepends = git
+ makedepends = gradle
+ depends = ghidra
+ depends = java-environment>=11
+ optdepends = ret-sync-gdb: GDB integration
+ provides = ret-sync-ghidra
+ conflicts = ret-sync-ghidra
+ source = git+https://github.com/bootleg/ret-sync
+ md5sums = SKIP
+
+pkgname = ret-sync-ghidra-git
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..66663c8a3516
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+pkg/
+src/
+ret-sync/
+*.pkg*
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..6e4bae5b3ca7
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,43 @@
+# Maintainer: gmes78 <gmes.078 at gmail dot com>
+
+pkgname=ret-sync-ghidra-git
+pkgver=r54.ba51775
+pkgrel=1
+pkgdesc="Set of plugins that help to synchronize a debugging session with a disassembler - Ghidra plugin"
+arch=(any)
+url="https://github.com/bootleg/ret-sync"
+license=('GPL')
+provides=("ret-sync-ghidra")
+conflicts=("ret-sync-ghidra")
+
+depends=('ghidra' 'java-environment>=11')
+makedepends=('git' 'gradle')
+optdepends=('ret-sync-gdb: GDB integration')
+
+source=('git+https://github.com/bootleg/ret-sync')
+md5sums=('SKIP')
+
+pkgver() {
+ cd "$srcdir/ret-sync"
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+}
+
+build() {
+ cd "$srcdir/ret-sync/ext_ghidra"
+ gradle -PGHIDRA_INSTALL_DIR=/opt/ghidra jar
+}
+
+package() {
+ cd "$srcdir/ret-sync/ext_ghidra"
+ mkdir -p "$pkgdir/opt/ghidra/Extensions/Ghidra/retsync"
+
+ cp -R data/ ghidra_scripts/ lib/ Module.manifest extension.properties "$pkgdir/opt/ghidra/Extensions/Ghidra/retsync/"
+ cp build/libs/retsync.jar "$pkgdir/opt/ghidra/Extensions/Ghidra/retsync/lib/retsync.jar"
+
+ sed -i 's/@extname@/retsync/' "$pkgdir/opt/ghidra/Extensions/Ghidra/retsync/extension.properties"
+ GHIDRA_VERSION=$(pacman -Q ghidra | cut -d ' ' -f2 | cut -d '-' -f1 | cut -d '.' -f-2) # returns '9.1' from 'ghidra 9.1.2-1'
+ sed -i "s/@extversion@/$GHIDRA_VERSION/" "$pkgdir/opt/ghidra/Extensions/Ghidra/retsync/extension.properties"
+
+ mkdir -p "$pkgdir/opt/ghidra/Ghidra/Extensions"
+ ln -s ../../Extensions/Ghidra/retsync "$pkgdir/opt/ghidra/Ghidra/Extensions/retsync"
+}