mirror of
https://github.com/vim/vim
synced 2025-07-15 16:51:57 +00:00
patch 9.1.1499: MS-Windows: no indication of ARM64 architecture
Problem: MS-Windows: no indication of ARM64 architecture Solution: Add ARM64 to version output and include in nsis installer (RestorerZ) related: vim/vim-win32-installer#381 closes: #17642 Signed-off-by: RestorerZ <restorer@mail2k.ru> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
523f9f5898
commit
54585fd04c
@ -46,6 +46,10 @@ MKNSISFLAGS = $(MKNSISFLAGS) /DHAVE_MULTI_LANG=$(HAVE_MULTI_LANG)
|
|||||||
MKNSISFLAGS = $(MKNSISFLAGS) /DWIN64=$(WIN64)
|
MKNSISFLAGS = $(MKNSISFLAGS) /DWIN64=$(WIN64)
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
|
!IFDEF ARM64
|
||||||
|
MKNSISFLAGS = $(MKNSISFLAGS) /DARM64=$(ARM64)
|
||||||
|
!ENDIF
|
||||||
|
|
||||||
!IFDEF INCLUDE_LIBGCC
|
!IFDEF INCLUDE_LIBGCC
|
||||||
MKNSISFLAGS = $(MKNSISFLAGS) /DINCLUDE_LIBGCC=$(INCLUDE_LIBGCC)
|
MKNSISFLAGS = $(MKNSISFLAGS) /DINCLUDE_LIBGCC=$(INCLUDE_LIBGCC)
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
@ -39,6 +39,10 @@ ifdef WIN64
|
|||||||
MKNSISFLAGS := $(MKNSISFLAGS) -DWIN64=$(WIN64)
|
MKNSISFLAGS := $(MKNSISFLAGS) -DWIN64=$(WIN64)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifdef ARM64
|
||||||
|
MKNSISFLAGS := $(MKNSISFLAGS) -DARM64=$(ARM64)
|
||||||
|
endif
|
||||||
|
|
||||||
ifdef INCLUDE_LIBGCC
|
ifdef INCLUDE_LIBGCC
|
||||||
MKNSISFLAGS := $(MKNSISFLAGS) -DINCLUDE_LIBGCC=$(INCLUDE_LIBGCC)
|
MKNSISFLAGS := $(MKNSISFLAGS) -DINCLUDE_LIBGCC=$(INCLUDE_LIBGCC)
|
||||||
endif
|
endif
|
||||||
|
@ -101,6 +101,8 @@ Variables and their values available for building the installer (not mandatory):
|
|||||||
"HAVE_NLS=0" — do not add native language support.
|
"HAVE_NLS=0" — do not add native language support.
|
||||||
"HAVE_MULTI_LANG=0" — to create an English-only the installer.
|
"HAVE_MULTI_LANG=0" — to create an English-only the installer.
|
||||||
"WIN64=1" — to create a 64-bit the installer.
|
"WIN64=1" — to create a 64-bit the installer.
|
||||||
|
"ARM64=1" — to create the installer for ARM64. The WIN64 variable
|
||||||
|
must be set to 1.
|
||||||
"X=<scriptcmd>" — executes scriptcmd in script. If multiple scriptcmd
|
"X=<scriptcmd>" — executes scriptcmd in script. If multiple scriptcmd
|
||||||
are specified, they are separated by a semicolon.
|
are specified, they are separated by a semicolon.
|
||||||
Example "X=OutFile MyVim.exe;XPMode on"
|
Example "X=OutFile MyVim.exe;XPMode on"
|
||||||
|
@ -53,6 +53,18 @@ Unicode true
|
|||||||
!define WIN64 0
|
!define WIN64 0
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
|
# if you want to create the installer for ARM64, use the /DARM64=1 on
|
||||||
|
# the command line makensis.exe. This property will be set to 1.
|
||||||
|
!ifndef ARM64
|
||||||
|
!define ARM64 0
|
||||||
|
!else
|
||||||
|
!if ${ARM64} > 0
|
||||||
|
!if ${WIN64} < 1
|
||||||
|
!define /redef WIN64 1
|
||||||
|
!endif
|
||||||
|
!endif
|
||||||
|
!endif
|
||||||
|
|
||||||
# if you don't want to include libgcc_s_sjlj-1.dll in the package, use the
|
# if you don't want to include libgcc_s_sjlj-1.dll in the package, use the
|
||||||
# switch /DINCLUDE_LIBGCC=0 on the command line makensis.exe.
|
# switch /DINCLUDE_LIBGCC=0 on the command line makensis.exe.
|
||||||
!ifndef INCLUDE_LIBGCC
|
!ifndef INCLUDE_LIBGCC
|
||||||
@ -113,7 +125,11 @@ ${StrRep}
|
|||||||
!define UNINST_REG_KEY_VIM "${UNINST_REG_KEY}\${PRODUCT}"
|
!define UNINST_REG_KEY_VIM "${UNINST_REG_KEY}\${PRODUCT}"
|
||||||
|
|
||||||
!if ${WIN64}
|
!if ${WIN64}
|
||||||
|
!if ${ARM64}
|
||||||
|
Name "${PRODUCT} (ARM64)"
|
||||||
|
!else
|
||||||
Name "${PRODUCT} (x64)"
|
Name "${PRODUCT} (x64)"
|
||||||
|
!endif
|
||||||
!else
|
!else
|
||||||
Name "${PRODUCT}"
|
Name "${PRODUCT}"
|
||||||
!endif
|
!endif
|
||||||
|
@ -342,8 +342,12 @@ MSVCRT_NAME = vcruntime$(MSVCRT_VER)
|
|||||||
|
|
||||||
### Set the default $(WINVER) to make it work with Windows 7
|
### Set the default $(WINVER) to make it work with Windows 7
|
||||||
!ifndef WINVER
|
!ifndef WINVER
|
||||||
|
! if "$(CPU)" == "ARM64"
|
||||||
|
WINVER = 0x0A00
|
||||||
|
! else
|
||||||
WINVER = 0x0601
|
WINVER = 0x0601
|
||||||
! endif
|
! endif
|
||||||
|
!endif
|
||||||
|
|
||||||
# Use multiprocess build
|
# Use multiprocess build
|
||||||
USE_MP = yes
|
USE_MP = yes
|
||||||
@ -571,7 +575,8 @@ CPUNR = sse2
|
|||||||
! error *** ERROR Unknown target architecture "$(CPUNR)". Make aborted.
|
! error *** ERROR Unknown target architecture "$(CPUNR)". Make aborted.
|
||||||
! endif
|
! endif
|
||||||
!elseif "$(CPU)" == "ARM64"
|
!elseif "$(CPU)" == "ARM64"
|
||||||
# TODO: Validate CPUNR.
|
# TODO: Validate CPUNR depending on the VS version.
|
||||||
|
CPUNR = armv8.0
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
# Convert processor ID to MVC-compatible number
|
# Convert processor ID to MVC-compatible number
|
||||||
|
@ -719,6 +719,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1499,
|
||||||
/**/
|
/**/
|
||||||
1498,
|
1498,
|
||||||
/**/
|
/**/
|
||||||
@ -3926,13 +3928,21 @@ list_version(void)
|
|||||||
# ifdef FEAT_GUI_MSWIN
|
# ifdef FEAT_GUI_MSWIN
|
||||||
# ifdef VIMDLL
|
# ifdef VIMDLL
|
||||||
# ifdef _WIN64
|
# ifdef _WIN64
|
||||||
|
# if defined(_M_ARM64) || defined(_M_ARM64EC)
|
||||||
|
msg_puts(_("\nMS-Windows ARM64 GUI/console version"));
|
||||||
|
# else
|
||||||
msg_puts(_("\nMS-Windows 64-bit GUI/console version"));
|
msg_puts(_("\nMS-Windows 64-bit GUI/console version"));
|
||||||
|
# endif
|
||||||
# else
|
# else
|
||||||
msg_puts(_("\nMS-Windows 32-bit GUI/console version"));
|
msg_puts(_("\nMS-Windows 32-bit GUI/console version"));
|
||||||
# endif
|
# endif
|
||||||
# else
|
# else
|
||||||
# ifdef _WIN64
|
# ifdef _WIN64
|
||||||
|
# if defined(_M_ARM64) || defined(_M_ARM64EC)
|
||||||
|
msg_puts(_("\nMS-Windows ARM64 GUI version"));
|
||||||
|
# else
|
||||||
msg_puts(_("\nMS-Windows 64-bit GUI version"));
|
msg_puts(_("\nMS-Windows 64-bit GUI version"));
|
||||||
|
# endif
|
||||||
# else
|
# else
|
||||||
msg_puts(_("\nMS-Windows 32-bit GUI version"));
|
msg_puts(_("\nMS-Windows 32-bit GUI version"));
|
||||||
# endif
|
# endif
|
||||||
@ -3942,7 +3952,11 @@ list_version(void)
|
|||||||
# endif
|
# endif
|
||||||
# else
|
# else
|
||||||
# ifdef _WIN64
|
# ifdef _WIN64
|
||||||
|
# if defined(_M_ARM64) || defined(_M_ARM64EC)
|
||||||
|
msg_puts(_("\nMS-Windows ARM64 console version"));
|
||||||
|
# else
|
||||||
msg_puts(_("\nMS-Windows 64-bit console version"));
|
msg_puts(_("\nMS-Windows 64-bit console version"));
|
||||||
|
# endif
|
||||||
# else
|
# else
|
||||||
msg_puts(_("\nMS-Windows 32-bit console version"));
|
msg_puts(_("\nMS-Windows 32-bit console version"));
|
||||||
# endif
|
# endif
|
||||||
|
Reference in New Issue
Block a user