Initial support for thread groups, threads and breakpoints.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/GDBBreakpoint.st Sun Sep 07 14:42:02 2014 +0100
@@ -0,0 +1,70 @@
+"{ Package: 'jv:libgdbs' }"
+
+GDBObject subclass:#GDBBreakpoint
+ instanceVariableNames:'number type disp enabled addr func file fullname line times'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'GDB-Core'
+!
+
+!GDBBreakpoint class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ super gdbValueDescriptor
+ define: #number as: Integer;
+ define: #type as: String;
+ define: #disp as: String;
+ define: #enabled as: Boolean;
+ define: #addr as: Integer;
+ define: #func as: String;
+ define: #file as: String;
+ define: #fullname as: String;
+ define: #line as: Integer;
+ define: #times as: Integer;
+ yourself
+
+ "Created: / 06-09-2014 / 01:56:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBBreakpoint methodsFor:'accessing'!
+
+addr
+ ^ addr
+!
+
+disp
+ ^ disp
+!
+
+enabled
+ ^ enabled
+!
+
+file
+ ^ file
+!
+
+fullname
+ ^ fullname
+!
+
+func
+ ^ func
+!
+
+line
+ ^ line
+!
+
+number
+ ^ number
+!
+
+times
+ ^ times
+!
+
+type
+ ^ type
+! !
+
--- a/GDBBreakpointCreatedEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBBreakpointCreatedEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,6 +1,6 @@
"{ Package: 'jv:libgdbs' }"
-GDBNotificationEvent subclass:#GDBBreakpointCreatedEvent
+GDBBreakpointEvent subclass:#GDBBreakpointCreatedEvent
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
--- a/GDBBreakpointDeletedEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBBreakpointDeletedEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,14 +1,28 @@
"{ Package: 'jv:libgdbs' }"
GDBNotificationEvent subclass:#GDBBreakpointDeletedEvent
- instanceVariableNames:''
+ instanceVariableNames:'id'
classVariableNames:''
poolDictionaries:''
category:'GDB-Core-Events'
!
+!GDBBreakpointDeletedEvent class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ (super gdbValueDescriptor)
+ define: #id as: Integer;
+ yourself
+
+ "Created: / 06-09-2014 / 02:12:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
!GDBBreakpointDeletedEvent methodsFor:'accessing'!
+id
+ ^ id
+!
+
type
^ 'breakpoint-deleted'
! !
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/GDBBreakpointEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -0,0 +1,27 @@
+"{ Package: 'jv:libgdbs' }"
+
+GDBNotificationEvent subclass:#GDBBreakpointEvent
+ instanceVariableNames:'bkpt'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'GDB-Core-Events'
+!
+
+!GDBBreakpointEvent class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ super gdbValueDescriptor
+ define: #bkpt as: GDBBreakpoint;
+ yourself
+
+ "Created: / 06-09-2014 / 01:52:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBBreakpointEvent methodsFor:'accessing'!
+
+breakpoint
+ ^ bkpt
+
+ "Created: / 06-09-2014 / 01:51:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/GDBBreakpointModifiedEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBBreakpointModifiedEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,6 +1,6 @@
"{ Package: 'jv:libgdbs' }"
-GDBNotificationEvent subclass:#GDBBreakpointModifiedEvent
+GDBBreakpointEvent subclass:#GDBBreakpointModifiedEvent
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
--- a/GDBDebugger.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBDebugger.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,7 +1,8 @@
"{ Package: 'jv:libgdbs' }"
Object subclass:#GDBDebugger
- instanceVariableNames:'connection commandSequenceNumber inferiorStateSequenceNumber'
+ instanceVariableNames:'connection commandSequenceNumber inferiorStateSequenceNumber
+ inferiors'
classVariableNames:''
poolDictionaries:'GDBCommandStatus'
category:'GDB-Core'
@@ -49,6 +50,10 @@
"Created: / 09-06-2014 / 10:01:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 09-06-2014 / 18:27:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+inferiors
+ ^ inferiors
! !
!GDBDebugger methodsFor:'accessing-private'!
@@ -142,6 +147,50 @@
"Created: / 03-06-2014 / 00:36:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 04-06-2014 / 09:28:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+onThreadGroupAdded:aGDBThreadGroupAddedEvent
+ | inferior |
+ inferiors isNil ifTrue:[
+ inferiors := List new.
+ ].
+ inferior := GDBThreadGroup newWithId:aGDBThreadGroupAddedEvent id.
+ inferiors add:inferior.
+ aGDBThreadGroupAddedEvent setThreadGroup: inferior
+
+ "Modified: / 07-09-2014 / 13:36:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+onThreadGroupExited:aGDBThreadGroupExitedEvent
+ | inferior |
+
+ inferiors notNil ifTrue:[
+ inferior := inferiors detect:[:e | e id = aGDBThreadGroupExitedEvent id ].
+ ].
+ inferior isNil ifTrue:[
+ self error:('Mo inferior with id "%1" ' bindWith: aGDBThreadGroupExitedEvent id)
+ ].
+ inferior setExitCode: aGDBThreadGroupExitedEvent exitCode.
+ aGDBThreadGroupExitedEvent setThreadGroup: inferior
+
+ "Created: / 06-09-2014 / 02:37:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 07-09-2014 / 13:36:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+onThreadGroupStarted:aGDBThreadGroupStartedEvent
+ | inferior |
+
+ inferiors notNil ifTrue:[
+ inferior := inferiors detect:[:e | e id = aGDBThreadGroupStartedEvent id ].
+ ].
+ inferior isNil ifTrue:[
+ self error:('Mo inferior with id "%1" ' bindWith: aGDBThreadGroupStartedEvent id)
+ ].
+ inferior setPid: aGDBThreadGroupStartedEvent pid.
+ aGDBThreadGroupStartedEvent setThreadGroup: inferior
+
+ "Created: / 06-09-2014 / 02:37:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 07-09-2014 / 13:36:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GDBDebugger methodsFor:'finalization'!
@@ -190,9 +239,14 @@
when: GDBCommandEvent send: #onCommand: to: self;
when: GDBCommandResultEvent send: #onCommandResult: to: self;
when: GDBExitEvent send: #onExit: to: self;
- when: GDBExecutionEvent send: #onExecutionEvent: to: self.
+ when: GDBExecutionEvent send: #onExecutionEvent: to: self;
+
+ when: GDBThreadGroupAddedEvent send: #onThreadGroupAdded: to: self;
+ when: GDBThreadGroupStartedEvent send: #onThreadGroupStarted: to: self;
+ when: GDBThreadGroupExitedEvent send: #onThreadGroupExited: to: self.
"Created: / 20-06-2014 / 22:07:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 06-09-2014 / 02:30:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
unsubscribe
--- a/GDBNotificationEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBNotificationEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -7,6 +7,16 @@
category:'GDB-Core-Events'
!
+!GDBNotificationEvent class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ (super gdbValueDescriptor)
+ "/ define: #... as: ...
+ yourself
+
+ "Created: / 06-09-2014 / 02:07:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
!GDBNotificationEvent methodsFor:'testing'!
isNotificationEvent
--- a/GDBObject.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBObject.st Sun Sep 07 14:42:02 2014 +0100
@@ -38,9 +38,10 @@
getProperty: nm of: object
- | names index properties |
+ | nmXlated names index properties |
- index := (names := object class allInstVarNames) indexOf: nm.
+ nmXlated := (nm includes: $-) ifTrue:[ nm copyReplaceAll: $- with: $_] ifFalse:[ nm ].
+ index := (names := object class allInstVarNames) indexOf: nmXlated.
index ~~ 0 ifTrue:[
^ object instVarAt: index.
].
@@ -54,16 +55,17 @@
^ nil
"Created: / 20-06-2014 / 08:59:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 06-09-2014 / 02:05:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
setProperty: nm of: object to: value
- | names index properties |
+ | nmXlated names index properties |
- index := (names := object class allInstVarNames) indexOf: nm.
+ nmXlated := (nm includes: $-) ifTrue:[ nm copyReplaceAll: $- with: $_] ifFalse:[ nm ].
+ index := (names := object class allInstVarNames) indexOf: nmXlated.
index ~~ 0 ifTrue:[
object instVarAt: index put: value.
-
] ifFalse:[
index := names indexOf: #properties.
index ~~ 0 ifTrue:[
@@ -77,28 +79,29 @@
].
"Created: / 20-06-2014 / 09:01:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (format): / 06-09-2014 / 02:05:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GDBObject methodsFor:'accessing-properties'!
properties
- ^ GDBObject getPropertiesOf: self.
+ ^ self class getPropertiesOf: self.
- "Modified: / 20-06-2014 / 09:04:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 06-09-2014 / 01:49:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
propertyAt: name
- ^ GDBObject getProperty: name of: self
+ ^ self class getProperty: name of: self
"Created: / 31-05-2014 / 00:00:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 20-06-2014 / 09:05:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 06-09-2014 / 01:49:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
propertyAt: name put: value
- ^ GDBObject setProperty: name of: self to: value
+ ^ self class setProperty: name of: self to: value
"Created: / 31-05-2014 / 00:01:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 20-06-2014 / 09:05:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 06-09-2014 / 01:49:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GDBObject methodsFor:'attributes access'!
--- a/GDBSimulatorProcess.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBSimulatorProcess.st Sun Sep 07 14:42:02 2014 +0100
@@ -46,10 +46,10 @@
initialize
pid := -1.
- debuggerInput := GDBInternalPipeStream new.
- debuggerOutput := GDBInternalPipeStream new.
+ debuggerInput := GDBInternalPipeStream newWithBufferSize: 2048.
+ debuggerOutput := GDBInternalPipeStream newWithBufferSize: 2048.
- "Modified: / 20-06-2014 / 22:18:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 07-09-2014 / 09:23:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GDBSimulatorProcess methodsFor:'processing'!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/GDBThread.st Sun Sep 07 14:42:02 2014 +0100
@@ -0,0 +1,19 @@
+"{ Package: 'jv:libgdbs' }"
+
+GDBObject subclass:#GDBThread
+ instanceVariableNames:'id group'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'GDB-Core'
+!
+
+!GDBThread class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ (super gdbValueDescriptor)
+ define: #id as: Integer;
+ yourself
+
+ "Created: / 06-09-2014 / 02:21:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/GDBThreadCreatedEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBThreadCreatedEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,6 +1,6 @@
"{ Package: 'jv:libgdbs' }"
-GDBNotificationEvent subclass:#GDBThreadCreatedEvent
+GDBThreadEvent subclass:#GDBThreadCreatedEvent
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/GDBThreadEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -0,0 +1,20 @@
+"{ Package: 'jv:libgdbs' }"
+
+GDBNotificationEvent subclass:#GDBThreadEvent
+ instanceVariableNames:'id group_id'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'GDB-Core-Events'
+!
+
+!GDBThreadEvent class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ (super gdbValueDescriptor)
+ define: #id as: Integer;
+ define: #'group-id' as: String;
+ yourself
+
+ "Created: / 06-09-2014 / 02:08:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/GDBThreadExitedEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBThreadExitedEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,6 +1,6 @@
"{ Package: 'jv:libgdbs' }"
-GDBNotificationEvent subclass:#GDBThreadExitedEvent
+GDBThreadEvent subclass:#GDBThreadExitedEvent
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/GDBThreadGroup.st Sun Sep 07 14:42:02 2014 +0100
@@ -0,0 +1,103 @@
+"{ Package: 'jv:libgdbs' }"
+
+GDBObject subclass:#GDBThreadGroup
+ instanceVariableNames:'id pid exit_code threads'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'GDB-Core'
+!
+
+!GDBThreadGroup class methodsFor:'instance creation'!
+
+newWithId: aString
+ ^ self new setId: aString; yourself
+
+ "Created: / 06-09-2014 / 02:31:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBThreadGroup class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ (super gdbValueDescriptor)
+ define: #id as: String;
+ define: #pid as: Integer;
+ yourself
+
+ "Created: / 06-09-2014 / 02:21:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBThreadGroup methodsFor:'accessing'!
+
+exitCode
+ ^ exit_code
+
+ "Created: / 07-09-2014 / 12:34:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+id
+ ^ id
+!
+
+pid
+ ^ pid
+!
+
+threads
+ threads isNil ifTrue:[
+ threads := List new.
+ ].
+ ^ threads
+
+ "Modified: / 06-09-2014 / 02:23:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBThreadGroup methodsFor:'initialization'!
+
+setExitCode: anInteger
+ exit_code := anInteger.
+
+ "Created: / 06-09-2014 / 02:33:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+setId: aString
+ id := aString.
+
+ "Created: / 06-09-2014 / 02:32:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+setPid: anInteger
+ pid := anInteger.
+ exit_code := nil.
+
+ "Created: / 06-09-2014 / 02:32:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 07-09-2014 / 12:34:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBThreadGroup methodsFor:'private'!
+
+threadAdd: aGDBThread
+ self threads add: aGDBThread
+
+ "Created: / 06-09-2014 / 02:23:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+threadRemove: aGDBThread
+ self threads remove: aGDBThread
+
+ "Created: / 06-09-2014 / 02:23:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBThreadGroup methodsFor:'testing'!
+
+isDead
+ ^ exit_code notNil
+
+ "Created: / 06-09-2014 / 02:38:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+isRunning
+ ^ pid notNil and: [ exit_code isNil ].
+
+ "Created: / 06-09-2014 / 02:38:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/GDBThreadGroupAddedEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBThreadGroupAddedEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,6 +1,6 @@
"{ Package: 'jv:libgdbs' }"
-GDBNotificationEvent subclass:#GDBThreadGroupAddedEvent
+GDBThreadGroupEvent subclass:#GDBThreadGroupAddedEvent
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/GDBThreadGroupEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -0,0 +1,37 @@
+"{ Package: 'jv:libgdbs' }"
+
+GDBNotificationEvent subclass:#GDBThreadGroupEvent
+ instanceVariableNames:'threadGroup id'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'GDB-Core-Events'
+!
+
+!GDBThreadGroupEvent class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ (super gdbValueDescriptor)
+ define: #id as: String;
+ yourself
+
+ "Created: / 06-09-2014 / 02:10:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBThreadGroupEvent methodsFor:'accessing'!
+
+id
+ ^ id
+!
+
+threadGroup
+ ^ threadGroup
+! !
+
+!GDBThreadGroupEvent methodsFor:'initialization'!
+
+setThreadGroup: aGDBThreadGroup
+ threadGroup := aGDBThreadGroup
+
+ "Created: / 07-09-2014 / 12:45:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/GDBThreadGroupExitedEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBThreadGroupExitedEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,14 +1,30 @@
"{ Package: 'jv:libgdbs' }"
-GDBNotificationEvent subclass:#GDBThreadGroupExitedEvent
- instanceVariableNames:''
+GDBThreadGroupEvent subclass:#GDBThreadGroupExitedEvent
+ instanceVariableNames:'exit_code'
classVariableNames:''
poolDictionaries:''
category:'GDB-Core-Events'
!
+!GDBThreadGroupExitedEvent class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ (super gdbValueDescriptor)
+ define: #'exit-code' as: Integer;
+ yourself
+
+ "Created: / 06-09-2014 / 02:12:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
!GDBThreadGroupExitedEvent methodsFor:'accessing'!
+exitCode
+ ^ exit_code
+
+ "Created: / 06-09-2014 / 02:11:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
type
^ 'thread-group-exited'
! !
--- a/GDBThreadGroupStartedEvent.st Sun Sep 07 08:20:01 2014 +0100
+++ b/GDBThreadGroupStartedEvent.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,14 +1,28 @@
"{ Package: 'jv:libgdbs' }"
-GDBNotificationEvent subclass:#GDBThreadGroupStartedEvent
- instanceVariableNames:''
+GDBThreadGroupEvent subclass:#GDBThreadGroupStartedEvent
+ instanceVariableNames:'pid'
classVariableNames:''
poolDictionaries:''
category:'GDB-Core-Events'
!
+!GDBThreadGroupStartedEvent class methodsFor:'accessing - GDB value descriptors'!
+
+gdbValueDescriptor
+ ^ (super gdbValueDescriptor)
+ define: #pid as: Integer;
+ yourself
+
+ "Created: / 06-09-2014 / 02:10:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
!GDBThreadGroupStartedEvent methodsFor:'accessing'!
+pid
+ ^ pid
+!
+
type
^ 'thread-group-started'
! !
--- a/Make.proto Sun Sep 07 08:20:01 2014 +0100
+++ b/Make.proto Sun Sep 07 14:42:02 2014 +0100
@@ -34,7 +34,7 @@
# add the path(es) here:,
# ********** OPTIONAL: MODIFY the next lines ***
# LOCALINCLUDES=-Ifoo -Ibar
-LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/announcements -I$(INCLUDE_TOP)/stx/goodies/sunit -I$(INCLUDE_TOP)/stx/libbasic
+LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/announcements -I$(INCLUDE_TOP)/stx/goodies/sunit -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic2
# if you need any additional defines for embedded C code,
@@ -141,6 +141,7 @@
$(OUTDIR)GDBValueDescriptorError.$(O) GDBValueDescriptorError.$(H): GDBValueDescriptorError.st $(INCLUDE_TOP)/stx/libbasic/Error.$(H) $(INCLUDE_TOP)/stx/libbasic/Exception.$(H) $(INCLUDE_TOP)/stx/libbasic/GenericException.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)jv_libgdbs.$(O) jv_libgdbs.$(H): jv_libgdbs.st $(INCLUDE_TOP)/stx/libbasic/LibraryDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libbasic/ProjectDefinition.$(H) $(STCHDR)
$(OUTDIR)GDBAsyncEvent.$(O) GDBAsyncEvent.$(H): GDBAsyncEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBBreakpoint.$(O) GDBBreakpoint.$(H): GDBBreakpoint.st $(INCLUDE_TOP)/jv/libgdbs/GDBObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBCLICommand.$(O) GDBCLICommand.$(H): GDBCLICommand.st $(INCLUDE_TOP)/jv/libgdbs/GDBCommand.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBCommandEvent.$(O) GDBCommandEvent.$(H): GDBCommandEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBCommandResult.$(O) GDBCommandResult.$(H): GDBCommandResult.st $(INCLUDE_TOP)/jv/libgdbs/GDBObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
@@ -156,6 +157,8 @@
$(OUTDIR)GDBSessionRecorder.$(O) GDBSessionRecorder.$(H): GDBSessionRecorder.st $(INCLUDE_TOP)/jv/libgdbs/GDBDebugFlags.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBSimulatorProcess.$(O) GDBSimulatorProcess.$(H): GDBSimulatorProcess.st $(INCLUDE_TOP)/jv/libgdbs/GDBProcess.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBStreamOutputEvent.$(O) GDBStreamOutputEvent.$(H): GDBStreamOutputEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThread.$(O) GDBThread.$(H): GDBThread.st $(INCLUDE_TOP)/jv/libgdbs/GDBObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroup.$(O) GDBThreadGroup.$(H): GDBThreadGroup.st $(INCLUDE_TOP)/jv/libgdbs/GDBObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBUnixProcess.$(O) GDBUnixProcess.$(H): GDBUnixProcess.st $(INCLUDE_TOP)/jv/libgdbs/GDBProcess.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBAddresValueDescriptor.$(O) GDBAddresValueDescriptor.$(H): GDBAddresValueDescriptor.st $(INCLUDE_TOP)/jv/libgdbs/GDBPrimitiveValueDescriptor.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBValueDescriptor.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBBooleanValueDescriptor.$(O) GDBBooleanValueDescriptor.$(H): GDBBooleanValueDescriptor.st $(INCLUDE_TOP)/jv/libgdbs/GDBPrimitiveValueDescriptor.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBValueDescriptor.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
@@ -279,18 +282,21 @@
$(OUTDIR)GDBStatusEvent.$(O) GDBStatusEvent.$(H): GDBStatusEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBStringValueDescriptor.$(O) GDBStringValueDescriptor.$(H): GDBStringValueDescriptor.st $(INCLUDE_TOP)/jv/libgdbs/GDBPrimitiveValueDescriptor.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBValueDescriptor.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBTargetOutputEvent.$(O) GDBTargetOutputEvent.$(H): GDBTargetOutputEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBStreamOutputEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GDBBreakpointCreatedEvent.$(O) GDBBreakpointCreatedEvent.$(H): GDBBreakpointCreatedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBBreakpointDeletedEvent.$(O) GDBBreakpointDeletedEvent.$(H): GDBBreakpointDeletedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GDBBreakpointModifiedEvent.$(O) GDBBreakpointModifiedEvent.$(H): GDBBreakpointModifiedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBBreakpointEvent.$(O) GDBBreakpointEvent.$(H): GDBBreakpointEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBLibraryLoadedEvent.$(O) GDBLibraryLoadedEvent.$(H): GDBLibraryLoadedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBLibraryUnloadedEvent.$(O) GDBLibraryUnloadedEvent.$(H): GDBLibraryUnloadedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBRunningEvent.$(O) GDBRunningEvent.$(H): GDBRunningEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBExecutionEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GDBStoppedEvent.$(O) GDBStoppedEvent.$(H): GDBStoppedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBExecutionEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadCreatedEvent.$(O) GDBThreadCreatedEvent.$(H): GDBThreadCreatedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadExitedEvent.$(O) GDBThreadExitedEvent.$(H): GDBThreadExitedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadGroupAddedEvent.$(O) GDBThreadGroupAddedEvent.$(H): GDBThreadGroupAddedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadGroupExitedEvent.$(O) GDBThreadGroupExitedEvent.$(H): GDBThreadGroupExitedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadGroupStartedEvent.$(O) GDBThreadGroupStartedEvent.$(H): GDBThreadGroupStartedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadEvent.$(O) GDBThreadEvent.$(H): GDBThreadEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroupEvent.$(O) GDBThreadGroupEvent.$(H): GDBThreadGroupEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBBreakpointCreatedEvent.$(O) GDBBreakpointCreatedEvent.$(H): GDBBreakpointCreatedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBBreakpointEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBBreakpointModifiedEvent.$(O) GDBBreakpointModifiedEvent.$(H): GDBBreakpointModifiedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBBreakpointEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadCreatedEvent.$(O) GDBThreadCreatedEvent.$(H): GDBThreadCreatedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBThreadEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadExitedEvent.$(O) GDBThreadExitedEvent.$(H): GDBThreadExitedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBThreadEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroupAddedEvent.$(O) GDBThreadGroupAddedEvent.$(H): GDBThreadGroupAddedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBThreadGroupEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroupExitedEvent.$(O) GDBThreadGroupExitedEvent.$(H): GDBThreadGroupExitedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBThreadGroupEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroupStartedEvent.$(O) GDBThreadGroupStartedEvent.$(H): GDBThreadGroupStartedEvent.st $(INCLUDE_TOP)/jv/libgdbs/GDBAsyncEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBNotificationEvent.$(H) $(INCLUDE_TOP)/jv/libgdbs/GDBThreadGroupEvent.$(H) $(INCLUDE_TOP)/stx/goodies/announcements/Announcement.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)/stx/libbasic/ArithmeticValue.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Boolean.$(H) $(INCLUDE_TOP)/stx/libbasic/CharacterArray.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Integer.$(H) $(INCLUDE_TOP)/stx/libbasic/Magnitude.$(H) $(INCLUDE_TOP)/stx/libbasic/Number.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(STCHDR)
# ENDMAKEDEPEND --- do not remove this line
--- a/Make.spec Sun Sep 07 08:20:01 2014 +0100
+++ b/Make.spec Sun Sep 07 14:42:02 2014 +0100
@@ -64,6 +64,7 @@
GDBValueDescriptorError \
jv_libgdbs \
GDBAsyncEvent \
+ GDBBreakpoint \
GDBCLICommand \
GDBCommandEvent \
GDBCommandResult \
@@ -79,6 +80,8 @@
GDBSessionRecorder \
GDBSimulatorProcess \
GDBStreamOutputEvent \
+ GDBThread \
+ GDBThreadGroup \
GDBUnixProcess \
GDBAddresValueDescriptor \
GDBBooleanValueDescriptor \
@@ -202,13 +205,16 @@
GDBStatusEvent \
GDBStringValueDescriptor \
GDBTargetOutputEvent \
- GDBBreakpointCreatedEvent \
GDBBreakpointDeletedEvent \
- GDBBreakpointModifiedEvent \
+ GDBBreakpointEvent \
GDBLibraryLoadedEvent \
GDBLibraryUnloadedEvent \
GDBRunningEvent \
GDBStoppedEvent \
+ GDBThreadEvent \
+ GDBThreadGroupEvent \
+ GDBBreakpointCreatedEvent \
+ GDBBreakpointModifiedEvent \
GDBThreadCreatedEvent \
GDBThreadExitedEvent \
GDBThreadGroupAddedEvent \
@@ -233,6 +239,7 @@
$(OUTDIR_SLASH)GDBValueDescriptorError.$(O) \
$(OUTDIR_SLASH)jv_libgdbs.$(O) \
$(OUTDIR_SLASH)GDBAsyncEvent.$(O) \
+ $(OUTDIR_SLASH)GDBBreakpoint.$(O) \
$(OUTDIR_SLASH)GDBCLICommand.$(O) \
$(OUTDIR_SLASH)GDBCommandEvent.$(O) \
$(OUTDIR_SLASH)GDBCommandResult.$(O) \
@@ -248,6 +255,8 @@
$(OUTDIR_SLASH)GDBSessionRecorder.$(O) \
$(OUTDIR_SLASH)GDBSimulatorProcess.$(O) \
$(OUTDIR_SLASH)GDBStreamOutputEvent.$(O) \
+ $(OUTDIR_SLASH)GDBThread.$(O) \
+ $(OUTDIR_SLASH)GDBThreadGroup.$(O) \
$(OUTDIR_SLASH)GDBUnixProcess.$(O) \
$(OUTDIR_SLASH)GDBAddresValueDescriptor.$(O) \
$(OUTDIR_SLASH)GDBBooleanValueDescriptor.$(O) \
@@ -371,13 +380,16 @@
$(OUTDIR_SLASH)GDBStatusEvent.$(O) \
$(OUTDIR_SLASH)GDBStringValueDescriptor.$(O) \
$(OUTDIR_SLASH)GDBTargetOutputEvent.$(O) \
- $(OUTDIR_SLASH)GDBBreakpointCreatedEvent.$(O) \
$(OUTDIR_SLASH)GDBBreakpointDeletedEvent.$(O) \
- $(OUTDIR_SLASH)GDBBreakpointModifiedEvent.$(O) \
+ $(OUTDIR_SLASH)GDBBreakpointEvent.$(O) \
$(OUTDIR_SLASH)GDBLibraryLoadedEvent.$(O) \
$(OUTDIR_SLASH)GDBLibraryUnloadedEvent.$(O) \
$(OUTDIR_SLASH)GDBRunningEvent.$(O) \
$(OUTDIR_SLASH)GDBStoppedEvent.$(O) \
+ $(OUTDIR_SLASH)GDBThreadEvent.$(O) \
+ $(OUTDIR_SLASH)GDBThreadGroupEvent.$(O) \
+ $(OUTDIR_SLASH)GDBBreakpointCreatedEvent.$(O) \
+ $(OUTDIR_SLASH)GDBBreakpointModifiedEvent.$(O) \
$(OUTDIR_SLASH)GDBThreadCreatedEvent.$(O) \
$(OUTDIR_SLASH)GDBThreadExitedEvent.$(O) \
$(OUTDIR_SLASH)GDBThreadGroupAddedEvent.$(O) \
--- a/abbrev.stc Sun Sep 07 08:20:01 2014 +0100
+++ b/abbrev.stc Sun Sep 07 14:42:02 2014 +0100
@@ -16,6 +16,7 @@
GDBValueDescriptorError GDBValueDescriptorError jv:libgdbs 'GDB-Private-Descriptors' 1
jv_libgdbs jv_libgdbs jv:libgdbs '* Projects & Packages *' 3
GDBAsyncEvent GDBAsyncEvent jv:libgdbs 'GDB-Core-Events' 0
+GDBBreakpoint GDBBreakpoint jv:libgdbs 'GDB-Core' 0
GDBCLICommand GDBCLICommand jv:libgdbs 'GDB-Core-Commands' 0
GDBCommandEvent GDBCommandEvent jv:libgdbs 'GDB-Core-Events' 0
GDBCommandResult GDBCommandResult jv:libgdbs 'GDB-Core-Commands' 0
@@ -31,6 +32,8 @@
GDBSessionRecorder GDBSessionRecorder jv:libgdbs 'GDB-Private-Simulator' 0
GDBSimulatorProcess GDBSimulatorProcess jv:libgdbs 'GDB-Private-Simulator' 0
GDBStreamOutputEvent GDBStreamOutputEvent jv:libgdbs 'GDB-Core-Events' 0
+GDBThread GDBThread jv:libgdbs 'GDB-Core' 0
+GDBThreadGroup GDBThreadGroup jv:libgdbs 'GDB-Core' 0
GDBUnixProcess GDBUnixProcess jv:libgdbs 'GDB-Private' 0
GDBAddresValueDescriptor GDBAddresValueDescriptor jv:libgdbs 'GDB-Private-Descriptors' 0
GDBBooleanValueDescriptor GDBBooleanValueDescriptor jv:libgdbs 'GDB-Private-Descriptors' 0
@@ -154,13 +157,16 @@
GDBStatusEvent GDBStatusEvent jv:libgdbs 'GDB-Core-Events' 0
GDBStringValueDescriptor GDBStringValueDescriptor jv:libgdbs 'GDB-Private-Descriptors' 0
GDBTargetOutputEvent GDBTargetOutputEvent jv:libgdbs 'GDB-Core-Events' 0
-GDBBreakpointCreatedEvent GDBBreakpointCreatedEvent jv:libgdbs 'GDB-Core-Events' 0
GDBBreakpointDeletedEvent GDBBreakpointDeletedEvent jv:libgdbs 'GDB-Core-Events' 0
-GDBBreakpointModifiedEvent GDBBreakpointModifiedEvent jv:libgdbs 'GDB-Core-Events' 0
+GDBBreakpointEvent GDBBreakpointEvent jv:libgdbs 'GDB-Core-Events' 0
GDBLibraryLoadedEvent GDBLibraryLoadedEvent jv:libgdbs 'GDB-Core-Events' 0
GDBLibraryUnloadedEvent GDBLibraryUnloadedEvent jv:libgdbs 'GDB-Core-Events' 0
GDBRunningEvent GDBRunningEvent jv:libgdbs 'GDB-Core-Events' 0
GDBStoppedEvent GDBStoppedEvent jv:libgdbs 'GDB-Core-Events' 0
+GDBThreadEvent GDBThreadEvent jv:libgdbs 'GDB-Core-Events' 0
+GDBThreadGroupEvent GDBThreadGroupEvent jv:libgdbs 'GDB-Core-Events' 0
+GDBBreakpointCreatedEvent GDBBreakpointCreatedEvent jv:libgdbs 'GDB-Core-Events' 0
+GDBBreakpointModifiedEvent GDBBreakpointModifiedEvent jv:libgdbs 'GDB-Core-Events' 0
GDBThreadCreatedEvent GDBThreadCreatedEvent jv:libgdbs 'GDB-Core-Events' 0
GDBThreadExitedEvent GDBThreadExitedEvent jv:libgdbs 'GDB-Core-Events' 0
GDBThreadGroupAddedEvent GDBThreadGroupAddedEvent jv:libgdbs 'GDB-Core-Events' 0
--- a/bc.mak Sun Sep 07 08:20:01 2014 +0100
+++ b/bc.mak Sun Sep 07 14:42:02 2014 +0100
@@ -34,7 +34,7 @@
-LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\announcements -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\libbasic
+LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\announcements -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2
LOCALDEFINES=
STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -varPrefix=$(LIBNAME)
@@ -87,6 +87,7 @@
$(OUTDIR)GDBValueDescriptorError.$(O) GDBValueDescriptorError.$(H): GDBValueDescriptorError.st $(INCLUDE_TOP)\stx\libbasic\Error.$(H) $(INCLUDE_TOP)\stx\libbasic\Exception.$(H) $(INCLUDE_TOP)\stx\libbasic\GenericException.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)jv_libgdbs.$(O) jv_libgdbs.$(H): jv_libgdbs.st $(INCLUDE_TOP)\stx\libbasic\LibraryDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(STCHDR)
$(OUTDIR)GDBAsyncEvent.$(O) GDBAsyncEvent.$(H): GDBAsyncEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBBreakpoint.$(O) GDBBreakpoint.$(H): GDBBreakpoint.st $(INCLUDE_TOP)\jv\libgdbs\GDBObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBCLICommand.$(O) GDBCLICommand.$(H): GDBCLICommand.st $(INCLUDE_TOP)\jv\libgdbs\GDBCommand.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBCommandEvent.$(O) GDBCommandEvent.$(H): GDBCommandEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBCommandResult.$(O) GDBCommandResult.$(H): GDBCommandResult.st $(INCLUDE_TOP)\jv\libgdbs\GDBObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -102,6 +103,8 @@
$(OUTDIR)GDBSessionRecorder.$(O) GDBSessionRecorder.$(H): GDBSessionRecorder.st $(INCLUDE_TOP)\jv\libgdbs\GDBDebugFlags.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBSimulatorProcess.$(O) GDBSimulatorProcess.$(H): GDBSimulatorProcess.st $(INCLUDE_TOP)\jv\libgdbs\GDBProcess.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBStreamOutputEvent.$(O) GDBStreamOutputEvent.$(H): GDBStreamOutputEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThread.$(O) GDBThread.$(H): GDBThread.st $(INCLUDE_TOP)\jv\libgdbs\GDBObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroup.$(O) GDBThreadGroup.$(H): GDBThreadGroup.st $(INCLUDE_TOP)\jv\libgdbs\GDBObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBUnixProcess.$(O) GDBUnixProcess.$(H): GDBUnixProcess.st $(INCLUDE_TOP)\jv\libgdbs\GDBProcess.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBAddresValueDescriptor.$(O) GDBAddresValueDescriptor.$(H): GDBAddresValueDescriptor.st $(INCLUDE_TOP)\jv\libgdbs\GDBPrimitiveValueDescriptor.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBValueDescriptor.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBBooleanValueDescriptor.$(O) GDBBooleanValueDescriptor.$(H): GDBBooleanValueDescriptor.st $(INCLUDE_TOP)\jv\libgdbs\GDBPrimitiveValueDescriptor.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBValueDescriptor.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -225,18 +228,21 @@
$(OUTDIR)GDBStatusEvent.$(O) GDBStatusEvent.$(H): GDBStatusEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBStringValueDescriptor.$(O) GDBStringValueDescriptor.$(H): GDBStringValueDescriptor.st $(INCLUDE_TOP)\jv\libgdbs\GDBPrimitiveValueDescriptor.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBValueDescriptor.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBTargetOutputEvent.$(O) GDBTargetOutputEvent.$(H): GDBTargetOutputEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBStreamOutputEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GDBBreakpointCreatedEvent.$(O) GDBBreakpointCreatedEvent.$(H): GDBBreakpointCreatedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBBreakpointDeletedEvent.$(O) GDBBreakpointDeletedEvent.$(H): GDBBreakpointDeletedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GDBBreakpointModifiedEvent.$(O) GDBBreakpointModifiedEvent.$(H): GDBBreakpointModifiedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBBreakpointEvent.$(O) GDBBreakpointEvent.$(H): GDBBreakpointEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBLibraryLoadedEvent.$(O) GDBLibraryLoadedEvent.$(H): GDBLibraryLoadedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBLibraryUnloadedEvent.$(O) GDBLibraryUnloadedEvent.$(H): GDBLibraryUnloadedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBRunningEvent.$(O) GDBRunningEvent.$(H): GDBRunningEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBExecutionEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GDBStoppedEvent.$(O) GDBStoppedEvent.$(H): GDBStoppedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBExecutionEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadCreatedEvent.$(O) GDBThreadCreatedEvent.$(H): GDBThreadCreatedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadExitedEvent.$(O) GDBThreadExitedEvent.$(H): GDBThreadExitedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadGroupAddedEvent.$(O) GDBThreadGroupAddedEvent.$(H): GDBThreadGroupAddedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadGroupExitedEvent.$(O) GDBThreadGroupExitedEvent.$(H): GDBThreadGroupExitedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GDBThreadGroupStartedEvent.$(O) GDBThreadGroupStartedEvent.$(H): GDBThreadGroupStartedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadEvent.$(O) GDBThreadEvent.$(H): GDBThreadEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroupEvent.$(O) GDBThreadGroupEvent.$(H): GDBThreadGroupEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBBreakpointCreatedEvent.$(O) GDBBreakpointCreatedEvent.$(H): GDBBreakpointCreatedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBBreakpointEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBBreakpointModifiedEvent.$(O) GDBBreakpointModifiedEvent.$(H): GDBBreakpointModifiedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBBreakpointEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadCreatedEvent.$(O) GDBThreadCreatedEvent.$(H): GDBThreadCreatedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBThreadEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadExitedEvent.$(O) GDBThreadExitedEvent.$(H): GDBThreadExitedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBThreadEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroupAddedEvent.$(O) GDBThreadGroupAddedEvent.$(H): GDBThreadGroupAddedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBThreadGroupEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroupExitedEvent.$(O) GDBThreadGroupExitedEvent.$(H): GDBThreadGroupExitedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBThreadGroupEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GDBThreadGroupStartedEvent.$(O) GDBThreadGroupStartedEvent.$(H): GDBThreadGroupStartedEvent.st $(INCLUDE_TOP)\jv\libgdbs\GDBAsyncEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBNotificationEvent.$(H) $(INCLUDE_TOP)\jv\libgdbs\GDBThreadGroupEvent.$(H) $(INCLUDE_TOP)\stx\goodies\announcements\Announcement.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)\stx\libbasic\ArithmeticValue.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Boolean.$(H) $(INCLUDE_TOP)\stx\libbasic\CharacterArray.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Integer.$(H) $(INCLUDE_TOP)\stx\libbasic\Magnitude.$(H) $(INCLUDE_TOP)\stx\libbasic\Number.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(STCHDR)
# ENDMAKEDEPEND --- do not remove this line
--- a/jv_libgdbs.st Sun Sep 07 08:20:01 2014 +0100
+++ b/jv_libgdbs.st Sun Sep 07 14:42:02 2014 +0100
@@ -42,6 +42,7 @@
by searching all classes (and their packages) which are referenced by my classes."
^ #(
+ #'stx:libbasic2' "List - referenced by GDBDebugger>>onThreadGroupAdded:"
)
!
@@ -80,6 +81,7 @@
GDBValueDescriptorError
#'jv_libgdbs'
GDBAsyncEvent
+ GDBBreakpoint
GDBCLICommand
GDBCommandEvent
GDBCommandResult
@@ -95,6 +97,8 @@
GDBSessionRecorder
GDBSimulatorProcess
GDBStreamOutputEvent
+ GDBThread
+ GDBThreadGroup
GDBUnixProcess
GDBAddresValueDescriptor
GDBBooleanValueDescriptor
@@ -218,13 +222,16 @@
GDBStatusEvent
GDBStringValueDescriptor
GDBTargetOutputEvent
- GDBBreakpointCreatedEvent
GDBBreakpointDeletedEvent
- GDBBreakpointModifiedEvent
+ GDBBreakpointEvent
GDBLibraryLoadedEvent
GDBLibraryUnloadedEvent
GDBRunningEvent
GDBStoppedEvent
+ GDBThreadEvent
+ GDBThreadGroupEvent
+ GDBBreakpointCreatedEvent
+ GDBBreakpointModifiedEvent
GDBThreadCreatedEvent
GDBThreadExitedEvent
GDBThreadGroupAddedEvent
--- a/libInit.cc Sun Sep 07 08:20:01 2014 +0100
+++ b/libInit.cc Sun Sep 07 14:42:02 2014 +0100
@@ -41,6 +41,7 @@
_GDBValueDescriptorError_Init(pass,__pRT__,snd);
_jv_137libgdbs_Init(pass,__pRT__,snd);
_GDBAsyncEvent_Init(pass,__pRT__,snd);
+_GDBBreakpoint_Init(pass,__pRT__,snd);
_GDBCLICommand_Init(pass,__pRT__,snd);
_GDBCommandEvent_Init(pass,__pRT__,snd);
_GDBCommandResult_Init(pass,__pRT__,snd);
@@ -56,6 +57,8 @@
_GDBSessionRecorder_Init(pass,__pRT__,snd);
_GDBSimulatorProcess_Init(pass,__pRT__,snd);
_GDBStreamOutputEvent_Init(pass,__pRT__,snd);
+_GDBThread_Init(pass,__pRT__,snd);
+_GDBThreadGroup_Init(pass,__pRT__,snd);
_GDBUnixProcess_Init(pass,__pRT__,snd);
_GDBAddresValueDescriptor_Init(pass,__pRT__,snd);
_GDBBooleanValueDescriptor_Init(pass,__pRT__,snd);
@@ -179,13 +182,16 @@
_GDBStatusEvent_Init(pass,__pRT__,snd);
_GDBStringValueDescriptor_Init(pass,__pRT__,snd);
_GDBTargetOutputEvent_Init(pass,__pRT__,snd);
-_GDBBreakpointCreatedEvent_Init(pass,__pRT__,snd);
_GDBBreakpointDeletedEvent_Init(pass,__pRT__,snd);
-_GDBBreakpointModifiedEvent_Init(pass,__pRT__,snd);
+_GDBBreakpointEvent_Init(pass,__pRT__,snd);
_GDBLibraryLoadedEvent_Init(pass,__pRT__,snd);
_GDBLibraryUnloadedEvent_Init(pass,__pRT__,snd);
_GDBRunningEvent_Init(pass,__pRT__,snd);
_GDBStoppedEvent_Init(pass,__pRT__,snd);
+_GDBThreadEvent_Init(pass,__pRT__,snd);
+_GDBThreadGroupEvent_Init(pass,__pRT__,snd);
+_GDBBreakpointCreatedEvent_Init(pass,__pRT__,snd);
+_GDBBreakpointModifiedEvent_Init(pass,__pRT__,snd);
_GDBThreadCreatedEvent_Init(pass,__pRT__,snd);
_GDBThreadExitedEvent_Init(pass,__pRT__,snd);
_GDBThreadGroupAddedEvent_Init(pass,__pRT__,snd);
--- a/libgdbs.rc Sun Sep 07 08:20:01 2014 +0100
+++ b/libgdbs.rc Sun Sep 07 14:42:02 2014 +0100
@@ -25,7 +25,7 @@
VALUE "LegalCopyright", "My CopyRight or CopyLeft\0"
VALUE "ProductName", "LibraryName\0"
VALUE "ProductVersion", "6.2.4.0\0"
- VALUE "ProductDate", "Tue, 26 Aug 2014 08:51:30 GMT\0"
+ VALUE "ProductDate", "Sun, 07 Sep 2014 13:39:29 GMT\0"
END
END
--- a/tests/GDBDebuggerTests.st Sun Sep 07 08:20:01 2014 +0100
+++ b/tests/GDBDebuggerTests.st Sun Sep 07 14:42:02 2014 +0100
@@ -1,7 +1,7 @@
"{ Package: 'jv:libgdbs/tests' }"
TestCase subclass:#GDBDebuggerTests
- instanceVariableNames:''
+ instanceVariableNames:'debugger simulator'
classVariableNames:''
poolDictionaries:''
category:'GDB-Core-Tests'
@@ -25,10 +25,19 @@
"
! !
+!GDBDebuggerTests methodsFor:'running'!
+
+tearDown
+ simulator notNil ifTrue:[ simulator stop ].
+ debugger notNil ifTrue:[ debugger release ].
+
+ "Created: / 06-09-2014 / 02:17:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
!GDBDebuggerTests methodsFor:'tests - basic'!
test_basic_01
- | debugger timeouted |
+ | timeouted |
debugger := GDBDebugger new.
self assert: debugger isConnected.
@@ -41,16 +50,53 @@
self assert: debugger isConnected not.
"Created: / 24-06-2014 / 09:06:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (format): / 06-09-2014 / 02:16:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
test_basic_02
- | simulator debugger |
+ simulator := GDBSimulatorProcess new record: GDBSimulatorResource session_factorial_01.
+ simulator start.
+ debugger := GDBDebugger newWithProcess: simulator.
+
+ "Created: / 24-06-2014 / 09:09:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 06-09-2014 / 02:18:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GDBDebuggerTests methodsFor:'tests - threads'!
+
+test_inferiors_01a
+ | event |
simulator := GDBSimulatorProcess new record: GDBSimulatorResource session_factorial_01.
+ simulator start.
debugger := GDBDebugger newWithProcess: simulator.
- simulator start.
+ debugger announcer when: GDBThreadGroupEvent do:[:ev |
+ event := ev.
+ ].
+
+ debugger send: (GDBMI_file_exec_and_symbols new arguments: {'/home/jv/Private/Projects/SmalltalkX/sources/branches/jv1/build/jv/libgdbs/tests/c/factorial'}).
+ debugger send: (GDBCLICommand new value: 'b factorial').
+
+ self assert: debugger inferiors size == 1.
+ self assert: debugger inferiors anElement id = 'i1'.
+ "/ No, following won't work as thread-group-added event is
+ "/ emited before we register the handler above!!
+ "/ self assert: debugger inferiors anElement == event threadGroup.
- "Created: / 24-06-2014 / 09:09:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ debugger send: (GDBCLICommand new value: 'r').
+
+ self assert: debugger inferiors size == 1.
+ self assert: debugger inferiors anElement pid = 7719.
+ self assert: debugger inferiors anElement == event threadGroup.
+
+ debugger send: (GDBCLICommand new value: 'del 1').
+ debugger send: (GDBCLICommand new value: 'c').
+
+ self assert: debugger inferiors size == 1.
+ self assert: debugger inferiors anElement exitCode = 23.
+ self assert: debugger inferiors anElement == event threadGroup.
+
+ "Created: / 07-09-2014 / 13:37:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GDBDebuggerTests class methodsFor:'documentation'!
--- a/tests/GDBParserTests.st Sun Sep 07 08:20:01 2014 +0100
+++ b/tests/GDBParserTests.st Sun Sep 07 14:42:02 2014 +0100
@@ -218,7 +218,15 @@
self assert: events first value = 'Breakpoint 2 at 0x400527: file factorial.c, line 4.
'.
self assert: events second isNotificationEvent.
+ self assert: events second class == GDBBreakpointCreatedEvent.
self assert: events second type = 'breakpoint-created'.
+ self assert: events second breakpoint notNil.
+ self assert: events second breakpoint class == GDBBreakpoint.
+ self assert: events second breakpoint number = 2.
+ self assert: events second breakpoint file = 'factorial.c'.
+
+
+
parser := GDBParser on:'&"info break\n"
~"Num Type Disp Enb Address What\n"
@@ -277,7 +285,7 @@
self assert: (events at:7) type = 'stopped'.
"Created: / 01-06-2014 / 22:57:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 19-06-2014 / 21:55:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 06-09-2014 / 01:38:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GDBParserTests methodsFor:'tests - values'!
--- a/tests/tests.rc Sun Sep 07 08:20:01 2014 +0100
+++ b/tests/tests.rc Sun Sep 07 14:42:02 2014 +0100
@@ -25,7 +25,7 @@
VALUE "LegalCopyright", "My CopyRight or CopyLeft\0"
VALUE "ProductName", "LibraryName\0"
VALUE "ProductVersion", "6.2.4.0\0"
- VALUE "ProductDate", "Tue, 26 Aug 2014 08:51:33 GMT\0"
+ VALUE "ProductDate", "Sun, 07 Sep 2014 13:39:31 GMT\0"
END
END