Updated installer to support new Linux metamod filename and Mac OS X binaries (bug 5601, r=dvander).

Former-commit-id: 0be36403602c16adaddc84881c9613b3f0f9c1ff
This commit is contained in:
Scott Ehlert 2013-02-13 01:20:11 -06:00
parent b318509687
commit 99411af951
6 changed files with 213 additions and 224 deletions

View File

@ -1,40 +1,40 @@
-$A8 -$A8
-$B- -$B-
-$C+ -$C+
-$D+ -$D+
-$E- -$E-
-$F- -$F-
-$G+ -$G+
-$H+ -$H+
-$I+ -$I+
-$J- -$J-
-$K- -$K-
-$L+ -$L+
-$M- -$M-
-$N+ -$N+
-$O+ -$O+
-$P+ -$P+
-$Q- -$Q-
-$R- -$R-
-$S- -$S-
-$T- -$T-
-$U- -$U-
-$V+ -$V+
-$W- -$W-
-$X+ -$X+
-$YD -$YD
-$Z1 -$Z1
-GD -GD
-cg -cg
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-H+ -H+
-W+ -W+
-M -M
-$M16384,1048576 -$M16384,1048576
-K$00400000 -K$00400000
-LE"c:\program files\borland\delphi7\Projects\Bpl" -LE"c:\program files (x86)\delphi7se\Projects\Bpl"
-LN"c:\program files\borland\delphi7\Projects\Bpl" -LN"c:\program files (x86)\delphi7se\Projects\Bpl"
-DmadExcept -DmadExcept
-w-UNSAFE_TYPE -w-UNSAFE_TYPE
-w-UNSAFE_CODE -w-UNSAFE_CODE
-w-UNSAFE_CAST -w-UNSAFE_CAST

View File

@ -1,139 +1,132 @@
[FileVersion] [FileVersion]
Version=7.0 Version=7.0
[Compiler] [Compiler]
A=8 A=8
B=0 B=0
C=1 C=1
D=1 D=1
E=0 E=0
F=0 F=0
G=1 G=1
H=1 H=1
I=1 I=1
J=0 J=0
K=0 K=0
L=1 L=1
M=0 M=0
N=1 N=1
O=1 O=1
P=1 P=1
Q=0 Q=0
R=0 R=0
S=0 S=0
T=0 T=0
U=0 U=0
V=1 V=1
W=0 W=0
X=1 X=1
Y=1 Y=1
Z=1 Z=1
ShowHints=1 ShowHints=1
ShowWarnings=1 ShowWarnings=1
UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
NamespacePrefix= NamespacePrefix=
SymbolDeprecated=1 SymbolDeprecated=1
SymbolLibrary=1 SymbolLibrary=1
SymbolPlatform=1 SymbolPlatform=1
UnitLibrary=1 UnitLibrary=1
UnitPlatform=1 UnitPlatform=1
UnitDeprecated=1 UnitDeprecated=1
HResultCompat=1 HResultCompat=1
HidingMember=1 HidingMember=1
HiddenVirtual=1 HiddenVirtual=1
Garbage=1 Garbage=1
BoundsError=1 BoundsError=1
ZeroNilCompat=1 ZeroNilCompat=1
StringConstTruncated=1 StringConstTruncated=1
ForLoopVarVarPar=1 ForLoopVarVarPar=1
TypedConstVarPar=1 TypedConstVarPar=1
AsgToTypedConst=1 AsgToTypedConst=1
CaseLabelRange=1 CaseLabelRange=1
ForVariable=1 ForVariable=1
ConstructingAbstract=1 ConstructingAbstract=1
ComparisonFalse=1 ComparisonFalse=1
ComparisonTrue=1 ComparisonTrue=1
ComparingSignedUnsigned=1 ComparingSignedUnsigned=1
CombiningSignedUnsigned=1 CombiningSignedUnsigned=1
UnsupportedConstruct=1 UnsupportedConstruct=1
FileOpen=1 FileOpen=1
FileOpenUnitSrc=1 FileOpenUnitSrc=1
BadGlobalSymbol=1 BadGlobalSymbol=1
DuplicateConstructorDestructor=1 DuplicateConstructorDestructor=1
InvalidDirective=1 InvalidDirective=1
PackageNoLink=1 PackageNoLink=1
PackageThreadVar=1 PackageThreadVar=1
ImplicitImport=1 ImplicitImport=1
HPPEMITIgnored=1 HPPEMITIgnored=1
NoRetVal=1 NoRetVal=1
UseBeforeDef=1 UseBeforeDef=1
ForLoopVarUndef=1 ForLoopVarUndef=1
UnitNameMismatch=1 UnitNameMismatch=1
NoCFGFileFound=1 NoCFGFileFound=1
MessageDirective=1 MessageDirective=1
ImplicitVariants=1 ImplicitVariants=1
UnicodeToLocale=1 UnicodeToLocale=1
LocaleToUnicode=1 LocaleToUnicode=1
ImagebaseMultiple=1 ImagebaseMultiple=1
SuspiciousTypecast=1 SuspiciousTypecast=1
PrivatePropAccessor=1 PrivatePropAccessor=1
UnsafeType=0 UnsafeType=0
UnsafeCode=0 UnsafeCode=0
UnsafeCast=0 UnsafeCast=0
[Linker] [Linker]
MapFile=3 MapFile=3
OutputObjs=0 OutputObjs=0
ConsoleApp=1 ConsoleApp=1
DebugInfo=0 DebugInfo=0
RemoteSymbols=0 RemoteSymbols=0
MinStackSize=16384 MinStackSize=16384
MaxStackSize=1048576 MaxStackSize=1048576
ImageBase=4194304 ImageBase=4194304
ExeDescription= ExeDescription=
[Directories] [Directories]
OutputDir= OutputDir=
UnitOutputDir= UnitOutputDir=
PackageDLLOutputDir= PackageDLLOutputDir=
PackageDCPOutputDir= PackageDCPOutputDir=
SearchPath= SearchPath=
Packages=vcl;rtl;vclx;vclie;xmlrtl;inetdbbde;inet;inetdbxpress;VclSmp;dbrtl;dbexpress;vcldb;dsnap;dbxcds;inetdb;bdertl;vcldbx;adortl;teeui;teedb;tee;ibxpress;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOffice2k;JvStdCtrlsD7R;JvAppFrmD7R;JvCoreD7R;JvBandsD7R;JvBDED7R;JvDBD7R;JvDlgsD7R;JvCmpD7R;JvCryptD7R;JvCtrlsD7R;JvCustomD7R;JvDockingD7R;JvDotNetCtrlsD7R;JvEDID7R;qrpt;JvGlobusD7R;JvHMID7R;JvInspectorD7R;JvInterpreterD7R;JvJansD7R;JvManagedThreadsD7R;JvMMD7R;JvNetD7R;JvPageCompsD7R;JvPluginD7R;JvPrintPreviewD7R;JvSystemD7R;JvTimeFrameworkD7R;JvUIBD7R;JvValidatorsD7R;JvWizardD7R;JvXPCtrlsD7R;DelphiX_for7;Indy70;DJcl;tb2k_d7;FlatStyle_D5;scited7;mxFlatPack_D7;mbXPLib Packages=vcl;rtl;vclx;vclie;xmlrtl;inetdbbde;inet;inetdbxpress;VclSmp;dbrtl;dbexpress;vcldb;dsnap;dbxcds;inetdb;bdertl;vcldbx;adortl;teeui;teedb;tee;ibxpress;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOffice2k;JvStdCtrlsD7R;JvAppFrmD7R;JvCoreD7R;JvBandsD7R;JvBDED7R;JvDBD7R;JvDlgsD7R;JvCmpD7R;JvCryptD7R;JvCtrlsD7R;JvCustomD7R;JvDockingD7R;JvDotNetCtrlsD7R;JvEDID7R;qrpt;JvGlobusD7R;JvHMID7R;JvInspectorD7R;JvInterpreterD7R;JvJansD7R;JvManagedThreadsD7R;JvMMD7R;JvNetD7R;JvPageCompsD7R;JvPluginD7R;JvPrintPreviewD7R;JvSystemD7R;JvTimeFrameworkD7R;JvUIBD7R;JvValidatorsD7R;JvWizardD7R;JvXPCtrlsD7R;DelphiX_for7;Indy70;DJcl;tb2k_d7;FlatStyle_D5;scited7;mxFlatPack_D7;mbXPLib
Conditionals=madExcept Conditionals=madExcept
DebugSourceDirs= DebugSourceDirs=
UsePackages=0 UsePackages=0
[Parameters] [Parameters]
RunParams=-debug RunParams=-debug
HostApplication= HostApplication=
Launcher= Launcher=
UseLauncher=0 UseLauncher=0
DebugCWD= DebugCWD=
[Language] [Version Info]
ActiveLang= IncludeVerInfo=0
ProjectLang= AutoIncBuild=0
RootDir= MajorVer=1
[Version Info] MinorVer=0
IncludeVerInfo=0 Release=0
AutoIncBuild=0 Build=0
MajorVer=1 Debug=0
MinorVer=0 PreRelease=0
Release=0 Special=0
Build=0 Private=0
Debug=0 DLL=0
PreRelease=0 Locale=1031
Special=0 CodePage=1252
Private=0 [Version Info Keys]
DLL=0 CompanyName=
Locale=1031 FileDescription=
CodePage=1252 FileVersion=1.0.0.0
[Version Info Keys] InternalName=
CompanyName= LegalCopyright=
FileDescription= LegalTrademarks=
FileVersion=1.0.0.0 OriginalFilename=
InternalName= ProductName=
LegalCopyright= ProductVersion=1.0.0.0
LegalTrademarks= Comments=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[HistoryLists\hlUnitAliases]
Count=1
Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;

Binary file not shown.

View File

@ -6,7 +6,7 @@ uses SysUtils, Classes, Windows, Graphics, Forms, ShellAPI, Controls, Messages,
TlHelp32, IdFTPCommon, ComCtrls, Dialogs, JclFileUtils; TlHelp32, IdFTPCommon, ComCtrls, Dialogs, JclFileUtils;
type TMod = (modNone, modCS, modDoD, modTFC, modNS, modTS, modESF); type TMod = (modNone, modCS, modDoD, modTFC, modNS, modTS, modESF);
type TOS = (osWindows, osLinux32{, osLinux64}); type TOS = (osWindows, osLinux, osMac);
procedure AddStatus(Text: String; Color: TColor; ShowTime: Boolean = True); procedure AddStatus(Text: String; Color: TColor; ShowTime: Boolean = True);
procedure AddDone(Additional: String = ''); procedure AddDone(Additional: String = '');
@ -221,25 +221,25 @@ begin
osWindows: begin osWindows: begin
if ExtractFileExt(eFile) = '.so' then if ExtractFileExt(eFile) = '.so' then
Result := True; Result := True;
if ExtractFileExt(eFile) = '.dylib' then
Result := True;
end; end;
osLinux32: begin osLinux: begin
if ExtractFileExt(eFile) = '.dll' then if ExtractFileExt(eFile) = '.dll' then
Result := True; Result := True;
if ExtractFileExt(eFile) = '.exe' then if ExtractFileExt(eFile) = '.exe' then
Result := True; Result := True;
if ExtractFileExt(eFile) = '.dylib' then
if Pos('_amd64', ExtractFileName(eFile)) <> 0 then
Result := True; Result := True;
end; end;
{osLinux64: begin osMac: begin
if ExtractFileExt(eFile) = '.dll' then if ExtractFileExt(eFile) = '.dll' then
Result := True; Result := True;
if ExtractFileExt(eFile) = '.exe' then if ExtractFileExt(eFile) = '.exe' then
Result := True; Result := True;
if ExtractFileExt(eFile) = '.so' then
if Pos('_i386', ExtractFileName(eFile)) <> 0 then
Result := True; Result := True;
end;} end;
end; end;
end; end;
@ -380,10 +380,8 @@ begin
eStr[i] := '//' + eStr[i]; eStr[i] := '//' + eStr[i];
end; end;
eStr.Add('gamedll "addons\metamod\dlls\metamod.dll"'); eStr.Add('gamedll "addons\metamod\dlls\metamod.dll"');
//if OS = osLinux64 then eStr.Add('gamedll_linux "addons/metamod/dlls/metamod.so"');
// eStr.Add('gamedll_linux "addons/metamod/dlls/metamod_amd64.so"') eStr.Add('gamedll_osx "addons/metamod/dlls/metamod.dylib"');
//else
eStr.Add('gamedll_linux "addons/metamod/dlls/metamod_i386.so"');
FileSetAttr(ePath + 'liblist.gam', 0); FileSetAttr(ePath + 'liblist.gam', 0);
eStr.SaveToFile(ePath + 'liblist.gam'); eStr.SaveToFile(ePath + 'liblist.gam');
FileSetAttr(ePath + 'liblist.gam', faReadOnly); // important for listen servers FileSetAttr(ePath + 'liblist.gam', faReadOnly); // important for listen servers
@ -516,13 +514,13 @@ begin
{ metamod } { metamod }
AddStatus('Copying Metamod...', clBlack); AddStatus('Copying Metamod...', clBlack);
FileCopy(ePath + 'addons\amxmodx\dlls\metamod.dll', ePath + '\addons\metamod\dlls\metamod.dll', CopyConfig, False); FileCopy(ePath + 'addons\amxmodx\dlls\metamod.dll', ePath + '\addons\metamod\dlls\metamod.dll', CopyConfig, False);
FileCopy(ePath + '\addons\amxmodx\dlls\metamod_i386.so', ePath + '\addons\metamod\dlls\metamod_i386.so', CopyConfig, False); FileCopy(ePath + '\addons\amxmodx\dlls\metamod.so', ePath + '\addons\metamod\dlls\metamod.so', CopyConfig, False);
FileCopy(ePath + '\addons\amxmodx\dlls\metamod_amd64.so', ePath + '\addons\metamod\dlls\metamod_amd64.so', CopyConfig, False); FileCopy(ePath + '\addons\amxmodx\dlls\metamod.dylib', ePath + '\addons\metamod\dlls\metamod.dylib', CopyConfig, False);
try try
if FileExists(ePath + '\addons\amxmodx\dlls\metamod.dll') then DeleteFile(PChar(ePath + '\addons\amxmodx\dlls\metamod.dll')); if FileExists(ePath + '\addons\amxmodx\dlls\metamod.dll') then DeleteFile(PChar(ePath + '\addons\amxmodx\dlls\metamod.dll'));
if FileExists(ePath + '\addons\amxmodx\dlls\metamod_amd64.so') then DeleteFile(PChar(ePath + '\addons\amxmodx\dlls\metamod_amd64.so')); if FileExists(ePath + '\addons\amxmodx\dlls\metamod.so') then DeleteFile(PChar(ePath + '\addons\amxmodx\dlls\metamod.so'));
if FileExists(ePath + '\addons\amxmodx\dlls\metamod_i386.so') then DeleteFile(PChar(ePath + '\addons\amxmodx\dlls\metamod_i386.so')); if FileExists(ePath + '\addons\amxmodx\dlls\metamod.dylib') then DeleteFile(PChar(ePath + '\addons\amxmodx\dlls\metamod.dylib'));
finally finally
UpdatePluginsIni := True; UpdatePluginsIni := True;
eStr := TStringList.Create; eStr := TStringList.Create;
@ -533,12 +531,12 @@ begin
if (Pos('addons\amxmodx\dlls\amxmodx_mm.dll', eStr.Text) <> 0) then if (Pos('addons\amxmodx\dlls\amxmodx_mm.dll', eStr.Text) <> 0) then
UpdatePluginsIni := False; UpdatePluginsIni := False;
end end
else if OS = osLinux32 then begin else if OS = osLinux then begin
if (Pos('addons/amxmodx/dlls/amxmodx_mm_i386.so', eStr.Text) <> 0) then if (Pos('addons/amxmodx/dlls/amxmodx_mm_i386.so', eStr.Text) <> 0) then
UpdatePluginsIni := False; UpdatePluginsIni := False;
end end
else begin else begin
if (Pos('addons/amxmodx/dlls/amxmodx_mm_amd64.so', eStr.Text) <> 0) then if (Pos('addons/amxmodx/dlls/amxmodx_mm.dylib', eStr.Text) <> 0) then
UpdatePluginsIni := False; UpdatePluginsIni := False;
end; end;
end end
@ -555,7 +553,7 @@ begin
eStr.Add('; Enable this instead for binary logging'); eStr.Add('; Enable this instead for binary logging');
eStr.Add('; win32 addons\amxmodx\dlls\amxmodx_bl_mm.dll'); eStr.Add('; win32 addons\amxmodx\dlls\amxmodx_bl_mm.dll');
end end
else if OS = osLinux32 then begin else if OS = osLinux then begin
eStr.Add(''); eStr.Add('');
eStr.Add('linux addons/amxmodx/dlls/amxmodx_mm_i386.so'); eStr.Add('linux addons/amxmodx/dlls/amxmodx_mm_i386.so');
eStr.Add('; Enable this instead for binary logging'); eStr.Add('; Enable this instead for binary logging');
@ -563,9 +561,9 @@ begin
end end
else begin else begin
eStr.Add(''); eStr.Add('');
eStr.Add('linux addons/amxmodx/dlls/amxmodx_mm_amd64.so'); eStr.Add('osx addons/amxmodx/dlls/amxmodx_mm.dylib');
eStr.Add('; Enable this instead for binary logging'); eStr.Add('; Enable this instead for binary logging');
eStr.Add('; linux addons/amxmodx/dlls/amxmodx_bl_mm_amd64.so'); eStr.Add('; osx addons/amxmodx/dlls/amxmodx_bl_mm.dylib');
end; end;
end; end;
eStr.SaveToFile(ePath + 'addons\metamod\plugins.ini'); eStr.SaveToFile(ePath + 'addons\metamod\plugins.ini');
@ -710,10 +708,10 @@ begin
end; end;
if frmMain.optWindows.Checked then if frmMain.optWindows.Checked then
eStr.Add('gamedll "addons\metamod\dlls\metamod.dll"') eStr.Add('gamedll "addons\metamod\dlls\metamod.dll"')
else if frmMain.optLinux32.Checked then else if frmMain.optLinux.Checked then
eStr.Add('gamedll_linux "addons/metamod/dlls/metamod_i386.so"') eStr.Add('gamedll_linux "addons/metamod/dlls/metamod.so"')
else else
eStr.Add('gamedll_linux "addons/metamod/dlls/metamod_amd64.so"'); eStr.Add('gamedll_osx "addons/metamod/dlls/metamod.dylib"');
FileSetAttr(ExtractFilePath(Application.ExeName) + 'temp\liblist.gam', 0); FileSetAttr(ExtractFilePath(Application.ExeName) + 'temp\liblist.gam', 0);
eStr.SaveToFile(ExtractFilePath(Application.ExeName) + 'temp\liblist.gam'); eStr.SaveToFile(ExtractFilePath(Application.ExeName) + 'temp\liblist.gam');
end; end;

View File

@ -5733,7 +5733,7 @@ object frmMain: TfrmMain
BorderColor = clBtnShadow BorderColor = clBtnShadow
Flat = True Flat = True
ShowBorder = True ShowBorder = True
Version = '1.26' Version = '1.24'
end end
object frbAgree: TFlatRadioButton object frbAgree: TFlatRadioButton
Left = 10 Left = 10
@ -6391,21 +6391,20 @@ object frmMain: TfrmMain
TabOrder = 0 TabOrder = 0
TabStop = True TabStop = True
end end
object optLinux32: TFlatRadioButton object optLinux: TFlatRadioButton
Left = 171 Left = 187
Top = 5 Top = 5
Width = 84 Width = 46
Height = 14 Height = 14
Caption = 'Linux (32-bit)' Caption = 'Linux'
TabOrder = 1 TabOrder = 1
end end
object optLinux64: TFlatRadioButton object optMac: TFlatRadioButton
Left = 353 Left = 369
Top = 5 Top = 5
Width = 82 Width = 64
Height = 14 Height = 14
Caption = 'Linux (64-bit)' Caption = 'Mac OS X'
Enabled = False
TabOrder = 2 TabOrder = 2
end end
end end
@ -6554,7 +6553,7 @@ object frmMain: TfrmMain
BorderColor = clBtnShadow BorderColor = clBtnShadow
Flat = True Flat = True
ShowBorder = True ShowBorder = True
Version = '1.26' Version = '1.24'
end end
end end
end end
@ -6758,7 +6757,6 @@ object frmMain: TfrmMain
object IdFTP: TIdFTP object IdFTP: TIdFTP
Intercept = IdLogFile Intercept = IdLogFile
MaxLineAction = maException MaxLineAction = maException
ReadTimeout = 0
RecvBufferSize = 1024 RecvBufferSize = 1024
SendBufferSize = 1024 SendBufferSize = 1024
OnWork = IdFTPWork OnWork = IdFTPWork

View File

@ -107,10 +107,10 @@ type
lblStep3: TLabel; lblStep3: TLabel;
pnlOS: TPanel; pnlOS: TPanel;
optWindows: TFlatRadioButton; optWindows: TFlatRadioButton;
optLinux32: TFlatRadioButton; optLinux: TFlatRadioButton;
lblStep5: TLabel; lblStep5: TLabel;
lblFTP: TLabel; lblFTP: TLabel;
optLinux64: TFlatRadioButton; optMac: TFlatRadioButton;
procedure jvwStepsCancelButtonClick(Sender: TObject); procedure jvwStepsCancelButtonClick(Sender: TObject);
procedure cmdCancelClick(Sender: TObject); procedure cmdCancelClick(Sender: TObject);
procedure cmdNextClick(Sender: TObject); procedure cmdNextClick(Sender: TObject);
@ -149,7 +149,7 @@ var
frmMain: TfrmMain; frmMain: TfrmMain;
gMultiAccount: Boolean; gMultiAccount: Boolean;
const VERSION = '1.8.0'; const VERSION = '1.8.2';
implementation implementation
@ -249,8 +249,8 @@ begin
trvDirectories.Enabled := False; trvDirectories.Enabled := False;
cmdConnect.Enabled := False; cmdConnect.Enabled := False;
optWindows.Enabled := False; optWindows.Enabled := False;
optLinux32.Enabled := False; optLinux.Enabled := False;
//optLinux64.Enabled := False; optMac.Enabled := False;
cboGameAddon.Enabled := False; cboGameAddon.Enabled := False;
// preinstall... // preinstall...
MakeDir(ExtractFilePath(Application.ExeName) + 'temp'); MakeDir(ExtractFilePath(Application.ExeName) + 'temp');
@ -281,10 +281,10 @@ begin
if optWindows.Checked then if optWindows.Checked then
eOS := osWindows eOS := osWindows
else //if optLinux32.Checked then else if optLinux.Checked then
eOS := osLinux32; eOS := osLinux
//else else
// eOS := osLinux64; eOS := osMac;
jspInstallProgress.Show; jspInstallProgress.Show;
frmMain.Height := 382; frmMain.Height := 382;