mirror of
https://github.com/Maschell/GhidraRPXLoader.git
synced 2024-11-14 20:35:11 +01:00
66 lines
2.3 KiB
Groovy
66 lines
2.3 KiB
Groovy
/* ###
|
|
* IP: GHIDRA
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
// Builds a Ghidra Extension for a given Ghidra installation.
|
|
//
|
|
// An absolute path to the Ghidra installation directory must be supplied either by setting the
|
|
// GHIDRA_INSTALL_DIR environment variable or Gradle project property:
|
|
//
|
|
// > export GHIDRA_INSTALL_DIR=<Absolute path to Ghidra>
|
|
// > gradle
|
|
//
|
|
// or
|
|
//
|
|
// > gradle -PGHIDRA_INSTALL_DIR=<Absolute path to Ghidra>
|
|
//
|
|
// Gradle should be invoked from the directory of the project to build. Please see the
|
|
// application.gradle.version property in <GHIDRA_INSTALL_DIR>/Ghidra/application.properties
|
|
// for the correction version of Gradle to use for the Ghidra installation you specify.
|
|
|
|
//----------------------START "DO NOT MODIFY" SECTION------------------------------
|
|
def ghidraInstallDir
|
|
|
|
if (System.env.GHIDRA_INSTALL_DIR) {
|
|
ghidraInstallDir = System.env.GHIDRA_INSTALL_DIR
|
|
}
|
|
else if (project.hasProperty("GHIDRA_INSTALL_DIR")) {
|
|
ghidraInstallDir = project.getProperty("GHIDRA_INSTALL_DIR")
|
|
}
|
|
|
|
if (ghidraInstallDir) {
|
|
apply from: new File(ghidraInstallDir).getCanonicalPath() + "/support/buildExtension.gradle"
|
|
}
|
|
else {
|
|
throw new GradleException("GHIDRA_INSTALL_DIR is not defined!")
|
|
}
|
|
//----------------------END "DO NOT MODIFY" SECTION-------------------------------
|
|
jar {
|
|
duplicatesStrategy 'exclude'
|
|
}
|
|
repositories {
|
|
// Declare dependency repositories here. This is not needed if dependencies are manually
|
|
// dropped into the lib/ directory.
|
|
// See https://docs.gradle.org/current/userguide/declaring_repositories.html for more info.
|
|
// Ex: mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
// Any external dependencies added here will automatically be copied to the lib/ directory when
|
|
// this extension is built.
|
|
}
|
|
|
|
// Exclude additional files from the built extension
|
|
// Ex: buildExtension.exclude '.idea/**'
|