mirror of
https://github.com/NationalSecurityAgency/ghidra
synced 2024-10-30 11:30:12 +00:00
63 lines
2.7 KiB
Groovy
63 lines
2.7 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.
|
|
*/
|
|
apply from: "gradle/support/settingsUtil.gradle"
|
|
|
|
/*******************************************************************************************
|
|
* Include all the standard Ghidra modules. See documentation below for more information
|
|
* about includeProjects and includeProcessProjects.
|
|
*******************************************************************************************/
|
|
|
|
includeProjects('Ghidra/Dev')
|
|
includeProjects('Ghidra/Extensions')
|
|
includeProjects('Ghidra/Framework')
|
|
includeProjects('Ghidra/Features')
|
|
includeProjects('Ghidra/Configurations')
|
|
includeProjects('Ghidra/Processors')
|
|
includeProjects('Ghidra/Test')
|
|
includeProjects('GPL')
|
|
|
|
/*******************************************************************************************
|
|
* Include miscellaneous support modules
|
|
*******************************************************************************************/
|
|
includeProject('JsonDoclet', 'GhidraBuild/BuildFiles', true)
|
|
includeProject('LaunchSupport', 'GhidraBuild', true)
|
|
includeProject('Skeleton', 'GhidraBuild', true)
|
|
includeProject('BuildFiles', 'GhidraBuild', true)
|
|
includeProject('GhidraTest', '.', true)
|
|
includeProject('decompile', 'Ghidra/Features/Decompiler/src', true)
|
|
includeProject('RuntimeScripts', 'Ghidra', true)
|
|
includeProject('IDAPro', 'GhidraBuild', true)
|
|
includeProject('GhidraDocs', '.', true)
|
|
includeProjects('GhidraBuild/EclipsePlugins/GhidraDev') // requires Eclipse PDE
|
|
includeProjects('GhidraBuild/EclipsePlugins/GhidraSleighEditor') // requires Eclipse DSL
|
|
|
|
/*******************************************************************************************
|
|
* Apply additional Ghidra respositories
|
|
*******************************************************************************************/
|
|
File extensionsList = file("ghidra.repos.config")
|
|
if (extensionsList.isFile()) {
|
|
extensionsList.eachLine { line ->
|
|
line = line.trim()
|
|
if (line == "" || line.startsWith("#")) {
|
|
return // Skip just this one
|
|
}
|
|
File extraSettings = file("../$line/extraSettings.gradle")
|
|
if (extraSettings.exists()) {
|
|
assert extraSettings.parentFile.parentFile == rootProject.projectDir.parentFile : "Extension must be sibling of ghidra repository"
|
|
apply from: extraSettings.absolutePath
|
|
}
|
|
}
|
|
}
|