Updated with upstream update

This commit is contained in:
2023-10-30 15:55:30 -07:00
parent 098531073c
commit 3bbdd873ef
584 changed files with 91827 additions and 70362 deletions

View File

@ -28,7 +28,7 @@ Root: HKA; Subkey: "Software\RegisteredApplications"; ValueType: string; ValueNa
#pragma message "Processing associations.list: " + FileLine
;
Root: HKA; Subkey: "Software\Classes\.{#FileLine}\OpenWithProgids"; ValueType: string; ValueName: "PIKA2.{#FileLine}"; ValueData: ""; Flags: uninsdeletevalue
Root: HKA; Subkey: "Software\Classes\PIKA2.{#FileLine}"; ValueType: string; ValueName: ""; ValueData: "PIKA {#ICON_VERSION}"; Flags: uninsdeletekey
Root: HKA; Subkey: "Software\Classes\PIKA2.{#FileLine}"; ValueType: string; ValueName: ""; ValueData: "PIKA {#ICON_VERSION} {#UpperCase(FileLine)}"; Flags: uninsdeletekey
Root: HKA; Subkey: "Software\Classes\PIKA2.{#FileLine}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\bin\pika-{#MAJOR}.{#MINOR}.exe,1"
Root: HKA; Subkey: "Software\Classes\PIKA2.{#FileLine}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\bin\pika-{#MAJOR}.{#MINOR}.exe"" ""%1"""
Root: HKA; Subkey: "Software\Classes\Applications\pika-{#MAJOR}.{#MINOR}.exe\SupportedTypes"; ValueType: string; ValueName: ".{#FileLine}"; ValueData: ""

View File

@ -6,13 +6,17 @@ if [%4]==[] goto help
if [%5]==[] goto help
if [%6]==[] goto help
if [%7]==[] goto help
if [%8]==[] goto help
if [%9]==[] goto help
set VER=%~1
set PIKA_BASE=%~2
set PIKA32=%~3
set PIKA64=%~4
set DEPS_BASE=%~5
set DEPS32=%~6
set DEPS64=%~7
set PIKAA64=%~5
set DEPS_BASE=%~6
set DEPS32=%~7
set DEPS64=%~8
set DEPSA64=%~9
if [%INNOPATH%]==[] (
FOR /F "usebackq tokens=5,* skip=2" %%A IN (`REG QUERY "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall\Inno Setup 6_is1" /v "Inno Setup: App Path" /reg:32`) DO set INNOPATH=%%B
@ -29,6 +33,8 @@ shift
shift
shift
shift
shift
shift
set PARAMS=
:doparams
if "%1"=="" goto paramsdone
@ -37,7 +43,7 @@ shift
goto doparams
:paramsdone
"%INNOPATH%\iscc.exe" -DVERSION="%VER%" -DPIKA_DIR="%PIKA_BASE%" -DDIR32="%PIKA32%" -DDIR64="%PIKA64%" -DDEPS_DIR="%DEPS_BASE%" -DDDIR32="%DEPS32%" -DDDIR64="%DEPS64%" -DDEBUG_SYMBOLS -DPYTHON -DLUA %PARAMS% pika3264.iss
"%INNOPATH%\iscc.exe" -DVERSION="%VER%" -DPIKA_DIR="%PIKA_BASE%" -DDIR32="%PIKA32%" -DDIR64="%PIKA64%" -DDEPS_DIR="%DEPS_BASE%" -DDDIR32="%DEPS32%" -DDDIR64="%DEPS64%" -DDIRA64="%PIKAA64%" -DDDIRA64="%DEPSA64%" -DDEBUG_SYMBOLS -DPYTHON -DLUA %PARAMS% pika3264.iss
goto :eof
:help

View File

@ -19,6 +19,9 @@
#ifndef DIR64
#define DIR64 "x86_64-w64-mingw32"
#endif
#ifndef DIRA64
#define DIRA64 "aarch64-w64-mingw32"
#endif
#ifndef PIKA_DIR
#define PIKA_DIR "N:\pika\output\" + VER_DIR
@ -35,6 +38,10 @@
#ifndef PIKA_DIR64
#define PIKA_DIR64 PIKA_DIR + "\" + DIR64
#endif
//AArch64 PIKA base directory (result of make install)
#ifndef PIKA_DIRA64
#define PIKA_DIRA64 PIKA_DIR + "\" + DIR64
#endif
#ifndef DDIR32
#define DDIR32 DIR32
@ -42,6 +49,9 @@
#ifndef DDIR64
#define DDIR64 DIR64
#endif
#ifndef DDIRA64
#define DDIRA64 DIRA64
#endif
//32-bit dependencies directory
#ifndef DEPS_DIR32
@ -51,6 +61,10 @@
#ifndef DEPS_DIR64
#define DEPS_DIR64 DEPS_DIR + "\" + DDIR64
#endif
//AArch64 dependencies directory
#ifndef DEPS_DIR64
#define DEPS_DIRA64 DEPS_DIR + "\" + DDIRA64
#endif
#ifdef PYTHON

View File

@ -2,59 +2,69 @@
[Files]
#endif
#if PLATFORM==32
#if PLATFORM==X86
#define DIR DIR32
#define DDIR DDIR32
#elif PLATFORM==64
#define COMPONENT "32"
#elif PLATFORM==X64
#define DIR DIR64
#define DDIR DDIR64
#define COMPONENT "64"
#elif PLATFORM==ARM64
#define DIR DIRA64
#define DDIR DDIRA64
#define COMPONENT "ARM64"
#else
#error "Unknown PLATFORM:" + PLATFORM
#endif
Source: "{#PIKA_DIR}\{#DIR}\*.dll"; DestDir: "{app}"; Components: pika{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#PIKA_DIR}\{#DIR}\*.exe"; DestDir: "{app}"; Excludes: "\lib\pika\{#DIR_VER}\plug-ins\twain\twain.exe,\lib\pika\{#DIR_VER}\plug-ins\file-ps\file-ps.exe,\bin\pika.exe,\bin\pika-console.exe"; Components: pika{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#PIKA_DIR}\{#DIR}\*.dll"; DestDir: "{app}"; Components: pika{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#PIKA_DIR}\{#DIR}\*.exe"; DestDir: "{app}"; Excludes: "\lib\pika\{#DIR_VER}\plug-ins\twain\twain.exe,\lib\pika\{#DIR_VER}\plug-ins\file-ps\file-ps.exe,\bin\pika.exe,\bin\pika-console.exe"; Components: pika{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
#ifdef DEBUG_SYMBOLS
Source: "{#PIKA_DIR}\{#DIR}\*.debug"; DestDir: "{app}"; Components: pika{#PLATFORM} and debug; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR}\{#DIR}\*.debug"; DestDir: "{app}"; Components: pika{#COMPONENT} and debug; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
#endif
Source: "{#PIKA_DIR}\{#DIR}\lib\pika\{#DIR_VER}\extensions\*.*"; Excludes: "*.debug"; DestDir: "{app}\lib\pika\{#DIR_VER}\extensions"; Components: pika{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#PIKA_DIR}\{#DIR}\lib\pika\{#DIR_VER}\extensions\*.*"; Excludes: "*.debug"; DestDir: "{app}\lib\pika\{#DIR_VER}\extensions"; Components: pika{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
#ifdef DEBUG_SYMBOLS
Source: "{#PIKA_DIR}\{#DIR}\lib\pika\{#DIR_VER}\extensions\*.debug"; DestDir: "{app}\lib\pika\{#DIR_VER}\extensions"; Components: pika{#PLATFORM} and debug; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#PIKA_DIR}\{#DIR}\lib\pika\{#DIR_VER}\extensions\*.debug"; DestDir: "{app}\lib\pika\{#DIR_VER}\extensions"; Components: pika{#COMPONENT} and debug; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
#endif
Source: "{#PIKA_DIR}\{#DIR}\lib\pika\{#DIR_VER}\plug-ins\file-ps\file-ps.exe"; DestDir: "{app}\lib\pika\{#DIR_VER}\plug-ins\file-ps"; Components: gs and pika{#PLATFORM}; Flags: restartreplace ignoreversion uninsrestartdelete
Source: "{#PIKA_DIR}\{#DIR}\lib\pika\{#DIR_VER}\plug-ins\file-ps\file-ps.exe"; DestDir: "{app}\lib\pika\{#DIR_VER}\plug-ins\file-ps"; Components: gs and pika{#COMPONENT}; Flags: restartreplace ignoreversion uninsrestartdelete
Source: "{#PIKA_DIR}\{#DIR}\lib\girepository-1.0\*.*"; DestDir: "{app}\lib\girepository-1.0"; Components: pika{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\girepository-1.0\*.*"; DestDir: "{app}\lib\girepository-1.0"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#PIKA_DIR}\{#DIR}\lib\girepository-1.0\*.*"; DestDir: "{app}\lib\girepository-1.0"; Components: pika{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\girepository-1.0\*.*"; DestDir: "{app}\lib\girepository-1.0"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\*.dll"; DestDir: "{app}\bin"; Excludes: "\bin\libgs*.dll,\bin\lua*.dll"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\libgs*.dll"; DestDir: "{app}\bin"; Components: gs and deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\*.dll"; DestDir: "{app}\bin"; Excludes: "\bin\libgs*.dll,\bin\lua*.dll"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\libgs*.dll"; DestDir: "{app}\bin"; Components: gs and deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
#ifdef DEBUG_SYMBOLS
Source: "{#DEPS_DIR}\{#DDIR}\bin\.debug\*.dll.debug"; DestDir: "{app}\bin\.debug"; Components: deps{#PLATFORM} and debug; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete skipifsourcedoesntexist
Source: "{#DEPS_DIR}\{#DDIR}\lib\*.debug"; DestDir: "{app}\lib"; Components: deps{#PLATFORM} and debug; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete skipifsourcedoesntexist
Source: "{#DEPS_DIR}\{#DDIR}\bin\.debug\*.dll.debug"; DestDir: "{app}\bin\.debug"; Components: deps{#COMPONENT} and debug; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete skipifsourcedoesntexist
Source: "{#DEPS_DIR}\{#DDIR}\lib\*.debug"; DestDir: "{app}\lib"; Components: deps{#COMPONENT} and debug; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete skipifsourcedoesntexist
#endif
Source: "{#DEPS_DIR}\{#DDIR}\bin\gspawn-win*.exe"; DestDir: "{app}\bin"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\gdk-pixbuf-query-loaders.exe"; DestDir: "{app}\bin"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\bzip2.exe"; DestDir: "{app}\bin"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\lib\gdk-pixbuf-2.0\2.10.0\loaders.cache"; DestDir: "{app}\lib\gdk-pixbuf-2.0\2.10.0\"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\babl-0.1\*.dll"; DestDir: "{app}\lib\babl-0.1"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\gdk-pixbuf-2.0\*.dll"; DestDir: "{app}\lib\gdk-pixbuf-2.0"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\gegl-0.4\*.dll"; DestDir: "{app}\lib\gegl-0.4"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\gio\*.dll"; DestDir: "{app}\lib\gio"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
;Source: "{#DEPS_DIR}\{#DDIR}\lib\gtk-3.0\*.dll"; DestDir: "{app}\lib\gtk-3.0"; Components: deps{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\gspawn-win*.exe"; DestDir: "{app}\bin"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\gdk-pixbuf-query-loaders.exe"; DestDir: "{app}\bin"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\bin\bzip2.exe"; DestDir: "{app}\bin"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\lib\gdk-pixbuf-2.0\2.10.0\loaders.cache"; DestDir: "{app}\lib\gdk-pixbuf-2.0\2.10.0\"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\babl-0.1\*.dll"; DestDir: "{app}\lib\babl-0.1"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\gdk-pixbuf-2.0\*.dll"; DestDir: "{app}\lib\gdk-pixbuf-2.0"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\gegl-0.4\*.dll"; DestDir: "{app}\lib\gegl-0.4"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\gio\*.dll"; DestDir: "{app}\lib\gio"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
;Source: "{#DEPS_DIR}\{#DDIR}\lib\gtk-3.0\*.dll"; DestDir: "{app}\lib\gtk-3.0"; Components: deps{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
;python scripts
#ifdef PYTHON
Source: "{#DEPS_DIR}\{#DDIR}\bin\python3w.exe"; DestDir: "{app}\bin"; DestName: "pythonw.exe"; Components: py and pika{#PLATFORM}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\bin\python3.exe"; DestDir: "{app}\bin"; DestName: "python.exe"; Components: py and pika{#PLATFORM}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\bin\libpython3.11.dll"; DestDir: "{app}\bin"; Components: py and pika{#PLATFORM}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\lib\python3.11\*"; DestDir: "{app}\lib\python3.11"; Components: py and pika{#PLATFORM}; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\bin\python3w.exe"; DestDir: "{app}\bin"; DestName: "pythonw.exe"; Components: py and pika{#COMPONENT}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\bin\python3.exe"; DestDir: "{app}\bin"; DestName: "python.exe"; Components: py and pika{#COMPONENT}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\bin\libpython3.11.dll"; DestDir: "{app}\bin"; Components: py and pika{#COMPONENT}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\lib\python3.11\*"; DestDir: "{app}\lib\python3.11"; Components: py and pika{#COMPONENT}; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
#endif
#ifdef LUA
Source: "{#DEPS_DIR}\{#DDIR}\bin\luajit.exe"; DestDir: "{app}\bin"; Components: lua and pika{#PLATFORM}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\bin\lua51.dll"; DestDir: "{app}\bin"; Components: lua and pika{#PLATFORM}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\share\lua\*"; DestDir: "{app}\share\lua"; Components: lua and pika{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\lua\*"; DestDir: "{app}\lib\lua"; Components: lua and pika{#PLATFORM}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
#if PLATFORM==ARM64
Source: "{#DEPS_DIR}\{#DDIR}\bin\lua5.1.exe"; DestDir: "{app}\bin"; Components: lua and pika{#COMPONENT}; Flags: restartreplace uninsrestartdelete ignoreversion
#else
Source: "{#DEPS_DIR}\{#DDIR}\bin\luajit.exe"; DestDir: "{app}\bin"; Components: lua and pika{#COMPONENT}; Flags: restartreplace uninsrestartdelete ignoreversion
#endif
Source: "{#DEPS_DIR}\{#DDIR}\bin\lua51.dll"; DestDir: "{app}\bin"; Components: lua and pika{#COMPONENT}; Flags: restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR}\{#DDIR}\share\lua\*"; DestDir: "{app}\share\lua"; Components: lua and pika{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
Source: "{#DEPS_DIR}\{#DDIR}\lib\lua\*"; DestDir: "{app}\lib\lua"; Components: lua and pika{#COMPONENT}; Flags: recursesubdirs restartreplace ignoreversion uninsrestartdelete
#endif

View File

@ -8,6 +8,7 @@ ms_installer_config_xml = i18n.merge_file(
)
languages = [
{ 'code': 'be', },
{ 'code': 'bg', },
{ 'code': 'ca', },
{ 'code': 'cs', },

View File

@ -103,6 +103,10 @@
; Optional: PYTHON, LUA, DEBUG_SYMBOLS, NOCOMPRESSION, NOFILES, DEVEL
#define X86 1
#define X64 2
#define ARM64 3
#include "directories.isi"
#include "version.isi"
@ -151,13 +155,15 @@ UninstallDisplayIcon={app}\bin\pika-{#MAJOR}.{#MINOR}.exe
UninstallFilesDir={app}\uninst
MinVersion=6.1
ArchitecturesInstallIn64BitMode=x64
ArchitecturesInstallIn64BitMode=x64 arm64
#ifdef NOCOMPRESSION
;UseSetupLdr=no
OutputDir=_Output\unc
Compression=none
;InternalCompressLevel=0
DiskSpanning=yes
DiskSliceSize=max
#else
OutputDir=_Output
Compression=lzma2/ultra64
@ -187,6 +193,7 @@ PrivilegesRequiredOverridesAllowed=dialog
[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl,lang\en.setup.isl"
Name: "be"; MessagesFile: "compiler:Languages\Unofficial\Belarusian.isl,lang\be.setup.isl"
Name: "bg"; MessagesFile: "compiler:Languages\Bulgarian.isl,lang\bg.setup.isl"
Name: "ca"; MessagesFile: "compiler:Languages\Catalan.isl,lang\ca.setup.isl"
Name: "cs"; MessagesFile: "compiler:Languages\Czech.isl,lang\cs.setup.isl"
@ -238,10 +245,12 @@ Name: custom; Description: "{cm:TypeCustom}"; Flags: iscustom
[Components]
Name: pika32; Description: "{cm:ComponentsGimp,{#VERSION}}"; Types: full compact custom; Flags: fixed; Check: Check3264('32')
Name: pika64; Description: "{cm:ComponentsGimp,{#VERSION}}"; Types: full compact custom; Flags: fixed; Check: Check3264('64')
Name: pika64; Description: "{cm:ComponentsGimp,{#VERSION}}"; Types: full compact custom; Flags: fixed; Check: Check3264('x64')
Name: pikaARM64; Description: "{cm:ComponentsGimp,{#VERSION}}"; Types: full compact custom; Flags: fixed; Check: Check3264('arm64')
Name: deps32; Description: "{cm:ComponentsDeps,{#GTK_VERSION}}"; Types: full compact custom; Flags: checkablealone fixed; Check: Check3264('32')
Name: deps64; Description: "{cm:ComponentsDeps,{#GTK_VERSION}}"; Types: full compact custom; Flags: checkablealone fixed; Check: Check3264('64')
Name: deps64; Description: "{cm:ComponentsDeps,{#GTK_VERSION}}"; Types: full compact custom; Flags: checkablealone fixed; Check: Check3264('x64')
Name: depsARM64; Description: "{cm:ComponentsDeps,{#GTK_VERSION}}"; Types: full compact custom; Flags: checkablealone fixed; Check: Check3264('arm64')
#ifdef DEBUG_SYMBOLS
Name: debug; Description: "{cm:ComponentsDebug}"; Types: full custom; Flags: disablenouninstallwarning
@ -272,7 +281,6 @@ Name: "{autodesktop}\PIKA {#ICON_VERSION}"; Filename: "{app}\bin\pika-{#MAJOR}.{
[Files]
;setup files
Source: "setup.ini"; Flags: dontcopy
Source: "windows-installer-intro-small.bmp"; Flags: dontcopy
#ifndef DEVEL
Source: "installsplash.bmp"; Flags: dontcopy
@ -284,20 +292,20 @@ Source: "installsplash_small-devel.bmp"; Destname: "installsplash_small.bmp"; Fl
#ifndef NOFILES
;files common to both 32 and 64-bit versions
Source: "{#PIKA_DIR32}\etc\*"; DestDir: "{app}\etc"; Components: pika32 or pika64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\lib\pika\{#DIR_VER}\environ\*"; DestDir: "{app}\lib\pika\{#DIR_VER}\environ"; Components: pika32 or pika64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\lib\pika\{#DIR_VER}\interpreters\*"; DestDir: "{app}\lib\pika\{#DIR_VER}\interpreters"; Components: pika32 or pika64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\share\pika\*"; DestDir: "{app}\share\pika"; Components: pika32 or pika64; Flags: recursesubdirs createallsubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\share\metainfo\*"; DestDir: "{app}\share\metainfo"; Components: pika32 or pika64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\etc\*"; DestDir: "{app}\etc"; Components: pika32 or pika64 or pikaARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\lib\pika\{#DIR_VER}\environ\*"; DestDir: "{app}\lib\pika\{#DIR_VER}\environ"; Components: pika32 or pika64 or pikaARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\lib\pika\{#DIR_VER}\interpreters\*"; DestDir: "{app}\lib\pika\{#DIR_VER}\interpreters"; Components: pika32 or pika64 or pikaARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\share\pika\*"; DestDir: "{app}\share\pika"; Components: pika32 or pika64 or pikaARM64; Flags: recursesubdirs createallsubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\share\metainfo\*"; DestDir: "{app}\share\metainfo"; Components: pika32 or pika64 or pikaARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\glib-2.0\schemas\*"; DestDir: "{app}\share\glib-2.0\schemas"; Components: deps32 or deps64; Flags: recursesubdirs createallsubdirs restartreplace uninsrestartdelete ignoreversion
;Source: "{#DEPS_DIR32}\share\enchant\*"; DestDir: "{app}\share\enchant"; Components: deps32 or deps64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\libwmf\*"; DestDir: "{app}\share\libwmf"; Components: deps32 or deps64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\icons\*"; DestDir: "{app}\share\icons"; Components: deps32 or deps64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\xml\*"; DestDir: "{app}\share\xml"; Components: deps32 or deps64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\glib-2.0\schemas\*"; DestDir: "{app}\share\glib-2.0\schemas"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs createallsubdirs restartreplace uninsrestartdelete ignoreversion
;Source: "{#DEPS_DIR32}\share\enchant\*"; DestDir: "{app}\share\enchant"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\libwmf\*"; DestDir: "{app}\share\libwmf"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\icons\*"; DestDir: "{app}\share\icons"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\xml\*"; DestDir: "{app}\share\xml"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\poppler\*.*"; DestDir: "{app}\share\poppler"; Components: deps32 or deps64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\libthai\*"; DestDir: "{app}\share\libthai"; Components: deps32 or deps64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\poppler\*.*"; DestDir: "{app}\share\poppler"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\libthai\*"; DestDir: "{app}\share\libthai"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\locale\*"; DestDir: "{app}\share\locale"; Components: loc; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR32}\share\locale\*"; DestDir: "{app}\share\locale"; Components: loc; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
@ -306,22 +314,26 @@ Source: "{#PIKA_DIR32}\share\locale\*"; DestDir: "{app}\share\locale"; Component
;be picked by pika
Source: "{#DEPS_DIR32}\share\mypaint-data\*"; DestDir: "{app}\share\mypaint-data"; Components: mypaint; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\etc\fonts\*"; DestDir: "{app}\etc\fonts"; Components: deps32 or deps64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\etc\gtk-3.0\*"; DestDir: "{app}\etc\gtk-3.0"; Components: deps32 or deps64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\etc\fonts\*"; DestDir: "{app}\etc\fonts"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\etc\gtk-3.0\*"; DestDir: "{app}\etc\gtk-3.0"; Components: deps32 or deps64 or depsARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\ghostscript\*"; Excludes: "*\doc\*"; DestDir: "{app}\share\ghostscript"; Components: gs and (pika32 or pika64); Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#DEPS_DIR32}\share\ghostscript\*"; Excludes: "*\doc\*"; DestDir: "{app}\share\ghostscript"; Components: gs and (pika32 or pika64 or pikaARM64); Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
#ifdef PYTHON
;*.py files are the same on 32 and 64-bit
Source: "{#PIKA_DIR32}\lib\pika\{#DIR_VER}\plug-ins\*.py"; DestDir: "{app}\lib\pika\{#DIR_VER}\plug-ins"; Components: py; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
#endif
;64bit
#define PLATFORM 64
;x86_64
#define PLATFORM X64
#include "files.isi"
;32bit
#define PLATFORM 32
;AArch64
#define PLATFORM ARM64
#include "files.isi"
;i686
#define PLATFORM X86
#include "files.isi"
;special case, since 64bit version doesn't work, and is excluded in files.isi
Source: "{#PIKA_DIR32}\lib\pika\{#DIR_VER}\plug-ins\twain.exe"; DestDir: "{app}\lib\pika\{#DIR_VER}\plug-ins"; Components: pika32; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
@ -331,12 +343,13 @@ Source: "{#PIKA_DIR32}\lib\pika\{#DIR_VER}\plug-ins\twain.exe"; DestDir: "{app}\
;prefer 32bit twain plugin over 64bit because 64bit twain drivers are rare
Source: "{#PIKA_DIR32}\lib\pika\{#DIR_VER}\plug-ins\twain\twain.exe"; DestDir: "{app}\lib\pika\{#DIR_VER}\plug-ins\twain"; Components: pika32on64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIR64}\lib\pika\{#DIR_VER}\plug-ins\twain\twain.exe"; DestDir: "{app}\lib\pika\{#DIR_VER}\plug-ins\twain"; Components: (not pika32on64) and pika64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
Source: "{#PIKA_DIRA64}\lib\pika\{#DIR_VER}\plug-ins\twain\twain.exe"; DestDir: "{app}\lib\pika\{#DIR_VER}\plug-ins\twain"; Components: (not pika32on64) and pikaARM64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
;special case due to MS-Windows engine
Source: "{#DEPS_DIR32}\etc\gtk-3.0\*"; DestDir: "{app}\32\etc\gtk-3.0"; Components: pika32on64; Flags: recursesubdirs restartreplace uninsrestartdelete ignoreversion
;upgrade zlib1.dll in System32 if it's present there to avoid breaking plugins
;sharedfile flag will ensure that the upgraded file is left behind on uninstall to avoid breaking other programs that use the file
Source: "{#DEPS_DIR32}\bin\zlib1.dll"; DestDir: "{sys}"; Components: pika32 or pika64; Flags: restartreplace sharedfile 32bit uninsrestartdelete comparetimestamp; Check: BadSysDLL('zlib1.dll',32)
Source: "{#DEPS_DIR32}\bin\zlib1.dll"; DestDir: "{sys}"; Components: pika32 or pika64 or pikaARM64; Flags: restartreplace sharedfile 32bit uninsrestartdelete comparetimestamp; Check: BadSysDLL('zlib1.dll',32)
Source: "{#DEPS_DIR64}\bin\zlib1.dll"; DestDir: "{sys}"; Components: pika64; Flags: restartreplace sharedfile uninsrestartdelete comparetimestamp; Check: BadSysDLL('zlib1.dll',64)
;overridden configuration files
@ -669,8 +682,6 @@ type
var
lblComponentDescription: TNewStaticText;
SetupINI: String;
ReadyMemoRichText: String;
WelcomeBitmapBottom: TBitmapImage;
@ -691,10 +702,14 @@ var
function Check3264(const pWhich: String): Boolean;
begin
if pWhich = '64' then
if pWhich = '64' then //x64 or arm64
Result := Is64BitInstallMode() and (not Force32bitInstall)
else if pWhich = '32' then
Result := (not Is64BitInstallMode()) or Force32bitInstall
else if pWhich = 'x64' then
Result := Is64BitInstallMode() and IsX64 and (not Force32bitInstall)
else if pWhich = 'arm64' then
Result := Is64BitInstallMode() and IsARM64 and (not Force32bitInstall)
else
RaiseException('Unknown check');
end;
@ -804,7 +819,7 @@ end;
procedure PrepareInterp();
var InterpFile,InterpContent: String;
var InterpFile,InterpContent,LuaBin: String;
begin
#ifdef PYTHON
if IsComponentSelected('py') then
@ -841,17 +856,26 @@ begin
InterpFile := ExpandConstant('{app}\lib\pika\{#DIR_VER}\interpreters\lua.interp');
DebugMsg('PrepareInterp','Writing interpreter file for lua: ' + InterpFile);
InterpContent := 'lua=' + ExpandConstant('{app}\bin\luajit.exe') + #10 +
'luajit=' + ExpandConstant('{app}\bin\luajit.exe') + #10 +
'/usr/bin/luajit=' + ExpandConstant('{app}\bin\luajit.exe') + #10 +
'/usr/bin/lua=' + ExpandConstant('{app}\bin\luajit.exe') + #10 +
':Lua:E::lua::luajit:'#10;
if IsComponentSelected('pikaARM64') then
begin
LuaBin := 'lua5.1.exe'
end else
begin
LuaBin := 'luajit.exe'
end;
InterpContent := 'lua=' + ExpandConstant('{app}\bin\') + LuaBin + #10 +
'luajit=' + ExpandConstant('{app}\bin\') + LuaBin + #10 +
'/usr/bin/luajit=' + ExpandConstant('{app}\bin\') + LuaBin + #10 +
'/usr/bin/lua=' + ExpandConstant('{app}\bin\') + LuaBin + #10 +
':Lua:E::lua::' + LuaBin + ':'#10;
if not SaveStringToUTF8File(InterpFile,InterpContent,False) then
begin
DebugMsg('PrepareInterp','Problem writing the file. [' + InterpContent + ']');
SuppressibleMsgBox(CustomMessage('ErrorUpdatingPython') + ' (2)',mbInformation,mb_ok,IDOK);
end;
end;
#endif
@ -1777,8 +1801,6 @@ begin
#endif
try
ExtractTemporaryFile('setup.ini');
SetupINI := ExpandConstant('{tmp}\setup.ini');
ExtractTemporaryFile('windows-installer-intro-small.bmp');
ExtractTemporaryFile('installsplash.bmp');
ExtractTemporaryFile('installsplash_small.bmp');

View File

@ -1,5 +1,6 @@
image = Pika.list_images()[0]
config = Pika.get_pdb().lookup_procedure("file-bmp-save").create_config()
image = Pika.list_images()[0]
procedure = Pika.get_pdb().lookup_procedure("file-bmp-save")
config = procedure.create_config()
def export_scaled_img(image, target_width, target_height, export_path):
img = image.duplicate()
@ -29,7 +30,7 @@ def export_scaled_img(image, target_width, target_height, export_path):
config.set_property("num-drawables", len(drawables))
config.set_property("drawables", Pika.ObjectArray.new(Pika.Drawable, drawables, False))
config.set_property("file", Gio.file_new_for_path(export_path))
Pika.get_pdb().run_procedure_config("file-bmp-save", config)
Pika.Procedure.run(procedure, config)
# These sizes are pretty much hardcoded, and in particular the ratio matters in
# InnoSetup. Or so am I told. XXX