aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksei Bavshin <a.bavshin@nginx.com>2025-01-14 11:11:28 -0800
committerAleksei Bavshin <a.bavshin@f5.com>2025-04-18 12:57:26 -0700
commit020b1db7eb187d4a9a5f1d6154c664a463473b36 (patch)
tree393f70397e67514d9857d676444dccd882d49457
parentb9d0ba6677ff7761c85f5556776d6a6c2a7a7051 (diff)
downloadnginx-020b1db7eb187d4a9a5f1d6154c664a463473b36.tar.gz
nginx-020b1db7eb187d4a9a5f1d6154c664a463473b36.zip
Win32: added detection of ARM64 target.
This extends the target selection implemented in dad6ec3aa63f to support Windows ARM64 platforms. OpenSSL support for VC-WIN64-ARM target first appeared in 1.1.1 and is present in all currently supported (3.x) branches. As a side effect, ARM64 Windows builds will get 16-byte alignment along with the rest of non-x86 platforms. This is safe, as malloc on 64-bit Windows guarantees the fundamental alignment of allocations, 16 bytes.
-rw-r--r--auto/cc/msvc4
-rw-r--r--auto/lib/openssl/make4
2 files changed, 8 insertions, 0 deletions
diff --git a/auto/cc/msvc b/auto/cc/msvc
index 567bac7bc..fe7c34e49 100644
--- a/auto/cc/msvc
+++ b/auto/cc/msvc
@@ -26,6 +26,10 @@ ngx_msvc_ver=`echo $NGX_MSVC_VER | sed -e 's/^\([0-9]*\).*/\1/'`
case "$NGX_MSVC_VER" in
+ *ARM64)
+ NGX_MACHINE=arm64
+ ;;
+
*x64)
NGX_MACHINE=amd64
;;
diff --git a/auto/lib/openssl/make b/auto/lib/openssl/make
index a7e9369e7..f8480146d 100644
--- a/auto/lib/openssl/make
+++ b/auto/lib/openssl/make
@@ -13,6 +13,10 @@ case "$CC" in
OPENSSL_TARGET=VC-WIN64A
;;
+ arm64)
+ OPENSSL_TARGET=VC-WIN64-ARM
+ ;;
+
*)
OPENSSL_TARGET=VC-WIN32
;;