GP-5078: Improvements to Ghidra Module directory layout

This commit is contained in:
Ryan Kurtz 2024-10-30 11:46:25 -04:00
parent 73224da27b
commit faf55a8de6
243 changed files with 482 additions and 238 deletions

View file

@ -168,13 +168,14 @@
<setEntry value="com.google.guava@default:default"/>
<setEntry value="com.ibm.icu@default:default"/>
<setEntry value="com.python.pydev.analysis*6.3.1.201802272029@default:default"/>
<setEntry value="com.sun.el.javax.el@default:default"/>
<setEntry value="com.sun.jna.platform@default:default"/>
<setEntry value="com.sun.jna@default:default"/>
<setEntry value="jakarta.annotation-api@default:default"/>
<setEntry value="jakarta.annotation-api*1.3.5@default:default"/>
<setEntry value="jakarta.annotation-api*2.1.1@default:default"/>
<setEntry value="jakarta.inject.jakarta.inject-api*1.0.5@default:default"/>
<setEntry value="jakarta.inject.jakarta.inject-api*2.0.1@default:default"/>
<setEntry value="jakarta.servlet-api@default:default"/>
<setEntry value="javax.annotation@default:default"/>
<setEntry value="javax.xml@default:default"/>
<setEntry value="jaxen@default:default"/>
<setEntry value="org.apache.aries.spifly.dynamic.bundle@default:default"/>
@ -183,6 +184,8 @@
<setEntry value="org.apache.batik.i18n@default:default"/>
<setEntry value="org.apache.batik.util@default:default"/>
<setEntry value="org.apache.commons.cli@default:default"/>
<setEntry value="org.apache.commons.collections@default:default"/>
<setEntry value="org.apache.commons.commons-beanutils@default:default"/>
<setEntry value="org.apache.commons.commons-codec@default:default"/>
<setEntry value="org.apache.commons.commons-io@default:default"/>
<setEntry value="org.apache.commons.jxpath@default:default"/>
@ -381,10 +384,13 @@
<setEntry value="org.eclipse.wst.xsd.core@default:default"/>
<setEntry value="org.eclipse.xsd@default:default"/>
<setEntry value="org.gradle.toolingapi@default:default"/>
<setEntry value="org.hamcrest.core*2.2.0.v20230809-1000@default:default"/>
<setEntry value="org.hamcrest.core@default:default"/>
<setEntry value="org.hamcrest@default:default"/>
<setEntry value="org.jdom2@default:default"/>
<setEntry value="org.jdom@default:default"/>
<setEntry value="org.junit@default:default"/>
<setEntry value="org.mortbay.jasper.apache-el@default:default"/>
<setEntry value="org.mortbay.jasper.apache-jsp@default:default"/>
<setEntry value="org.objectweb.asm.commons@default:default"/>
<setEntry value="org.objectweb.asm.tree.analysis@default:default"/>
<setEntry value="org.objectweb.asm.tree@default:default"/>

View file

@ -3,7 +3,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: GhidraDev
Bundle-SymbolicName: ghidra.ghidradev;singleton:=true
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.0.1.qualifier
Bundle-Activator: ghidradev.Activator
Require-Bundle: org.eclipse.ant.core;bundle-version="3.7.200",
org.eclipse.buildship.core;bundle-version="3.1.8",

View file

@ -30,6 +30,9 @@ change with future releases.
12. [Building](#building)
## Change History
__4.0.1:__
* New Ghidra module projects now contain a default `README.md` file.
__4.0.0:__
* GhidraDev has been upgraded to be compatible with Ghidra 11.2 and later. It is not backwards
compatible with versions of Ghidra prior to 11.2. Older versions of GhidraDev will report an

View file

@ -193,6 +193,11 @@ public class GhidraModuleUtils {
// Update language ant properties file
GhidraModuleUtils.writeAntProperties(project, ghidraLayout);
// Create a README
try (PrintWriter out = new PrintWriter(new File(projectDir, "README.md"))) {
out.println("# " + project.getName());
}
// Refactor/rename the source files, package, and help files
String packageName = project.getName().toLowerCase();
for (ModuleTemplateType moduleTemplateType : moduleTemplateTypes) {