mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-03 17:59:46 +02:00
41 lines
1.1 KiB
Bash
Executable file
41 lines
1.1 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
#----------------------------------------
|
|
# Build Native Binaries
|
|
#
|
|
# args: forwarded to gradle (-i, -s, etc)
|
|
#----------------------------------------
|
|
|
|
# Make sure gradle is on the path
|
|
if ! [ -x "$(command -v gradle)" ] ; then
|
|
echo "Gradle not found on the PATH."
|
|
exit 1
|
|
fi
|
|
|
|
# Resolve symbolic link if present and get the directory this script lives in.
|
|
# NOTE: "readlink -f" is best but works on Linux only, "readlink" will only work if your PWD
|
|
# contains the link you are calling (which is the best we can do on macOS), and the "echo" is the
|
|
# fallback, which doesn't attempt to do anything with links.
|
|
SCRIPT_FILE="$(readlink -f "$0" 2>/dev/null || readlink "$0" 2>/dev/null || echo "$0")"
|
|
SCRIPT_DIR="${SCRIPT_FILE%/*}"
|
|
|
|
buildGhidraNatives () {
|
|
echo "Building natives in Ghidra..."
|
|
pushd ${SCRIPT_DIR}/../Ghidra &>/dev/null
|
|
gradle "$@" buildNatives
|
|
result=$?
|
|
popd &>/dev/null
|
|
return $result
|
|
}
|
|
|
|
buildGplNatives () {
|
|
echo "Building natives in GPL..."
|
|
pushd ${SCRIPT_DIR}/../GPL &>/dev/null
|
|
gradle "$@" buildNatives
|
|
result=$?
|
|
popd &>/dev/null
|
|
return $result
|
|
}
|
|
|
|
buildGhidraNatives "$@" && buildGplNatives "$@"
|
|
|