diff options
Diffstat (limited to 'windows')
-rw-r--r-- | windows/build.ps1 | 15 | ||||
-rw-r--r-- | windows/const.ps1 | 16 | ||||
-rwxr-xr-x | windows/cygwin.ps1 | 11 | ||||
-rw-r--r-- | windows/release.ps1 | 14 |
4 files changed, 35 insertions, 21 deletions
diff --git a/windows/build.ps1 b/windows/build.ps1 index ff43d8b..abc139e 100644 --- a/windows/build.ps1 +++ b/windows/build.ps1 @@ -98,6 +98,13 @@ New-Item -Type Directory "${STAGE}\${LIBRESSL}" -Force New-Item -Type Directory "${STAGE}\${LIBCBOR}" -Force New-Item -Type Directory "${STAGE}\${ZLIB}" -Force +# Create GNUPGHOME with an empty common.conf to disable use-keyboxd. +# Recent default is to enable keyboxd which in turn ignores --keyring +# arguments. +$GpgHome = "${BUILD}\.gnupg" +New-Item -Type Directory "${GpgHome}" -Force +New-Item -Type File "${GpgHome}\common.conf" -Force + # Create output directories. New-Item -Type Directory "${OUTPUT}" -Force New-Item -Type Directory "${OUTPUT}\${Arch}" -Force @@ -117,8 +124,9 @@ try { } Copy-Item "$PSScriptRoot\libressl.gpg" -Destination "${BUILD}" - & $GPG --list-keys - & $GPG --quiet --no-default-keyring --keyring ./libressl.gpg ` + & $GPG --homedir ${GpgHome} --list-keys + & $GPG --homedir ${GpgHome} --quiet --no-default-keyring ` + --keyring ./libressl.gpg ` --verify .\${LIBRESSL}.tar.gz.asc .\${LIBRESSL}.tar.gz if ($LastExitCode -ne 0) { throw "GPG signature verification failed" @@ -144,8 +152,9 @@ Push-Location ${STAGE}\${LIBRESSL} try { & $CMake ..\..\..\${LIBRESSL} -A "${Arch}" ` -DBUILD_SHARED_LIBS="${SHARED}" -DLIBRESSL_TESTS=OFF ` - -DCMAKE_C_FLAGS_DEBUG="${CFLAGS_DEBUG}" ` + -DLIBRESSL_APPS=OFF -DCMAKE_C_FLAGS_DEBUG="${CFLAGS_DEBUG}" ` -DCMAKE_C_FLAGS_RELEASE="${CFLAGS_RELEASE}" ` + -DCMAKE_MSVC_RUNTIME_LIBRARY="${CMAKE_MSVC_RUNTIME_LIBRARY}" ` -DCMAKE_INSTALL_PREFIX="${PREFIX}" "${CMAKE_SYSTEM_VERSION}"; ` ExitOnError & $CMake --build . --config ${Config} --verbose; ExitOnError diff --git a/windows/const.ps1 b/windows/const.ps1 index 7fac21e..7a39b01 100644 --- a/windows/const.ps1 +++ b/windows/const.ps1 @@ -1,24 +1,24 @@ -# Copyright (c) 2021-2023 Yubico AB. All rights reserved. +# Copyright (c) 2021-2024 Yubico AB. All rights reserved. # Use of this source code is governed by a BSD-style # license that can be found in the LICENSE file. # SPDX-License-Identifier: BSD-2-Clause # LibreSSL coordinates. New-Variable -Name 'LIBRESSL_URL' ` - -Value 'https://cloudflare.cdn.openbsd.org/pub/OpenBSD/LibreSSL' ` + -Value 'https://ftp.openbsd.org/pub/OpenBSD/LibreSSL' ` -Option Constant -New-Variable -Name 'LIBRESSL' -Value 'libressl-3.7.3' -Option Constant -New-Variable -Name 'CRYPTO_LIBRARIES' -Value 'crypto-50' -Option Constant +New-Variable -Name 'LIBRESSL' -Value 'libressl-3.9.2' -Option Constant +New-Variable -Name 'CRYPTO_LIBRARIES' -Value 'crypto' -Option Constant # libcbor coordinates. -New-Variable -Name 'LIBCBOR' -Value 'libcbor-0.10.2' -Option Constant -New-Variable -Name 'LIBCBOR_BRANCH' -Value 'v0.10.2' -Option Constant +New-Variable -Name 'LIBCBOR' -Value 'libcbor-0.11.0' -Option Constant +New-Variable -Name 'LIBCBOR_BRANCH' -Value 'v0.11.0' -Option Constant New-Variable -Name 'LIBCBOR_GIT' -Value 'https://github.com/pjk/libcbor' ` -Option Constant # zlib coordinates. -New-Variable -Name 'ZLIB' -Value 'zlib-1.3' -Option Constant -New-Variable -Name 'ZLIB_BRANCH' -Value 'v1.3' -Option Constant +New-Variable -Name 'ZLIB' -Value 'zlib-1.3.1' -Option Constant +New-Variable -Name 'ZLIB_BRANCH' -Value 'v1.3.1' -Option Constant New-Variable -Name 'ZLIB_GIT' -Value 'https://github.com/madler/zlib' ` -Option Constant diff --git a/windows/cygwin.ps1 b/windows/cygwin.ps1 index 0681830..253b452 100755 --- a/windows/cygwin.ps1 +++ b/windows/cygwin.ps1 @@ -38,6 +38,13 @@ Write-Host "GPG: $GPG" New-Item -Type Directory "${Cygwin}" -Force New-Item -Type Directory "${Root}" -Force +# Create GNUPGHOME with an empty common.conf to disable use-keyboxd. +# Recent default is to enable keyboxd which in turn ignores --keyring +# arguments. +$GpgHome = "${Cygwin}\.gnupg" +New-Item -Type Directory "${GpgHome}" -Force +New-Item -Type File "${GpgHome}\common.conf" -Force + # Fetch and verify Cygwin. try { if (-Not (Test-Path ${Cygwin}\${Setup} -PathType leaf)) { @@ -48,8 +55,8 @@ try { Invoke-WebRequest ${URL}/${Setup}.sig ` -OutFile ${Cygwin}\${Setup}.sig } - & $GPG --list-keys - & $GPG --quiet --no-default-keyring ` + & $GPG --homedir ${GpgHome} --list-keys + & $GPG --homedir ${GpgHome} --quiet --no-default-keyring ` --keyring ${PSScriptRoot}/cygwin.gpg ` --verify ${Cygwin}\${Setup}.sig ${Cygwin}\${Setup} if ($LastExitCode -ne 0) { diff --git a/windows/release.ps1 b/windows/release.ps1 index cc5f635..6989a5c 100644 --- a/windows/release.ps1 +++ b/windows/release.ps1 @@ -1,4 +1,4 @@ -# Copyright (c) 2021-2022 Yubico AB. All rights reserved. +# Copyright (c) 2021-2024 Yubico AB. All rights reserved. # Use of this source code is governed by a BSD-style # license that can be found in the LICENSE file. # SPDX-License-Identifier: BSD-2-Clause @@ -60,14 +60,12 @@ Function Package-PDBs(${SRC}, ${DEST}) { } Function Package-StaticPDBs(${SRC}, ${DEST}) { + # NOTE: original file names must be preserved Copy-Item "${SRC}\${LIBRESSL}\crypto\crypto_obj.dir\${Config}\crypto_obj.pdb" ` - "${DEST}\${CRYPTO_LIBRARIES}.pdb" - Copy-Item "${SRC}\${LIBCBOR}\src\${Config}\cbor.pdb" ` - "${DEST}\cbor.pdb" - Copy-Item "${SRC}\${ZLIB}\${Config}\zlibstatic.pdb" ` - "${DEST}\zlib1.pdb" - Copy-Item "${SRC}\src\${Config}\fido2_static.pdb" ` - "${DEST}\fido2.pdb" + "${DEST}" + Copy-Item "${SRC}\${LIBCBOR}\src\${Config}\cbor.pdb" "${DEST}" + Copy-Item "${SRC}\${ZLIB}\${Config}\zlibstatic.pdb" "${DEST}" + Copy-Item "${SRC}\src\${Config}\fido2_static.pdb" "${DEST}" } Function Package-Tools(${SRC}, ${DEST}) { |