GP-4562: once more more...

GP-4562: once more...
GP-4562: once more...
GP-4562: test error
GP-4562: post-review pt4
GP-4562: post-review pt3
GP-4562: post-review pt2
GP-4562: post-review pt1
GP-4562: warnings (Win)
GP-4562: warnings
GP-4562: windows warning
GP-4562: notes
GP-4562: notes
GP-4562: rearranged slightly
GP-4562: clean-up
GP-4562: powershell adds
GP-4562: powershell adds
GP-4562: added task
GP-4562: oops
GP-4562: buildXml
GP-4562: moving stuff
GP-4562: re-generating
GP-4562: gdb (passes tests)
GP-4562: first pass
GP4562: xsltGP-4562: rearrangeGP-4562:  breaking things downGP-4562: basics in placeGP-4562: oops
This commit is contained in:
d-millar
2026-05-08 14:46:06 -04:00
parent dee3703ef6
commit fc988976bf
38 changed files with 2942 additions and 1704 deletions
@@ -11,5 +11,6 @@ src/main/py/LICENSE||GHIDRA||||END|
src/main/py/MANIFEST.in||GHIDRA||||END|
src/main/py/README.md||GHIDRA||||END|
src/main/py/pyproject.toml||GHIDRA||||END|
src/main/py/src/ghidralldb/lldb_base.xml||GHIDRA||||END|
src/main/py/src/ghidralldb/py.typed||GHIDRA||||END|
src/main/py/src/ghidralldb/schema.xml||GHIDRA||||END|
@@ -0,0 +1,35 @@
## ###
# 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.
##
from merge_xml import merge
import os
import sys
rmi_path = os.getcwd() + "/../../../../../../Debugger-rmi-trace/src/main/py/src/ghidratrace/"
sys.path.append(rmi_path)
def main():
xml = rmi_path+"xml/"
merge(xml_base="lldb_base.xml",
xml_out="schema.xml",
xml_updates=[
xml+"common.xml",
xml+"available.xml",
xml+"breakpointsTiered.xml"
])
if __name__ == '__main__':
main()
@@ -0,0 +1,68 @@
<context>
<schema name="LldbSession" elementResync="NEVER" attributeResync="NEVER">
<interface name="EventScope" />
<interface name="FocusScope" />
<interface name="Aggregate" />
<element schema="VOID" />
<attribute name="Processes" schema="ProcessContainer" required="yes" fixed="yes" />
<attribute name="Available" schema="AvailableContainer" required="yes" fixed="yes" />
<attribute name="_event_thread" schema="OBJECT" hidden="yes" />
<attribute name="_focus" schema="Selectable" required="yes" hidden="yes" />
<attribute name="_display" schema="STRING" hidden="yes" />
<attribute name="_order" schema="INT" hidden="yes" />
<attribute schema="VOID" />
</schema>
<schema name="Process" elementResync="NEVER" attributeResync="NEVER">
<attribute name="Breakpoints" schema="BreakpointContainer" required="yes" fixed="yes" />
<attribute name="Watchpoints" schema="WatchpointContainer" required="yes" fixed="yes" />
</schema>
<schema name="Environment" elementResync="NEVER" attributeResync="NEVER">
<attribute name="os" schema="STRING" />
</schema>
<schema name="Thread" elementResync="NEVER" attributeResync="NEVER">
<attribute name="Name" schema="STRING" />
</schema>
<schema name="WatchpointContainer" canonical="yes" elementResync="NEVER" attributeResync="NEVER">
<element schema="WatchpointSpec" />
<attribute name="_order" schema="INT" hidden="yes" />
<attribute schema="VOID" />
</schema>
<schema name="WatchpointSpec" canonical="yes" elementResync="NEVER" attributeResync="NEVER">
<interface name="BreakpointSpec" />
<interface name="BreakpointLocation" />
<interface name="Togglable" />
<attribute name="Expression" schema="STRING" required="yes" hidden="yes" />
<attribute-alias from="_expression" to="Expression" />
<attribute name="Kinds" schema="STRING" required="yes" hidden="yes" />
<attribute-alias from="_kinds" to="Kinds" />
<attribute name="_display" schema="STRING" hidden="yes" />
<attribute name="_order" schema="INT" hidden="yes" />
<attribute name="Enabled" schema="BOOL" />
<attribute-alias from="_enabled" to="Enabled" />
<attribute name="Range" schema="RANGE" />
<attribute-alias from="_range" to="Range" />
<attribute name="Condition" schema="STRING" />
<attribute name="Hit Count" schema="INT" />
<attribute name="Ignore Count" schema="INT" />
<attribute schema="VOID" />
</schema>
<schema name="StackFrame" elementResync="NEVER" attributeResync="NEVER">
<attribute name="Registers" schema="RegisterValueContainer" required="yes" fixed="yes" />
<attribute name="PC" schema="ADDRESS" required="yes" />
<attribute-alias from="_pc" to="PC" />
</schema>
<schema name="RegisterValueContainer" attributeResync="ONCE">
<attribute name="General Purpose Registers" schema="RegisterBank" />
<attribute name="Floating Point Registers" schema="RegisterBank" />
<attribute name="Advanced Vector Extensions" schema="RegisterBank" />
<attribute name="Memory Protection Extensions" schema="RegisterBank" />
<attribute name="float" schema="RegisterBank" />
<attribute name="general" schema="RegisterBank" />
<attribute name="system" schema="RegisterBank" />
<attribute schema="VOID" />
</schema>
<schema name="RegisterBank" canonical="yes" elementResync="ONCE" attributeResync="NEVER">
<attribute name="_order" schema="INT" hidden="yes" />
<attribute schema="Register" />
</schema>
</context>
File diff suppressed because it is too large Load Diff