From 6de7ae9dd89ee1bd88c534a252e764aec65d042b Mon Sep 17 00:00:00 2001 From: Stephen Anthony Date: Wed, 8 May 2024 20:17:50 -0230 Subject: [PATCH] Simplified Windows InnoSetup for 64-bit only builds. --- src/os/windows/Create_Builds.bat | 112 +++++-------------------------- src/os/windows/stella.iss | 4 +- 2 files changed, 18 insertions(+), 98 deletions(-) diff --git a/src/os/windows/Create_Builds.bat b/src/os/windows/Create_Builds.bat index e93b51953..cc2a37125 100644 --- a/src/os/windows/Create_Builds.bat +++ b/src/os/windows/Create_Builds.bat @@ -1,75 +1,27 @@ @echo off & setlocal enableextensions -echo Stella build script for creating win32 and x64 builds. -echo This will create installers (based on InnoSetup) for both 32 and 64-bit, -echo as well as a ZIP archive containing both versions. +echo This will create an InnoSetup installer for 64-bit Stella. echo. -echo ! InnoSetup must be linked to this directory as 'iscc.lnk' (for EXE files) -echo ! 'zip.exe' must be installed in this directory (for ZIP files) -echo ! 'flip.exe' must be be installed in this directory (for readable TXT files) +echo ! InnoSetup must be linked to this directory as 'iscc.lnk' echo. echo !!! Make sure the code has already been compiled in Visual Studio echo !!! before launching this command. echo. -:: Make sure all tools are available -set HAVE_ISCC=1 -set HAVE_ZIP=1 -set HAVE_FLIP=1 +:: Make sure InnoSetup is available if not exist "iscc.lnk" ( - echo InnoSetup 'iscc.lnk' not found - EXE files will not be created - set HAVE_ISCC=0 -) -if not exist "zip.exe" ( - echo ZIP command not found - ZIP files will not be created - set HAVE_ZIP=0 -) -if %HAVE_ISCC% == 0 ( - if %HAVE_ZIP% == 0 ( - echo Both EXE and ZIP files cannot be created, exiting - goto done - ) -) -if not exist "flip.exe" ( - echo FLIP command not found - TXT files will be unreadable in Notepad - set HAVE_FLIP=0 + echo InnoSetup 'iscc.lnk' not found + goto done ) -set RELEASE_32=Win32\Release -set RELEASE_64=x64\Release +set RELEASE=x64\Release echo. set /p STELLA_VER=Enter Stella version: -echo. -set /p TO_BUILD=Version to build (32/64/a=all): -set BUILD_32=0 -set BUILD_64=0 -if %TO_BUILD% == 32 ( - set BUILD_32=1 -) - -if %TO_BUILD% == 64 ( - set BUILD_64=1 -) - -if %TO_BUILD% == a ( - set BUILD_32=1 - set BUILD_64=1 -) - -if %BUILD_32% == 1 ( - if not exist %RELEASE_32% ( - echo The 32-bit build was not found in the '%RELEASE_32%' directory - goto done - ) -) - -if %BUILD_64% == 1 ( - if not exist %RELEASE_64% ( - echo The 64-bit build was not found in the '%RELEASE_64%' directory - goto done - ) +if not exist %RELEASE% ( + echo The executable was not found in the '%RELEASE%' directory + goto done ) :: Create ZIP folder first @@ -80,21 +32,11 @@ if exist %STELLA_DIR% ( ) echo Creating %STELLA_DIR% ... mkdir %STELLA_DIR% -mkdir %STELLA_DIR%\32-bit -mkdir %STELLA_DIR%\64-bit mkdir %STELLA_DIR%\docs -if %BUILD_32% == 1 ( - echo Copying 32-bit files ... - copy %RELEASE_32%\Stella.exe %STELLA_DIR%\32-bit - copy %RELEASE_32%\*.dll %STELLA_DIR%\32-bit -) - -if %BUILD_64% == 1 ( - echo Copying 64-bit files ... - copy %RELEASE_64%\Stella.exe %STELLA_DIR%\64-bit - copy %RELEASE_64%\*.dll %STELLA_DIR%\64-bit -) +echo Copying executable files ... +copy %RELEASE%\Stella.exe %STELLA_DIR% +copy %RELEASE%\*.dll %STELLA_DIR% echo Copying DOC files ... xcopy ..\..\..\docs\* %STELLA_DIR%\docs /s /q @@ -102,14 +44,9 @@ copy ..\..\..\Announce.txt %STELLA_DIR%\docs copy ..\..\..\Changes.txt %STELLA_DIR%\docs copy ..\..\..\Copyright.txt %STELLA_DIR%\docs copy ..\..\..\License.txt %STELLA_DIR%\docs -copy ..\..\..\Readme.md %STELLA_DIR%\docs +copy ..\..\..\Readme.md %STELLA_DIR%\docs copy ..\..\..\README-SDL.txt %STELLA_DIR%\docs copy ..\..\..\Todo.txt %STELLA_DIR%\docs -if %HAVE_FLIP% == 1 ( - for %%a in (%STELLA_DIR%\docs\*.txt) do ( - flip -d "%%a" - ) -) :: Create output directory for release files if not exist Output ( @@ -117,27 +54,12 @@ if not exist Output ( mkdir Output ) - -:: Actually create the ZIP file -if %HAVE_ZIP% == 1 ( - echo Creating ZIP file ... - zip -q -r Output\%STELLA_DIR%-windows.zip %STELLA_DIR% -) - -:: Now create the Inno EXE files -if %HAVE_ISCC% == 1 ( - if %BUILD_32% == 1 ( - echo Creating 32-bit EXE ... - iscc.lnk "%CD%\stella.iss" /q "/dSTELLA_VER=%STELLA_VER%" "/dSTELLA_ARCH=win32" "/dSTELLA_PATH=%STELLA_DIR%\32-bit" "/dSTELLA_DOCPATH=%STELLA_DIR%\docs" - ) - if %BUILD_64% == 1 ( - echo Creating 64-bit EXE ... - iscc.lnk "%CD%\stella.iss" /q "/dSTELLA_VER=%STELLA_VER%" "/dSTELLA_ARCH=x64" "/dSTELLA_PATH=%STELLA_DIR%\64-bit" "/dSTELLA_DOCPATH=%STELLA_DIR%\docs" - ) -) +:: Create the Inno EXE files +echo Creating InnoSetup EXE ... +iscc.lnk "%CD%\stella.iss" /q "/dSTELLA_VER=%STELLA_VER%" "/dSTELLA_PATH=%STELLA_DIR%" "/dSTELLA_DOCPATH=%STELLA_DIR%\docs" :: Cleanup time -echo Cleaning up files, ... +echo Cleaning up files ... rmdir %STELLA_DIR% /s /q :done diff --git a/src/os/windows/stella.iss b/src/os/windows/stella.iss index 151215c1c..51fbada0e 100755 --- a/src/os/windows/stella.iss +++ b/src/os/windows/stella.iss @@ -10,14 +10,12 @@ AppSupportURL=https://stella-emu.github.io AppUpdatesURL=https://stella-emu.github.io DefaultDirName={pf}\Stella DefaultGroupName=Stella -OutputBaseFilename="Stella-{#STELLA_VER}-{#STELLA_ARCH}" +OutputBaseFilename="Stella-{#STELLA_VER}-x64" Compression=lzma SolidCompression=yes UninstallDisplayIcon={app}\Stella.exe -#if STELLA_ARCH == "x64" ArchitecturesInstallIn64BitMode=x64 ArchitecturesAllowed=x64 -#endif [Languages] Name: "eng"; MessagesFile: "compiler:Default.isl"