1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
|
1999-02-02 Martin Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (get_register): For RAW display, concat all the
pieces together before calling fputs.
1999-02-01 Martin Hunt <hunt@cygnus.com>
* gdbtk-cmds.c: (gdb_set_bp): Change the "type" argument
to be ASCII instead of an integer. Currently accepts "temp"
or "normal". Fixed error messages.
(gdb_set_bp_addr): Ditto.
1999-01-29 James Ingham <jingham@cygnus.com>
* gdbtk.c (gdbtk_init): Set the fputs_unfiltered_hook to
gdbtk_fputs BEFORE you eval script. The old code was setting it
to null until after you did this, but that is wrong, because it
will cause the output of CAUGHT errors to go to gdb_stderr, which
is wrong. You only want to write errors to the console if the
eval generates an error.
1999-01-29 Martin Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_get_breakpoint_info): When printing addresses,
do not rely on the format string "%lx" -- it does not exist for all
hosts. Use paddr instead.
(gdb_loadfile): Increase maximum line size to pass testsuite cases.
* gdbtk-hooks.c (gdbtk_add_hooks): Remove pc_changed_hook and
add register_changed_hook and memory_changed_hook.
(gdbtk_register_changed): New function.
(gdbtk_memory_changed): New function.
* gdbtk.c (gdbtk_init): Create tcl warp_pointer command
for use with testing.
* gdbtk-cmds.c (gdb_loc): Fix for case where there are only
minimal symbols. Also make gdb_loc return the shared library
the location is in, if it is in one.
1999-01-27 James Ingham <jingham@cygnus.com>
* gdbtk-wrapper.c: Missed a couple of places where FILE->GDB_FILE
in the fputs_unfiltered_hook needed to propagate.
1999-01-27 James Ingham <jingham@cygnus.com>
Merging in changes from gdbtk-980810 - the Itcl3
gdb branch.
1999-01-12 Martin Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_loadfile): Increase maximum line size so
files with very long lines get numbered correctly.
Thu Jan 7 06:50:32 1999 Keith Seitz <keiths@cygnus.com>
* gdbtk-hooks.c (gdbtk_add_hooks): Add the error_begin_hook;
(gdbtk_error_begin): New function.
(gdbtk_fputs): If GDBTK_ERROR_ONLY is set, treat output to
any stream as if it had come from gdb_stderr.
* gdbtk.h: Define GDBTK_SYMBOL_SOURCE_NAME: does the same thing
as SYMBOL_SOURCE_NAME, except that it NEVER returns a mangled name.
Define GDBTK_ERROR_ONLY flag for result_ptr.
* gdbtk-cmds.c (gdb_listfuncs): Use SYMBOL_DEMANGLED_NAME to
get the symbol's fully demangled name (including class and
args for overloaded funcs), not cplus_demangle.
(get_frame_name): Use GDBTK_SYMBOL_SOURCE_NAME to get the name
of the frame level.
* gdbtk-wrapper.c, gdbtk-wrapper.h:
(GDB_val_print): Allow caller to specify all function args to val_print.
(wrap_val_print): Ditto.
* gdbtk-variable.c (variable_value): Clear addressprint when getting
value of C++ reference-type variables
If we errored because a parent (struct pointer) was junk, output
an error message indicating so.
(call_gdb_val_print): Tell val_print to dereference C++ reference
types.
(number_of_children): void * also has no children.
(get_call_output): Clear any error flags that may have been set
as a result of error_begin.
* utils.c (error_begin_hook): New hook.
(error_begin): Call error_begin_hook so that the GUI
gets notified.
* defs.h (error_begin_hook): Declare.
Wed Jan 6 08:43:31 1999 Keith Seitz <keiths@cygnus.com>
* gdbtk-wrapper.c, gdbtk-wrapper.h: Add wrappers for parse_exp_1,
evaluate_type, block_for_pc, block_innermost_frame, reinit_frame_cache,
and find_frame_addr_in_frame_chain.
* gdbtk-variable.c (variable_create): Check for failure when
creating variables.
(create_variable): Use wrapped calls for block_for_pc, parse_exp_1,
and block_innermost_frame.
Return NULL if parse_exp_1 fails.
Attempt to prohibit creating a gdb_variable for type names.
(variable_value_changed): Use wrapped calls for reinit_frame_cache and
find_frame_addr_in_frame_chain.
(variable_type): Use wrapped call for evaluate_type.
(variable_value): Use wrapped call for parse_exp_1.
(variable_editable): Use wrapped call for evaluate_type.
Tue Jan 5 11:37:17 1999 Keith Seitz <keiths@cygnus.com>
* gdbtk-variable.c: New variable object interface.
* gdbtk-wrapper.c, gdbtk-wrapper.h: New wrappers for safely calling
gdb functions without the fear of longjmp'ing.
* configure.in (CONFIG_OBS): Add gdbtk-wrapper.o and gdbtk-variable.o
when gdbtk is enabled.
* configure: Regenerate.
* Makefile.in: Add gdbtk-wrapper.o and gdbtk-variable.o
* gdbtk-cmds.c (call_wrapper): Export so that other files can use.
(Gdbtk_Init): Initialize new variable interface.
* gdbtk.h: Add declaration for call_wrapper.
Tue Jan 5 11:19:14 1999 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (gdb_loc): Call resolve_sal_pc to before using
the sal's pc.
* gdbtk.c (gdbtk_init): Add global array GDBStartup to interpreter
which contains any startup info. Add "inhibit_prefs" (follows -nx)
so that "-nx" turns preference reading/writing off.
Mon Dec 21 11:11:02 1998 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (get_register): Call get_saved_register instead of
read_relative_register_raw_bytes to fetch registers.
Thu Dec 17 09:00:56 1998 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (gdb_search): Don't mention C++ RTTI and
global constructor/destructor symbols.
Thu Nov 12 15:20:15 1998 Jim Ingham <jingham@cygnus.com>
* More bug fixes merged in from devo.
* gdbtk-cmds.c (gdb_cmd): Added an optional second argument to the
gdb_cmd, which is from_tty. This is passed to the gdb command
parser. It is 0 by default, and the console window passes 1.
* gdbtk-cmds.c: moved disassemble_from_exec from gdbtk.c to gdbtk-cmds.c
with all the other link-var'ed variables
* gdbtk-hooks.c (gdbtk_trace_find): Only run the hook functions if
we are called from_tty.
* gdbtk-hooks.c (gdbtk_trace_start_stop): Set the trace buttons
from a trace_start_command callback rather than doing it as a
special case in gdb_cmd.
* tracepoint.c (tstart_command, tstop_command): Add call to
trace_start_stop_hook here.
1998-11-04 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_set_bp_addr): For callback, send full
pathname instead of just basename.
1998-11-03 Keith Seitz <keiths@cygnus.com>
* v850ice.c (do_gdb): New function.
(ice_stepi): Use do_gdb to step properly.
(ice_nexti): Use do_gdb to step properly.
(view_source): Correct call to src window's location for new version.
Tue Aug 25 18:13:30 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk.c (gdbtk_init): I hadn't excised ALL the old startup code,
so it was not working correctly. Now it does.
Fri Aug 21 14:37:40 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk.c (gdbtk_init): Changed the startup code to use
tcl_findLibrary
on Dec 28 17:44:36 1998 David Taylor <taylor@texas.cygnus.com>
The following changes were made by Jim Blandy <jimb@cygnus.com>,
Edith Epstein <eepstein@cygnus.com>, Elena Zannoni
<ezannoni@cygnus.com> Stan Shebs <shebs@cygnus.com>, and David
Taylor <taylor@cygnus.com>, as part of the project to merge in
changes originally made by HP; HP did not create ChangeLog
entries.
* gdbtk.c (gdbtk_init): change stderr to gdb_stderr.
* gdbtk-cmds.c
(get_pc_register): Use paddr_nz, not sprintf's %llx and
a cast to `long long'. Those aren't portable.
(gdb_eval): add embedded_offset param to val_print call
(get_register): add embedded_offset param to val_print call
* gdbtk-hooks.c
(tk_command_loop): change instream to a FILE.
(gdbtk_flush): change both the declaration and definition to
use GDB_FILE rather than FILE.
Mon Dec 21 11:11:02 1998 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (get_register): Call get_saved_register instead of
read_relative_register_raw_bytes to fetch registers.
Thu Dec 17 09:00:56 1998 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (gdb_search): Don't mention C++ RTTI and
global constructor/destructor symbols.
Tue Dec 15 10:09:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
* gdbtk-cmds.c (gdb_disassemble): Fix typo.
Sun Dec 13 09:52:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
* gdbtk-cmds.c: Update TARGET_PRINT_INSN_INFO, TARGET_PRINT_INSN.
Fri Dec 11 09:52:04 1998 Andrew Cagney <cagney@chook>
* gdbtk-cmds.c: Replace reg_name with REGISTER_NAME.
Mon Dec 14 13:20:50 1998 Jim Ingham <jingham@cygnus.com>
* Makefile.in, configure.in configure - add support for LIBGUI
outside the IDE context.
Thu Nov 19 13:14:57 1998 Geoffrey Noer <noer@cygnus.com>
* gdbtk-cmds.c: Can't start using new API names yet. Switch back
to calling cygwin32_ funcs until some time has passed...
* gdbtk.c: Ditto. Also, include sys/cygwin.h for Cygwin, instead
of providing own proto.
Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com>
Changes to account for name change from cygwin32 to cygwin and
clean up Win32-related ifdefs.
* gdbtk.c: lose "32" from cygwin_ func calls. ifndef for
checking DISPLAY should be for _WIN32, not WINNT.
* gdbtk.h: pick GDBTK_PATH_SEP based on _WIN32, not WINNT.
* gdbtk-cmds.c (gdb_path_conv): lose "32" from cygwin_ func call,
change ifdef to __CYGWIN32__ instead of WINNT.
* {gdbtk.c, gdbtk-hooks.c}: __CYGWIN32__ refs drop the "32".
Thu Nov 12 15:20:15 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk-cmds.c (gdb_cmd): Added an optional second argument to the
gdb_cmd, which is from_tty. This is passed to the gdb command
parser. It is 0 by default, and the console window passes 1.
* gdbtk-cmds.c: moved disassemble_from_exec from gdbtk.c to gdbtk-cmds.c
with all the other link-var'ed variables
* gdbtk-hooks.c (gdbtk_trace_find): Only run the hook functions if
we are called from_tty.
* gdbtk-hooks.c (gdbtk_trace_start_stop): Set the trace buttons
from a trace_start_command callback rather than doing it as a
special case in gdb_cmd.
* tracepoint.c (tstart_command, tstop_command): Add call to
trace_start_stop_hook here.
Wed Nov 4 12:41:42 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk-cmds.c (gdb_set_bp_addr): Pass the type, enable & thread
to gdbtk_tcl_breakpoint.
* gdbtk-hooks.c (gdbtk_trace_find): Added this function. It is
the hook function for tfind commands.
* tracepoint.c (trace_find_command): Added the trace_find_hook,
run when you do trace_find_command.
* tracepoint.h: Define the trace_find_hook.
1998-11-03 Keith Seitz <keiths@cygnus.com>
* v850ice.c (do_gdb): New function.
(ice_stepi): Use do_gdb to step properly.
(ice_nexti): Use do_gdb to step properly.
(view_source): Correct call to src window's location for new version.
Mon Nov 2 11:16:10 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk-cmds (gdb_get_tracepoint_info): Demangle C++ function names.
Fri Oct 30 11:22:23 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk-cmds (gdb_get_tracepoint_info): Fixed typo.
Wed Oct 28 16:19:02 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_set_bp_addr): For callback, send full
pathname instead of just basename.
Wed Oct 28 10:14:33 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk-cmds.c: Made the bdtypes & bpdisp arrays shared so they
could be used in gdbtk-hooks.c (breakpoint_notify).
Also fixed a few error messages to actually print the bp number
rather that #%d...
* gdbtk-hooks.c (breakpoint_notify): pass more of the information
about the breakpoint into the Tcl command, so it does not have to
try and guess about information we have on the C side.
* gdbtk.h: Export the bptypes & pbdisp arrays.
1998-10-13 Jason Molenda (jsm@bugshack.cygnus.com)
* gdbtk.c, gdbtk-cmds.c: Cast parameters passed to make_cleanup to
use the new make_cleanup_func typedef.
1998-10-08 Keith Seitz <keiths@cygnus.com>
* gdbtk-hooks.c (gdbtk_add_hooks): Install a hook for
(new) file_changed_hook.
(gdbtk_exec_file_changed): Rename to gdbtk_exec_file_display
to mimic hook's name.
(gdbtk_file_changed): New hook function.
Tue Oct 6 22:57:13 1998 Andrew Cagney <cagney@b1.cygnus.com>
* configure.in (links): Link gdbtcl2 directory instead of gdbtcl.
Mon Oct 5 00:34:00 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_set_bp_addr): New command. Sets a
breakpoint at an address. Use this instead of gdb_cmd "break"
because the syntax of the break command is broken and doesn't
allow you to create a thread-specific BP at an address. Also
this is faster.
Sun Oct 4 22:35:47 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_set_bp): Add an optional thread number.
(gdb_find_bp_at_line): New function. Returns a list of bpnums
at the specified line number.
(gdb_find_bp_at_addr): New function. Returns a list of bpnums
at an address..
1998-10-02 Keith Seitz <keiths@cygnus.com>
* gdbtk-hooks.c (gdbtk_exec_file_changed): New function which handles
exec_file changes.
(gdbtk_add_hooks): Define exec_file_display_hook (to gdbtk_exec_file_changed)
* gdbtk-cmds.c (gdb_stop): target_stop is ALWAYS defined, so
compare against something a little more meaningful (target_ignore).
1998-09-24 Keith Seitz <keiths@cygnus.com>
* gdbtk.c (gdbtk_wait): Don't run the timer for ice targets.
* v850ice.c (WM_ADDR_TO_SYM): New message.
(v850ice_wndproc): Add handler for WM_SOURCE.
(v850ice_wait): Call the ui_loop_hook occasionally.
(ice_cont): Acknowledge message before doing anything.
(ice_stepi): Ack message and let gdbtk do stepping.
(ice_nexti): Ack message and let gdbtk do stepping.
(view_source): New function ICE calls to display source code.
start-sanitize-ide
Mon Sep 21 13:33:27 1998 Drew Moseley <dmoseley@cygnus.com>
* Makefile.in: Added sanitize markers around IDE code
* configure.in (host_libs): Added sanitize markers around IDE code
* configure: Regenerated configure from configure.in
end-sanitize-ide
1998-09-18 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (get_frame_name): Demangle function names, too.
Thu Sep 10 22:10:29 1998 Jim Ingham <jingham@cygnus.com>
*gdbtk-cmds.c (gdb_disassemble): Make sure the symtab's linetable is not
null before trying to use it...
1998-09-02 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (gdb_cmd): Do not run the timer when downloading --
the ui_progress_hook that has been installed will actually
update the gui for us.
Mon Aug 31 15:42:10 1998 Tom Tromey <tromey@cygnus.com>
* gdbtk-hooks.c (context_hook): Don't define.
1998-08-31 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (gdb_listfuncs): When stripping out "global destructors"
and "global constructors", do not append any elements to the result.
Sun Aug 30 00:49:18 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (Gdbtk_Init): Link C variable gdb_context
with tcl variable gdb_context_id.
* gdbtk-hooks.c (gdbtk_context_change): Implement new hook called
context_hook. Called when threads change.
* gdbtk.c: Initialize gdb_context.
* gdbtk.h: Declare gdb_context.
* infrun (wait_for_inferior): Call context_hook.
* thread.c (thread_command): Call context_hook.
* defs.h: Declare context_hook.
Fri Aug 28 12:14:49 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_loadfile): Open the file after doing
the symtab lookup and calling symtab_to_filename(). This
makes GDBtk work with the GDB "dir" command.
1998-08-18 Keith Seitz <keiths@cygnus.com>
* gdbtk-hooks.c (gdbtk_add_hooks): Set selected_frame_level_changed_hook.
(gdbtk_selected_frame_changed): New function.
* gdbtk-cmds.c (Gdbtk_Init): Add command gdb_stack into interpreter.
Link gdb's global selected_frame_level with interpreter global
gdb_selected_frame_level.
(gdb_stack): New function to faciltate speedier backtraces from
gdbtk.
(get_frame_name): New helper function for gdb_stack.
Tue Aug 18 15:42:40 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_listfuncs): Strip out global constructors
and destructors from the function list.
start-sanitize-ide
Thu Aug 13 15:15:59 1998 Drew Moseley <dmoseley@cygnus.com>
* Makefile.in (FOUNDRY_LIB_BASE): Added the Foundry SDK code that allows
gdbtk to be linked with the Foundry libraries provided by a prebuilt/released
binary version of Foundry. The libraries and header files need to come from
the installed location of Foundry rather than the devo subdirectories.
* configure.in (ENABLE_IDE): Foundry SDK additions. Added the "with-foundry-libs"
configure option.
* configure: Foundry SDK additions. Regenerated from configure.in.
end-sanitize-ide
Thu Aug 13 15:09:59 1998 Drew Moseley <dmoseley@cygnus.com>
* gdbtk.c (gdbtk_cleanup): added a scope-level around the contents
of the #ifdef so that the variable declarations in there would not
be illegal in a C compilation.
Mon Jul 27 13:07:16 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_call_command): Removed because it is now
in gdbtk-hooks.c
(null_routine): Removed.
* gdbtk-hooks.c (tracepoint_notify): Fix sprintf to
match number of arguments.
* gdbtk-cmds.c (gdb_loc): When calling gdb_loc with an
argument, call find_pc_line() to get a complete
symtab_and_line struct.
Fri Jul 24 14:25:43 1998 Keith Seitz <keiths@cygnus.com>
* gdbtk-cmds.c (gdb_search): Add missing NULL to switches.
Add missing flags to result_ptr.
Pass along any errors caused by getting the list of files from
tcl.
Allocate correct amount of memory for the file list.
Don't do any unecessary cleanups.
Fri Jul 24 01:08:37 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_loadfile): When there are no
linenumbers, use only one tab.
Sat Jul 18 12:28:39 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_cleanup): Add call to tcl function
gdbtk_cleanup. We need this so the GUI gets to clean
up no matter how GDB exits.
Wed Jul 1 13:10:58 1998 Jim Ingham <jingham@cygnus.com>
* Moved gdbtk_hooks.c & gdbtk_cmds.c to gdbtk-hooks.c &
gdbtk-cmds.c to comply with the gdb conventions. Changed the
configure & makefile to reflect the change...
Wed Jul 1 11:07:21 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk.c: removed all the commands and hooks from this file so
now it contains only the startup code.
* gdbtk.c (gdbtk_init): Fixed a bug in the startup code on Windows
that caused gdbtk not to find the share directory unless
GDBTK_LIBRARY was set.
* gdbtk_cmds.c: New file - this contains all the Tcl commands that
gdb defines. All the old commands were moved here, the
string-based commands were converted to object commands, and the
object-based commands were all converted to uniformly use the
call_wrapper. A new function, Gdbtk_Init was added to centralize
initializing the gdb package.
* gdbtk_hooks.c: New file - All the hooks were moved here, and a new
function, gdbtk_add_hooks was added to centralize adding all these
hook functions. gdbtk_fputs was also modified to handle the new
result_ptr structure. See the comments in gdbtk.h for more
details.
* gdbtk.h: New file - this contains all the defines and globals
shared by gdbtk.c, gdbtk_cmds.c & gdbtk_hooks.c
* Makefile.in, configure.in & configure: mutatis mutandi for the
new files.
Mon Jun 29 11:49:17 1998 Keith Seitz <keiths@cygnus.com>
* main.c (main): Don't include gdbtk test code if GDBTK is
not defined by configure.
* configure.in: When enabling gdbtk, add "-DGDBTK" to ENABLE_CFLAGS.
* configure: Regenerate.
Fri Jun 26 13:56:07 1998 Keith Seitz <keiths@cygnus.com>
* gdbtk.c: Change all references to static global "interp" to
"gdbtk_interp" and export this global.
(gdbtk_init): If gdbtk_source_filename is not NULL, source this file
into the interpreter when it goes idle.
Add new command "gdb_search".
(gdb_search): New function which searches the symbol table.
(gdbtk_test): New function called by main when the --tclcommand
option is used.
* main.c (main): Add a new option "--tclcommand" which is used
by the testsuite to source a file into the interpreter when it
goes idle.
Sun Jun 21 09:31:12 1998 Ron Unrau (runrau@cygnus.com)
* gdbtk.c (gdb_set_bp): Use new interface.
Wed Jun 17 19:12:23 1998 Jeff Holcomb <jeffh@cygnus.com>
* Makefile.in (install-only): Install tracing help files.
Mon Jun 15 13:18:21 1998 Jim Ingham <jingham@cygnus.com>
* gdbtk.c (gdbtk_init): Add elements to the auto_path AS LIST
ELEMENTS. This allows gdbtk to work when installed in a directory
which has a space in the path. D. Moseley pointed out the bug.
Tue Jun 9 14:10:46 1998 Keith Seitz <keiths@cygnus.com>
* gdbtk.c (gdb_get_vars_command): Return static variables and
variables stored in registers.
* main.c (main): Call pre/post_add_symbol_hook's when loading
executables and symbol files.
Fri Jun 5 00:16:22 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_init): Change all references to
GDBTK_IDE to IDE_ENABLED.
Thu Jun 4 18:31:53 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_init): Initialize tkTable.
Thu Jun 4 10:15:03 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbtk.c: merged:
- Elena Zannoni <ezannoni@kwikemart.cygnus.com>
(call_obj_wrapper): in case of error, copy the
error message from the result to the error_string.
(gdbtk_fputs): add comments.
(gdb_actions_command): call validate_actionline when installing the
tracepoint, to do the syntax checking of the actions for us.
- Elena Zannoni <ezannoni@kwikemart.cygnus.com>
(gdb_get_trace_frame_num): new function to get the
trace frame number from gdb.
(gdbtk_init): added new command gdb_get_trace_frame_num.
- Jim Blandy <jimb@zwingli.cygnus.com>
(struct wrapped_call_objs): Change the `func' member to
be a Tcl_ObjCmdProc, not an Tcl_CmdProc, since it accepts a vector
of objects as arguments. Change the object vector to be const,
since that's what all the users of this structure seem to expect.
(call_obj_wrapper): Cast clientData properly before storing it in
the wrapped_args structure.
Thu May 28 17:19:14 1998 Keith Seitz <keiths@cygnus.com>
* gdbtk.c (_initialize_gdbtk): Get rid of the console. Patch from
Chris Faylor (cgf@cygnus.com).
* configure.in: Link cygwin32 with subsystem console.
* configure: Regenerated
Sun May 24 14:00:24 1998 Keith Seitz <keiths@cygnus.com>
* ser-unix.c (wait_for): Do not reset timeout_remaining for cygwin32 so that
we can use this member to track real timeouts.
(hardwire_readchar): Modify for cygwin32 so that we only ever use a real
system timeout of one second. Track the "real" timeout as a series of these
one second timeouts.
Call ui_loop_hook to keep the gui alive.
* top.c: Define new hook for cygwin32, "ui_loop_hook".
* gdbtk.c (gdbtk_init): Add ui_loop_hook for CygWin32 to work around
update problems.
Thu May 21 13:56:24 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbtk.c: reinserted the changes that were accidentally deleted:
(_initialize_gdbtk): Use correct device names in
cygwin-specific call (cosmetic change).
(gdbtk_ignorable_warning): removed va_list parameter,
which was unused.
(_initialize_gdbtk): add cygwin32 specific code to
allow `gdb -nw' to work when specified specified from a windows
console-mode command line.
1998-05-19 Jim Blandy <jimb@zwingli.cygnus.com>
* gdbtk.c (struct wrapped_call_objs): Change the `func' member to
be a Tcl_ObjCmdProc, not an Tcl_CmdProc, since it accepts a vector
of objects as arguments. Change the object vector to be const,
since that's what all the users of this structure seem to expect.
(call_obj_wrapper): Cast clientData properly before storing it in
the wrapped_args structure.
Wed May 13 11:12:58 1998 James Ingham <jingham@leda.cygnus.com>
* gdbtk.c: Fixed a goof in the definition of the gdb_get_args &
gdb_get_locals Tcl commands. Moved the previous ChangeLog entry
from ChangeLog to ChangeLog-gdbtk (here)...
Tue May 12 13:29:20 1998 Jeff Holcomb <jeffh@cygnus.com>
* Makefile.in (install-only): Add images/icons.txt and
images2/icons.txt to files that need to be installed.
Tue May 12 12:03:16 1998 James Ingham <jingham@leda.cygnus.com>
* gdbtk.c: Add an object call wrapper for the new Tcl_Obj based
commands. This way the obj commands will also go through
catch_errors. This is just a bandaid while I rewrite the
string-based commands to use the object format.
Tue May 5 09:30:25 1998 Christopher Faylor <cgf@cygnus.com>
* gdbtk.c (_initialize_gdbtk): Use correct device names in
cygwin-specific call (cosmetic change).
Wed Apr 29 15:53:16 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbtk.c (gdbtk_ignorable_warning): removed va_list parameter,
which was unused.
Tue Apr 28 19:41:33 1998 Tom Tromey <tromey@cygnus.com>
* Makefile.in (GDBTKLIBS): New macro.
(INSTALLED_LIBS): Include GDBTKLIBS.
(CLIBS): Likewise.
* configure: Rebuilt.
* configure.in: Put Tcl/Tk libs into GDBTKLIBS, not LIBS.
(GDBTKLIBS): AC_SUBST.
Thu Apr 23 19:01:05 1998 Keith Seitz <keiths@onions.cygnus.com>
* Makefile.in (install-only): Install help files.
Wed Apr 22 21:17:35 1998 Christopher Faylor <cgf@cygnus.com>
* gdbtk.c (_initialize_gdbtk): add cygwin32 specific code to
allow `gdb -nw' to work when specified specified from a windows
console-mode command line.
Wed Apr 15 11:23:53 1998 Stan Shebs <shebs@andros.cygnus.com>
* gdbtcl: Remove directory and contents, this version of
the interface is obsolete.
Mon Apr 13 16:17:52 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdb_loadfile): Change fstat() call to stat().
Needed because you can't convert a FILE* to an fd.
Mon Apr 13 16:28:07 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbtk.c: (perror_with_name_wrapper) new function to call
perror_with_name safely.
(gdb_loadfile) added source vs. executable time stamp check.
(gdbtk_warning) new function to pass a warning message to the gui.
(gdbtk_ignorable_warning) new function to pass a warning
to the gui. Used only for the src. vs. exec check.
(gdbtk_init) added warning_hook
added include <sys/stat.h>
Mon Apr 13 12:58:26 1998 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdbtk_start_timer): Include on all platforms. Decrease
timer interval a little.
(gdbtk_stop_timer): Include on all platforms.
(gdbtk_wait): No more signals! Use a timer on all platforms to keep the
GUI alive.
(gdbtk_init): Remove FIOASYNC and all x_fd references. Now using timers
on all platforms.
Fri Apr 10 15:48:10 1998 Jason Molenda (crash@bugshack.cygnus.com)
* gdbtk.c (gdb_listfiles): Allocate space for 'files' dynamically.
Thu Apr 9 14:20:59 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_init): Remove redundant variable "IDE".
Tue Apr 7 15:13:58 1998 Stan Shebs <shebs@andros.cygnus.com>
* gdbtk.tcl: Remove, no longer used.
Tue Apr 7 12:49:45 1998 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdb_cmd): NEVER call the busy, update, and idle hooks.
Tue Mar 31 15:42:06 1998 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdb_loadfile): Don't use the return result from
sprintf, which returns a char * under SunOS4.
Tue Mar 31 17:18:43 1998 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Add $(LIBIDETCL) as well as $(LIBIDE) if
--enable-ide.
* Makefile.in (IDE_CFLAGS_X): Add -I for libidetcl/src.
(LIBIDETCL): Define.
* configure: Rebuild.
Sun Mar 29 21:19:46 1998 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdb_get_tracepoint_info): Change formatting of address.
(tracepoint_exists): Remove code which confuses assembly traces.
Sat Mar 28 12:13:23 1998 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdb_cmd): If argc > 2, assume that the busy and idle hooks
should not be called.
Thu Mar 26 22:29:28 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbtk.c: (gdb_trace_status) new function.
(gdbtk_init) added command "gdb_is_tracing".
(tracepoint_notify) added passcount information.
Thu Mar 26 12:00:35 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_fputs): Insert fencepost.
(gdb_loc): Correct pc calculation.
(gdb_immediate_command): Return if a load is in progress.
(gdb_cmd): Return if a load is in progress.
(target_stop_wrapper): New function.
(gdb_stop): Call target_stop_wrapper.
(x_event): Add fencepost and optimize load cancel check.
(gdbtk_start_timer): Set up structs only once.
(gdbtk_stop_timer): Just use preset structs to set timer parameters.
(gdb_loadfile): If file cannot be loaded, return error message.
(gdb_loadfile): Add space before tab so that lines without
a '-' can later be changed to have one.
Wed Mar 25 14:08:51 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbtk.c (gdbtk_pre_add_symbol): Use Tcl_merge to form Tcl commands.
Mon Mar 23 13:41:39 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbtk.c (gdb_get_mem): Rewrite to fetch entire contents
of the memory window at once.
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
Merged changes from Foundry: list follows by author:
- Tom Tromey <tromey@cygnus.com>
* Makefile.in (gdbres.o): New target.
(WINDRES): New define.
* configure: Rebuilt.
* configure.in (WINDRES): Define.
(CONFIG_OBS): Include gdbres.o on Windows.
* gdbtool.ico: New file.
* gdb.rc: New file.
* gdbtk.c (gdbtk_init): Call ide_create_messagebox_command.
(gdbtk_cleanup): Call ide_interface_deregister_all.
(gdbtk_init): Pass event handle to cleanup.
(TclDebug): Use Tcl_Merge to construct command.
(gdbtk_init): Call ide_create_cygwin_path_command.
- Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdb_set_bp): Set addr_string for bp.
(gdb_get_breakpoint_info): Demangle function
names in breakpoint info.
Include "demangle.h".
(gdb_loc, gdb_listfuncs): Demangle C++
function names.
(gdb_set_bp): Properly quote filename to fix
problems with spaces. Send pc back as a hex string.
(gdb_listfuncs): Remove debugging line.
Turn off some debugging lines.
(breakpoint_notify): Return correct line number.
(gdb_get_breakpoint_info): Return correct line number.
(gdb_set_bp): New function to provide a better way to
set breakpoints.
(gdbtk_readline, gdbtk_readline_begin): Memory
allocated by tcl needs to be freed by Tcl_Free().
(find_file_in_dir): Deleted.
(gdb_find_file_command): Call full_lookup_symtab().
(gdb_listfuncs): Call full_lookup_symtab().
(full_lookup_symtab): New function. Like lookup_symtab
except handles multiple files with the same basename,
full pathnames, and always sets symtab->fullname.
(gdb_loadfile): Call full_lookup_symtab(). Clear
realloc'd memory.
(gdb_loadfile): Don't tag lines without source.
Tag source lines with source_tag.
(gdb_find_file_command, find_file_in_dir):
Rewrite. Now searches symtabs and psymtabs for a match
on the partial or full filename. Returns the full pathname.
(gdb_loadfile): Realloc additional memory
if someone loads in a file with more than 160,000
lines. I don't know if this really works because
I don't have enough memory to test it.
(gdb_sourcelines): Deleted.
(gdb_loadfile): New function. Takes a text widget
and loads it with the contents of a file. Marks
and tags source lines.
(pc_changed): New function.
(get_pc_register): Returns the value of
the PC to GDB.
(gdb_loc): If looking on the stack, return
real pc along with calling source line.
(gdb_loc): Return "" instead of "N/A" if
filename is not found.
(gdb_get_breakpoint_info): Same.
(get_register): For Natural mode, set format to 0.
Minor bugfixes from keiths.
(TclDebug): New function for debugging use.
(gdb_loc): Return correct PC for frames
that are not the innermost frame.
(gdb_listfiles): Rewritten to use object
API. Now takes an optional dirname which will cause
only files in that directory or its subdirectories
to be returned. Now returns basenames instead of
full pathnames.
(gdb_cmd): Set/reset load_in_progress flag.
(call_wrapper): Don't pop up dialog for errors in
downloads; just abort download.
(gdbtk_load_hash): Set return value correctly.
- Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be
called by routines which might block, allowing us to update the GUI.
(gdbtk_wait): Move timer calls to annotation hooks.
(gdbtk_init): Define the annotation hooks.
(gdbtk_annotate_starting): New function for cygwin32 hosts.
(gdbtk_annotate_stopped): New function for cygwin32 hosts.
(gdbtk_annotate_exited): New function for cygwin32 hosts.
(gdbtk_annotate_signalled): New function. for cygwin32 hosts.
(gdbtk_init): Use gdbtk_print_frame_info hook.
(gdbtk_print_frame_info): New function which sets current_source_symtab
based on the given symtab and line info.
(gdb_immediate_command): New function which does
not buffer any
output. (Contrast to gdb_cmd.)
(gdb_prompt_command): New function to return gdb's prompt.
(find_file_in_dir): New functon which searches source paths
for a given filename.
(gdb_find_file): New function which returns path to given file -- uses
find_file_in_dir.
(gdbtk_init): Install "gdb_immediate", "gdb_find_file", and
"gdb_prompt"
commands into interpreter.
- Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static
variable.
(gdb_cmd): If __CYGWIN32__, if executing the load command, call
gdbtk_start_timer and gdbtk_stop_timer.
(call_wrapper): If __CYGWIN32__, if the timer is going, turn it
off. Clear load_in_progress.
(x_event): If load_in_progress, quit if download_cancel_ok.
(gdbtk_start_timer): Set gdbtk_timer_going.
(gdbtk_stop_timer): Clear gdbtk_timer_going.
(gdbtk_wait): Call x_event.
(gdbtk_init): Call ide_create_win_grab_command if
__CYGIN32__.
(gdb_clear_file): Clear stop_pc.
Wed Mar 4 16:50:18 1998 Jason Molenda (crash@bugshack.cygnus.com)
* gdbtk.c (gdb_listfiles): Fix thinko in last change.
Wed Mar 4 15:34:49 1998 Jason Molenda (crash@bugshack.cygnus.com)
* gdbtk.c (gdb_listfiles): Allocate space for 'files' dynamically.
Tue Feb 10 17:50:37 1998 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdbtk_modify_tracepoint): Define new tracepoint modification hook.
(gdbtk_print_frame_info): Define this hook so that current_source_symtab
is set properly.
(gdb_actions_command): Use free_actions () from tracepoint.c/h.
Mon Jan 26 11:37:55 1998 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdb_actions_command): Make note of next action
before freeing all references to it.
Sat Jan 24 23:52:08 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c: Merge from Foundry branch.
(TclDebug): New debugging function.
(gdb_loc): For frames, find address of calling function
instead of whatever is on the stack (usually the next
instruction).
(gdb_listfiles): Takes an optional pathname argument and
returns an alphabetized list of basenames of files in the
path.
Wed Jan 22 10:37:02 1998 Keith Seitz <keiths@onions.cygnus.com>
* symfile.c: Define two new hooks for symbol reading:
"pre_add_symbol_hook" and "post_add_symbol_hook". These hooks
are called before we begin reading symbols, and after we finish.
(generic_load): Use new symbol reading hooks and get rid of
compiler warning.
* gdbtk.c (gdbtk_init): Add hooks for pre- and post-symbol reading.
(gdbtk_pre_add_symbol): New function: the pre-add-symbol hook.
(gdbtk_post_add_symbol): New function: the post-add-symbol hook.
(find_file_in_dir): New function. Moved the guts of gdb_find_file_command
into here to allow its use by others.
(gdb_loc): Use find_file_in_dir to return the real path to the file
(or "N/A" if we can't find it).
* configure.in (TIX_LIB_EXT): Define new variable for those special cases
when TCL_SHLIB_SUFFIX is not enough to specify the dependency.
* configure: Regenerate.
Fri Jan 23 07:47:06 1998 Fred Fish <fnf@cygnus.com>
* Makefile.in (uninstall): Remove installed gdbtcl dir, if one
was installed.
Thu Jan 15 12:42:28 1998 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdb_immediate_command): New function which does not buffer any
output. (Contrast to gdb_cmd.)
(gdbtk_init): Install "gdb_immediate" command into interpreter.
Wed Jan 14 16:38:44 1998 Keith Seitz <keiths@pizza.cygnus.com>
* configure.in (--enable-gdbtk): If tcl was built with --enable-shared,
use TCL_SHLIB_SUFFIX to specify the suffix of the library file so that
we don't expect to see "libfoo.a" instead of "libfoo.{so,sl, etc}".
* configure: Regenerate.
Wed Dec 31 16:50:26 1998 Keith Seitz (keiths@onions.cygnus.com)
* gdbtk.c (gdb_actions_command): extract and save step count
from "while-stepping" command
Tue Dec 16 21:16:42 1997 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (LIBGUI): New variable.
(GUI_CFLAGS_X): New variable.
(IDE_CFLAGS): Add $(GUI_CFLAGS_X).
* configure.in: Add $(LIBGUI) to TCL_LIBS and CONFIG_DEPS.
* configure: Rebuild.
Wed Dec 10 13:16:45 1997 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdb_get_tracepoint_info): Use info in struct
symtab_and_line (not struct tracepoint) so that we get the
real line info for an address. Arrange data more like
gdb_get_breakpoint_info.
(tracepoint_notify): Use info in struct symtab_and_line again.
(gdbtk_init): Add command "gdb_get_tracepoint_list" into
interpreter.
(gdb_get_tracepoint_list): New function that aids the source
window in displaying tracepoints when the file changes.
Fri Dec 5 10:31:23 1997 Keith Seitz <keiths@pizza.cygnus.com>
* gdbtk.c (gdbtk_init): Add gdb_find_file into interpreter.
(gdb_find_file_command): New function which searches source path
to find the real full filename of a file.
Mon Dec 1 10:19:44 1997 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c: Move include of "guitcl.h" back out of IDE ifdef.
(gdbtk_init): Move ide_initialize_paths out of IDE ifdef.
* configure.in (TCL_LIBS, CONFIG_DEPS): Add IDE libraries for all
builds.
(CONFIG_OBS): Remove tracepoint.o, which should always be included.
* configure: regenerate
* Makefile.in (install-only): ALWAYS install the new gdbtk
(REMOTE_OBS): add tracepoint.o
Thu Nov 27 09:07:18 1997 Michael Meissner <meissner@cygnus.com>
* configure.in ({TCL_LIBS,CONFIG_DEPS}): Don't add IDE libraries
if not --enable-ide.
(CONFIG_OBS): Add tracepoint.o to list if --enable-gdbtk.
* configure: Regenerate.
* gdbtk.c (gdb_get_breakpoint_info): Add missing filename
argument.
(toplevel): Move include of guitcl.h into #ifdef IDE region.
(gdbtk_init): Move ide_initialize_paths call into #ifdef IDE
section.
* Makefile.in (gdbtk.o): Update dependencies.
Wed Nov 26 15:02:43 1997 Keith Seitz <keiths@onions.cygnus.com>
* gdbtk.c (gdb_loc): symtab_to_filename can return NULL.
(breakpoint_notify): Ditto.
(gdb_get_breakpoint_info): Ditto.
Wed Nov 26 11:33:09 1997 Keith Seitz <keiths@onions.cygnus.com>
Merge in code from Foundry branch:
* Makefile.in (install-only): install the new gdbtk, not the old
* gdbtk.c (gdbtk_call_command): also run idle hooks for class_trace
commands
(gdbtk_init): Add new commands "gdb_get_locals", "gdb_get_args",
"gdb_get_function", "gdb_get_line", "gdb_get_file",
"gdb_tracepoint_exists", "gdb_get_tracepoint_info", "gdb_actions",
and "gdb_prompt".
(gdb_get_vars_command): New function.
(gdb_get_line_command): New.
(gdb_get_file_command): New.
(gdb_get_function_command): New.
(gdb_get_tracepoint_info): New.
(gdbtk_create_tracepoint): New.
(gdbtk_delete_tracepoint): New.
(tracepoint_notify): New.
(tracepoint_exists): New.
(gdb_actions_command): New.
(gdb_tracepoint_exists_command): New.
(gdb_prompt_command): New.
Thu Nov 13 18:15:54 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c: Move include of gdbcore.h to top of file.
(close_bfds): New static function if _WIN32.
(gdbtk_readline): Call close_bfds.
(call_wrapper, tk_command_loop): Likewise.
(gdb_clear_file): New static function.
(gdbtk_init): Create gdb_clear_file Tcl command.
Wed Nov 12 14:58:39 1997 Jeff Holcomb <jeffh@cygnus.com>
* gdbtk.c: gdbtk_load_hash and ui_load_progress_hook return an
int result.
(gdbtk_load_hash): download hash routine returns an int result.
Mon Nov 10 15:11:51 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (gdbtk_init): Call ide_create_shell_execute_command if
__CYGWIN32__.
* configure.in: Add -lshell32 to WIN32LIBS on cygwin32.
* configure: Rebuild.
Sun Nov 9 16:25:34 1997 Tom Tromey <tromey@cygnus.com>
* gdbtk.c (gdbtk_init): Run ide_create_help_command.
Tue Oct 28 17:31:47 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_init): Call ide_create_winprint_command.
Thu Oct 23 15:53:37 1997 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Add -lgdi32 to WIN32LIBS when linking gdbtk on
cygwin32.
* configure: Rebuild.
Wed Oct 22 21:32:54 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_init): Create sizebox command on Windows.
Thu Oct 9 14:33:21 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (gdbtk_init): Remove assertion argument from call to
ide_create_window_register_command.
Wed Oct 1 11:09:52 1997 Tom Tromey <tromey@cygnus.com>
* gdbtk.c (gdbtk_init): Pass name of restore interface to
ide_create_window_register_command.
Fri Sep 26 21:08:22 1997 Keith Seitz <keiths@pizza.cygnus.com>
* gdbtk.c (gdbtk_init): Initialize ui_load_progress_hook.
Thu Sep 25 03:05:00 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdb_load_info): New function. Returns a list
of section names and sizes for an executable.
(gdbtk_load_hash): Stub function to call tcl function
download_hash.
Tue Sep 23 01:29:00 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdb_get_mem): Fix compiler warning.
Sun Sep 21 00:15:00 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdb_get_mem): Fix problem with ASCII dump.
Tue Sep 16 18:07:17 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdb_get_mem): New function. Returns
a formatted memory dump with optional ASCII dump.
Mon Sep 8 12:48:50 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c: Include ilutk.h if IDE.
(gdb_confirm_quit, gdb_force_quit): New static functions.
(gdbtk_init): Add Tcl commands gdb_confirm_quit and
gdb_force_quit.
Mon Sep 8 03:05:33 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdb_get_breakpoint_info): Now returns the
function a breakpoint is in.
Fri Sep 5 20:23:58 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (gdbtk_init): Call ide_create_exit_command.
Wed Sep 3 19:39:15 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c: Include guitcl.h.
(gdbtk_init): Always call ide_initialize_paths. Set the Tcl
variable IDE to 1 when using the IDE. Always try using auto path
to find main.tcl.
* Makefile.in (IDE_CFLAGS_X): Always include libide.
(LIBIDE): New variable.
(IDE_X): Omit -lide.
(IDE_DEPS): Omit libide.
* configure.in: Add LIBIDE to TCL_LIBS and CONFIG_DEPS.
* configure: Rebuild.
Mon Aug 25 02:28:55 1997 Keith Seitz <keiths@pizza.cygnus.com>
* gdbtk.c: (gdb_target_has_inferior) check if inferior_pid is non-zero
before assuming that the inferior is running.
Mon Aug 25 01:06:48 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (gdbtk_start_timer): Pass third argument to setitimer.
(gdbtk_stop_timer): Likewise.
Mon Aug 25 00:23:08 1997 Keith Seitz <keiths@pizza.cygnus.com>
* gdbtk.c: (gdbtk_init) create new command "gdb_target_has_execution"
(gdb_target_has_execution_command) new function
Sun Aug 24 20:27:22 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (gdb_loc): If there are no symbols, just bail
immediately.
(tk_command_loop): Print errors encountered while running
gdbtk_tcl_preloop.
Sun Aug 24 13:44:03 1997 Tom Tromey <tromey@cygnus.com>
* gdbtk.c (gdbtk_init): Run ide_create_build_command.
Sat Aug 23 21:53:39 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c: If CYGWIN32, include <sys/time.h>.
(x_fd): Don't define if WINNT.
(gdbtk_start_timer, gdbtk_stop_timer): New static functions if
CYGWIN32.
(gdbtk_wait): Don't set up signal handling if WINNT. If CYGWIN32,
call gdbtk_start_timer and gdbtk_stop_timer.
(gdbtk_init): Don't set up signal handling or make x_fd
asynchronous if CYGWIN32.
Fri Aug 22 15:23:15 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (error_string_ptr): New static variable.
(gdbtk_fputs): If result_ptr is NULL, and error_string_ptr is not
NULL, and we're outputting to stderr, append string to
error_string_ptr rather than calling gdbtk_tcl_fputs.
(call_wrapper): Set up error_string_ptr. Put both error string
and normal string in Tcl result.
* gdbtk.c (gdbtk_init): Don't call ide_run_server_init until after
gdb has initialized.
Thu Aug 21 19:14:38 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c: If _WIN32, include winuser.h.
(gdbtk_init): If _WIN32, use MessageBox to display an error
evaluating main.tcl.
Thu Aug 21 00:48:00 1997 Martin M. Hunt <hunt@pern.cygnus.com>
* gdbtk.c (gdbtk_init): Add call to ide_run_server_init().
(gdb_cmd): For the load command, don't buffer the I/O.
Wed Aug 20 11:41:22 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_query): Chaneg free() call to Tcl_Free().
Tue Aug 19 17:09:19 1997 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (TCL_DEPS, TK_DEPS): New variables.
(ITCL_DEPS, TIX_DEPS): New variables.
(IDE_DEPS): New variable.
(CDEPS): Include @CONFIG_DEPS@.
* configure.in: Set and substitute CONFIG_DEPS and TIX_DEPS.
* configure: Rebuild.
Sun Aug 17 00:42:11 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdb_listfuncs): New function that returns
a list of all the functions in a source file.
Tue Aug 12 16:35:21 1997 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (install-only): Install tclIndex if ENABLE_IDE.
Mon Aug 11 10:43:04 1997 Tom Tromey <tromey@cygnus.com>
* gdbtk.c (gdbtk_init): Use ide_event_init_from_environment.
Fri Aug 8 15:59:24 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (gdbtk_init): Change gdbtk_lib_tmp and gdbtk_file to be
dynamically allocated, rather than fixed size. Pass "gdbtcl" to
ide_initialize_paths to match installed directory name. If IDE,
use auto_path to search for main.tcl.
* Makefile.in (install-only): If ENABLE_IDE, install from gdbtcl2
rather than gdbtcl.
* gdbtk.c (gdbtk_cleanup): New static function.
(gdbtk_init): Add gdbtk_cleanup as a final cleanup. Uncomment
call to ide_initialize_paths. If we can't initialize the event
system, set GDBTK_IDE to 0 in the Tcl interpreter. Create the
ide_window_register and the ide_window commands. Initialize tk,
itcl, and tix after initializing the IDE.
* configure.in (tixdir): Update for cygwin32 case for Tcl 8.0.
* configure: Rebuild.
Fri Aug 8 00:13:32 1997 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (breakpoint_notify): Change buffer size from 100
to 256 to avoid memory corruption with very long pathnames.
Thu Aug 7 14:08:23 1997 Martin M. Hunt <hunt@cygnus.com>
* configure.in: Change required Tix version to 4.1.8.0 .
* configure: Rebuilt.
Fri Aug 1 15:21:44 1997 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (Tcl_Alloc): Don't provide our own version of this if
_WIN32.
(Tcl_Realloc, Tcl_Free): Likewise.
* configure.in: Check for cygwin32 environment. Define and
substitute WIN32LIBS and WIN32LDAPP. Always set configdir to
unix; setting it to win was for an old Tcl/Tk configuration
scheme.
* aclocal.m4 (CY_AC_LOAD_TKCONFIG): Substitute TK_BUILD_INCLUDES.
* Makefile.in (TK_CFLAGS): Add @TK_BUILD_INCLUDES@.
(WIN32LDAPP, WIN32LIBS): Define.
(CLIBS): Add $(WIN32LIBS).
(gdb): Use $(WIN32LDAPP).
* configure: Rebuild.
Tue Jul 22 19:45:37 1997 Martin M. Hunt <hunt@cygnus.com>
* configure.in, aclocal.m4: Another fix to find the
correct Tix library name.
* configure: Rebuilt.
Mon Jul 21 22:24:07 1997 Martin M. Hunt <hunt@cygnus.com>
* aclocal.m4: Search for the correct tix library.
Thu Jul 10 00:02:41 1997 Martin M. Hunt <hunt@cygnus.com>
* Makefile.in, configure.in, aclocal.m4: Add Itcl, Tix, and
IDE configuration information.
* gdbtk.c (breakpoint_notify): Send address, linenumber and
filename when a breakpoint is set. Avoids call to bp_info.
(gdbtk_init): Call Tcl_FindExecutable(). Add code to handle
Itcl, Tix and IDE initialization.
* configure: Regenerated.
Fri Jun 13 10:28:09 1997 Fred Fish <fnf@cygnus.com>
* gdbtk.c (gdbtk_init): Make truth value test explicit.
Remove unused static variable "Gdbtk_Library".
Sat Jun 7 02:34:19 1997 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* gdbtk.c (gdb_get_breakpoint_info): Add string for new
enumeration del_at_next_stop to bpdisp array.
Tue Jun 3 15:46:51 1997 Tom Tromey <tromey@cygnus.com>
* Makefile.in (LIB_RUNTIME_DIR): New variable.
Wed May 7 19:10:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
* gdbtk.c (wrapped_call): New function - make actual call to tk
worker function.
(call_wrapper): Rewrite to use top.c:catch_errors.
* gdbtk.c (gdb_stop): If No target_stop set quit flag and hope for
best.
Mon Apr 21 14:00:08 1997 Doug Evans <dje@canuck.cygnus.com>
* gdbtk.c (gdb_disassemble): Store endian-ness in `di'.
Wed Apr 16 12:33:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
* Makefile.in (install-only): Make list of gdbtcl files to install
explicit - was picking up files such as ChangeLog etc.
(install-only): Don't blindly create the directory.
Tue Apr 1 15:04:21 1997 Jason Molenda (crash@godzilla.cygnus.co.jp)
* configure.in (gdbtcl): Create soft-link for gdbtcl/ directory
instead of gdbtk.tcl.
Fri Mar 28 17:04:02 1997 Jason Molenda (crash@godzilla.cygnus.co.jp)
* Makefile.in (gdbtk.o): look for GDBTK_LIBRARY in $(datadir) by
default, not $(srcdir).
Wed Mar 19 15:16:17 1997 Martin M. Hunt <hunt@onions.cygnus.com>
* Makefile.in: Install gdbtcl dir instead of gdbtk.tcl.
* gdbtk.c: Added some ifdefs for Windows. Changed GDBTK_FILENAME
to GDBTK_LIBRARY, which is now a path to search.
(gdb_path_conv): New function. Convert Cygwin32 pathname to
DOS-style pathname.
* {aclocal.m4,configure.in}: Changes for Windows builds.
* configure: Rebuilt.
Fri Mar 14 10:01:29 1997 Tom Tromey <tromey@cygnus.com>
* configure: Regenerated.
* configure.in (LIBS): Re-reverse order of TCL_LIBS and TK_LIBS.
Wed Mar 12 14:29:52 1997 Tom Tromey <tromey@cygnus.com>
* gdbtk.c (x_event): Use Tcl_DoOneEvent, TCL_DONT_WAIT,
TCL_ALL_EVENTS.
* configure: Regenerated.
* configure.in (ENABLE_GDBTK): Put TCL_LIBS after TK_LIBS in
LIBS.
Mon Feb 10 13:50:53 1997 Stu Grossman (grossman@critters.cygnus.com)
* gdbtk.c (call_wrapper): Clear running_now if an error occurs.
Wed Dec 11 18:51:35 1996 Mark Alexander <marka@cygnus.com>
* gdbtk.c (gdb_loc): Correct truncation of PC on 64-bit MIPS.
Tue Nov 19 09:26:14 1996 Tom Tromey <tromey@cygnus.com>
* gdbtk.c (gdbtk_readline): Fix memory leak.
Mon Nov 18 23:43:05 1996 Tom Tromey <tromey@cygnus.com>
Fixes for Tcl 7.6 / Tk 4.2:
* gdbtk.tcl (apply_filespec): Use tk_getOpenFile.
Remove old fileselect code.
* gdbtk.c (Tcl_Alloc): Rename from Tcl_Malloc.
Fri Sep 27 10:25:30 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.tcl (create_copyright_window): Increase timeout from
15 seconds to 30 seconds.
Wed Sep 4 17:28:40 1996 Stu Grossman (grossman@critters.cygnus.com)
* configure configure.in: Add host *windows* to list of hosts
that don't support GDBtk.
Fri Aug 23 00:44:57 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.c (gdbtk_init): Check for a DISPLAY env variable and
gracefully degrade to using command line interface if none is
found.
Fri Aug 9 12:32:53 1996 Tom Tromey <tromey@creche.cygnus.com>
* Makefile.in (LIB_INSTALL_DIR): New macro.
(TCL): Include @TCL_LD_SEARCH_FLAGS@.
Thu Aug 1 20:35:01 1996 Tom Tromey <tromey@creche.cygnus.com>
* gdbtk.c (mainWindow): Deleted.
(cleanup_init): Don't destroy main window.
(gdbtk_init): Main window now created by Tk_Init.
* configure.in: Most X checks now handled automatically by Tk.
Use new macros to find Tcl/Tk.
* aclocal.m4: New version for new Tcl/Tk; from Don Libes.
* config.in, configure: Regenerated.
* Makefile.in (TCL, TCL_CFLAGS, TK, TK_CFLAGS, X11_CFLAGS,
X11_LDFLAGS, X11_LIBS): Changed for new Tcl and Tk.
Thu Aug 1 16:12:05 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
* Makefile.in (gdbtk.tcl): put in $(datadir), not $(libdir).
Fri Jul 26 14:07:37 1996 Ian Lance Taylor <ian@cygnus.com>
* gdbtk.c (gdb_disassemble): Initialize di.flavour.
Thu Jul 25 19:41:31 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.c (null_routine): Ditto.
(gdbtk_flush): Ditto.
(gdbtk_fputs): Ditto.
(gdbtk_query): Ditto.
(gdbtk_readline): Ditto.
(gdbtk_readline_end): Ditto.
(gdb_get_breakpoint_list): Ditto.
(gdb_get_breakpoint_info): Ditto.
(breakpoint_notify): Ditto.
(gdbtk_create_breakpoint): Ditto.
(gdbtk_delete_breakpoint): Ditto.
(gdbtk_modify_breakpoint): Ditto.
(gdb_loc): Ditto.
(gdb_eval): Ditto.
(gdb_sourcelines): Ditto.
(map_arg_registers): Ditto.
(get_register_name): Ditto.
(gdb_regnames): Ditto.
(get_register): Ditto.
(gdb_fetch_registers): Ditto.
(register_changed_p): Ditto.
(gdb_changed_register_list): Ditto.
(gdb_cmd): Ditto.
(call_wrapper): Ditto.
(gdb_listfiles): Ditto.
(gdb_stop): Ditto.
(gdbtk_dis_asm_read_memory): Ditto.
(compare_lines): Ditto.
(gdb_disassemble): Ditto.
(tk_command): Ditto.
(cleanup_init): Ditto.
(gdbtk_interactive): Ditto.
(x_event): Ditto.
(gdbtk_wait): Ditto.
(gdbtk_call_command): Ditto.
(tk_command_loop): Ditto.
(gdbtk_init): Ditto.
* gdbtk.c (register_changed_p): Remove unused local variable "buf".
Sat Jul 20 17:46:40 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.tcl (files_command): Reorder the binding tags for
the listbox widget to avoid referencing the listbox after
the containing widget has been destroyed by the action of
a previous binding.
Sat Jul 20 10:09:28 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.tcl (delete_expr): Unset corresponding element of
expr_update_list when destroying an expression.
(create_expr_window): Initialize expr_num, delete_expr_num,
and expr_update_list here when each new expression window
is created, rather than once at startup.
Mon Jul 15 16:44:05 1996 Stu Grossman (grossman@critters.cygnus.com)
* gdbtk.c (gdb_disassemble): Setup di.mach from
tm_print_insn_info.mach, and set endian from TARGET_BYTE_ORDER.
Fri Jun 21 11:04:47 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.tcl (create_register_windows): Include missing '$'s.
Add global declarations for various reg_format_* variables.
* gdbtk.tcl (populate_register_window): Make initial window one
line taller to account for new column header line.
Fri Jun 21 09:46:47 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.c (get_register): Support for printing raw formats.
* gdbtk.tcl: Add hint for using debug_interface.
(center_window, add_breakpoint_frame, delete_breakpoint_frame):
Enclose arg in braces for consistency.
(create_registers_window, populate_reg_window, update_registers):
Major rewrite to support displaying multiple formats in the register
window.
(init_reg_info): New function.
(recompute_reg_display_list): Reset reg_display_list, start
register display lines at line 2.
Thu Jun 20 08:18:59 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.tcl (gdbtk_tcl_readline_begin): Handle backspace to
avoid backing up over prompt. At every input, make sure insert
point is at least after command start, handle control-u to delete
current input line.
(tclsh): Handle backspace to avoid backing up over prompt. Handle
control-u to delete current input line.
Wed Jun 19 17:23:38 1996 Geoffrey Noer <noer@cygnus.com>
* configure.in: disable gdbtk for *cygwin32* hosted compiles
* configure: regenerated with autoconf 2.8
Sun May 19 16:49:37 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.c (gdbtk_readline_begin, gdbtk_readline, gdbtk_readline_end):
New functions.
(tk_command_loop): Set instream to NULL to enable Tk user interaction.
(gdbtk_init): Set readline_begin_hook, readline_hook,
and readline_end_hook.
* gdbtk.tcl (gdbtk_tcl_readline_begin, gdbtk_tcl_readline,
gdbtk_tcl_readline_end): New functions.
(tclsh): Pack scroll bar on right side of window, not left.
Fri May 17 13:54:34 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.tcl (create_command_window): Change a misspelled "get"
to the intended "cget".
(delete_line): Fix so it deletes the current line at the
insertion cursor.
Thu May 16 19:20:29 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.tcl (gdb_prompt): Set this early on.
(create_command_window): Use gdb_prompt rather than "(gdb) ".
(gdbtk_tcl_preloop): Proc executed just prior to Tk main loop.
(tclsh): If an evaluation window already exists, just bring it
to the front instead of trying to create another.
* gdbtk.c (tk_command_loop): New function.
(gdbtk_init): Call tk_command_loop rather than Tk_MainLoop.
Thu May 16 16:16:35 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.tcl (evaluate_tcl_command, tclsh): New functions that
implement a tcl evaluation window for gdbtk maintainers to use.
Thu May 16 11:42:58 1996 Tom Tromey <tromey@creche.cygnus.com>
* gdbtk.tcl (files_command): Correctly insert list of files into
listbox widget.
* gdbtk.tcl (files_command): listbox command no longer accepts
-geometry.
Wed May 15 16:04:09 1996 Stan Shebs <shebs@andros.cygnus.com>
* gdbtk.tcl (create_command_window): If command window's buffer
is disabled, don't execute any of the key bindings.
Mon May 13 13:43:25 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.c (tk_command): Catch case where no argument is given
since this will cause the tcl interpreter to dump core.
Wed May 8 20:33:24 1996 Fred Fish <fnf@cygnus.com>
* gdbtk.c: Fix a couple of misspellings.
Thu May 2 19:17:49 1996 Stan Shebs <shebs@andros.cygnus.com>
* gdbtk.tcl (debug_interface): New global, use to aid debugging.
(insert_breakpoint_tag, delete_breakpoint_tag): Fix range.
(file_popup_menu): Delete, never used.
(listing_window_popup): Rename from listing_window_button_1,
remove breakpoint toggling code.
(toggle_breakpoint): New procedure.
(create_file_win): Bind popup menu to button 2, toggle breakpoints
with button 1 in breakpoint area, add display of tagged areas if
debugging on.
Fri Apr 5 13:44:40 1996 Stan Shebs <shebs@andros.cygnus.com>
* gdbtk.c (running_now): New global variable.
(gdb_cmd): Test it before executing any command.
(gdbtk_call_command): Set it when inferior is running.
* gdbtk.tcl (gdbtk_tcl_busy, gdbtk_tcl_idle): Enable and
disable interaction with command window's text appropriately.
Fri Apr 5 13:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* gdbtk.c (SIOCSPGRP, linux): If on Linux, undef SIOCSPGRP, since
some versions of the kernel don't support it.
Tue Feb 6 16:31:25 1996 Tom Tromey <tromey@creche.cygnus.com>
* gdbtk.tcl (create_file_win): Eliminate text widget B1 binding so
double-clicking will work again.
(create_asm_win): Put "break" at end of all B1 bindings.
(create_file_win): Lower "sel" tag, don't raise it.
(ensure_line_visible): New proc.
(update_listing, update_assembly): Use it.
(create_copyright_window): Destroy window on Leave event.
(create_command_window): Put "break" at end of all B2 bindings.
Wed Jan 24 15:28:41 1996 Tom Tromey <tromey@creche.cygnus.com>
* gdbtk.tcl, gdbtk.c: Updated copyrights.
* configure.in: Look for -ldl or -ldld when using Tcl 7.5 or
greater.
* configure: Rebuilt.
Tue Jan 23 09:00:48 1996 Doug Evans <dje@charmed.cygnus.com>
* gdbtk.c (gdb_disassemble): Pass fprintf_unfiltered to
INIT_DISASSEMBLE_INFO.
Mon Jan 15 09:58:41 1996 Tom Tromey <tromey@creche.cygnus.com>
* gdbtk.tcl (create_expr_window): Many changes to update GUI.
(add_expr): Changes from create_expr_window.
(create_command_window): Set focus.
(delete_expr): Rewrote.
(expr_update_button): New proc.
(add_expr): Put bindings on FocusIn, FocusOut.
Don't allow .file_popup to be torn off.
Fri Jan 12 09:36:17 1996 Tom Tromey <tromey@creche.cygnus.com>
* gdbtk.tcl (gdbtk_tcl_query): Swap Yes and No buttons.
(update_listing): Use lassign. Use "see" to scroll. Don't need
screen_top, screen_bot, screen_height.
(update_assembly): Use "see" to scroll.
(textscrollproc): Removed.
(create_file_win): Don't use textscrollproc.
(asmscrollproc): Removed.
(create_asm_window): Don't use asmscrollproc.
(create_asm_win): Ditto.
(screen_height, screen_top, screen_bot): Removed.
(run_editor): New proc.
(build_framework): Use it.
(create_file_win, create_source_window): Don't use textscrollproc.
(create_breakpoints_window): Set -xscrollcommand on canvas.
(not_implemented_yet): Default button is 0.
(delete_char): Don't use tk_textBackspace.
(create_command_window): Allow Tk bindings to fire after deleting
character.
(create_command_window): Make Delete delete left, not right.
Thu Jan 11 10:08:14 1996 Tom Tromey <tromey@creche.cygnus.com>
* gdbtk.tcl (FSBox): Don't use tk_listboxSingleSelect.
Changes in sync with expect:
* configure.in (ENABLE_GDBTK): Use CY_AC_PATH_TCL and
CY_AC_PATH_TK.
* aclocal.m4: Replaced with version from expect.
* configure: Regenerated.
Wed Jan 10 09:07:22 1996 Tom Tromey <tromey@creche.cygnus.com>
* gdbtk.tcl (gdbtk_tcl_fputs, gdbtk_tcl_fputs_error,
gdbtk_tcl_flush): Use "see", not "yview".
(gdbtk_tcl_query): Use questhead bitmap.
various: Always wrap condition of 'if' in {...}.
(add_breakpoint_frame): Set -value on radiobuttons.
(lassign): New proc.
(add_breakpoint_frame): Use lassign, not series of assignments.
(decr): Made faster.
(interactive_cmd): Use "see", not "yview".
(not_implemented_yet): Use warning bitmap.
(update_expr): Don't allow $expr to be evalled by Tcl.
(create_expr_window): Don't use "focus".
(delete_char, delete_line): Define globally.
(delete_line, delete_char, create_command_window, update_autocmd,
build_framework, create_asm_win, create_file_win): Use "see", not
"yview".
(create_copyright_window, center_window, bind_widget_after_class):
New procs.
(FSBox,create_command_window, create_autocmd_window): Binding
changes for Tk4.
(textscrollproc): Define globally.
(build_framework): tk_menuBar no longer needed. Keys Prior, Next,
Home, End, Up, and Down are all defined by Tk.
(apply_filespec): Use error bitmap in dialog.
(files_command): Don't use tk_listboxSingleSelect.
(files_command): Don't use "uniq" to remove duplicates from a
list.
(update_assembly): Use lassign.
(create_asm_win): Removed redundant bindings.
(listing_window_button_1, file_popup_menu): Use tk_popup.
(ButtonRelease-1 binding): Just remove tag from window; rest
handled by Tk.
* gdbtk.c (gdbtk_query): Use Tcl_Merge to provide quoting.
(call_wrapper): Use Tcl_Eval, not Tcl_VarEval.
(gdbtk_call_command): Ditto.
Thu Jan 4 16:04:54 1996 Stu Grossman (grossman@cygnus.com)
* configure configure.in: Make --enable-gdbtk be the default.
Thu Dec 28 15:10:49 1995 Stan Shebs <shebs@andros.cygnus.com>
* README.GDBTK: Polish introductory paragraph.
Mon Oct 16 11:27:06 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdb_disassemble): Use fprintf_unfiltered instead of
fprintf_filtered.
Tue Oct 10 15:26:39 1995 Fred Fish <fnf@cygnus.com>
* README.GDBTK: Updated for version 4.15.
Sat Aug 19 17:20:22 1995 Michael Tiemann <tiemann@axon.cygnus.com>
* gdbtk.tcl: ENABLE comes back as "1" or "0", not "enable" or
"disable".
Also, wire up the breakpoint window so that it can be demo'd.
Tue Aug 1 11:44:53 1995 J.T. Conklin <jtc@rtl.cygnus.com>
* gdbtk.c: Include "gdb_string.h" instead of <string.h>.
Tue Jun 20 10:19:40 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.c: Add functions Tcl_Malloc, Tcl_Realloc, and Tcl_Free.
* gdbtk.tcl (add_breakpoint_frame): Add more fields.
* (create_file_win create_asm_win build_framework): Create null
bindings for meta keys to keep window from dropping down to
insertion point when meta is pressed by itself. New bindings:
Up/Down - Scroll up/down one line at a time
Next/Prior - Scroll up/down one page at a time
Home/End - Warp to current pc/end of file
* (build_framework): Turn on breakpoint menu.
* (create_command_window): Implement tab completion. Add binding
for ^C to stop target.
Fri May 19 06:15:40 1995 Jim Kingdon <kingdon@deneb.cygnus.com>
* gdbtk.c: Conditionalize use of stdarg rather than varargs on
ANSI_PROTOTYPES not __STDC__; it must match the definition of
PARAMS.
Thu May 18 15:58:46 1995 J.T. Conklin <jtc@rtl.cygnus.com>
* gdbtk.c (gdbtk_query): Use stdarg.h macros when compiling with
an ANSI compiler.
Sat Apr 15 13:52:24 1995 Stan Shebs <shebs@andros.cygnus.com>
* gdbtk.c (gdb_disassemble): Read from inferior if connected
to a VxWorks target.
Fri Apr 14 10:18:20 1995 Stu Grossman (grossman@cygnus.com)
* README.GDBTK: New file. Contains the obvious.
Tue Apr 11 11:07:12 1995 Michael Meissner <meissner@tiktok.cygnus.com>
* gdbtk.c (gdbtk_init): If SIOCSPGRP is not available, but
F_SETOWN is, use that.
Thu Apr 6 17:00:46 1995 Michael Meissner <meissner@tiktok.cygnus.com>
* Makefile.in (X11_INCLUDES): Define as empty.
(X11_CFLAGS): Define as including $(X11_INCLUDES).
(X11_LIB_SWITCHES): Define as empty.
(X11_LIBS): Define as -lX11.
* configure.in (enable_gdbtk): If gdbtk, support the --x-includes
and --x-libraries switches, setting the X11_INCLUDES and
X11_LIB_SWITCHES respectively. Instead of using a hardcoded -lX11
in ENABLE_CLIBS, use the X11_LIB_SWITCHES and X11_LIBS variables.
* gdbtk.c (gdbtk_init): If SIOCSPGRP is not available, don't use
it. This means that the stop button doesn't work, but is better
than nothing.
Wed Mar 29 17:09:29 1995 Stu Grossman (grossman@cygnus.com)
* Makefile.in (gdbtk.o): Use X11_CFLAGS to provide alternate
locations (per-host) for X11 include files.
* config/pa/hppahpux.mh (XM_CLIBS): Add -L/usr/lib/X11R5 to force
the use of R5 libs.
(X11_CFLAGS): Add this to indicate the locs
of the R5 include files.
Wed Mar 8 16:12:21 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdb_get_breakpoint_info): Return error if breakpoint
type is not bp_breakpoint.
Tue Feb 14 17:16:41 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.c: Ditto.
* gdbtk.c: General cleanups, get rid of unused variables. Redo
handling of stdout/stderr to just return output as the result of
the tcl command that caused the output. Cleanup -Wall stuff.
* (breakpoint_notify): Now returns just action and breakpoint
number.
* (gdb_get_breakpoint_list): New routine. Does the obvious.
* (gdb_get_breakpoint_info): Mostly derived from the old
breakpoint_notify, but returns lots more info.
* (dsprintf_append_element): Helper routine, works like printf,
but appends a tcl element onto the specified DString. Good for
building up lists as return values.
* (gdbtk_enable/disable_breakpoint): Go away. Replaced with
gdbtk_modify_breakpoint.
* (*many routines*): Use new result protocol.
* (call_wrapper): Make sure that recursive calls don't trash results.
* gdbtk.tcl: New windows, autocmd, and breakpoints.
* (gdbtk_tcl_fputs): Don't use $current_output_win redirection
anymore. It's not needed (in fact, this routine may not be needed
anymore).
* (gdbtk_tcl_breakpoint): Change to reflect new breakpoint
notification protocol.
* (gdbtk_tcl_busy gdbtk_tcl_idle): Straighten out buttons, remove
catches.
* (interactive_cmd): Use this wrapper around button invocations
of many commands. This will catch errors and put the results into
the command window. It also updates all the other windows.
* Also, change reliefs of most things to sunken. This actually
looks better.
* (create_file_win): Fix margin binding to allow breakpoints to
work again.
* (create_asm_win): Use return value of gdb_disassemble instead
of implicit I/O to the command window.
* (create_command_window): Use new result protocol to get output
from commands.
Sun Feb 5 20:32:44 1995 Jim Kingdon (kingdon@lioth.cygnus.com)
* gdbtk.c (gdb_disassemble): Deference pointer to function before
calling it (pre-ANSI compilers generally require this).
Fri Feb 3 11:19:20 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdb_disassemble): Get rid of
dis_asm_read_memory_hook. We can now call the disassemblers
directly and have no need for this hook anymore.
Mon Jan 30 17:34:24 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl (create_file_win): Disable old popup menu for source
window.
Wed Jan 25 18:23:46 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdbtk_init): Prevent segfault when gdbtk.tcl can't be
found.
* gdbtk.tcl: Initialize expr_update_list() to prevent errors when
popping up expression window for the first time.
Tue Jan 24 12:10:28 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl (create_registers_window): Work around a radiobutton
widget bug to make Options|Natural button work.
* gdbtk.c (gdb_disassemble): Fix problem with source+assembly and
g++ caused by out-of-order pc's.
* gdbtk.tcl (files_command): Remove duplicate file names. Also,
add scrollbar.
Mon Jan 23 17:21:09 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl: Take .gdbtkinit if it exists. Makes gdbtk match the
doc!
Thu Jan 12 15:02:40 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.c, gdbtk.tcl: Update/add copyright.
* gdbtk.tcl (build_framework): Several fixes for filespec widget,
including dismiss button, and better error handling.
* (create_command_win): Bind button 2 to retrieve selection.
Wed Jan 11 17:06:55 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl: Add button to control mixed source disassembly.
Use text widgets in expr window. The give me more control over
layout.
Add auto-updating of exprs in expression window.
Handle expressions out of scope a bit better.
Make selected window pop up to the top when invoked via the
menubar.
Make copyright message have raised relief.
* gdbtk.c (gdbtk_init): Improve handling for errors in gdbtk.tcl
during startup.
Thu Jan 5 17:38:29 1995 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (finish_saving_output): Don't do anything if not saving
output.
* (breakpoint_notify): Don't send null filename to tcl.
* (gdb_eval): New tcl command to eval an expression.
* (gdb_disassemble): New tcl command to do disassembly. This
allows tcl code to choose between exec file and target memeory,
and can also do mixed source and assembly.
* (gdbtk_init): Move reading of gdbtk.tcl to the end to make sure
that more of the environment is set up. Also, create link between
gdb and tcl vars disassemble{-_}from{-_}exec.
* gdbtk.tcl: New expression window support.
* Make assembly window be 80 columns wide.
* Use new disassembly method. Add menu items to select
disassembly from exec file or target.
* Change View menubar item to Options.
* Get rid of Stack, Breakpoints, Signals, and Variables Windows,
since they don't exist yet.
* Pop up a copyright window on startup.
Wed Jan 4 19:49:10 1995 Stan Shebs <shebs@andros.cygnus.com>
* gdbtk.tcl (build_framework): Add standard commands menu, more
windows to standard windows menu.
(not_implemented_yet): Clarify message.
Fri Dec 30 15:49:00 1994 Stan Shebs <shebs@andros.cygnus.com>
* gdbtk.tcl (FSBox): New proc, File Selection Box code from exmh.
(not_implemented_yet): New proc.
(build_framework): Add various file commands to file menu.
Fri Dec 23 16:18:50 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdbtk_wait gdbtk_init): Portability improvements for
SIGIO handling.
Mon Dec 19 09:55:47 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl (update_assembly): Force update to make sure that pc
is visible when creating new assembly windows.
Sun Dec 18 23:31:20 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdbtk_wait gdbtk_init): Use different method of
enabling I/O interrupts for SVR4 (streams).
* (start_saving_output save_output get_saved_output
finish_saving_output flush_holdbuf gdbtk_flush gdbtk_fputs
gdbtk_init):
Totally revamp to use TCLs dynamic string functions. Also, quote
all data passed back to TCL to prevent errors with unmatched
braces, odd characters, etc... This fixes several wierd problems
with outputting strings containing unmatched braces.
* (breakpoint_notify gdb_loc): Use long hex format to output
addresses of breakpoints and PCs. This fixes some Alpha problems.
* (breakpoint_notify): Add stream arg to call to gdbtk_fputs.
* (gdb_listfiles): Also, go through the symtabs when looking for
files. This makes xcoff work (sort of), but probably breaks
something else.
* (gdb_stop): Return TCL_OK instead of nothing. This fixes odd
TCL errors when hitting stop button.
* (tk_command): Don't pass interp->result on to Tcl_{Var}Eval, as
that will trash the result. strdup the result instead and pass
that on. Improve error handling as well.
* gdbtk.tcl (gdbtk_tcl_flush): Use global def of
current_output_win. Makes flushing actually work!
* (asm_win_name create_asm_win update_assembly): Bunch of fixes
to make assembly windows stop flashing when loading a new file.
* (gdbtk_tcl_busy gdbtk_tcl_idle): Use catch to prevent gdb_cmd
errors from losing control.
* (create_source_window): Add source file selection to View menu.
* (create_command_window (<Key-Return> binding): Quote text fed
into gdb_cmd to prevent eval errors.
Thu Dec 15 16:40:10 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c: Improve mechanism for capturing output values.
(full_filename): Remove.
(gdb_cmd call_wrapper gdbtk_init): Protect all calls from tcl land
with call_wrapper. This prevents longjmps (usually via error())
from jumping out of tcl/tk and leaving things in an indeterminate
state.
(gdbtk_fputs): Differentiate stdout from stderr when passing text
into tcl land.
* gdbtk.tcl: New view option to disable line numbers. Put catch
around most uses of gdb_cmd. Add update button to reg config
window. Stop doing immediate updates when selecting registers.
Change register view values into checkbuttons.
Mon Dec 12 16:59:29 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl (reg_config_menu create_registers_window
recompute_reg_display_list): Use array instead of individual vars
for register display list.
* (recompute_reg_display_list update_registers): Fix bug with not
displaying all registers.
Mon Dec 12 12:22:21 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c: New tcl commands: gdb_fetch_registers,
gdb_changed_register_list, and gdb_regnames.
* gdbtk.tcl: Use monochrome color model for now.
* (delete_breakpoint_tag create_file_win): Add breakdot support.
* (create_file_win create_asm_win update_listing build_framework
create_source_window create_command_window): Re-org window
creation to give all windows consistent look and feel.
* (update_listing update_asm): Change pc pointer to '->'.
* (registers_command reg_config_menu create_registers_window
populate_reg_window update_registers): Revamp register window.
Allow selection of registers to be displayed. Highlight changed
registers.
Mon Nov 28 09:17:20 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl (build_framework): Fix bug with setting window titles.
* gdbtk.tcl (build_framework): Add "Report bug" to help menu.
* gdbtk.tcl: Re-arrange windows using new, consistent layout. Clean
up lots of code and centralize framework initialization.
Wed Nov 16 15:28:29 1994 Rob Savoye (rob@cygnus.com)
* Makefile.in: Fix the test for installing gdbtk.
Mon Nov 14 08:51:29 1994 Stu Grossman (grossman@cygnus.com)
* Makefile.in: Install gdbtk.tcl.
* configure.in: Add ENABLE_GDBTK flag.
* gdbtk.c (gdb_sourcelines): Returns list of source lines
containing code. (gdb_regnames): Returns list of register names.
Thu Nov 3 14:25:24 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdb_stop): Switch to target_stop().
Tue Nov 1 16:41:12 1994 Stu Grossman (grossman@cygnus.com)
* Makefile.in: Use $(objdir)/tcl and $(objdir)/tk if they are
available.
* configure.in (ENABLE_CLIBS): Use $(TCL) and $(TK) instead of
-ltcl and -ltk.
* gdbtk.c: Get rid of lots of unnecessary #includes.
* (gdbtk_init): Use ConnectionNumber macro instead of referencing
Display structure directly.
* gdbtk.tcl: Change exit button to quit button.
Wed Oct 26 15:41:07 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c: Change sense and name of no_windows variable. Now
called use_windows, and defaults to off (for compatibility).
Thu Oct 20 17:35:45 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdb_cmd): Force GUI into idle mode when errors occur.
* (gdb_stop): New tcl command to stop the target process.
* (x_event, gdbtk_wait): Allow GUI to interrupt gdb out of target
waits.
* (gdbtk_call_command): Wrapper around command processing to
alert GUI of target state changes.
* (gdbtk_init): Get the fd of X server for doing async
notification of X events (via x_event). Setup new hooks.
* gdbtk.tcl: Add scrollbars to assembly and command windows.
* Change window foreground & background colors.
* Create margin tag for breakpoints in source and assembly windows.
* Add new routines to be invoked when target state changes to/from
idle.
* Add start of expression window.
* Change bindings of mouse button 1 in assembly and source window
to just set or clear breakpoints when in the margin tag.
* Change shape of register window to be more vertical to better
reflect its contents.
* Add stop button.
* Cleanup some code around command window bindings.
Sat Sep 17 17:05:14 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl: Let ^U delete lines in the command window.
Fri Sep 16 15:40:34 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c: Replace calls to full_filename with symtab_to_filename.
* gdbtk.tcl: New routine pc_to_line replaces in line code. New
routine decr replaces in line code.
* (create_file_win): Use catch to handle open failures more
elegantly. Also, create special window to display file open
failure message. Move opening of file prior to creation of text
widget.
* (create_asm_win): Add PC as argument. We now base disassembly
on PC instead of function name, since function names can be
ambiguous (usually seen with shared libs). Also, use catch to
simplify code where we don't care about failures.
Wed Sep 14 00:55:26 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.tcl: Add ref counts to breakpoint tags.
* Put quotes around function name in disassemble command to better
handle assembler names containing `.'.
* Make pclist element 0 be filler to avoid off-by-one problem with
line numbers.
* Set names of top-level windows.
* Add register display window.
* Add PC to label of assembly window.
Tue Sep 13 08:59:04 1994 Stu Grossman (grossman@cygnus.com)
* gdbtk.c (gdbtk_flush gdbtk_fputs): Buffer up output to make
disassembly more efficient.
* (breakpoint_notify): Include pc in gdbtk_tcl_breakpoint
callback.
* (gdb_loc): Include pc in return value. Also, return function
name if arg was specified.
* (gdb_cmd_stub): Call gdb_flush to drain internal GDB buffers
after command completes.
* (gdbtk_init): Improve error handling.
* gdbtk.tcl: Add lots of comments. Clean up code.
* (gdbtk_tcl_fputs): Make output window redirectable.
* Add assembly window, and breapoint support.
* Make button 1 in margin toggle breakpoints.
* Use stippling to indicate breakpoint disabling.
Fri Sep 2 19:11:40 1994 Stu Grossman (grossman@cygnus.com)
* configure.in: Don't symlink to gdbtk.tcl if it's already there.
Thu Jul 28 14:37:36 1994 Stu Grossman (grossman@cygnus.com)
Support for TK GUI.
* Makefile.in: Add rule for gdbtk.o.
* configure.in: Add support for --enable-gdbtk.
* gdbtk.c: New file. Contains support routines for TK interface.
* gdbtk.tcl: New file. Implements GUI policy.
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
|