ide: add a compiler switch to use compile an application with separate gdb debug file (from Dmitry Boyarintsev #0012399 with small modifications)

git-svn-id: trunk@17079 -
This commit is contained in:
paul 2008-10-21 06:13:19 +00:00
parent d8b352c958
commit 864ac18db8
6 changed files with 1509 additions and 1455 deletions

View File

@ -1112,6 +1112,7 @@ begin
UseValgrind := XMLConfigFile.GetValue(p+'Debugging/UseValgrind/Value', false); UseValgrind := XMLConfigFile.GetValue(p+'Debugging/UseValgrind/Value', false);
GenGProfCode := XMLConfigFile.GetValue(p+'Debugging/GenGProfCode/Value', false); GenGProfCode := XMLConfigFile.GetValue(p+'Debugging/GenGProfCode/Value', false);
StripSymbols := XMLConfigFile.GetValue(p+'Debugging/StripSymbols/Value', false); StripSymbols := XMLConfigFile.GetValue(p+'Debugging/StripSymbols/Value', false);
UseExternalDbgSyms := XMLConfigFile.GetValue(p+'Debugging/UseExternalDbgSyms/Value', false);
ReadLinkSmart; ReadLinkSmart;
PassLinkerOptions := XMLConfigFile.GetValue(p+'Options/PassLinkerOptions/Value', false); PassLinkerOptions := XMLConfigFile.GetValue(p+'Options/PassLinkerOptions/Value', false);
LinkerOptions := LineBreaksToSystemLineBreaks( LinkerOptions := LineBreaksToSystemLineBreaks(
@ -1259,6 +1260,7 @@ begin
XMLConfigFile.SetDeleteValue(p+'Debugging/UseValgrind/Value', UseValgrind,false); XMLConfigFile.SetDeleteValue(p+'Debugging/UseValgrind/Value', UseValgrind,false);
XMLConfigFile.SetDeleteValue(p+'Debugging/GenGProfCode/Value', GenGProfCode,false); XMLConfigFile.SetDeleteValue(p+'Debugging/GenGProfCode/Value', GenGProfCode,false);
XMLConfigFile.SetDeleteValue(p+'Debugging/StripSymbols/Value', StripSymbols,false); XMLConfigFile.SetDeleteValue(p+'Debugging/StripSymbols/Value', StripSymbols,false);
XMLConfigFile.SetDeleteValue(p+'Debugging/UseExternalDbgSyms/Value', UseExternalDbgSyms,false);
XMLConfigFile.SetDeleteValue(p+'LinkSmart/Value', LinkSmart,false); XMLConfigFile.SetDeleteValue(p+'LinkSmart/Value', LinkSmart,false);
XMLConfigFile.SetDeleteValue(p+'Options/PassLinkerOptions/Value', PassLinkerOptions,false); XMLConfigFile.SetDeleteValue(p+'Options/PassLinkerOptions/Value', PassLinkerOptions,false);
XMLConfigFile.SetDeleteValue(p+'Options/LinkerOptions/Value', XMLConfigFile.SetDeleteValue(p+'Options/LinkerOptions/Value',
@ -2090,6 +2092,9 @@ begin
if (GenGProfCode) then if (GenGProfCode) then
switches := switches + ' -pg'; switches := switches + ' -pg';
if (UseExternalDbgSyms) then
switches := switches + ' -Xg';
{ Strip Symbols } { Strip Symbols }
if (StripSymbols) and (not (ccloNoLinkerOpts in Flags)) then if (StripSymbols) and (not (ccloNoLinkerOpts in Flags)) then
switches := switches + ' -Xs'; switches := switches + ' -Xs';

View File

@ -1,7 +1,7 @@
object frmCompilerOptions: TfrmCompilerOptions object frmCompilerOptions: TfrmCompilerOptions
Left = 339 Left = 389
Height = 528 Height = 528
Top = 186 Top = 163
Width = 669 Width = 669
HelpContext = 0 HelpContext = 0
ActiveControl = MainNotebook ActiveControl = MainNotebook
@ -39,7 +39,7 @@ object frmCompilerOptions: TfrmCompilerOptions
object MainNotebook: TNotebook object MainNotebook: TNotebook
AnchorSideBottom.Control = BtnPanel AnchorSideBottom.Control = BtnPanel
Left = 0 Left = 0
Height = 478 Height = 490
Top = 0 Top = 0
Width = 669 Width = 669
HelpContext = 0 HelpContext = 0
@ -698,8 +698,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 56 ClientHeight = 60
ClientWidth = 649 ClientWidth = 653
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -799,8 +799,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 49 ClientHeight = 53
ClientWidth = 454 ClientWidth = 458
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -873,8 +873,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.Layout = cclLeftToRightThenTopToBottom ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 1 ChildSizing.ControlsPerLine = 1
ClientHeight = 140 ClientHeight = 159
ClientWidth = 185 ClientWidth = 189
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -1078,8 +1078,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 50 ClientHeight = 54
ClientWidth = 454 ClientWidth = 458
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -1155,8 +1155,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 126 ClientHeight = 130
ClientWidth = 454 ClientWidth = 458
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -1449,8 +1449,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 178 ClientHeight = 182
ClientWidth = 649 ClientWidth = 653
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -1710,16 +1710,16 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientWidth = 665 ClientWidth = 661
ClientHeight = 447 ClientHeight = 464
ImageIndex = -1 ImageIndex = -1
ParentFont = True ParentFont = True
ParentShowHint = True ParentShowHint = True
object grpLinkLibraries: TGroupBox object grpLinkLibraries: TGroupBox
Left = 6 Left = 6
Height = 53 Height = 49
Top = 190 Top = 211
Width = 653 Width = 649
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AutoSize = True AutoSize = True
@ -1736,8 +1736,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 34 ClientHeight = 31
ClientWidth = 649 ClientWidth = 645
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -1754,9 +1754,9 @@ object frmCompilerOptions: TfrmCompilerOptions
Visible = True Visible = True
object chkLinkSmart: TCheckBox object chkLinkSmart: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 6 Top = 6
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -1787,9 +1787,9 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object TargetSpecificsGrpBox: TGroupBox object TargetSpecificsGrpBox: TGroupBox
Left = 6 Left = 6
Height = 53 Height = 49
Top = 249 Top = 266
Width = 653 Width = 649
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AutoSize = True AutoSize = True
@ -1806,8 +1806,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 34 ClientHeight = 31
ClientWidth = 649 ClientWidth = 645
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -1824,9 +1824,9 @@ object frmCompilerOptions: TfrmCompilerOptions
Visible = True Visible = True
object chkWin32GraphicApp: TCheckBox object chkWin32GraphicApp: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 6 Top = 6
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -1857,9 +1857,9 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object grpOptions: TGroupBox object grpOptions: TGroupBox
Left = 6 Left = 6
Height = 82 Height = 78
Top = 308 Top = 321
Width = 653 Width = 649
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AutoSize = True AutoSize = True
@ -1876,8 +1876,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 63 ClientHeight = 60
ClientWidth = 649 ClientWidth = 645
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -1894,9 +1894,9 @@ object frmCompilerOptions: TfrmCompilerOptions
Visible = True Visible = True
object chkOptionsLinkOpt: TCheckBox object chkOptionsLinkOpt: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 6 Top = 6
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -1927,8 +1927,8 @@ object frmCompilerOptions: TfrmCompilerOptions
object edtOptionsLinkOpt: TEdit object edtOptionsLinkOpt: TEdit
Left = 6 Left = 6
Height = 23 Height = 23
Top = 34 Top = 31
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AutoSize = False AutoSize = False
@ -1959,9 +1959,9 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object grpDebugging: TGroupBox object grpDebugging: TGroupBox
Left = 6 Left = 6
Height = 178 Height = 199
Top = 6 Top = 6
Width = 653 Width = 649
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AutoSize = True AutoSize = True
@ -1978,8 +1978,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 159 ClientHeight = 181
ClientWidth = 649 ClientWidth = 645
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -1996,9 +1996,9 @@ object frmCompilerOptions: TfrmCompilerOptions
Visible = True Visible = True
object chkDebugGDB: TCheckBox object chkDebugGDB: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 6 Top = 6
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -2028,9 +2028,9 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object chkUseLineInfoUnit: TCheckBox object chkUseLineInfoUnit: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 34 Top = 31
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -2060,9 +2060,9 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object chkUseHeaptrc: TCheckBox object chkUseHeaptrc: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 62 Top = 56
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -2092,9 +2092,9 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object chkUseValgrind: TCheckBox object chkUseValgrind: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 90 Top = 81
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -2124,9 +2124,9 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object chkGenGProfCode: TCheckBox object chkGenGProfCode: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 118 Top = 106
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -2156,9 +2156,9 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object chkSymbolsStrip: TCheckBox object chkSymbolsStrip: TCheckBox
Left = 6 Left = 6
Height = 22 Height = 19
Top = 146 Top = 131
Width = 637 Width = 633
HelpContext = 0 HelpContext = 0
Align = alTop Align = alTop
AllowGrayed = False AllowGrayed = False
@ -2186,6 +2186,38 @@ object frmCompilerOptions: TfrmCompilerOptions
UseOnChange = False UseOnChange = False
Visible = True Visible = True
end end
object chkUseExternalDbgSyms: TCheckBox
Left = 6
Height = 19
Top = 156
Width = 633
HelpContext = 0
Align = alTop
AllowGrayed = False
AutoSize = True
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 6
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Caption = 'chkUseExternalDbgSyms'
Checked = False
DragCursor = crDrag
DragKind = dkDrag
DragMode = dmManual
Enabled = True
ParentColor = True
ParentFont = True
ParentShowHint = True
ParentBidiMode = True
State = cbUnchecked
TabOrder = 6
TabStop = True
UseOnChange = False
Visible = True
end
end end
end end
object MsgPage: TPage object MsgPage: TPage
@ -2260,8 +2292,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 50 ClientHeight = 54
ClientWidth = 649 ClientWidth = 653
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -2344,8 +2376,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 106 ClientHeight = 110
ClientWidth = 649 ClientWidth = 653
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -2479,8 +2511,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 317 ClientHeight = 321
ClientWidth = 649 ClientWidth = 653
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -2732,8 +2764,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 104 ClientHeight = 108
ClientWidth = 649 ClientWidth = 653
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -3088,8 +3120,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 75 ClientHeight = 79
ClientWidth = 649 ClientWidth = 653
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -3337,8 +3369,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 104 ClientHeight = 108
ClientWidth = 649 ClientWidth = 653
Ctl3D = False Ctl3D = False
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
@ -3676,8 +3708,8 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object BtnPanel: TPanel object BtnPanel: TPanel
Left = 0 Left = 0
Height = 50 Height = 38
Top = 478 Top = 490
Width = 669 Width = 669
HelpContext = 0 HelpContext = 0
Align = alBottom Align = alBottom
@ -3700,8 +3732,8 @@ object frmCompilerOptions: TfrmCompilerOptions
ChildSizing.HorizontalSpacing = 0 ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0 ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0 ChildSizing.ControlsPerLine = 0
ClientHeight = 46 ClientHeight = 38
ClientWidth = 665 ClientWidth = 669
DockSite = False DockSite = False
DragCursor = crDrag DragCursor = crDrag
DragKind = dkDrag DragKind = dkDrag
@ -3717,7 +3749,7 @@ object frmCompilerOptions: TfrmCompilerOptions
object HelpButton: TBitBtn object HelpButton: TBitBtn
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 6 Left = 6
Height = 34 Height = 26
Top = 6 Top = 6
Width = 75 Width = 75
HelpContext = 0 HelpContext = 0
@ -3751,10 +3783,10 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object btnShowOptions: TBitBtn object btnShowOptions: TBitBtn
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 135 Left = 165
Height = 34 Height = 26
Top = 6 Top = 6
Width = 135 Width = 124
HelpContext = 0 HelpContext = 0
Align = alRight Align = alRight
AutoSize = True AutoSize = True
@ -3822,10 +3854,10 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object btnCheck: TBitBtn object btnCheck: TBitBtn
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 276 Left = 295
Height = 34 Height = 26
Top = 6 Top = 6
Width = 95 Width = 90
HelpContext = 0 HelpContext = 0
Align = alRight Align = alRight
AutoSize = True AutoSize = True
@ -3857,10 +3889,10 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object btnLoadSave: TBitBtn object btnLoadSave: TBitBtn
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 377 Left = 391
Height = 34 Height = 26
Top = 6 Top = 6
Width = 115 Width = 108
HelpContext = 0 HelpContext = 0
Align = alRight Align = alRight
AutoSize = True AutoSize = True
@ -3927,8 +3959,8 @@ object frmCompilerOptions: TfrmCompilerOptions
end end
object btnOK: TBitBtn object btnOK: TBitBtn
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 498 Left = 505
Height = 34 Height = 26
Top = 6 Top = 6
Width = 75 Width = 75
HelpContext = 0 HelpContext = 0
@ -3963,10 +3995,10 @@ object frmCompilerOptions: TfrmCompilerOptions
object btnCancel: TBitBtn object btnCancel: TBitBtn
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 579 Left = 586
Height = 34 Height = 26
Top = 6 Top = 6
Width = 80 Width = 77
HelpContext = 0 HelpContext = 0
Align = alRight Align = alRight
AutoSize = True AutoSize = True

File diff suppressed because it is too large Load Diff

View File

@ -59,6 +59,7 @@ type
{ TfrmCompilerOptions } { TfrmCompilerOptions }
TfrmCompilerOptions = class(TForm) TfrmCompilerOptions = class(TForm)
chkUseExternalDbgSyms: TCheckBox;
MainNoteBook: TNoteBook; MainNoteBook: TNoteBook;
BtnPanel: TPanel; BtnPanel: TPanel;
@ -623,6 +624,7 @@ begin
chkGenGProfCode.Checked := Options.GenGProfCode; chkGenGProfCode.Checked := Options.GenGProfCode;
chkSymbolsStrip.Checked := Options.StripSymbols; chkSymbolsStrip.Checked := Options.StripSymbols;
chkSymbolsStrip.Enabled:=EnabledLinkerOpts; chkSymbolsStrip.Enabled:=EnabledLinkerOpts;
chkUseExternalDbgSyms.Checked := Options.UseExternalDbgSyms;
chkLinkSmart.Checked := Options.LinkSmart; chkLinkSmart.Checked := Options.LinkSmart;
grpLinkLibraries.Enabled:=EnabledLinkerOpts; grpLinkLibraries.Enabled:=EnabledLinkerOpts;
@ -929,6 +931,7 @@ begin
Options.UseValgrind := chkUseValgrind.Checked; Options.UseValgrind := chkUseValgrind.Checked;
Options.GenGProfCode := chkGenGProfCode.Checked; Options.GenGProfCode := chkGenGProfCode.Checked;
Options.StripSymbols := chkSymbolsStrip.Checked; Options.StripSymbols := chkSymbolsStrip.Checked;
Options.UseExternalDbgSyms := chkUseExternalDbgSyms.Checked;
Options.PassLinkerOptions := chkOptionsLinkOpt.Checked; Options.PassLinkerOptions := chkOptionsLinkOpt.Checked;
Options.LinkerOptions := edtOptionsLinkOpt.Text; Options.LinkerOptions := edtOptionsLinkOpt.Text;
@ -1319,6 +1322,7 @@ begin
chkUseValgrind.Caption := dlgCOValgrind+' (-gv)'; chkUseValgrind.Caption := dlgCOValgrind+' (-gv)';
chkGenGProfCode.Caption := dlgGPROF+' (-pg)'; chkGenGProfCode.Caption := dlgGPROF+' (-pg)';
chkSymbolsStrip.Caption := dlgCOStrip+' (-Xs)'; chkSymbolsStrip.Caption := dlgCOStrip+' (-Xs)';
chkUseExternalDbgSyms.Caption := dlgExtSymb +' (-Xg)';
grpLinkLibraries.Caption := dlgLinkLibraries; grpLinkLibraries.Caption := dlgLinkLibraries;
chkLinkSmart.Caption := dlgLinkSmart+' (-XX)'; chkLinkSmart.Caption := dlgLinkSmart+' (-XX)';

View File

@ -1287,6 +1287,7 @@ resourcestring
dlgCOValgrind = 'Generate code for valgrind'; dlgCOValgrind = 'Generate code for valgrind';
dlgGPROF = 'Generate code for gprof'; dlgGPROF = 'Generate code for gprof';
dlgCOStrip = 'Strip Symbols From Executable'; dlgCOStrip = 'Strip Symbols From Executable';
dlgExtSymb = 'Use external gdb debug symbols file';
dlgLinkLibraries = 'Link Style:'; dlgLinkLibraries = 'Link Style:';
dlgLinkSmart = 'Link Smart'; dlgLinkSmart = 'Link Smart';
dlgPassOptsLinker = 'Pass Options To The Linker (Delimiter is space)'; dlgPassOptsLinker = 'Pass Options To The Linker (Delimiter is space)';

View File

@ -125,6 +125,7 @@ type
fLinkerOptions: String; fLinkerOptions: String;
FWin32GraphicApp: boolean; FWin32GraphicApp: boolean;
FExecutableType: TCompilationExecutableType; FExecutableType: TCompilationExecutableType;
FUseExternalDbgSyms : Boolean;
// Messages: // Messages:
fShowErrors: Boolean; fShowErrors: Boolean;
@ -232,6 +233,7 @@ type
property Win32GraphicApp: boolean read FWin32GraphicApp write FWin32GraphicApp; property Win32GraphicApp: boolean read FWin32GraphicApp write FWin32GraphicApp;
property ExecutableType: TCompilationExecutableType property ExecutableType: TCompilationExecutableType
read FExecutableType write FExecutableType; read FExecutableType write FExecutableType;
property UseExternalDbgSyms: Boolean read FUseExternalDbgSyms write FUseExternalDbgSyms;
// messages: // messages:
property ShowErrors: Boolean read fShowErrors write fShowErrors; property ShowErrors: Boolean read fShowErrors write fShowErrors;