replaced ppc386 with platform independent name

git-svn-id: trunk@5778 -
This commit is contained in:
mattias 2004-08-13 12:28:01 +00:00
parent 91aaab9121
commit ed06870dfa
9 changed files with 142 additions and 85 deletions

View File

@ -704,7 +704,7 @@ begin
FileTitles[0]:='compiler path';
FileDescs[0]:=Format(
lisCodeToolsDefsThePathToTheFreePascalCompilerForExample, [#13,
'"', '"', '"', '"']);
'"', GetDefaultCompilerFilename, '"', '"', '"']);
FileNames[0]:=DefaultCompiler;
FileFlags[0]:=[iftCmdLine,iftNotEmpty];

View File

@ -2,7 +2,7 @@
compileroptions.pp - Lazarus IDE unit
---------------------------------------
Compiler options form sets the switches for the project
file for the PPC386 compiler.
file for the FPC compiler.
Initial Revision : Sat May 10 23:15:32 CST 1999
@ -1704,7 +1704,7 @@ begin
{ Get all the options and create a string that can be passed to the compiler }
{ options of ppc386 1.1 :
{ options of fpc 1.1 :
put + after a boolean switch option to enable it, - to disable it
-a the compiler doesn't delete the generated assembler file
@ -2761,11 +2761,12 @@ begin
OpenDialog:=TOpenDialog.Create(Self);
try
if Sender=btnCompiler then begin
OpenDialog.Title:='Browse for Compiler (ppc386)';
OpenDialog.Title:=Format(lisBrowseForCompiler, [GetDefaultCompilerFilename
]);
DefaultFilename:=FindDefaultCompilerPath;
OpenDialog.Options:=OpenDialog.Options+[ofFileMustExist];
end else if Sender=btnUnitOutputDir then begin
OpenDialog.Title:='Unit Output directory';
OpenDialog.Title:=lisUnitOutputDirectory;
DefaultFilename:='';
OpenDialog.Options:=OpenDialog.Options+[ofPathMustExist];
end else
@ -2796,7 +2797,7 @@ var
begin
ANode:=InhTreeView.Selected;
if (ANode=nil) or (ANode.Data=nil) then begin
InhItemMemo.Lines.Text:='Select a node';
InhItemMemo.Lines.Text:=lisSelectANode;
end else begin
ChildData:=PInheritedNodeData(ANode.Data);
if ChildData^.Option in icoAllSearchPaths then begin
@ -3233,28 +3234,28 @@ begin
AncestorNode.ImageIndex:=ImageIndexPackage;
AncestorNode.SelectedIndex:=AncestorNode.ImageIndex;
with AncestorOptions.ParsedOpts do begin
AddChildNode('unit path',
AddChildNode(lisunitPath,
CreateRelativeSearchPath(GetParsedValue(pcosUnitPath),
CompilerOpts.BaseDirectory),icoUnitPath);
AddChildNode('include path',
AddChildNode(lisincludePath,
CreateRelativeSearchPath(GetParsedValue(pcosIncludePath),
CompilerOpts.BaseDirectory),icoIncludePath);
AddChildNode('object path',
AddChildNode(lisobjectPath,
CreateRelativeSearchPath(GetParsedValue(pcosObjectPath),
CompilerOpts.BaseDirectory),icoObjectPath);
AddChildNode('library path',
AddChildNode(lislibraryPath,
CreateRelativeSearchPath(GetParsedValue(pcosLibraryPath),
CompilerOpts.BaseDirectory),icoLibraryPath);
AddChildNode('linker options',GetParsedValue(pcosLinkerOptions),
AddChildNode(lislinkerOptions, GetParsedValue(pcosLinkerOptions),
icoLinkerOptions);
AddChildNode('custom options',GetParsedValue(pcosCustomOptions),
AddChildNode(liscustomOptions, GetParsedValue(pcosCustomOptions),
icoCustomOptions);
end;
AncestorNode.Expanded:=true;
end;
OptionsList.Free;
end else begin
InhTreeView.Items.Add(nil,'No compiler options inherited.');
InhTreeView.Items.Add(nil, lisNoCompilerOptionsInherited);
end;
InhTreeView.EndUpdate;
end;
@ -3499,7 +3500,6 @@ var
begin
// Setup the Code Generation Tab
CodeGenPage:=nbMain.Page[Page];
Assert(False, 'Trace:Setting up compiler options code generation tab');
grpUnitStyle := TRadioGroup.Create(Self);
with grpUnitStyle do
@ -3780,7 +3780,6 @@ procedure TfrmCompilerOptions.SetupLinkingTab(Page: integer);
begin
// Setup the Linking Tab
LinkingPage:=nbMain.Page[Page];
Assert(False, 'Trace:Setting up compiler options linking tab');
grpDebugging := TGroupBox.Create(Self);
with grpDebugging do
@ -4263,7 +4262,7 @@ begin
Top:=grpConfigFile.Top+grpConfigFile.Height+10;
Width:=grpConfigFile.Width;
Height:=200;
Caption:='Custom options';
Caption:=lisCustomOptions2;
end;
memCustomOptions := TMemo.Create(Self);
@ -4286,7 +4285,7 @@ begin
with InhNoteLabel do begin
Name:='InhNoteLabel';
Parent:=InheritedPage;
Caption:='Additional compiler options inherited from packages';
Caption:=lisAdditionalCompilerOptionsInheritedFromPackages;
end;
InhTreeView:=TTreeView.Create(Self);
@ -4306,7 +4305,7 @@ begin
ReadOnly:=true;
WordWrap:=true;
ScrollBars:=ssAutoVertical;
Text:='Select a node';
Text:=lisSelectANode;
end;
end;
@ -4725,8 +4724,6 @@ end;
procedure TfrmCompilerOptions.SetupButtonBar;
begin
// Setup the Button Bar
Assert(False, 'Trace:Setting up compiler options button bar');
btnOK := TButton.Create(Self);
with btnOK do
begin

View File

@ -2189,7 +2189,7 @@ begin
with CompilerPathGroupBox do begin
Name:='CompilerPathGroupBox';
Parent:=NoteBook.Page[Page];
Caption:=dlgFpcPath;
Caption:=Format(dlgFpcPath,[GetDefaultCompilerFilename]);
OnResize:=@CompilerPathGroupBoxResize;
end;
@ -2197,12 +2197,9 @@ begin
with CompilerPathComboBox do begin
Name:='CompilerPathComboBox';
Parent:=CompilerPathGroupBox;
with Items do begin
BeginUpdate;
Add('/usr/bin/ppc386');
Add('/opt/fpc/ppc386');
EndUpdate;
end;
Items.BeginUpdate;
GetDefaultCompilerFilenames(Items);
Items.EndUpdate;
end;
CompilerPathButton:=TButton.Create(Self);
@ -3159,7 +3156,8 @@ begin
OpenDialog.Options:=OpenDialog.Options+[ofPathMustExist];
// set title
if Sender=CompilerPathButton then
OpenDialog.Title:=lisChooseCompilerPath
OpenDialog.Title:=
Format(lisChooseCompilerPath,[GetDefaultCompilerFilename])
else if Sender=MakePathButton then
OpenDialog.Title:=lisChooseMakePath
else

View File

@ -133,8 +133,9 @@ end;
---------------------------------------------------------------------------}
function FindDefaultCompilerPath: string;
begin
Result:=SearchFileInPath('ppc386','',{$IFDEF Ver1_0}GetEnv{$ELSE}FpGetEnv{$ENDIF}('PATH'),':',
[sffDontSearchInBasePath]);
Result:=SearchFileInPath(GetDefaultCompilerFilename,'',
{$IFDEF Ver1_0}GetEnv{$ELSE}FpGetEnv{$ENDIF}('PATH'),':',
[sffDontSearchInBasePath]);
end;
{---------------------------------------------------------------------------
@ -142,8 +143,9 @@ end;
---------------------------------------------------------------------------}
function FindDefaultMakePath: string;
begin
Result:=SearchFileInPath('make','',{$IFDEF Ver1_0}GetEnv{$ELSE}FpGetEnv{$ENDIF}('PATH'),':',
[sffDontSearchInBasePath]);
Result:=SearchFileInPath('make','',
{$IFDEF Ver1_0}GetEnv{$ELSE}FpGetEnv{$ENDIF}('PATH'),':',
[sffDontSearchInBasePath]);
end;
{---------------------------------------------------------------------------
@ -170,8 +172,8 @@ end;
procedure GetDefaultCompilerFilenames(List: TStrings);
begin
List.Add('/usr/bin/ppc386');
List.Add('/opt/fpc/ppc386');
List.Add('/usr/bin/'+GetDefaultCompilerFilename);
List.Add('/opt/fpc/'+GetDefaultCompilerFilename);
end;
procedure GetDefaultMakeFilenames(List: TStrings);

View File

@ -109,7 +109,7 @@ end;
function FindDefaultCompilerPath: string;
begin
Result:=SearchFileInPath('ppc386.exe','',GetEnv('PATH'),';',
Result:=SearchFileInPath(GetDefaultCompilerFilename,'',GetEnv('PATH'),';',
[sffDontSearchInBasePath]);
if Result<>'' then exit;
Result:='c:\pp\bin\win32\ppc386.exe';
@ -192,6 +192,9 @@ end;
{
$Log$
Revision 1.22 2004/08/13 12:28:01 mattias
replaced ppc386 with platform independent name
Revision 1.21 2004/07/30 15:34:09 vincents
make executable location is a environment option now.

View File

@ -40,8 +40,9 @@ unit InitialSetupDlgs;
interface
uses
Classes, SysUtils, Forms, Controls, Buttons, Dialogs, EnvironmentOpts,
FileCtrl, StdCtrls, ComCtrls, LazConf, IDEProcs;
Classes, SysUtils, Forms, Controls, Buttons, Dialogs, FileCtrl, StdCtrls,
ComCtrls,
LazarusIDEStrConsts, LazConf, EnvironmentOpts, IDEProcs;
procedure SetupCompilerFilename(var InteractiveSetup: boolean);
procedure SetupFPCSourceDirectory(var InteractiveSetup: boolean);
@ -62,26 +63,24 @@ begin
if not FileIsExecutable(CurCompilerFilename) then begin
if not InteractiveSetup then exit;
if CurCompilerFilename='' then begin
MessageDlg('Free Pascal Compiler not found',
'The Free Pascal compiler (filename: ppc386) was not found.'#13
+'It is recommended that you install fpc.',
MessageDlg(lisFreePascalCompilerNotFound,
Format(lisTheFreePascalCompilerFilenameWasNotFoundItIsRecomm, [
GetDefaultCompilerFilename, #13]),
mtWarning,[mbIgnore],0);
end else begin
DefaultCompPath:=FindDefaultCompilerPath;
if CompareFilenames(DefaultCompPath,CurCompilerFilename)<>0 then begin
r:=MessageDlg('Invalid Compiler Filename',
'The current compiler filename "'+CurCompilerFilename+'"'#13
+'is not a valid executable.'#13
+'Choose Ok to choose the default "'+DefaultCompPath+'".'#13
+'Otherwise check Environment -> Environment Options -> Files',
r:=MessageDlg(lisInvalidCompilerFilename,
Format(lisTheCurrentCompilerFilenameIsNotAValidExecutableCho, ['"',
CurCompilerFilename, '"', #13, #13, '"', DefaultCompPath, '"', #13]
),
mtWarning,[mbOk,mbIgnore],0);
if r=mrOk then
CurCompilerFilename:=DefaultCompPath;
end else begin
MessageDlg('Invalid Compiler Filename',
'The current compiler filename "'+CurCompilerFilename+'"'#13
+'is not a valid executable.'#13
+'Plz check Environment -> Environment Options -> Files',
MessageDlg(lisInvalidCompilerFilename,
Format(lisTheCurrentCompilerFilenameIsNotAValidExecutablePlz, ['"',
CurCompilerFilename, '"', #13, #13]),
mtWarning,[mbIgnore],0);
end;
end;
@ -103,28 +102,23 @@ begin
or (not FileIsExecutable(EnvironmentOptions.CompilerFilename)) then
exit;
if CurFPCSrcDir='' then begin
MessageDlg('Free Pascal Sources not found',
'The Free Pascal source directory was not found.'#13
+'Some code functions will not work.'#13
+'It is recommended that you install it and set the path'#13
+'Environment -> Environment Options -> Files',
MessageDlg(lisFreePascalSourcesNotFound,
Format(lisTheFreePascalSourceDirectoryWasNotFoundSomeCodeFun, [#13,
#13, #13]),
mtWarning,[mbIgnore],0);
end else begin
DefaultFPCSrcDir:=FindDefaultFPCSrcDirectory;
if CompareFilenames(DefaultFPCSrcDir,CurFPCSrcDir)<>0 then begin
r:=MessageDlg('Invalid Free Pascal source directory',
'The current Free Pascal source directory "'+CurFPCSrcDir+'"'#13
+'does not look correct.'#13
+'Choose Ok to choose the default "'+DefaultFPCSrcDir+'".'#13
+'Otherwise check Environment -> Environment Options -> Files',
r:=MessageDlg(lisInvalidFreePascalSourceDirectory,
Format(lisTheCurrentFreePascalSourceDirectoryDoesNotLookCorr, ['"',
CurFPCSrcDir, '"', #13, #13, '"', DefaultFPCSrcDir, '"', #13]),
mtWarning,[mbOk,mbIgnore],0);
if r=mrOk then
CurFPCSrcDir:=DefaultFPCSrcDir;
end else begin
MessageDlg('Invalid Free Pascal source directory',
'The current Free Pascal source directory "'+CurFPCSrcDir+'"'#13
+'does not look correct.'#13
+'Check Environment -> Environment Options -> Files',
MessageDlg(lisInvalidFreePascalSourceDirectory,
Format(lisTheCurrentFreePascalSourceDirectoryDoesNotLookCorr2, ['"',
CurFPCSrcDir, '"', #13, #13]),
mtWarning,[mbIgnore],0);
end;
end;
@ -144,29 +138,23 @@ begin
if not CheckLazarusDirectory(CurLazDir) then begin
if not InteractiveSetup then exit;
if CurLazDir='' then begin
MessageDlg('Lazarus directory not found',
'The Lazarus directory was not found.'#13
+'You will not be able to create LCL applications.'#13
+'Plz check Environment -> Environment Options -> Files',
MessageDlg(lisLazarusDirectoryNotFound,
Format(lisTheLazarusDirectoryWasNotFoundYouWillNotBeAbleToCr, [#13, #13]
),
mtWarning,[mbIgnore],0);
end else begin
DefaultLazDir:=ProgramDirectory;
if CompareFilenames(DefaultLazDir,CurLazDir)<>0 then begin
r:=MessageDlg('Lazarus directory not found',
'The current Lazarus directory "'+CurLazDir+'"'#13
+'does not look correct.'#13
+'Without it You will not be able to create LCL applications.'#13
+'Choose Ok to choose the default "'+DefaultLazDir+'".'#13
+'Otherwise check Environment -> Environment Options -> Files',
r:=MessageDlg(lisLazarusDirectoryNotFound,
Format(lisTheCurrentLazarusDirectoryDoesNotLookCorrectWithou, ['"',
CurLazDir, '"', #13, #13, #13, '"', DefaultLazDir, '"', #13]),
mtWarning,[mbOk,mbIgnore],0);
if r=mrOk then
CurLazDir:=DefaultLazDir;
end else begin
MessageDlg('Lazarus directory not found',
'The current Lazarus directory "'+CurLazDir+'"'#13
+'does not look correct.'#13
+'Without it You will not be able to create LCL applications.'#13
+'Check Environment -> Environment Options -> Files',
MessageDlg(lisLazarusDirectoryNotFound,
Format(lisTheCurrentLazarusDirectoryDoesNotLookCorrectWithou2, ['"',
CurLazDir, '"', #13, #13, #13]),
mtWarning,[mbIgnore],0);
end;
end;

View File

@ -480,7 +480,7 @@ resourcestring
lisSelectDFMFiles = 'Select Delphi form files (*.dfm)';
lisChooseDirectory = 'Choose directory';
lisChooseLazarusSourceDirectory = 'Choose Lazarus Directory';
lisChooseCompilerPath = 'Choose compiler filename (ppc386)';
lisChooseCompilerPath = 'Choose compiler filename (%s)';
lisChooseFPCSourceDir = 'Choose FPC source directory';
lisChooseMakePath = 'Choose make path';
lisChooseDebuggerPath = 'Choose debugger filename';
@ -634,7 +634,7 @@ resourcestring
dlgMaxRecentProjs = 'Max recent project files';
dlgQOpenLastPrj = 'Open last project at start';
dlgLazarusDir = 'Lazarus directory (default for all projects)';
dlgFpcPath = 'Compiler path (ppc386)';
dlgFpcPath = 'Compiler path (%s)';
dlgFpcSrcPath = 'FPC source directory';
dlgMakePath = 'Make path';
dlgDebugType = 'Debugger type and path';
@ -837,9 +837,19 @@ resourcestring
dlgCOOther = 'Other';
dlgCOInherited = 'Inherited';
dlgCOCompilation = 'Compilation';
lisBrowseForCompiler = 'Browse for Compiler (%s)';
lisUnitOutputDirectory = 'Unit Output directory';
lisSelectANode = 'Select a node';
dlgShowCompilerOptions = 'Show compiler options';
dlgCOOpts = 'Options: ';
dlgCOStyle = 'Style:';
lisNoCompilerOptionsInherited = 'No compiler options inherited.';
lisunitPath = 'unit path';
lisincludePath = 'include path';
lisobjectPath = 'object path';
lislibraryPath = 'library path';
lislinkerOptions = 'linker options';
liscustomOptions = 'custom options';
dlgCOAsIs = 'As-Is';
dlgSymantecChecking = 'Symantec Checking:';
dlgDelphi2Ext = 'Delphi 2 Extensions';
@ -910,6 +920,7 @@ resourcestring
dlgConfigFiles = 'Config Files:';
dlgUseFpcCfg = 'Use Compiler Config File (fpc.cfg)';
dlgUseAdditionalConfig = 'Use Additional Compiler Config File';
lisCustomOptions2 = 'Custom options';
dlgStopAfterNrErr = 'Stop after number of errors:';
dlgOtherUnitFiles = 'Other Unit Files (Delimiter is semicolon):';
dlgCOIncFiles = 'Include Files:';
@ -920,6 +931,8 @@ resourcestring
lisCOSkipCallingCompiler = 'Skip calling Compiler';
lisCOExecuteAfter = 'Execute after';
lisCOExecuteBefore = 'Execute before';
lisAdditionalCompilerOptionsInheritedFromPackages = 'Additional compiler '
+'options inherited from packages';
lisCOCommand = 'Command:';
lisCOScanForFPCMessages = 'Scan for FPC messages';
lisCOScanForMakeMessages = 'Scan for Make messages';
@ -1455,8 +1468,8 @@ resourcestring
lisCodeToolsDefsCreateDefinesForFreePascalCompiler = 'Create Defines for '
+'Free Pascal Compiler';
lisCodeToolsDefsThePathToTheFreePascalCompilerForExample = 'The '
+'path to the free pascal compiler.%s For example %s/usr/bin/ppc386 -n%s '
+'or %s/usr/local/bin/fpc @/etc/11fpc.cfg%s.';
+'path to the free pascal compiler.%s For example %s/usr/bin/%s -n%s '
+'or %s/usr/local/bin/fpc @/etc/fpc.cfg%s.';
lisCodeToolsDefsCreateDefinesForFreePascalCVSSources = 'Create Defines for '
+'Free Pascal CVS Sources';
lisCodeToolsDefsTheFreePascalCVSSourceDir = 'The Free Pascal CVS source '
@ -2442,6 +2455,44 @@ resourcestring
lisProcedureWithInterface = 'Procedure with interface';
lisSubProcedure = 'Sub Procedure';
lisSubProcedureOnSameLevel = 'Sub Procedure on same level';
lisFreePascalCompilerNotFound = 'Free Pascal Compiler not found';
lisTheFreePascalCompilerFilenameWasNotFoundItIsRecomm = 'The Free Pascal '
+'compiler (filename: %s) was not found.%sIt is recommended that you '
+'install fpc.';
lisInvalidCompilerFilename = 'Invalid Compiler Filename';
lisTheCurrentCompilerFilenameIsNotAValidExecutablePlz = 'The current '
+'compiler filename %s%s%s%sis not a valid executable.%sPlz check '
+'Environment -> Environment Options -> Files';
lisFreePascalSourcesNotFound = 'Free Pascal Sources not found';
lisTheFreePascalSourceDirectoryWasNotFoundSomeCodeFun = 'The Free Pascal '
+'source directory was not found.%sSome code functions will not work.%sIt '
+'is recommended that you install it and set the path%sEnvironment -> '
+'Environment Options -> Files';
lisInvalidFreePascalSourceDirectory = 'Invalid Free Pascal source directory';
lisTheCurrentFreePascalSourceDirectoryDoesNotLookCorr2 = 'The current Free '
+'Pascal source directory %s%s%s%sdoes not look correct.%sCheck '
+'Environment -> Environment Options -> Files';
lisLazarusDirectoryNotFound = 'Lazarus directory not found';
lisTheCurrentLazarusDirectoryDoesNotLookCorrectWithou2 = 'The current '
+'Lazarus directory %s%s%s%sdoes not look correct.%sWithout it You will '
+'not be able to create LCL applications.%sCheck Environment -> '
+'Environment Options -> Files';
lisTheCurrentLazarusDirectoryDoesNotLookCorrectWithou = 'The current '
+'Lazarus directory %s%s%s%sdoes not look correct.%sWithout it You will '
+'not be able to create LCL applications.%sChoose Ok to choose the '
+'default %s%s%s.%sOtherwise check Environment -> Environment Options -> '
+'Files';
lisTheLazarusDirectoryWasNotFoundYouWillNotBeAbleToCr = 'The Lazarus '
+'directory was not found.%sYou will not be able to create LCL '
+'applications.%sPlz check Environment -> Environment Options -> Files';
lisTheCurrentFreePascalSourceDirectoryDoesNotLookCorr = 'The current Free '
+'Pascal source directory %s%s%s%sdoes not look correct.%sChoose Ok to '
+'choose the default %s%s%s.%sOtherwise check Environment -> Environment '
+'Options -> Files';
lisTheCurrentCompilerFilenameIsNotAValidExecutableCho = 'The current '
+'compiler filename %s%s%s%sis not a valid executable.%sChoose Ok to '
+'choose the default %s%s%s.%sOtherwise check Environment -> Environment '
+'Options -> Files';
implementation
end.

View File

@ -85,7 +85,8 @@ uses
procedure GetDefaultCompilerFilenames(List: TStrings);
procedure GetDefaultMakeFilenames(List: TStrings);
procedure GetDefaultTestBuildDirs(List: TStrings);
function GetDefaultCompilerFilename: string;
function GetDefaultLCLWidgetType: string;
function GetDefaultTargetCPU: string;
function GetDefaultTargetOS: string;
@ -111,6 +112,20 @@ begin
{$ENDIF}
end;
function GetDefaultCompilerFilename: string;
begin
{$IFDEF CPUi386}
{$IFDEF windows}
Result:='ppc386.exe';
{$ELSE}
Result:='ppc386';
{$ENDIF}
{$ENDIF}
{$IFDEF CPUPowerPC}
Result:='ppcppc';
{$ENDIF}
end;
function CheckFPCSourceDir(const ADirectory: string): boolean;
var
Dir: String;
@ -157,6 +172,9 @@ end.
{
$Log$
Revision 1.28 2004/08/13 12:28:01 mattias
replaced ppc386 with platform independent name
Revision 1.27 2004/08/06 07:06:09 mattias
changed cpu target ppc to powerpc
@ -218,7 +236,7 @@ end.
MG: improved default make path for build lazarus
Revision 1.7 2002/07/01 05:11:34 lazarus
MG: improved default path to lazarus and ppc386
MG: improved default path to lazarus and ppc386/ppcppc
Revision 1.6 2002/05/10 06:57:42 lazarus
MG: updated licenses

View File

@ -3,7 +3,7 @@
MsgView.pp - compiler message view
----------------------------------
TMessagesView is responsible for displaying the
PPC386 compiler messages.
fpc/make/codetools messages.
Initial Revision : Mon Apr 17th 2000