From f7d137102bae593077f48005b9708920456900a6 Mon Sep 17 00:00:00 2001 From: Tue Ton <49886739+chirontt@users.noreply.github.com> Date: Fri, 20 Jun 2025 14:41:55 -0400 Subject: [PATCH] Add Terminal's native fragment for Linux riscv64 (#1210) - add a new fragment 'org.eclipse.cdt.core.linux.riscv64' containing compiled riscv64 natives suitable for the Linux riscv64 platform. - add the 'libserial.so' binary compiled for Linux riscv64, for the serial communication interface. - add the linux/gtk/riscv64 environment triplet to various Maven build scripts to support building CDT software for that environment. Fixes #980 --- .../.project | 22 +++ .../org.eclipse.core.resources.prefs | 2 + .../.settings/org.eclipse.pde.api.tools.prefs | 184 ++++++++++++++++++ .../.settings/org.eclipse.pde.prefs | 36 ++++ .../META-INF/MANIFEST.MF | 9 + .../about.html | 38 ++++ .../build.properties | 19 ++ .../os/linux/riscv64/libpty.so | Bin 0 -> 12680 bytes .../os/linux/riscv64/libspawner.so | Bin 0 -> 24024 bytes .../plugin.properties | 2 + .../pom.xml | 71 +++++++ core/org.eclipse.cdt.core.linux/pom.xml | 5 + .../META-INF/MANIFEST.MF | 2 +- .../native_src/Makefile | 23 ++- .../plugin.properties | 4 +- core/org.eclipse.cdt.core.native/pom.xml | 2 +- .../pom.xml | 5 + .../native_src/Makefile | 10 +- .../os/linux/riscv64/libserial.so | Bin 0 -> 12624 bytes pom.xml | 9 +- .../feature.xml | 12 +- releng/scripts/check_glibc_dependencies.sh | 1 + .../META-INF/p2.inf | 8 +- .../META-INF/p2.inf | 8 +- terminal/pom.xml | 3 +- 25 files changed, 463 insertions(+), 12 deletions(-) create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/.project create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.core.resources.prefs create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.pde.api.tools.prefs create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.pde.prefs create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/META-INF/MANIFEST.MF create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/about.html create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/build.properties create mode 100755 core/org.eclipse.cdt.core.linux.riscv64/os/linux/riscv64/libpty.so create mode 100755 core/org.eclipse.cdt.core.linux.riscv64/os/linux/riscv64/libspawner.so create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/plugin.properties create mode 100644 core/org.eclipse.cdt.core.linux.riscv64/pom.xml create mode 100755 native/org.eclipse.cdt.native.serial/os/linux/riscv64/libserial.so diff --git a/core/org.eclipse.cdt.core.linux.riscv64/.project b/core/org.eclipse.cdt.core.linux.riscv64/.project new file mode 100644 index 00000000000..1cba19e8d0a --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/.project @@ -0,0 +1,22 @@ + + + org.eclipse.cdt.core.linux.riscv64 + + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.pde.PluginNature + + diff --git a/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.core.resources.prefs b/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.pde.api.tools.prefs b/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.pde.api.tools.prefs new file mode 100644 index 00000000000..ec9fbf321d0 --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.pde.api.tools.prefs @@ -0,0 +1,184 @@ +ANNOTATION_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error +ANNOTATION_ELEMENT_TYPE_ADDED_FIELD=Error +ANNOTATION_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error +ANNOTATION_ELEMENT_TYPE_ADDED_INTERFACE_BOUNDS=Error +ANNOTATION_ELEMENT_TYPE_ADDED_METHOD=Error +ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error +ANNOTATION_ELEMENT_TYPE_ADDED_TYPE_MEMBER=Error +ANNOTATION_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_INTERFACE_BOUNDS=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_RESTRICTIONS=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_TO_CLASS=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_TO_ENUM=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_TO_INTERFACE=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD_WITHOUT_DEFAULT_VALUE=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD_WITH_DEFAULT_VALUE=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_PARAMETERS=Error +API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error +API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Error +API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Error +API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error +API_USE_SCAN_FIELD_SEVERITY=Error +API_USE_SCAN_METHOD_SEVERITY=Error +API_USE_SCAN_TYPE_SEVERITY=Error +CLASS_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error +CLASS_ELEMENT_TYPE_ADDED_FIELD=Error +CLASS_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error +CLASS_ELEMENT_TYPE_ADDED_INTERFACE_BOUNDS=Error +CLASS_ELEMENT_TYPE_ADDED_METHOD=Error +CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error +CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +CLASS_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error +CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERCLASS_SET=Error +CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error +CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error +CLASS_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error +CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error +CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error +CLASS_ELEMENT_TYPE_CHANGED_RESTRICTIONS=Error +CLASS_ELEMENT_TYPE_CHANGED_SUPERCLASS=Error +CLASS_ELEMENT_TYPE_CHANGED_TO_ANNOTATION=Error +CLASS_ELEMENT_TYPE_CHANGED_TO_ENUM=Error +CLASS_ELEMENT_TYPE_CHANGED_TO_INTERFACE=Error +CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error +CLASS_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error +CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error +CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error +CLASS_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error +CLASS_ELEMENT_TYPE_REMOVED_INTERFACE_BOUNDS=Error +CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error +CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error +CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error +CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETERS=Error +CONSTRUCTOR_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error +CONSTRUCTOR_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error +CONSTRUCTOR_ELEMENT_TYPE_ADDED_INTERFACE_BOUNDS=Error +CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_TYPE_PARAMETER=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error +CONSTRUCTOR_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error +CONSTRUCTOR_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error +CONSTRUCTOR_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error +CONSTRUCTOR_ELEMENT_TYPE_REMOVED_INTERFACE_BOUNDS=Error +CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETERS=Error +ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error +ENUM_ELEMENT_TYPE_CHANGED_RESTRICTIONS=Error +ENUM_ELEMENT_TYPE_CHANGED_TO_ANNOTATION=Error +ENUM_ELEMENT_TYPE_CHANGED_TO_CLASS=Error +ENUM_ELEMENT_TYPE_CHANGED_TO_INTERFACE=Error +ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error +ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error +ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error +ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error +ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error +FIELD_ELEMENT_TYPE_ADDED_VALUE=Error +FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error +FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error +FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error +FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error +FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error +FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error +FIELD_ELEMENT_TYPE_CHANGED_VALUE=Error +FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error +FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENTS=Error +FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error +ILLEGAL_EXTEND=Warning +ILLEGAL_IMPLEMENT=Warning +ILLEGAL_INSTANTIATE=Warning +ILLEGAL_OVERRIDE=Warning +ILLEGAL_REFERENCE=Warning +INTERFACE_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error +INTERFACE_ELEMENT_TYPE_ADDED_DEFAULT_METHOD=Error +INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Error +INTERFACE_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error +INTERFACE_ELEMENT_TYPE_ADDED_INTERFACE_BOUNDS=Error +INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error +INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error +INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error +INTERFACE_ELEMENT_TYPE_ADDED_TYPE_MEMBER=Error +INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETERS=Error +INTERFACE_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error +INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error +INTERFACE_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error +INTERFACE_ELEMENT_TYPE_CHANGED_INTERFACE_BOUNDS=Error +INTERFACE_ELEMENT_TYPE_CHANGED_RESTRICTIONS=Error +INTERFACE_ELEMENT_TYPE_CHANGED_TO_ANNOTATION=Error +INTERFACE_ELEMENT_TYPE_CHANGED_TO_CLASS=Error +INTERFACE_ELEMENT_TYPE_CHANGED_TO_ENUM=Error +INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error +INTERFACE_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error +INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error +INTERFACE_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error +INTERFACE_ELEMENT_TYPE_REMOVED_INTERFACE_BOUNDS=Error +INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error +INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error +INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +INVALID_ANNOTATION=Ignore +INVALID_JAVADOC_TAG=Error +INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Warning +LEAK_EXTEND=Warning +LEAK_FIELD_DECL=Warning +LEAK_IMPLEMENT=Warning +LEAK_METHOD_PARAM=Warning +LEAK_METHOD_RETURN_TYPE=Warning +METHOD_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error +METHOD_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error +METHOD_ELEMENT_TYPE_ADDED_INTERFACE_BOUNDS=Error +METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error +METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +METHOD_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error +METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error +METHOD_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error +METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error +METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error +METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error +METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error +METHOD_ELEMENT_TYPE_CHANGED_TYPE_PARAMETER=Error +METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error +METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error +METHOD_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error +METHOD_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error +METHOD_ELEMENT_TYPE_REMOVED_INTERFACE_BOUNDS=Error +METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETERS=Error +MISSING_EE_DESCRIPTIONS=Warning +TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error +UNUSED_PROBLEM_FILTERS=Warning +automatically_removed_unused_problem_filters=false +changed_execution_env=Error +eclipse.preferences.version=1 +incompatible_api_component_version=Error +incompatible_api_component_version_include_major_without_breaking_change=Disabled +incompatible_api_component_version_include_minor_without_api_change=Disabled +incompatible_api_component_version_report_major_without_breaking_change=Warning +incompatible_api_component_version_report_minor_without_api_change=Warning +invalid_since_tag_version=Error +malformed_since_tag=Error +missing_since_tag=Error +report_api_breakage_when_major_version_incremented=Disabled +report_resolution_errors_api_component=Warning diff --git a/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.pde.prefs b/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.pde.prefs new file mode 100644 index 00000000000..ffaa8e3f1a7 --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/.settings/org.eclipse.pde.prefs @@ -0,0 +1,36 @@ +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=0 +compilers.p.build.encodings=2 +compilers.p.build.java.compiler=2 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=0 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.exec-env-too-low=1 +compilers.p.internal=1 +compilers.p.missing-packages=2 +compilers.p.missing-version-export-package=2 +compilers.p.missing-version-import-package=2 +compilers.p.missing-version-require-bundle=2 +compilers.p.no-required-att=0 +compilers.p.no.automatic.module=1 +compilers.p.not-externalized-att=1 +compilers.p.service.component.without.lazyactivation=1 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=0 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=0 +compilers.p.unknown-resource=0 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +compilers.use-project=true +eclipse.preferences.version=1 diff --git a/core/org.eclipse.cdt.core.linux.riscv64/META-INF/MANIFEST.MF b/core/org.eclipse.cdt.core.linux.riscv64/META-INF/MANIFEST.MF new file mode 100644 index 00000000000..c64435b19cf --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/META-INF/MANIFEST.MF @@ -0,0 +1,9 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %fragmentName.linux.riscv64 +Bundle-SymbolicName: org.eclipse.cdt.core.linux.riscv64;singleton:=true +Bundle-Version: 12.2.0.qualifier +Bundle-Vendor: %providerName +Fragment-Host: org.eclipse.cdt.core.native;bundle-version="[6.3.0,7.0.0)" +Bundle-Localization: plugin +Eclipse-PlatformFilter: (&(osgi.os=linux)(osgi.arch=riscv64)) diff --git a/core/org.eclipse.cdt.core.linux.riscv64/about.html b/core/org.eclipse.cdt.core.linux.riscv64/about.html new file mode 100644 index 00000000000..b3134865230 --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/about.html @@ -0,0 +1,38 @@ + + + + + + About + + + +

About This Content

+ +

November 30, 2017

+

License

+ +

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at https://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at https://www.eclipse.org. +

+ + + + \ No newline at end of file diff --git a/core/org.eclipse.cdt.core.linux.riscv64/build.properties b/core/org.eclipse.cdt.core.linux.riscv64/build.properties new file mode 100644 index 00000000000..e477eb1e72c --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/build.properties @@ -0,0 +1,19 @@ +############################################################################### +# Copyright (c) 2005, 2025 IBM Corporation and others. +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# IBM Corporation - initial API and implementation +# Tue Ton - support for Linux riscv64 +############################################################################### +bin.includes = os/,\ + about.html,\ + META-INF/,\ + plugin.properties +src.includes = about.html diff --git a/core/org.eclipse.cdt.core.linux.riscv64/os/linux/riscv64/libpty.so b/core/org.eclipse.cdt.core.linux.riscv64/os/linux/riscv64/libpty.so new file mode 100755 index 0000000000000000000000000000000000000000..56ae0e62ba1c10a304f57a65c44d8e5fe6e86606 GIT binary patch literal 12680 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 Y5c}m)eog6Am?$-kYaByGLG||k0vAEJQUCw| literal 0 HcmV?d00001 diff --git a/core/org.eclipse.cdt.core.linux.riscv64/os/linux/riscv64/libspawner.so b/core/org.eclipse.cdt.core.linux.riscv64/os/linux/riscv64/libspawner.so new file mode 100755 index 0000000000000000000000000000000000000000..5030497330f97bd4e203fc3bd366635d35cb1850 GIT binary patch literal 24024 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 literal 0 HcmV?d00001 diff --git a/core/org.eclipse.cdt.core.linux.riscv64/plugin.properties b/core/org.eclipse.cdt.core.linux.riscv64/plugin.properties new file mode 100644 index 00000000000..2f8f3047bca --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/plugin.properties @@ -0,0 +1,2 @@ +fragmentName.linux.riscv64=C/C++ Development Tools Core for Linux riscv64 +providerName=Eclipse CDT diff --git a/core/org.eclipse.cdt.core.linux.riscv64/pom.xml b/core/org.eclipse.cdt.core.linux.riscv64/pom.xml new file mode 100644 index 00000000000..02e37578256 --- /dev/null +++ b/core/org.eclipse.cdt.core.linux.riscv64/pom.xml @@ -0,0 +1,71 @@ + + + + 4.0.0 + + + org.eclipse.cdt + cdt-parent + 12.2.0-SNAPSHOT + ../../pom.xml + + + 12.2.0-SNAPSHOT + org.eclipse.cdt.core.linux.riscv64 + eclipse-plugin + + + + + org.eclipse.tycho + target-platform-configuration + + consider + + + linux + gtk + riscv64 + + + + + + org.eclipse.tycho + tycho-source-plugin + + + plugin-source + none + + + attach-source + none + + + + + org.eclipse.tycho + tycho-packaging-plugin + + + default + + + + + diff --git a/core/org.eclipse.cdt.core.linux/pom.xml b/core/org.eclipse.cdt.core.linux/pom.xml index 0df4e06d444..0275c55734e 100644 --- a/core/org.eclipse.cdt.core.linux/pom.xml +++ b/core/org.eclipse.cdt.core.linux/pom.xml @@ -48,6 +48,11 @@ gtk ppc64le + + linux + gtk + riscv64 + diff --git a/core/org.eclipse.cdt.core.native/META-INF/MANIFEST.MF b/core/org.eclipse.cdt.core.native/META-INF/MANIFEST.MF index 4126ac9df52..7ced14ba6c4 100644 --- a/core/org.eclipse.cdt.core.native/META-INF/MANIFEST.MF +++ b/core/org.eclipse.cdt.core.native/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.cdt.core.native;singleton:=true -Bundle-Version: 6.4.0.qualifier +Bundle-Version: 6.5.0.qualifier Bundle-Activator: org.eclipse.cdt.internal.core.natives.CNativePlugin Bundle-Vendor: %providerName Bundle-Localization: plugin diff --git a/core/org.eclipse.cdt.core.native/native_src/Makefile b/core/org.eclipse.cdt.core.native/native_src/Makefile index 78c55db4989..8a27a82a562 100644 --- a/core/org.eclipse.cdt.core.native/native_src/Makefile +++ b/core/org.eclipse.cdt.core.native/native_src/Makefile @@ -1,5 +1,5 @@ #******************************************************************************* -# Copyright (c) 2002, 2015, 2024 QNX Software Systems and others. +# Copyright (c) 2002, 2015, 2025 QNX Software Systems and others. # # This program and the accompanying materials # are made available under the terms of the Eclipse Public License 2.0 @@ -12,8 +12,9 @@ # QNX Software Systems - initial API and implementation # Torbjörn Svensson - Bug 521515 - Adopted jenkins build # Tue Ton - support for Windows on Arm64 +# Tue Ton - support for Linux riscv64 #*******************************************************************************/ -SHELL=/bin/bash -o pipefail +SHELL=/usr/bin/env -S bash -o pipefail ifeq ($(JAVA_HOME),) $(error JAVA_HOME not set in environment) endif @@ -25,6 +26,7 @@ OS_DIR_WIN32_AARCH64 := ../../org.eclipse.cdt.core.win32.aarch64/os/win32/aarch6 OS_DIR_LINUX_X86_64 := ../../org.eclipse.cdt.core.linux.x86_64/os/linux/x86_64 OS_DIR_LINUX_AARCH64 := ../../org.eclipse.cdt.core.linux.aarch64/os/linux/aarch64 OS_DIR_LINUX_PPC64LE := ../../org.eclipse.cdt.core.linux.ppc64le/os/linux/ppc64le +OS_DIR_LINUX_RISCV64 := ../../org.eclipse.cdt.core.linux.riscv64/os/linux/riscv64 OS_DIR_MACOS_X86_64 := ../../org.eclipse.cdt.core.macosx/os/macosx/x86_64 OS_DIR_MACOS_AARCH64 := ../../org.eclipse.cdt.core.macosx/os/macosx/aarch64 @@ -43,6 +45,8 @@ LIBS = \ $(OS_DIR_LINUX_AARCH64)/libpty.so \ $(OS_DIR_LINUX_PPC64LE)/libspawner.so \ $(OS_DIR_LINUX_PPC64LE)/libpty.so \ + $(OS_DIR_LINUX_RISCV64)/libspawner.so \ + $(OS_DIR_LINUX_RISCV64)/libpty.so \ $(OS_DIR_MACOS_X86_64)/libspawner.jnilib \ $(OS_DIR_MACOS_X86_64)/libpty.jnilib \ $(OS_DIR_MACOS_AARCH64)/libspawner.jnilib \ @@ -196,6 +200,21 @@ $(OS_DIR_LINUX_PPC64LE)/libpty.so: unix/openpty.c unix/pty.c unix/ptyio.c $^ \ -shared -lc +# Linux riscv64 +$(OS_DIR_LINUX_RISCV64)/libspawner.so: unix/spawner.c unix/io.c unix/exec_unix.c unix/exec_pty.c unix/openpty.c unix/pfind.c + mkdir -p $(dir $@) && \ + riscv64-linux-gnu-gcc $(COMMON_CFLAGS) -o $@ -Wl,-soname,$(notdir $@) -Iinclude -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -fpic \ + -D_REENTRANT -D_GNU_SOURCE \ + $^ \ + -shared -lc + +$(OS_DIR_LINUX_RISCV64)/libpty.so: unix/openpty.c unix/pty.c unix/ptyio.c + mkdir -p $(dir $@) && \ + riscv64-linux-gnu-gcc $(COMMON_CFLAGS) -o $@ -Wl,-soname,$(notdir $@) -Iinclude -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -fpic \ + -D_REENTRANT -D_GNU_SOURCE \ + $^ \ + -shared -lc + # macos x86_64 $(OS_DIR_MACOS_X86_64)/libspawner.jnilib: unix/spawner.c unix/io.c unix/exec_unix.c unix/exec_pty.c unix/openpty.c unix/pfind.c mkdir -p $(dir $@) && \ diff --git a/core/org.eclipse.cdt.core.native/plugin.properties b/core/org.eclipse.cdt.core.native/plugin.properties index a45e52d0e08..f6375a0f03a 100644 --- a/core/org.eclipse.cdt.core.native/plugin.properties +++ b/core/org.eclipse.cdt.core.native/plugin.properties @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2003, 2024 IBM Corporation and others. +# Copyright (c) 2003, 2025 IBM Corporation and others. # # This program and the accompanying materials # are made available under the terms of the Eclipse Public License 2.0 @@ -12,6 +12,7 @@ # IBM Corporation - initial API and implementation # Anton Leherbauer (Wind River Systems) # Martin Oberhuber (Wind River) - [303083] Split out the Spawner +# Tue Ton - support for Linux riscv64 ############################################################################### pluginName=C/C++ Development Tools Core Native Utilities providerName=Eclipse CDT @@ -22,6 +23,7 @@ fragmentName.linux = C/C++ Development Tools Core Native Utilities for Linux fragmentName.linux.ppc64le = C/C++ Development Tools Core Native Utilities for Linux (ppc64le) fragmentName.linux.x86_64 = C/C++ Development Tools Core Native Utilities for Linux (x86_64) fragmentName.linux.aarch64 = C/C++ Development Tools Core Native Utilities for Linux (aarch64) +fragmentName.linux.riscv64 = C/C++ Development Tools Core Native Utilities for Linux (riscv64) fragmentName.win32 = C/C++ Development Tools Core Native Utilities for Windows fragmentName.win32.x86_64 = C/C++ Development Tools Core Native Utilities for Windows (x86_64) fragmentName.win32.aarch64 = C/C++ Development Tools Core Native Utilities for Windows (aarch64) diff --git a/core/org.eclipse.cdt.core.native/pom.xml b/core/org.eclipse.cdt.core.native/pom.xml index d46ab79bc44..8869bc333dd 100644 --- a/core/org.eclipse.cdt.core.native/pom.xml +++ b/core/org.eclipse.cdt.core.native/pom.xml @@ -23,7 +23,7 @@ ../../pom.xml - 6.4.0-SNAPSHOT + 6.5.0-SNAPSHOT org.eclipse.cdt.core.native eclipse-plugin diff --git a/debug/org.eclipse.cdt.debug.application.product/pom.xml b/debug/org.eclipse.cdt.debug.application.product/pom.xml index 0315c7f77ba..6136567661e 100644 --- a/debug/org.eclipse.cdt.debug.application.product/pom.xml +++ b/debug/org.eclipse.cdt.debug.application.product/pom.xml @@ -84,6 +84,11 @@ gtk aarch64 + + linux + gtk + riscv64 + win32 win32 diff --git a/native/org.eclipse.cdt.native.serial/native_src/Makefile b/native/org.eclipse.cdt.native.serial/native_src/Makefile index b3e9e1245cd..5ab7aa6525a 100644 --- a/native/org.eclipse.cdt.native.serial/native_src/Makefile +++ b/native/org.eclipse.cdt.native.serial/native_src/Makefile @@ -1,5 +1,5 @@ #******************************************************************************* -# Copyright (c) 2002, 2024 QNX Software Systems and others. +# Copyright (c) 2002, 2025 QNX Software Systems and others. # # This program and the accompanying materials # are made available under the terms of the Eclipse Public License 2.0 @@ -12,8 +12,9 @@ # QNX Software Systems - initial API and implementation # Alex Blewitt - MacOSX with a 64-bit vm # Tue Ton - support for Windows on Arm64 +# Tue Ton - support for Linux riscv64 #*******************************************************************************/ -SHELL=/bin/bash -o pipefail +SHELL=/usr/bin/env -S bash -o pipefail ifeq ($(JAVA_HOME),) $(error Please define JAVA_HOME) endif @@ -32,6 +33,7 @@ LIBS = \ $(OS_DIR)/linux/x86_64/libserial.so \ $(OS_DIR)/linux/aarch64/libserial.so \ $(OS_DIR)/linux/ppc64le/libserial.so \ + $(OS_DIR)/linux/riscv64/libserial.so \ $(OS_DIR)/macosx/x86_64/libserial.jnilib \ $(OS_DIR)/macosx/aarch64/libserial.jnilib else @@ -104,6 +106,10 @@ $(OS_DIR)/linux/ppc64le/libserial.so: serial.c mkdir -p $(dir $@) powerpc64le-linux-gnu-gcc $(COMMON_CFLAGS) -m64 -mcpu=power8 $(CFLAGS) -Iinclude -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux $(LDFLAGS) -shared -o $@ serial.c +$(OS_DIR)/linux/riscv64/libserial.so: serial.c + mkdir -p $(dir $@) && \ + riscv64-linux-gnu-gcc $(COMMON_CFLAGS) $(CFLAGS) -Iinclude -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux $(LDFLAGS) -shared -o $@ $^ + $(OS_DIR)/macosx/x86_64/libserial.jnilib: serial.c mkdir -p $(dir $@) && \ x86_64-apple-darwin21.1-clang $(COMMON_CFLAGS) $(CFLAGS) -Iinclude -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin $(LDFLAGS) -dynamiclib -o $@ $^ diff --git a/native/org.eclipse.cdt.native.serial/os/linux/riscv64/libserial.so b/native/org.eclipse.cdt.native.serial/os/linux/riscv64/libserial.so new file mode 100755 index 0000000000000000000000000000000000000000..457f6ad8c7583e25ada131d569c6ccabe434d247 GIT binary patch literal 12624 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 G{r><1*D78B literal 0 HcmV?d00001 diff --git a/pom.xml b/pom.xml index e24cedd9232..638beedbaac 100644 --- a/pom.xml +++ b/pom.xml @@ -1,6 +1,6 @@