commit b07eba0758bc76cfaee77f94cf4213f83a70d46d
parent 38c907d0778d0d6fbbdea9bcfc800650696cc482
Author: jatinchowdhury18 <[email protected]>
Date: Fri, 13 May 2022 00:01:04 +0100
Set up separate 32-bit installer (#262)
Diffstat:
4 files changed, 184 insertions(+), 78 deletions(-)
diff --git a/Plugin/Installers/windows/ChowTapeModel_Install_Script.iss b/Plugin/Installers/windows/ChowTapeModel_Install_Script.iss
@@ -30,22 +30,18 @@ Name: "full"; Description: "Full installation"
Name: "custom"; Description: "Custom installation"; Flags: iscustom
[Components]
-Name: "VST3_64"; Description: "VST3 Plugin 64-bit"; Types: full
-Name: "VST_64"; Description: "VST Plugin 64-bit"; Types: full
-Name: "VST3_32"; Description: "VST3 Plugin 32-bit"; Types: full
-Name: "VST_32"; Description: "VST Plugin 32-bit"; Types: full
-Name: "CLAP_64"; Description: "Clap (64-bit, Clap 0.21)"; Types: full
+Name: "VST3_64"; Description: "VST3 Plugin"; Types: full
+Name: "VST_64"; Description: "VST Plugin"; Types: full
+Name: "CLAP_64"; Description: "Clap (Clap 0.21)"; Types: full
Name: "Standalone"; Description: "Standalone Plugin"; Types: full
Name: "AAX"; Description: "AAX Plugin"; Types: full
[Files]
-Source: "../../Bin/Win64/CHOWTapeModel.vst3"; Excludes: "*.aaxplugin"; DestDir: "{code:GetDir|VST3_64}"; Components: VST3_64; Flags: ignoreversion recursesubdirs createallsubdirs
-Source: "../../Bin/Win64/CHOWTapeModel.dll"; Excludes: "*.vst3,*.aaxplugin"; DestDir: "{code:GetDir|VST_64}"; Components: VST_64; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: "../../Bin/Win64/CHOWTapeModel.vst3"; Excludes: "*.aaxplugin,*.clap"; DestDir: "{code:GetDir|VST3_64}"; Components: VST3_64; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: "../../Bin/Win64/CHOWTapeModel.dll"; Excludes: "*.vst3,*.aaxplugin,*.clap"; DestDir: "{code:GetDir|VST_64}"; Components: VST_64; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "../../Bin/Win64/CHOWTapeModel.clap"; Excludes: "*.vst3,*.aaxplugin"; DestDir: "{commoncf64}\Clap"; Components: CLAP_64; Flags: ignoreversion recursesubdirs createallsubdirs
-Source: "../../Bin/Win32/CHOWTapeModel.vst3"; Excludes: "*.aaxplugin"; DestDir: "{code:GetDir|VST3_32}"; Components: VST3_32; Flags: ignoreversion recursesubdirs createallsubdirs
-Source: "../../Bin/Win32/CHOWTapeModel.dll"; Excludes: "*.vst3,*.aaxplugin"; DestDir: "{code:GetDir|VST_32}"; Components: VST_32; Flags: ignoreversion recursesubdirs createallsubdirs
-Source: "../../Bin/Win64/CHOWTapeModel.exe"; Excludes: "*.vst3,*.aaxplugin"; DestDir: "{code:GetDir|Standalone}"; Components: Standalone; Flags: ignoreversion recursesubdirs createallsubdirs
-Source: "../../Bin/Win64/CHOWTapeModel.aaxplugin"; Excludes: "*.vst3"; DestDir: "{code:GetDir|AAX}"; Components: AAX; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: "../../Bin/Win64/CHOWTapeModel.exe"; Excludes: "*.vst3,*.aaxplugin,*.clap"; DestDir: "{code:GetDir|Standalone}"; Components: Standalone; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: "../../Bin/Win64/CHOWTapeModel.aaxplugin"; Excludes: "*.vst3,*.clap"; DestDir: "{code:GetDir|AAX}"; Components: AAX; Flags: ignoreversion recursesubdirs createallsubdirs
[Icons]
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
@@ -55,8 +51,6 @@ var
AAXDirPage: TInputDirWizardPage;
Vst3_64DirPage: TinputDirWizardPage;
Vst_64DirPage: TinputDirWizardPage;
- Vst3_32DirPage: TinputDirWizardPage;
- Vst_32DirPage: TinputDirWizardPage;
StandaloneDirPage: TinputDirWizardPage;
procedure InitializeWizard;
@@ -92,28 +86,8 @@ begin
Vst_64DirPage.add('');
Vst_64DirPage.values[0] := ExpandConstant('{commoncf64}\VST');
- //VST3 32-bit Dir Page
- Vst3_32DirPage := CreateInputDirPage(Vst_64DirPage.ID,
- 'Select Install Location for VST3 32-bit', 'Where would you like to install the plugin?',
- 'VST3 32-bit plugin will be installed in the following folder.'#13#10#13#10 +
- 'To continue, click Next. If you would like to select a different folder, click Browse.',
- False, 'New Folder');
-
- Vst3_32DirPage.add('');
- Vst3_32DirPage.values[0] := ExpandConstant('{commoncf32}\VST3');
-
- //VST 32-bit Dir Page
- Vst_32DirPage := CreateInputDirPage(Vst3_32DirPage.ID,
- 'Select Install Location for VST 32-bit', 'Where would you like to install the plugin?',
- 'VST 32-bit plugin will be installed in the following folder.'#13#10#13#10 +
- 'To continue, click Next. If you would like to select a different folder, click Browse.',
- False, 'New Folder');
-
- Vst_32DirPage.add('');
- Vst_32DirPage.values[0] := ExpandConstant('{commoncf32}\VST');
-
//Standalone Dir Page
- StandaloneDirPage := CreateInputDirPage(Vst_32DirPage.ID,
+ StandaloneDirPage := CreateInputDirPage(Vst_64DirPage.ID,
'Select Install Location for Standalone', 'Where would you like to install the plugin?',
'Standalone plugin will be installed in the following folder.'#13#10#13#10 +
'To continue, click Next. If you would like to select a different folder, click Browse.',
@@ -157,18 +131,6 @@ begin
end
end
- else if (PageID = Vst3_32DirPage.ID) then
- begin
- Result := True;
- Log('Selected 3: ' + WizardSelectedComponents(False));
-
- if IsSelected ('vst3_32') then
- begin
- Log('Not Skipping');
- Result := False;
- end
- end
-
else if (PageID = Vst_64DirPage.ID) then
begin
Result := True;
@@ -180,18 +142,6 @@ begin
Result := False;
end
end
-
- else if (PageID = Vst_32DirPage.ID) then
- begin
- Result := True;
- Log('Selected 5: ' + WizardSelectedComponents(False));
-
- if IsSelected ('vst_32') then
- begin
- Log('Not Skipping');
- Result := False;
- end
- end
else if (PageID = StandaloneDirPage.ID) then
begin
@@ -211,12 +161,8 @@ begin
Result := AAXDirPage.values[0]
else if (Param = 'VST3_64') then
Result := Vst3_64DirPage.values[0]
- else if (Param = 'VST3_32') then
- Result := Vst3_32DirPage.values[0]
else if (Param = 'VST_64') then
Result := Vst_64DirPage.values[0]
- else if (Param = 'VST_32') then
- Result := Vst_32DirPage.values[0]
else if (Param = 'Standalone') then
Result := StandaloneDirPage.values[0]
end;
@@ -241,12 +187,6 @@ begin
if IsSelected('vst_64') then
S := S + Space + GetDir('VST_64') + ' (VST 64-bit)' + NewLine;
- if IsSelected('vst3_32') then
- S := S + Space + GetDir('VST3_32') + ' (VST3 32-bit)' + NewLine;
-
- if IsSelected('vst_32') then
- S := S + Space + GetDir('VST_32') + ' (VST 32-bit)' + NewLine;
-
if IsSelected('standalone') then
S := S + Space + GetDir('Standalone') + ' (Standalone)' + NewLine;
diff --git a/Plugin/Installers/windows/ChowTapeModel_Install_Script_32bit.iss b/Plugin/Installers/windows/ChowTapeModel_Install_Script_32bit.iss
@@ -0,0 +1,164 @@
+#define MyAppPublisher "Chowdhury DSP"
+#define MyAppURL "https://chowdsp.com"
+#define MyAppName "ChowTapeModel"
+#define MyAppVersion "##APPVERSION##"
+
+[Setup]
+AppName="{#MyAppName} {#MyAppVersion}"
+AppVersion={#MyAppVersion}
+AppVerName={#MyAppName}
+AppPublisher={#MyAppPublisher}
+AppPublisherURL={#MyAppURL}
+AppSupportURL={#MyAppURL}
+AppUpdatesURL={#MyAppURL}
+DefaultDirName={commonpf32}\Chowdhury DSP\
+DefaultGroupName={#MyAppName}
+DisableProgramGroupPage=yes
+DisableDirPage=yes
+DisableWelcomePage=no
+LicenseFile=../../../LICENSE
+OutputBaseFilename="ChowTapeModel-Win-32bit-{#MyAppVersion}"
+OutputDir=.
+SetupIconFile=chowtape.ico
+UninstallDisplayIcon=chowtape.ico
+UninstallFilesDir={commonpf32}\Chowdhury DSP\{#MyAppName}
+Compression=lzma
+SolidCompression=yes
+
+[Types]
+Name: "full"; Description: "Full installation"
+Name: "custom"; Description: "Custom installation"; Flags: iscustom
+
+[Components]
+Name: "VST3_32"; Description: "VST3 Plugin"; Types: full
+Name: "VST_32"; Description: "VST Plugin"; Types: full
+Name: "CLAP_32"; Description: "Clap (Clap 0.21)"; Types: full
+Name: "Standalone"; Description: "Standalone Plugin"; Types: full
+
+[Files]
+Source: "../../Bin/Win32/CHOWTapeModel.vst3"; Excludes: "*.aaxplugin,*.clap"; DestDir: "{code:GetDir|VST3_32}"; Components: VST3_32; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: "../../Bin/Win32/CHOWTapeModel.dll"; Excludes: "*.vst3,*.aaxplugin,*.clap"; DestDir: "{code:GetDir|VST_32}"; Components: VST_32; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: "../../Bin/Win32/CHOWTapeModel.clap"; Excludes: "*.vst3,*.aaxplugin"; DestDir: "{commoncf32}\Clap"; Components: CLAP_32; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: "../../Bin/Win32/CHOWTapeModel.exe"; Excludes: "*.vst3,*.aaxplugin,*.clap"; DestDir: "{code:GetDir|Standalone}"; Components: Standalone; Flags: ignoreversion recursesubdirs createallsubdirs
+
+[Icons]
+Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
+
+[Code]
+var
+ Vst3_32DirPage: TinputDirWizardPage;
+ Vst_32DirPage: TinputDirWizardPage;
+ StandaloneDirPage: TinputDirWizardPage;
+
+procedure InitializeWizard;
+begin
+ Log('Initializing extra pages')
+ //VST3 32-bit Dir Page
+ Vst3_32DirPage := CreateInputDirPage(wpSelectComponents,
+ 'Select Install Location for VST3 32-bit', 'Where would you like to install the plugin?',
+ 'VST3 32-bit plugin will be installed in the following folder.'#13#10#13#10 +
+ 'To continue, click Next. If you would like to select a different folder, click Browse.',
+ False, 'New Folder');
+
+ Vst3_32DirPage.add('');
+ Vst3_32DirPage.values[0] := ExpandConstant('{commoncf32}\VST3');
+
+ //VST 32-bit Dir Page
+ Vst_32DirPage := CreateInputDirPage(Vst3_32DirPage.ID,
+ 'Select Install Location for VST 32-bit', 'Where would you like to install the plugin?',
+ 'VST 32-bit plugin will be installed in the following folder.'#13#10#13#10 +
+ 'To continue, click Next. If you would like to select a different folder, click Browse.',
+ False, 'New Folder');
+
+ Vst_32DirPage.add('');
+ Vst_32DirPage.values[0] := ExpandConstant('{commoncf32}\VST');
+
+ //Standalone Dir Page
+ StandaloneDirPage := CreateInputDirPage(Vst_32DirPage.ID,
+ 'Select Install Location for Standalone', 'Where would you like to install the plugin?',
+ 'Standalone plugin will be installed in the following folder.'#13#10#13#10 +
+ 'To continue, click Next. If you would like to select a different folder, click Browse.',
+ False, 'New Folder');
+ StandaloneDirPage.add('');
+ StandaloneDirPage.values[0] := ExpandConstant('{pf32}\Chowdhury DSP');
+end;
+
+function IsSelected(Param: String) : Boolean;
+begin
+ if not (Pos(Param, WizardSelectedComponents(False)) = 0) then // WizardSelectedComponents(False)) then
+ Result := True
+end;
+
+function ShouldSkipPage(PageID: Integer): Boolean;
+begin
+ { Skip pages that shouldn't be shown }
+ Result := False;
+
+ if (PageID = Vst3_32DirPage.ID) then
+ begin
+ Result := True;
+ Log('Selected 3: ' + WizardSelectedComponents(False));
+
+ if IsSelected ('vst3_32') then
+ begin
+ Log('Not Skipping');
+ Result := False;
+ end
+ end
+
+ else if (PageID = Vst_32DirPage.ID) then
+ begin
+ Result := True;
+ Log('Selected 5: ' + WizardSelectedComponents(False));
+
+ if IsSelected ('vst_32') then
+ begin
+ Log('Not Skipping');
+ Result := False;
+ end
+ end
+
+ else if (PageID = StandaloneDirPage.ID) then
+ begin
+ Result := True;
+ Log('Selected 6: ' + WizardSelectedComponents(False));
+ if IsSelected ('standalone') then
+ begin
+ Log('Not Skipping');
+ Result := False;
+ end
+ end
+end;
+
+function GetDir(Param: String) : String;
+begin
+ if (Param = 'VST3_32') then
+ Result := Vst3_32DirPage.values[0]
+ else if (Param = 'VST_32') then
+ Result := Vst_32DirPage.values[0]
+ else if (Param = 'Standalone') then
+ Result := StandaloneDirPage.values[0]
+end;
+
+function UpdateReadyMemo(Space, NewLine, MemoUserInfoInfo, MemoDirInfo, MemoTypeInfo,
+ MemoComponentsInfo, MemoGroupInfo, MemoTasksInfo: String): String;
+var
+ S: String;
+begin
+ { Fill the 'Ready Memo' with the normal settings and the custom settings }
+ S := '';
+ S := S + MemoTypeInfo + NewLine + NewLine;
+ S := S + MemoComponentsInfo + NewLine + NewLine;
+ S := S + 'Destination Location:' + NewLine;
+
+ if IsSelected('vst3_32') then
+ S := S + Space + GetDir('VST3_32') + ' (VST3 32-bit)' + NewLine;
+
+ if IsSelected('vst_32') then
+ S := S + Space + GetDir('VST_32') + ' (VST 32-bit)' + NewLine;
+
+ if IsSelected('standalone') then
+ S := S + Space + GetDir('Standalone') + ' (Standalone)' + NewLine;
+
+ Result := S;
+end;
diff --git a/Plugin/Installers/windows/build_win_installer.sh b/Plugin/Installers/windows/build_win_installer.sh
@@ -1,17 +1,19 @@
#!/bin/sh
-script_file=ChowTapeModel_Install_Script.iss
-
-app_version=$(cut -f 2 -d '=' <<< "$(grep 'CMAKE_PROJECT_VERSION:STATIC' ../../build/CMakeCache.txt)")
+app_version=$(cut -f 2 -d '=' <<< "$(grep 'CMAKE_PROJECT_VERSION:STATIC' ../../build32/CMakeCache.txt)")
echo "Setting app version: $app_version..."
-sed -i "s/##APPVERSION##/${app_version}/g" $script_file
-# build installer
-echo Building...
+echo "Creating 64-bit installer..."
+script_file=ChowTapeModel_Install_Script.iss
+sed -i "s/##APPVERSION##/${app_version}/g" $script_file
$"C:\Program Files (x86)\Inno Setup 6\ISCC.exe" $script_file
+sed -i "s/${app_version}/##APPVERSION##/g" $script_file # reset version number
-# reset version number
-sed -i "s/${app_version}/##APPVERSION##/g" $script_file
+echo "Creating 32-bit installer..."
+script_file=ChowTapeModel_Install_Script_32bit.iss
+sed -i "s/##APPVERSION##/${app_version}/g" $script_file
+$"C:\Program Files (x86)\Inno Setup 6\ISCC.exe" $script_file
+sed -i "s/${app_version}/##APPVERSION##/g" $script_file # reset version number
exec="ChowTapeModel-Win-$app_version.exe"
direc=$PWD
diff --git a/Scripts/win_builds.sh b/Scripts/win_builds.sh
@@ -3,12 +3,12 @@
cd Plugin
build64(){
- cmake -Bbuild -G"Visual Studio 15 2017 Win64"
+ cmake -Bbuild -G"Visual Studio 16 2019" -A x64
cmake --build build --config Release -j4
}
build32(){
- cmake -Bbuild32 -G"Visual Studio 15 2017"
+ cmake -Bbuild32 -G"Visual Studio 16 2019" -A Win32
cmake --build build32 --config Release -j4
}