mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-07-30 07:18:37 -09:00
Merge remote-tracking branch 'origin/GP-6012_ryanmkurtz_jdk25'
This commit is contained in:
4
.github/workflows/build-ghidra.yml
vendored
4
.github/workflows/build-ghidra.yml
vendored
@@ -10,7 +10,9 @@ jobs:
|
||||
|
||||
runs-on: ${{ matrix.platform }}
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Read Ghidra JDK Version
|
||||
run: echo "JDK_VER=$(awk -F'=' '$1=="application.java.min" {print $2}' Ghidra/application.properties)" >> $GITHUB_ENV
|
||||
|
||||
7
.github/workflows/dependency-submission.yml
vendored
7
.github/workflows/dependency-submission.yml
vendored
@@ -15,11 +15,14 @@ jobs:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Read Ghidra JDK Version
|
||||
run: echo "JDK_VER=$(awk -F'=' '$1=="application.java.min" {print $2}' Ghidra/application.properties)" >> $GITHUB_ENV
|
||||
|
||||
- name: Setup JDK
|
||||
uses: actions/setup-java@v5
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: '21'
|
||||
distribution: 'temurin'
|
||||
java-version: '${{ env.JDK_VER }}'
|
||||
|
||||
- name: Fetch Dependencies
|
||||
run: ./gradlew -I gradle/support/fetchDependencies.gradle -DhideDownloadProgress -DnoEclipse
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
</listAttribute>
|
||||
<mapAttribute key="org.eclipse.debug.core.environmentVariables">
|
||||
<mapEntry key="GHIDRA_INSTALL_DIR" value="${project_loc:/___root}"/>
|
||||
<mapEntry key="JAVA_HOME_OVERRIDE" value="${ee_home:JavaSE-21}"/>
|
||||
<mapEntry key="JAVA_HOME_OVERRIDE" value="${ee_home:JavaSE-25}"/>
|
||||
</mapAttribute>
|
||||
<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
|
||||
<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
</listAttribute>
|
||||
<mapAttribute key="org.eclipse.debug.core.environmentVariables">
|
||||
<mapEntry key="GHIDRA_INSTALL_DIR" value="${project_loc:/___root}"/>
|
||||
<mapEntry key="JAVA_HOME_OVERRIDE" value="${ee_home:JavaSE-21}"/>
|
||||
<mapEntry key="JAVA_HOME_OVERRIDE" value="${ee_home:JavaSE-25}"/>
|
||||
</mapAttribute>
|
||||
<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
|
||||
<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
</listAttribute>
|
||||
<mapAttribute key="org.eclipse.debug.core.environmentVariables">
|
||||
<mapEntry key="GHIDRA_INSTALL_DIR" value="${project_loc:/___root}"/>
|
||||
<mapEntry key="JAVA_HOME_OVERRIDE" value="${ee_home:JavaSE-21}"/>
|
||||
<mapEntry key="JAVA_HOME_OVERRIDE" value="${ee_home:JavaSE-25}"/>
|
||||
<mapEntry key="PYGHIDRA_DEBUG" value="1"/>
|
||||
</mapAttribute>
|
||||
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:Features PyGhidra/src/main/py/src/pyghidra}"/>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
</listAttribute>
|
||||
<mapAttribute key="org.eclipse.debug.core.environmentVariables">
|
||||
<mapEntry key="GHIDRA_INSTALL_DIR" value="${project_loc:/___root}"/>
|
||||
<mapEntry key="JAVA_HOME_OVERRIDE" value="${ee_home:JavaSE-21}"/>
|
||||
<mapEntry key="JAVA_HOME_OVERRIDE" value="${ee_home:JavaSE-25}"/>
|
||||
<mapEntry key="PYGHIDRA_DEBUG" value="1"/>
|
||||
</mapAttribute>
|
||||
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:Features PyGhidra/src/main/py/src/pyghidra}"/>
|
||||
|
||||
@@ -262,6 +262,8 @@ class PyGhidraLauncher:
|
||||
if "org.eclipse.jdt.launching.VM_ARGUMENTS" in line:
|
||||
_, _, value = line.partition("value=")
|
||||
value = value.removesuffix("/>")
|
||||
if value.startswith('"') and value.endswith('"'):
|
||||
value = value[1:-1]
|
||||
return html.unescape(value).split()
|
||||
|
||||
raise Exception("org.eclipse.jdt.launching.VM_ARGUMENTS not found")
|
||||
|
||||
@@ -105,6 +105,9 @@ VMARGS=-Djavax.xml.accessExternalStylesheet=
|
||||
# Enable native access (required by FlatLaf)
|
||||
VMARGS=--enable-native-access=ALL-UNNAMED
|
||||
|
||||
# Hide unsafe memory access warning (triggered by Apache Felix)
|
||||
VMARGS=--sun-misc-unsafe-memory-access=allow
|
||||
|
||||
# Settings directory used by the application to store application settings and data that persist
|
||||
# between application sessions, system reboots, and periodic system cleanup. Overridden values
|
||||
# are required to be absolute paths. The current user name may be incorporated into the settings
|
||||
|
||||
@@ -2,9 +2,9 @@ application.name=Ghidra
|
||||
application.version=12.2
|
||||
application.release.name=DEV
|
||||
application.layout.version=3
|
||||
application.gradle.min=8.5
|
||||
application.gradle.min=9.1
|
||||
application.gradle.max=
|
||||
application.java.min=21
|
||||
application.java.min=25
|
||||
application.java.max=
|
||||
application.java.compiler=21
|
||||
application.java.compiler=25
|
||||
application.python.supported=3.14, 3.13, 3.12, 3.11, 3.10, 3.9
|
||||
|
||||
@@ -51,12 +51,12 @@ a specific need.
|
||||
* Dual monitors strongly suggested
|
||||
|
||||
### Software
|
||||
* Java 21 64-bit Runtime and Development Kit (JDK) (see [Java Notes](#java-notes))
|
||||
* Free long term support (LTS) versions of JDK 21 are provided by:
|
||||
* Java 25 64-bit Runtime and Development Kit (JDK) (see [Java Notes](#java-notes))
|
||||
* Free long term support (LTS) versions of JDK 25 are provided by:
|
||||
* [Adoptium Temurin](https://adoptium.net/temurin/releases)
|
||||
* [Amazon Corretto](https://docs.aws.amazon.com/corretto/latest/corretto-21-ug/downloads-list.html)
|
||||
* [Amazon Corretto](https://docs.aws.amazon.com/corretto/latest/corretto-25-ug/downloads-list.html)
|
||||
* Python3 (3.9 to 3.14)
|
||||
* Python 3.9 to 3.14 for [Debugger support](#debugger-notes)
|
||||
* Python 3.7 to 3.14 for [Debugger support](#debugger-notes)
|
||||
* Python 3.9 to 3.14 for [PyGhidra support](#pyghidra-mode)
|
||||
* This is available from [Python.org](https://python.org) or most operating system's app stores or
|
||||
software repositories. For Linux it is recommended that the system's package repository be used
|
||||
@@ -210,7 +210,7 @@ For supported systems where native binaries have not been supplied, or those tha
|
||||
to run properly, it may be necessary to build the native Ghidra binaries. In order to build native
|
||||
binaries for your platform, you will need the following installed on your system:
|
||||
* A [supported](#minimum-requirements) version of a Java Development Kit
|
||||
* [Gradle 8.5+](https://gradle.org/releases) (or supplied Gradle wrapper with Internet connection)
|
||||
* [Gradle 9.1.0+](https://gradle.org/releases) (or supplied Gradle wrapper with Internet connection)
|
||||
* Software C/C++ build tools and library packages
|
||||
* __macOS:__ _Xcode_ or the abbreviated _Command Line Tools for Xcode_. Assuming you are connected
|
||||
to the Internet, _Xcode_ (which includes the command tools) may be installed directly from the
|
||||
|
||||
@@ -47,8 +47,8 @@ Ghidra installation directory.
|
||||
To create the latest development build for your platform from this source repository:
|
||||
|
||||
##### Install build tools:
|
||||
* [JDK 21 64-bit][jdk]
|
||||
* [Gradle 8.5+][gradle] (or provided Gradle wrapper if Internet connection is available)
|
||||
* [JDK 25 64-bit][jdk]
|
||||
* [Gradle 9.1.0+][gradle] (or provided Gradle wrapper if Internet connection is available)
|
||||
* [Python3][python3] (version 3.9 to 3.14) with bundled pip
|
||||
* GCC or Clang, and make (Linux/macOS-only)
|
||||
* [Microsoft Visual Studio][vs] 2017+ or [Microsoft C++ Build Tools][vcbuildtools] with the
|
||||
|
||||
@@ -226,6 +226,7 @@
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_markdown_comments" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case" value="insert"/>
|
||||
|
||||
Reference in New Issue
Block a user