{
    "version": "3.2.1",
    "description": "TLS/SSL toolkit",
    "homepage": "https://slproweb.com/products/Win32OpenSSL.html",
    "license": "Apache-2.0",
    "architecture": {
        "64bit": {
            "url": "https://slproweb.com/download/Win64OpenSSL-3_2_1.exe",
            "hash": "e6f9f7996ccc3e5fa07dcc436bc0125abfbac98737874cb7aeaabbe52d004346"
        },
        "32bit": {
            "url": "https://slproweb.com/download/Win32OpenSSL-3_2_1.exe",
            "hash": "4ee78b1bd648e676adeadc382705565fc707d781d8f958c9ac4d23307d7958ce"
        },
        "arm64": {
            "url": "https://slproweb.com/download/Win64ARMOpenSSL-3_2_1.exe",
            "hash": "b39572c02cedfaf3cf68ff12c6b63fb6553d95173f6f1a8f62435f4edb48f490"
        }
    },
    "pre_install": [
        "$arch = switch ($architecture) {",
        "    '64bit' { 'x64'; break }",
        "    '32bit' { 'x32'; break }",
        "    'arm64' { $architecture; break }",
        "}",
        "if ([System.Environment]::OSVersion.Version -lt [Version]10.0.14972.0) {",
        "    return $null = Get-ChildItem \"$dir/lib/VC/$arch/MT\" | ForEach-Object { Copy-Item $_.FullName \"$dir/lib/$($_.Name)\" }",
        "}",
        "Receive-Job -Wait (Start-Job {",
        "    $kernel32 = Add-Type -MemberDefinition '[DllImport(\"kernel32.dll\")] public static extern bool CreateSymbolicLink(string lpSymlinkFileName, string lpTargetFileName, byte dwFlags);' -Name '_' -PassThru",
        "    $null = Get-ChildItem \"$Using:dir/lib/VC/$Using:arch/MT\" | ForEach-Object { $kernel32::CreateSymbolicLink(\"$Using:dir/lib/$($_.Name)\", $_.FullName, 2) }",
        "})"
    ],
    "innosetup": true,
    "env_add_path": "bin",
    "env_set": {
        "OPENSSL_ROOT_DIR": "$dir",
        "OPENSSL_LIB_DIR": "$dir\\lib",
        "OPENSSL_INCLUDE_DIR": "$dir\\include",
        "OPENSSL_MODULES": "$dir\\bin",
        "OPENSSL_CONF": "$dir\\bin\\cnf\\openssl.cnf"
    },
    "checkver": {
        "url": "https://raw.githubusercontent.com/slproweb/opensslhashes/master/win32_openssl_hashes.json",
        "jsonpath": "$.files..basever",
        "regex": "([\\d.]+)",
        "reverse": true
    },
    "autoupdate": {
        "architecture": {
            "64bit": {
                "url": "https://slproweb.com/download/Win64OpenSSL-$underscoreVersion.exe"
            },
            "32bit": {
                "url": "https://slproweb.com/download/Win32OpenSSL-$underscoreVersion.exe"
            },
            "arm64": {
                "url": "https://slproweb.com/download/Win64ARMOpenSSL-$underscoreVersion.exe"
            }
        },
        "hash": {
            "url": "https://raw.githubusercontent.com/slproweb/opensslhashes/master/win32_openssl_hashes.json",
            "jsonpath": "$.files.['$basename'].sha256"
        }
    }
}
