From 3a7adffc464b9565c981f407a5e5bfb031f91778 Mon Sep 17 00:00:00 2001 From: Chuck Walbourn Date: Mon, 3 Feb 2025 13:57:56 -0800 Subject: [PATCH] Fix some warnings in WSL build due to case (#577) --- build/DirectXTex-GitHub-WSL-11.yml | 16 +- build/DirectXTex-GitHub-WSL-13.yml | 243 +++++++++++++++++++++++++++++ build/DirectXTex-GitHub-WSL.yml | 16 +- 3 files changed, 259 insertions(+), 16 deletions(-) create mode 100644 build/DirectXTex-GitHub-WSL-13.yml diff --git a/build/DirectXTex-GitHub-WSL-11.yml b/build/DirectXTex-GitHub-WSL-11.yml index 48db8951..efe995cb 100644 --- a/build/DirectXTex-GitHub-WSL-11.yml +++ b/build/DirectXTex-GitHub-WSL-11.yml @@ -75,42 +75,42 @@ jobs: clean: true fetchTags: false fetchDepth: 1 - path: 's/directx-headers' + path: 's/DirectX-Headers' - checkout: dxMathRepo displayName: Fetch DirectX-Math clean: true fetchTags: false fetchDepth: 1 - path: 's/directxmath' + path: 's/DirectXMath' - task: CMake@1 displayName: CMake DirectX-Headers inputs: - cwd: directx-headers + cwd: DirectX-Headers cmakeArgs: . -DDXHEADERS_BUILD_TEST=OFF -DDXHEADERS_BUILD_GOOGLE_TEST=OFF -DCMAKE_INSTALL_PREFIX=$(LOCAL_PKG_DIR) - task: CMake@1 displayName: CMake DirectX-Headers (Build) inputs: - cwd: directx-headers + cwd: DirectX-Headers cmakeArgs: --build . -v - task: CMake@1 displayName: CMake DirectX-Headers (Install) inputs: - cwd: directx-headers + cwd: DirectX-Headers cmakeArgs: --install . - task: CMake@1 displayName: CMake DirectXMath inputs: - cwd: directxmath + cwd: DirectXMath cmakeArgs: . -DCMAKE_INSTALL_PREFIX=$(LOCAL_PKG_DIR) - task: CMake@1 displayName: CMake DirectXMath (Build) inputs: - cwd: directxmath + cwd: DirectXMath cmakeArgs: --build . -v - task: CMake@1 displayName: CMake DirectXMath (Install) inputs: - cwd: directxmath + cwd: DirectXMath cmakeArgs: --install . - task: PowerShell@2 displayName: Fetch SAL.H diff --git a/build/DirectXTex-GitHub-WSL-13.yml b/build/DirectXTex-GitHub-WSL-13.yml new file mode 100644 index 00000000..b872b0ff --- /dev/null +++ b/build/DirectXTex-GitHub-WSL-13.yml @@ -0,0 +1,243 @@ +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# https://go.microsoft.com/fwlink/?LinkId=248926 + +# Builds the library for Windows Subsystem for Linux (WSL) + +schedules: +- cron: "0 3 * * *" + displayName: 'Nightly build' + branches: + include: + - main + +trigger: none + +pr: + branches: + include: + - main + paths: + include: + - CMake* + - build/*.cmake + - build/*.in + - build/DirectXTex-GitHub-WSL-13.yml + +resources: + repositories: + - repository: self + type: git + ref: refs/heads/main + trigger: none + - repository: dxHeadersRepo + name: Microsoft/DirectX-Headers + type: github + endpoint: microsoft + ref: refs/heads/main + - repository: dxMathRepo + name: Microsoft/DirectXMath + type: github + endpoint: microsoft + ref: refs/heads/main + - repository: vcpkgRepo + name: Microsoft/vcpkg + type: github + endpoint: microsoft + ref: refs/tags/$(VCPKG_TAG) + +name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r) + +pool: + vmImage: ubuntu-24.04 + +variables: + Codeql.Enabled: false + VCPKG_ROOT: $(Build.SourcesDirectory)/vcpkg + VCPKG_CMAKE_DIR: $(Build.SourcesDirectory)/vcpkg/scripts/buildsystems/vcpkg.cmake + VCPKG_MANIFEST_DIR: $(Build.SourcesDirectory)/build + LOCAL_PKG_DIR: '$(Agent.BuildDirectory)/install/' + +jobs: +- job: BUILD_WSL + displayName: 'Windows Subsystem for Linux (WSL)' + timeoutInMinutes: 120 + cancelTimeoutInMinutes: 1 + steps: + - checkout: self + clean: true + fetchTags: false + fetchDepth: 1 + path: 's' + - checkout: dxHeadersRepo + displayName: Fetch DirectX-Headers + clean: true + fetchTags: false + fetchDepth: 1 + path: 's/DirectX-Headers' + - checkout: dxMathRepo + displayName: Fetch DirectX-Math + clean: true + fetchTags: false + fetchDepth: 1 + path: 's/DirectXMath' + - task: CMake@1 + displayName: CMake DirectX-Headers + inputs: + cwd: DirectX-Headers + cmakeArgs: . -DDXHEADERS_BUILD_TEST=OFF -DDXHEADERS_BUILD_GOOGLE_TEST=OFF -DCMAKE_INSTALL_PREFIX=$(LOCAL_PKG_DIR) + - task: CMake@1 + displayName: CMake DirectX-Headers (Build) + inputs: + cwd: DirectX-Headers + cmakeArgs: --build . -v + - task: CMake@1 + displayName: CMake DirectX-Headers (Install) + inputs: + cwd: DirectX-Headers + cmakeArgs: --install . + - task: CMake@1 + displayName: CMake DirectXMath + inputs: + cwd: DirectXMath + cmakeArgs: . -DCMAKE_INSTALL_PREFIX=$(LOCAL_PKG_DIR) + - task: CMake@1 + displayName: CMake DirectXMath (Build) + inputs: + cwd: DirectXMath + cmakeArgs: --build . -v + - task: CMake@1 + displayName: CMake DirectXMath (Install) + inputs: + cwd: DirectXMath + cmakeArgs: --install . + - task: PowerShell@2 + displayName: Fetch SAL.H + inputs: + targetType: inline + script: | + $ProgressPreference = 'SilentlyContinue' + Invoke-WebRequest -Uri https://raw.githubusercontent.com/dotnet/corert/master/src/Native/inc/unix/sal.h -OutFile $(LOCAL_PKG_DIR)/include/sal.h + $fileHash = Get-FileHash -Algorithm SHA512 $(LOCAL_PKG_DIR)/include/sal.h | ForEach { $_.Hash} | Out-String + $filehash = $fileHash.Trim() + Write-Host "##[debug]SHA512: " $filehash + if ($fileHash -ne "1643571673195d9eb892d2f2ac76eac7113ef7aa0ca116d79f3e4d3dc9df8a31600a9668b7e7678dfbe5a76906f9e0734ef8d6db0903ccc68fc742dd8238d8b0") { + Write-Error -Message "##[error]Computed hash does not match!" -ErrorAction Stop + } + + - task: CMake@1 + displayName: CMake DirectXTex (Config) dbg + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: -B out -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH=$(LOCAL_PKG_DIR)/share;$(LOCAL_PKG_DIR)/cmake + - task: CMake@1 + displayName: CMake DirectXTex (Build) dbg + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: --build out -v + - task: CMake@1 + displayName: CMake DirectXTex (Config) rel + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: -B out2 -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$(LOCAL_PKG_DIR)/share;$(LOCAL_PKG_DIR)/cmake + - task: CMake@1 + displayName: CMake DirectXTex (Build) rel + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: --build out2 -v + +- job: BUILD_WSL_VCPKG + displayName: 'Windows Subsystem for Linux (WSL) using VCPKG' + timeoutInMinutes: 120 + cancelTimeoutInMinutes: 1 + steps: + - checkout: self + clean: true + fetchTags: false + fetchDepth: 1 + path: 's' + - checkout: vcpkgRepo + displayName: Fetch VCPKG + clean: true + fetchTags: false + fetchDepth: 1 + path: 's/vcpkg' + - task: Bash@3 + displayName: VCPKG Bootstrap + inputs: + targetType: filePath + filePath: $(Build.SourcesDirectory)/vcpkg/bootstrap-vcpkg.sh + workingDirectory: $(Build.SourcesDirectory)/vcpkg + - task: CmdLine@2 + displayName: GCC and CMake version + inputs: + script: | + g++ --version + cmake --version + + - task: CmdLine@2 + displayName: VCPKG install packages + inputs: + script: vcpkg install --x-manifest-root=$(VCPKG_MANIFEST_DIR) --triplet=x64-linux + workingDirectory: $(VCPKG_ROOT) + - task: CMake@1 + displayName: CMake DirectXTex (Config) dbg + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: > + -B out -DCMAKE_BUILD_TYPE=Debug -DDIRECTX_ARCH=x64 + -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x64-linux + - task: CMake@1 + displayName: CMake DirectXTex (Build) dbg + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: --build out -v + - task: CMake@1 + displayName: CMake DirectXTex (Config) rel + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: > + -B out2 -DCMAKE_BUILD_TYPE=Release -DDIRECTX_ARCH=x64 + -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x64-linux + - task: CMake@1 + displayName: CMake DirectXTex (Build) rel + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: --build out2 -v + - task: CMake@1 + displayName: CMake DirectXTex (Config) w/ OpenEXR + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: > + -B out3 -DCMAKE_BUILD_TYPE=Debug -DENABLE_OPENEXR_SUPPORT=ON -DDIRECTX_ARCH=x64 + -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x64-linux + - task: CMake@1 + displayName: CMake DirectXTex (Build) w/ OpenEXR + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: --build out3 -v + - task: CMake@1 + displayName: CMake DirectXTex (Config) w/ libjpeg + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: > + -B out4 -DCMAKE_BUILD_TYPE=Debug -DENABLE_LIBJPEG_SUPPORT=ON -DDIRECTX_ARCH=x64 + -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x64-linux + - task: CMake@1 + displayName: CMake DirectXTex (Build) w/ libjpeg + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: --build out4 -v + - task: CMake@1 + displayName: CMake DirectXTex (Config) w/ libpng + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: > + -B out5 -DCMAKE_BUILD_TYPE=Debug -DENABLE_LIBPNG_SUPPORT=ON -DDIRECTX_ARCH=x64 + -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x64-linux + - task: CMake@1 + displayName: CMake DirectXTex (Build) w/ libpng + inputs: + cwd: $(Build.SourcesDirectory) + cmakeArgs: --build out5 -v diff --git a/build/DirectXTex-GitHub-WSL.yml b/build/DirectXTex-GitHub-WSL.yml index 19a8a120..29fafd9b 100644 --- a/build/DirectXTex-GitHub-WSL.yml +++ b/build/DirectXTex-GitHub-WSL.yml @@ -94,42 +94,42 @@ jobs: clean: true fetchTags: false fetchDepth: 1 - path: 's/directx-headers' + path: 's/DirectX-Headers' - checkout: dxMathRepo displayName: Fetch DirectX-Math clean: true fetchTags: false fetchDepth: 1 - path: 's/directxmath' + path: 's/DirectXMath' - task: CMake@1 displayName: CMake DirectX-Headers inputs: - cwd: directx-headers + cwd: DirectX-Headers cmakeArgs: . -DDXHEADERS_BUILD_TEST=OFF -DDXHEADERS_BUILD_GOOGLE_TEST=OFF -DCMAKE_INSTALL_PREFIX=$(LOCAL_PKG_DIR) - task: CMake@1 displayName: CMake DirectX-Headers (Build) inputs: - cwd: directx-headers + cwd: DirectX-Headers cmakeArgs: --build . -v - task: CMake@1 displayName: CMake DirectX-Headers (Install) inputs: - cwd: directx-headers + cwd: DirectX-Headers cmakeArgs: --install . - task: CMake@1 displayName: CMake DirectXMath inputs: - cwd: directxmath + cwd: DirectXMath cmakeArgs: . -DCMAKE_INSTALL_PREFIX=$(LOCAL_PKG_DIR) - task: CMake@1 displayName: CMake DirectXMath (Build) inputs: - cwd: directxmath + cwd: DirectXMath cmakeArgs: --build . -v - task: CMake@1 displayName: CMake DirectXMath (Install) inputs: - cwd: directxmath + cwd: DirectXMath cmakeArgs: --install . - task: PowerShell@2 displayName: Fetch SAL.H