diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/certification.manifest b/GhidraBuild/EclipsePlugins/SleighEditor/certification.manifest index 76d9ac723b..2a70edbb54 100644 --- a/GhidraBuild/EclipsePlugins/SleighEditor/certification.manifest +++ b/GhidraBuild/EclipsePlugins/SleighEditor/certification.manifest @@ -1,22 +1,27 @@ ##VERSION: 2.0 ##MODULE IP: BSD ##MODULE IP: Eclipse Public License 1.0 +ghidra.xtext.sleigh.feature/build.gradle||GHIDRA||||END| ghidra.xtext.sleigh.feature/build.properties||GHIDRA||||END| ghidra.xtext.sleigh.feature/category.xml||GHIDRA||||END| ghidra.xtext.sleigh.feature/feature.xml||GHIDRA||||END| ghidra.xtext.sleigh.ide/META-INF/MANIFEST.MF||GHIDRA||||END| +ghidra.xtext.sleigh.ide/build.gradle||GHIDRA||||END| ghidra.xtext.sleigh.ide/build.properties||GHIDRA||||END| ghidra.xtext.sleigh.ide/src/ghidra/xtext/sleigh/ide/SleighIdeModule.xtend||GHIDRA||||END| ghidra.xtext.sleigh.ide/src/ghidra/xtext/sleigh/ide/SleighIdeSetup.xtend||GHIDRA||||END| ghidra.xtext.sleigh.tests/META-INF/MANIFEST.MF||GHIDRA||||END| +ghidra.xtext.sleigh.tests/build.gradle||GHIDRA||||END| ghidra.xtext.sleigh.tests/build.properties||GHIDRA||||END| ghidra.xtext.sleigh.tests/src/ghidra/xtext/sleigh/tests/CrossReferenceTest.xtend||GHIDRA||||END| ghidra.xtext.sleigh.tests/src/ghidra/xtext/sleigh/tests/SleighMacroTest.xtend||GHIDRA||||END| ghidra.xtext.sleigh.tests/src/ghidra/xtext/sleigh/tests/SleighParsingTest.xtend||GHIDRA||||END| ghidra.xtext.sleigh.tests/src/ghidra/xtext/sleigh/tests/SleighScopeTest.xtend||GHIDRA||||END| ghidra.xtext.sleigh.ui.tests/META-INF/MANIFEST.MF||GHIDRA||||END| +ghidra.xtext.sleigh.ui.tests/build.gradle||GHIDRA||||END| ghidra.xtext.sleigh.ui.tests/build.properties||GHIDRA||||END| ghidra.xtext.sleigh.ui/META-INF/MANIFEST.MF||GHIDRA||||END| +ghidra.xtext.sleigh.ui/build.gradle||GHIDRA||||END| ghidra.xtext.sleigh.ui/build.properties||GHIDRA||||END| ghidra.xtext.sleigh.ui/plugin.xml||GHIDRA||||END| ghidra.xtext.sleigh.ui/src/ghidra/xtext/sleigh/ui/SleighEObjectHoverProvider.xtend||GHIDRA||||END| @@ -30,6 +35,7 @@ ghidra.xtext.sleigh.ui/src/ghidra/xtext/sleigh/ui/quickfix/SleighQuickfixProvide ghidra.xtext.sleigh/.launch/Generate Sleigh (sleigh) Language Infrastructure.launch||GHIDRA||||END| ghidra.xtext.sleigh/.launch/Launch Runtime Eclipse.launch||GHIDRA||||END| ghidra.xtext.sleigh/META-INF/MANIFEST.MF||GHIDRA||||END| +ghidra.xtext.sleigh/build.gradle||GHIDRA||||END| ghidra.xtext.sleigh/build.properties||GHIDRA||||END| ghidra.xtext.sleigh/plugin.xml||GHIDRA||||END| ghidra.xtext.sleigh/src/ghidra/xtext/sleigh/GenerateSleigh.mwe2||GHIDRA||||END| diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/build.gradle b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/build.gradle new file mode 100644 index 0000000000..631144ce56 --- /dev/null +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/build.gradle @@ -0,0 +1,12 @@ +// This project requires the Eclipse DSL plugin. To create Eclipse files for this project, run +// "gradle eclipse -PeclipseDSL" +if (hasProperty("eclipseDSL")) { + apply plugin: 'eclipse' + eclipse { + project { + name = 'Eclipse SleighEditor Feature' + buildCommand 'org.eclipse.pde.FeatureBuilder' + natures 'org.eclipse.pde.FeatureNature' + } + } +} diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/category.xml b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/category.xml index 50b3e3542c..21b6add2a1 100644 --- a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/category.xml +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/category.xml @@ -3,5 +3,5 @@ - + diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/feature.xml b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/feature.xml index 07ab50de59..65831c9255 100644 --- a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/feature.xml +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.feature/feature.xml @@ -5,22 +5,22 @@ version="1.0.0.qualifier" provider-name="Ghidra"> + + None + + - /* ### - * 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. - */ + 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. diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ide/META-INF/MANIFEST.MF b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ide/META-INF/MANIFEST.MF index 0cf44b6aa1..fffdce6b63 100644 --- a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ide/META-INF/MANIFEST.MF +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ide/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Automatic-Module-Name: ghidra.xtext.sleigh.ide Bundle-ManifestVersion: 2 Bundle-Name: ghidra.xtext.sleigh.ide -Bundle-Vendor: My Company +Bundle-Vendor: Ghidra Bundle-Version: 1.0.0.qualifier Bundle-SymbolicName: ghidra.xtext.sleigh.ide; singleton:=true Bundle-ActivationPolicy: lazy @@ -10,6 +10,6 @@ Require-Bundle: ghidra.xtext.sleigh, org.eclipse.xtext.ide, org.eclipse.xtext.xbase.ide, org.antlr.runtime;bundle-version="[3.2.0,3.2.1)" -Bundle-RequiredExecutionEnvironment: JavaSE-11 +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Export-Package: ghidra.xtext.sleigh.ide.contentassist.antlr, ghidra.xtext.sleigh.ide.contentassist.antlr.internal diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ide/build.gradle b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ide/build.gradle new file mode 100644 index 0000000000..346edff8af --- /dev/null +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ide/build.gradle @@ -0,0 +1,40 @@ +apply plugin: 'java' + +// This project requires the Eclipse DSL plugin. To create Eclipse files for this project, run +// "gradle eclipse -PeclipseDSL" +if (hasProperty("eclipseDSL")) { + apply plugin: 'eclipse' + eclipse { + project { + name = 'Eclipse SleighEditor IDE' + buildCommand 'org.eclipse.pde.ManifestBuilder' + buildCommand 'org.eclipse.pde.SchemaBuilder' + buildCommand 'org.eclipse.xtext.ui.shared.xtextBuilder' + natures 'org.eclipse.pde.PluginNature' + natures 'org.eclipse.xtext.ui.shared.xtextNature' + classpath.file { + def requiredPlugins = 'org.eclipse.pde.core.requiredPlugins' + beforeMerged { classpath -> + classpath.entries.removeAll { entry -> + entry.path == requiredPlugins + } + } + whenMerged { classpath -> + withXml { + def node = it.asNode() + node.appendNode('classpathentry', [kind: 'con', path: requiredPlugins]) + } + } + } + } + } + sourceSets { + main { + java { + srcDir 'src' + srcDir 'src-gen' + srcDir 'xtend-gen' + } + } + } +} diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.tests/META-INF/MANIFEST.MF b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.tests/META-INF/MANIFEST.MF index c7f00b95cc..bae83947c1 100644 --- a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.tests/META-INF/MANIFEST.MF +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.tests/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Automatic-Module-Name: ghidra.xtext.sleigh.tests Bundle-ManifestVersion: 2 Bundle-Name: ghidra.xtext.sleigh.tests -Bundle-Vendor: My Company +Bundle-Vendor: Ghidra Bundle-Version: 1.0.0.qualifier Bundle-SymbolicName: ghidra.xtext.sleigh.tests; singleton:=true Bundle-ActivationPolicy: lazy @@ -11,5 +11,5 @@ Require-Bundle: ghidra.xtext.sleigh, org.eclipse.xtext.testing, org.eclipse.xtext.xbase.testing, org.eclipse.xtext.xbase.lib;bundle-version="2.14.0" -Bundle-RequiredExecutionEnvironment: JavaSE-11 +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Export-Package: ghidra.xtext.sleigh.tests;x-internal=true diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.tests/build.gradle b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.tests/build.gradle new file mode 100644 index 0000000000..f2266d2784 --- /dev/null +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.tests/build.gradle @@ -0,0 +1,40 @@ +apply plugin: 'java' + +// This project requires the Eclipse DSL plugin. To create Eclipse files for this project, run +// "gradle eclipse -PeclipseDSL" +if (hasProperty("eclipseDSL")) { + apply plugin: 'eclipse' + eclipse { + project { + name = 'Eclipse SleighEditor Tests' + buildCommand 'org.eclipse.pde.ManifestBuilder' + buildCommand 'org.eclipse.pde.SchemaBuilder' + buildCommand 'org.eclipse.xtext.ui.shared.xtextBuilder' + natures 'org.eclipse.pde.PluginNature' + natures 'org.eclipse.xtext.ui.shared.xtextNature' + classpath.file { + def requiredPlugins = 'org.eclipse.pde.core.requiredPlugins' + beforeMerged { classpath -> + classpath.entries.removeAll { entry -> + entry.path == requiredPlugins + } + } + whenMerged { classpath -> + withXml { + def node = it.asNode() + node.appendNode('classpathentry', [kind: 'con', path: requiredPlugins]) + } + } + } + } + } + sourceSets { + main { + java { + srcDir 'src' + srcDir 'src-gen' + srcDir 'xtend-gen' + } + } + } +} diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui.tests/META-INF/MANIFEST.MF b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui.tests/META-INF/MANIFEST.MF index f700b7eb73..94627e204e 100644 --- a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui.tests/META-INF/MANIFEST.MF +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui.tests/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Automatic-Module-Name: ghidra.xtext.sleigh.ui.tests Bundle-ManifestVersion: 2 Bundle-Name: ghidra.xtext.sleigh.ui.tests -Bundle-Vendor: My Company +Bundle-Vendor: Ghidra Bundle-Version: 1.0.0.qualifier Bundle-SymbolicName: ghidra.xtext.sleigh.ui.tests; singleton:=true Bundle-ActivationPolicy: lazy @@ -14,5 +14,5 @@ Require-Bundle: ghidra.xtext.sleigh.ui, org.eclipse.xtext.xbase.junit, org.eclipse.core.runtime, org.eclipse.ui.workbench;resolution:=optional -Bundle-RequiredExecutionEnvironment: JavaSE-11 +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Export-Package: ghidra.xtext.sleigh.ui.tests;x-internal=true diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui.tests/build.gradle b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui.tests/build.gradle new file mode 100644 index 0000000000..3057f75f08 --- /dev/null +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui.tests/build.gradle @@ -0,0 +1,40 @@ +apply plugin: 'java' + +// This project requires the Eclipse DSL plugin. To create Eclipse files for this project, run +// "gradle eclipse -PeclipseDSL" +if (hasProperty("eclipseDSL")) { + apply plugin: 'eclipse' + eclipse { + project { + name = 'Eclipse SleighEditor UI Tests' + buildCommand 'org.eclipse.pde.ManifestBuilder' + buildCommand 'org.eclipse.pde.SchemaBuilder' + buildCommand 'org.eclipse.xtext.ui.shared.xtextBuilder' + natures 'org.eclipse.pde.PluginNature' + natures 'org.eclipse.xtext.ui.shared.xtextNature' + classpath.file { + def requiredPlugins = 'org.eclipse.pde.core.requiredPlugins' + beforeMerged { classpath -> + classpath.entries.removeAll { entry -> + entry.path == requiredPlugins + } + } + whenMerged { classpath -> + withXml { + def node = it.asNode() + node.appendNode('classpathentry', [kind: 'con', path: requiredPlugins]) + } + } + } + } + } + sourceSets { + main { + java { + srcDir 'src' + srcDir 'src-gen' + srcDir 'xtend-gen' + } + } + } +} diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui/META-INF/MANIFEST.MF b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui/META-INF/MANIFEST.MF index 1fa442904a..bcc4b7c765 100644 --- a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui/META-INF/MANIFEST.MF +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Automatic-Module-Name: ghidra.xtext.sleigh.ui Bundle-ManifestVersion: 2 Bundle-Name: ghidra.xtext.sleigh.ui -Bundle-Vendor: My Company +Bundle-Vendor: Ghidra Bundle-Version: 1.0.0.qualifier Bundle-SymbolicName: ghidra.xtext.sleigh.ui; singleton:=true Bundle-ActivationPolicy: lazy @@ -19,7 +19,7 @@ Require-Bundle: ghidra.xtext.sleigh, org.eclipse.xtext.xbase.lib;bundle-version="2.14.0", org.eclipse.xtend.lib;bundle-version="2.14.0";resolution:=optional Import-Package: org.apache.log4j -Bundle-RequiredExecutionEnvironment: JavaSE-11 +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Export-Package: ghidra.xtext.sleigh.ui.internal, ghidra.xtext.sleigh.ui.contentassist, ghidra.xtext.sleigh.ui.quickfix diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui/build.gradle b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui/build.gradle new file mode 100644 index 0000000000..8f18815c74 --- /dev/null +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh.ui/build.gradle @@ -0,0 +1,40 @@ +apply plugin: 'java' + +// This project requires the Eclipse DSL plugin. To create Eclipse files for this project, run +// "gradle eclipse -PeclipseDSL" +if (hasProperty("eclipseDSL")) { + apply plugin: 'eclipse' + eclipse { + project { + name = 'Eclipse SleighEditor UI' + buildCommand 'org.eclipse.pde.ManifestBuilder' + buildCommand 'org.eclipse.pde.SchemaBuilder' + buildCommand 'org.eclipse.xtext.ui.shared.xtextBuilder' + natures 'org.eclipse.pde.PluginNature' + natures 'org.eclipse.xtext.ui.shared.xtextNature' + classpath.file { + def requiredPlugins = 'org.eclipse.pde.core.requiredPlugins' + beforeMerged { classpath -> + classpath.entries.removeAll { entry -> + entry.path == requiredPlugins + } + } + whenMerged { classpath -> + withXml { + def node = it.asNode() + node.appendNode('classpathentry', [kind: 'con', path: requiredPlugins]) + } + } + } + } + } + sourceSets { + main { + java { + srcDir 'src' + srcDir 'src-gen' + srcDir 'xtend-gen' + } + } + } +} diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh/META-INF/MANIFEST.MF b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh/META-INF/MANIFEST.MF index 9128be7ba4..c982b203b5 100644 --- a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh/META-INF/MANIFEST.MF +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Automatic-Module-Name: ghidra.xtext.sleigh Bundle-ManifestVersion: 2 Bundle-Name: ghidra.xtext.sleigh -Bundle-Vendor: My Company +Bundle-Vendor: Ghidra Bundle-Version: 1.0.0.qualifier Bundle-SymbolicName: ghidra.xtext.sleigh; singleton:=true Bundle-ActivationPolicy: lazy @@ -15,7 +15,7 @@ Require-Bundle: org.eclipse.xtext, org.eclipse.emf.common, org.eclipse.xtend.lib;bundle-version="2.14.0", org.antlr.runtime;bundle-version="[3.2.0,3.2.1)" -Bundle-RequiredExecutionEnvironment: JavaSE-11 +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Export-Package: ghidra.xtext.sleigh.formatting2, ghidra.xtext.sleigh, ghidra.xtext.sleigh.sleigh.impl, diff --git a/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh/build.gradle b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh/build.gradle new file mode 100644 index 0000000000..57685dd192 --- /dev/null +++ b/GhidraBuild/EclipsePlugins/SleighEditor/ghidra.xtext.sleigh/build.gradle @@ -0,0 +1,40 @@ +apply plugin: 'java' + +// This project requires the Eclipse DSL plugin. To create Eclipse files for this project, run +// "gradle eclipse -PeclipseDSL" +if (hasProperty("eclipseDSL")) { + apply plugin: 'eclipse' + eclipse { + project { + name = 'Eclipse SleighEditor' + buildCommand 'org.eclipse.pde.ManifestBuilder' + buildCommand 'org.eclipse.pde.SchemaBuilder' + buildCommand 'org.eclipse.xtext.ui.shared.xtextBuilder' + natures 'org.eclipse.pde.PluginNature' + natures 'org.eclipse.xtext.ui.shared.xtextNature' + classpath.file { + def requiredPlugins = 'org.eclipse.pde.core.requiredPlugins' + beforeMerged { classpath -> + classpath.entries.removeAll { entry -> + entry.path == requiredPlugins + } + } + whenMerged { classpath -> + withXml { + def node = it.asNode() + node.appendNode('classpathentry', [kind: 'con', path: requiredPlugins]) + } + } + } + } + } + sourceSets { + main { + java { + srcDir 'src' + srcDir 'src-gen' + srcDir 'xtend-gen' + } + } + } +} diff --git a/settings.gradle b/settings.gradle index 343276ca9d..0ad472807a 100644 --- a/settings.gradle +++ b/settings.gradle @@ -27,6 +27,7 @@ includeProject('RuntimeScripts', 'Ghidra', true) includeProject('IDAPro', 'GhidraBuild', true) includeProject('GhidraDocs', '.', true) includeProjects('GhidraBuild/EclipsePlugins/GhidraDev') // requires Eclipse PDE +includeProjects('GhidraBuild/EclipsePlugins/SleighEditor') // requires Eclipse DSL /******************************************************************************************* * Apply additional Ghidra respositories @@ -44,4 +45,4 @@ if (extensionsList.isFile()) { apply from: extraSettings.absolutePath } } -} \ No newline at end of file +}