1## -*- mode: perl; -*-
2# Windows on Arm clang-cl targets.
3#
4
5my %targets = (
6    "VC-WIN64-CLANGASM-ARM" => {
7        inherit_from    => [ "VC-noCE-common" ],
8        defines         => add("_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE",
9                               "OPENSSL_SYS_WIN_CORE"),
10        bn_ops          => "SIXTY_FOUR_BIT RC4_CHAR",
11        multilib        => "-arm64",
12        asm_arch        => "aarch64",
13        AS        => "clang-cl.exe",
14        ASFLAGS   => "/nologo /Zi",
15        asflags   => "/c",
16        asoutflag => "/Fo",
17        perlasm_scheme => "win64",
18        uplink_arch      => 'armv8',
19    },
20    "VC-CLANG-WIN64-CLANGASM-ARM" => {
21        CC => "clang-cl",
22        inherit_from    => [ "VC-noCE-common" ],
23        defines         => add("_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE",
24                               "OPENSSL_SYS_WIN_CORE"),
25        bn_ops          => "SIXTY_FOUR_BIT RC4_CHAR",
26        multilib        => "-arm64",
27        asm_arch        => "aarch64",
28        CFLAGS        => add("--target=arm64-pc-windows-msvc"),
29        AS        => "clang-cl.exe",
30        ASFLAGS   => "/nologo /Zi --target=arm64-pc-windows-msvc",
31        asflags   => "/c",
32        asoutflag => "/Fo",
33        perlasm_scheme => "win64",
34        uplink_arch      => 'armv8',
35    },
36);
37