ghidra: 9.0.4 bump

This commit is contained in:
blshkv 2019-05-25 11:10:06 +08:00
parent 9ffa8cce30
commit 8e819b8ebc
No known key found for this signature in database
GPG key ID: 273E3E90D1A6294F
3 changed files with 83 additions and 1 deletions

View file

@ -1,6 +1,8 @@
DIST AXMLPrinter2.jar 24552 BLAKE2B 3ff09da948c2962919927ad35f8d38a13391c763a83962f8fdce90ec4720430b00be891f68fc149f62180ddf5f5e818af4e6b6a153d1a55e871f181e930d2b7b SHA512 c1168ec913f1fbb0675915d4fd865ec9a8e8573f6c8aedcb6e68166f61f11aeaececc7548d54d78134843c0102c57d6350973f6d3027d0ffdae52a5c57a7f601
DIST Ghidra_9.0.2_build.tar.gz 59223111 BLAKE2B d630122a66bac1933ff76a7913970e4b17845f8d4c47ab0fa8b62115737725e6cbc5ddbb14d1afb5e06bca43ac6674223953935d0fd9149c0a7f938d8130cd88 SHA512 5f05efae03ee25f83527c9659669d813d39d9700685a41f4f29297444c5d8d71f98769a125fa65a7cd877d5c29240681b35f5a688e5283b9cdd97d06f214256f
DIST Ghidra_9.0.4_build.tar.gz 59223815 BLAKE2B 9bd51580fe262d854ecb8ff2549ab3b34b388f7cdd6579bb4f1481c92667347e02b9a9505397761b798c7b8c9e925679c87b5eaefe9aebced0d184a9000897bf SHA512 67c896af79dff6375b6309f7c16161757203808ab81c28557f2b851eb1e9b851989c7570951dcca69f1f4e92961b8488f0f66b17f918ba9a3b9a9a92a2448f17
DIST dex-tools-2.0.zip 2362460 BLAKE2B 464f2a143f1c8720eddd4d1c7db5a6f681db1091518d915b0d7807c12d021c8a734d8980bccfd417bc60297647b33ed0b7cc1e004716804bb9e25ee99f29f8ad SHA512 c4a6c72ea09b58a44fcb8918cfada600467f10f99a02b53d2436ac68295e73c8daf9ba0a8bc7160ba1e28e87f032ee034435ebe40af35b6e2fe9fa4607581358
DIST ghidra-9.0.2-gradle-dependencies.tar.gz 55964707 BLAKE2B f80aa49dfd111235a09570fa0734773dbb969902f39b74f8ee1412dd7d8624cf34ca4cd5b263b807ac301eb2d993d40fe489ef4bdd19cf5baa411f9d1eaa91cb SHA512 217cd5e45cd1c2e044925ce9bfd7d8e5665e18eb6a5ee70fee6afcd3571e2932e4ef850c33bb28f06c1ed96c485123a7a542270d217d4de431430a43bddd004d
DIST ghidra-9.0.4-gradle-dependencies.tar.gz 55722951 BLAKE2B 12bd1c4b3beace3fde05eb15af2c7fff4c796732c76259893b9c75e9c31b12835fb1f4fe445e038c3a91688d4791b55f862aa675b2ffb9e4580d3f35c34d5008 SHA512 c1ff08cf40e172d653ea858da4d23c7d4fb8ee2d981ee11565f8d3070eef96e6f1c3965110f2537afcdba324034db369e5912c540fb21fde3bb99d9b3d958bda
DIST hfsexplorer-0_21-bin.zip 1473278 BLAKE2B e9d2a3fae4da8046a17ce5e6828b4d1ff27da6384aac4be3864fe2c16f83bb95cb728eaeec9a42c3e1febaef98ba9357bfc3744b4950deb4b783d36e723d6cc0 SHA512 b85b4316115695acc78cc7c675c673058c05a238451562be0c6a48b2d11a28e5645a42cb62cdf063be015369df26201dfab6cf2e60f39e6468d1d53b23f94415
DIST yajsw-stable-12.12.zip 25051676 BLAKE2B b0deae56e2dbde49271f1a31188edba74001193071b1d12d6c000db7883489faab290f2b2dcb47a10d6fa9a447a93d319ea4a3edd864095834dba280e44eaec6 SHA512 0ff5a228ae1c5251c8ba59f9bcd9b4a199b0caaf688f6eccba42c3d227784d8f56f9164b2fad73fc173ec314340c036144123ce152fe911013df5598bd708944

View file

@ -1,10 +1,10 @@
allprojects {
repositories {
flatDir name:'flat', dirs:["S_DIR/.gradle/flatRepo"]
if ('allow' == System.properties['build.network_access']) {
mavenCentral()
jcenter()
} else {
flatDir name:'flat', dirs:["S_DIR/.gradle/flatRepo"]
maven {
url "S_DIR/dependencies"
}

View file

@ -0,0 +1,80 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="A software reverse engineering framework"
HOMEPAGE="https://www.nsa.gov/ghidra"
SRC_URI="https://github.com/NationalSecurityAgency/${PN}/archive/Ghidra_${PV}_build.tar.gz
https://github.com/pxb1988/dex2jar/releases/download/2.0/dex-tools-2.0.zip
https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/android4me/AXMLPrinter2.jar
https://sourceforge.net/projects/catacombae/files/HFSExplorer/0.21/hfsexplorer-0_21-bin.zip
mirror://sourceforge/yajsw/yajsw/yajsw-stable-12.12.zip
https://dev.pentoo.ch/~blshkv/distfiles/${P}-gradle-dependencies.tar.gz"
# run: pentoo/scripts/gradle_dependencies.py from "${S}" directory to generate dependencies
# tar cvzf ./ghidra-9.0.4-gradle-dependencies.tar.gz -C /var/tmp/portage/dev-util/ghidra-9.0.4/work ghidra-Ghidra_9.0.4_build/dependencies/
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RDEPEND=">=virtual/jre-1.8"
DEPEND="${RDEPEND}
>=virtual/jdk-11
dev-java/gradle-bin:5.2.1
sys-devel/bison
dev-java/jflex
app-arch/unzip"
S="${WORKDIR}/ghidra-Ghidra_${PV}_build"
src_unpack() {
#https://github.com/NationalSecurityAgency/ghidra/blob/05ad1aa9f3a28721467ae288be6769f226f7147d/DevGuide.md
unpack ${A}
mkdir -p "${S}/.gradle/flatRepo" || die "(1) mkdir failed"
cd "${S}/.gradle"
unpack dex-tools-2.0.zip
cp dex2jar-2.0/lib/dex-*.jar ./flatRepo || die "(3) cp failed"
cp "${DISTDIR}/AXMLPrinter2.jar" ./flatRepo || die "(4) cp failed"
unpack hfsexplorer-0_21-bin.zip
cp lib/*.jar ./flatRepo || die "(5) cp failed"
mkdir -p "${WORKDIR}"/ghidra.bin/Ghidra/Features/GhidraServer/ || die "(6) mkdir failed"
cp "${DISTDIR}"/yajsw-stable-12.12.zip "${WORKDIR}"/ghidra.bin/Ghidra/Features/GhidraServer/ || die "(7) cp failed"
cd "${S}"
}
src_prepare() {
sed -i 's|gradle.gradleVersion != "5.0"|gradle.gradleVersion <= "5.0"|g' build.gradle || die "(9) sed failed"
mkdir -p ".gradle/init.d" || die "(10) mkdir failed"
cp "${FILESDIR}"/repos.gradle .gradle/init.d || die "(11) cp failed"
sed -i "s|S_DIR|${S}|g" .gradle/init.d/repos.gradle || die "(12) sed failed"
#remove build date so we can unpack dist.zip later
sed -i "s|_\${rootProject.BUILD_DATE_SHORT}||g" gradleScripts/distribution.gradle || die "(13) sed failed"
eapply_user
}
src_compile() {
export _JAVA_OPTIONS="$_JAVA_OPTIONS -Duser.home=$HOME"
GRADLE="gradle-5.2.1 --gradle-user-home .gradle --console rich --no-daemon"
GRADLE="${GRADLE} --offline"
${GRADLE} yajswDevUnpack -x check -x test || die
${GRADLE} buildGhidra -x check -x test || die
}
src_install() {
#it is easier to unpack existing archive
dodir /usr/share
unzip build/dist/ghidra_9.0.x-DEV_PUBLIC_linux64.zip -d "${ED}"/usr/share/ || die "unable to unpack dist zip"
mv "${ED}"/usr/share//ghidra_9.0.x-DEV "${ED}"/usr/share/ghidra || die "mv failed"
#fixme: add doc flag
rm -r "${ED}"/usr/share/ghidra/docs/ || die "rm failed"
dosym "${EPREFIX}"/usr/share/ghidra/ghidraRun /usr/bin/ghidra
}