mirror of
https://github.com/microsoft/DirectXMath
synced 2024-11-08 05:30:07 +00:00
Fix CMake version to match release notes format (#200)
This commit is contained in:
parent
4bf02b8b2e
commit
36850d14da
1
.github/workflows/codeql.yml
vendored
1
.github/workflows/codeql.yml
vendored
@ -14,6 +14,7 @@ on:
|
||||
- '*.md'
|
||||
- LICENSE
|
||||
- '.nuget/*'
|
||||
- build/*.ps1
|
||||
- build/*.yml
|
||||
schedule:
|
||||
- cron: '34 18 * * 6'
|
||||
|
1
.github/workflows/main.yml
vendored
1
.github/workflows/main.yml
vendored
@ -14,6 +14,7 @@ on:
|
||||
- '*.md'
|
||||
- LICENSE
|
||||
- '.nuget/*'
|
||||
- build/*.ps1
|
||||
- build/*.yml
|
||||
|
||||
jobs:
|
||||
|
2
.github/workflows/msvc.yml
vendored
2
.github/workflows/msvc.yml
vendored
@ -14,7 +14,9 @@ on:
|
||||
- '*.md'
|
||||
- LICENSE
|
||||
- '.nuget/*'
|
||||
- build/*.ps1
|
||||
- build/*.yml
|
||||
|
||||
schedule:
|
||||
- cron: '34 20 * * 6'
|
||||
|
||||
|
1
.github/workflows/test.yml
vendored
1
.github/workflows/test.yml
vendored
@ -14,6 +14,7 @@ on:
|
||||
- '*.md'
|
||||
- LICENSE
|
||||
- '.nuget/*'
|
||||
- build/*.ps1
|
||||
- build/*.yml
|
||||
|
||||
jobs:
|
||||
|
53
.github/workflows/wsl.yml
vendored
Normal file
53
.github/workflows/wsl.yml
vendored
Normal file
@ -0,0 +1,53 @@
|
||||
# Copyright (c) Microsoft Corporation.
|
||||
# Licensed under the MIT License.
|
||||
#
|
||||
# http://go.microsoft.com/fwlink/?LinkID=615560
|
||||
|
||||
name: 'CMake (WSL)'
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "main" ]
|
||||
pull_request:
|
||||
branches: [ "main" ]
|
||||
paths-ignore:
|
||||
- '*.md'
|
||||
- LICENSE
|
||||
- '.nuget/*'
|
||||
- build/*.ps1
|
||||
- build/*.yml
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
|
||||
matrix:
|
||||
build_type: [x64-Debug-Linux, x64-Release-Linux]
|
||||
gcc: [10, 11, 12]
|
||||
# x64-Debug-NI-Linux, x64-Release-NI-Linux trigger issue with GCC
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Clone test repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: walbourn/directxmathtest
|
||||
path: Tests
|
||||
ref: main
|
||||
|
||||
- uses: seanmiddleditch/gha-setup-ninja@v5
|
||||
|
||||
- name: 'Configure CMake'
|
||||
working-directory: ${{ github.workspace }}/Tests
|
||||
run: cmake --preset=${{ matrix.build_type }}
|
||||
env:
|
||||
CC: gcc-${{ matrix.gcc }}
|
||||
CXX: g++-${{ matrix.gcc }}
|
||||
|
||||
- name: 'Build'
|
||||
working-directory: ${{ github.workspace }}/Tests
|
||||
run: cmake --build out/build/${{ matrix.build_type }}
|
@ -3,7 +3,7 @@
|
||||
|
||||
cmake_minimum_required (VERSION 3.20)
|
||||
|
||||
set(DIRECTXMATH_VERSION 3.1.9)
|
||||
set(DIRECTXMATH_VERSION 3.19)
|
||||
|
||||
project(DirectXMath
|
||||
VERSION ${DIRECTXMATH_VERSION}
|
||||
@ -110,8 +110,10 @@ elseif(NOT (DEFINED DXMATH_ARCHITECTURE))
|
||||
endif()
|
||||
|
||||
#--- Test suite
|
||||
include(CTest)
|
||||
if(BUILD_TESTING AND WIN32 AND (NOT WINDOWS_STORE) AND (EXISTS "${CMAKE_CURRENT_LIST_DIR}/Tests/CMakeLists.txt"))
|
||||
enable_testing()
|
||||
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/Tests)
|
||||
if(NOT WINDOWS_STORE)
|
||||
include(CTest)
|
||||
if(BUILD_TESTING AND WIN32 AND (NOT WINDOWS_STORE) AND (EXISTS "${CMAKE_CURRENT_LIST_DIR}/Tests/CMakeLists.txt"))
|
||||
enable_testing()
|
||||
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/Tests)
|
||||
endif()
|
||||
endif()
|
||||
|
@ -22,6 +22,7 @@ trigger:
|
||||
- LICENSE
|
||||
- '.github/*'
|
||||
- '.nuget/*'
|
||||
- build/*.ps1
|
||||
|
||||
pr:
|
||||
branches:
|
||||
|
@ -22,6 +22,7 @@ trigger:
|
||||
- LICENSE
|
||||
- '.github/*'
|
||||
- '.nuget/*'
|
||||
- build/*.ps1
|
||||
|
||||
pr:
|
||||
branches:
|
||||
|
@ -22,6 +22,7 @@ trigger:
|
||||
- LICENSE
|
||||
- '.github/*'
|
||||
- '.nuget/*'
|
||||
- build/*.ps1
|
||||
|
||||
pr:
|
||||
branches:
|
||||
|
126
build/preparerelease.ps1
Normal file
126
build/preparerelease.ps1
Normal file
@ -0,0 +1,126 @@
|
||||
<#
|
||||
|
||||
.NOTES
|
||||
Copyright (c) Microsoft Corporation.
|
||||
Licensed under the MIT License.
|
||||
|
||||
.SYNOPSIS
|
||||
Prepares a PR for release
|
||||
|
||||
.DESCRIPTION
|
||||
This script is used to do the edits required for preparing a release PR.
|
||||
|
||||
.PARAMETER BaseBranch
|
||||
This the branch to use as the base of the release. Defaults to 'main'.
|
||||
|
||||
.PARAMETER TargetBranch
|
||||
This is the name of the newly created branch for the release PR. Defaults to '<DATETAG>release'. If set to 'none', then no branch is created.
|
||||
|
||||
.PARAMETER UpdateVersion
|
||||
This is a $true or $false value that indicates if the library version number should be incremented. Defaults to $true.
|
||||
|
||||
.LINK
|
||||
https://github.com/microsoft/DirectXMath/wiki
|
||||
|
||||
#>
|
||||
|
||||
param(
|
||||
[string]$BaseBranch = "main",
|
||||
[string]$TargetBranch = $null,
|
||||
[bool]$UpdateVersion = $true
|
||||
)
|
||||
|
||||
$reporoot = Split-Path -Path $PSScriptRoot -Parent
|
||||
$cmake = $reporoot + "\CMakeLists.txt"
|
||||
$header = $reporoot + "\Inc\DirectXMath.h"
|
||||
$readme = $reporoot + "\README.md"
|
||||
$history = $reporoot + "\CHANGELOG.md"
|
||||
|
||||
if ((-Not (Test-Path $cmake)) -Or (-Not (Test-Path $header)) -Or (-Not (Test-Path $readme)) -Or (-Not (Test-Path $history))) {
|
||||
Write-Error "ERROR: Unexpected location of script file!" -ErrorAction Stop
|
||||
}
|
||||
|
||||
$branch = git branch --show-current
|
||||
if ($branch -ne $BaseBranch) {
|
||||
Write-Error "ERROR: Must be in the $BaseBranch branch!" -ErrorAction Stop
|
||||
}
|
||||
|
||||
git pull -q
|
||||
if ($LastExitCode -ne 0) {
|
||||
Write-Error "ERROR: Failed to sync branch!" -ErrorAction Stop
|
||||
}
|
||||
|
||||
$version = Get-Content ($cmake) | Select-String -Pattern "set\(DIRECTXMATH_VERSION" -CaseSensitive
|
||||
if (-Not ($version -match "([0-9]?\.[0-9]+)")) {
|
||||
Write-Error "ERROR: Failed to current version!" -ErrorAction Stop
|
||||
}
|
||||
$version = $Matches.0
|
||||
$rawversion = $version.replace('.','')
|
||||
|
||||
$newreleasedate = Get-Date -Format "MMMM yyyy"
|
||||
$newreleasetag = (Get-Date -Format "MMMyyyy").ToLower()
|
||||
|
||||
if($UpdateVersion) {
|
||||
[string]$newrawversion = ([int]$rawversion + 1)
|
||||
}
|
||||
else {
|
||||
$newrawversion = $rawversion
|
||||
}
|
||||
|
||||
$newversion = $newrawversion[0] + "." + $newrawversion[1] + $newrawversion[2]
|
||||
|
||||
$rawreleasedate = $(Get-Content $readme) | Select-String -Pattern "\*\*[A-Z][a-z]+\S.?\S.\d\d\d\d\*\*"
|
||||
if ([string]::IsNullOrEmpty($rawreleasedate)) {
|
||||
Write-Error "ERROR: Failed to current release date!" -ErrorAction Stop
|
||||
}
|
||||
$releasedate = $rawreleasedate -replace '\*',''
|
||||
|
||||
if($releasedate -eq $newreleasedate) {
|
||||
Write-Error ("ERROR: Release "+$releasedate+" already exists!") -ErrorAction Stop
|
||||
}
|
||||
|
||||
if ($TargetBranch -ne 'none') {
|
||||
if ([string]::IsNullOrEmpty($TargetBranch)) {
|
||||
$TargetBranch = $newreleasetag + "release"
|
||||
}
|
||||
|
||||
git checkout -b $TargetBranch
|
||||
if ($LastExitCode -ne 0) {
|
||||
Write-Error "ERROR: Failed to create new topic branch!" -ErrorAction Stop
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host " Old Version: " $version
|
||||
Write-Host "Old Release Date: " $releasedate
|
||||
Write-Host "->"
|
||||
Write-Host " Release Date: " $newreleasedate
|
||||
Write-Host " Release Tag: " $newreleasetag
|
||||
Write-Host " Release Version: " $newversion
|
||||
|
||||
if($UpdateVersion) {
|
||||
(Get-Content $cmake).Replace("set(DIRECTXMATH_VERSION $version)","set(DIRECTXMATH_VERSION $newversion)") | Set-Content $cmake
|
||||
(Get-Content $header).Replace("#define DIRECTX_MATH_VERSION $rawversion","#define DIRECTX_MATH_VERSION $newrawversion") | Set-Content $header
|
||||
}
|
||||
|
||||
(Get-Content $readme).Replace("$rawreleasedate", "**$newreleasedate**") | Set-Content $readme
|
||||
|
||||
Get-ChildItem -Path ($reporoot + "\.nuget") -Filter *.nuspec | Foreach-Object {
|
||||
(Get-Content -Path $_.Fullname).Replace("$releasedate", "$newreleasedate") | Set-Content -Path $_.Fullname -Encoding utf8
|
||||
}
|
||||
|
||||
[System.Collections.ArrayList]$file = Get-Content $history
|
||||
$inserthere = @()
|
||||
|
||||
for ($i=0; $i -lt $file.count; $i++) {
|
||||
if ($file[$i] -match "## Release History") {
|
||||
$inserthere += $i + 1
|
||||
}
|
||||
}
|
||||
|
||||
$file.insert($inserthere[0], "`n### $newreleasedate`n* change history here")
|
||||
Set-Content -Path $history -Value $file
|
||||
|
||||
code $history $readme
|
||||
if ($LastExitCode -ne 0) {
|
||||
Write-Error "ERROR: Failed to launch VS Code!" -ErrorAction Stop
|
||||
}
|
Loading…
Reference in New Issue
Block a user