Skip to content

Commit

Permalink
Merging PR#2 from @christophe-lunarg
Browse files Browse the repository at this point in the history
  • Loading branch information
icaven committed Dec 21, 2023
1 parent 50d3b3d commit 3bb607e
Show file tree
Hide file tree
Showing 1,745 changed files with 255,116 additions and 61,811 deletions.
92 changes: 92 additions & 0 deletions .appveyor.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
shallow_clone: true

platform:
- x86
- x64

configuration:
- Debug
- Release

image:
- Visual Studio 2013
- Visual Studio 2015
- Visual Studio 2017
- Visual Studio 2019

environment:
matrix:
- GLM_ARGUMENTS: -DGLM_TEST_FORCE_PURE=ON
- GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON -DGLM_TEST_ENABLE_CXX_14=ON
- GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON -DGLM_TEST_ENABLE_CXX_17=ON

matrix:
exclude:
- image: Visual Studio 2013
GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- image: Visual Studio 2013
GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON -DGLM_TEST_ENABLE_CXX_14=ON
- image: Visual Studio 2013
GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON -DGLM_TEST_ENABLE_CXX_17=ON
- image: Visual Studio 2013
configuration: Debug
- image: Visual Studio 2015
GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- image: Visual Studio 2015
GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON -DGLM_TEST_ENABLE_CXX_14=ON
- image: Visual Studio 2015
GLM_ARGUMENTS: -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON -DGLM_TEST_ENABLE_CXX_17=ON
- image: Visual Studio 2015
platform: x86
- image: Visual Studio 2015
configuration: Debug
- image: Visual Studio 2017
platform: x86
- image: Visual Studio 2017
configuration: Debug
- image: Visual Studio 2019
platform: x64

branches:
only:
- master

before_build:
- ps: |
mkdir build
cd build
if ("$env:APPVEYOR_JOB_NAME" -match "Image: Visual Studio 2013") {
$env:generator="Visual Studio 12 2013"
}
if ("$env:APPVEYOR_JOB_NAME" -match "Image: Visual Studio 2015") {
$env:generator="Visual Studio 14 2015"
}
if ("$env:APPVEYOR_JOB_NAME" -match "Image: Visual Studio 2017") {
$env:generator="Visual Studio 15 2017"
}
if ("$env:APPVEYOR_JOB_NAME" -match "Image: Visual Studio 2019") {
$env:generator="Visual Studio 16 2019"
}
if ($env:PLATFORM -eq "x64") {
$env:generator="$env:generator Win64"
}
echo generator="$env:generator"
cmake .. -G "$env:generator" -DCMAKE_INSTALL_PREFIX="$env:APPVEYOR_BUILD_FOLDER/install" -DGLM_QUIET=ON -DGLM_TEST_ENABLE=ON "$env:GLM_ARGUMENTS"
build_script:
- cmake --build . --parallel --config %CONFIGURATION% -- /m /v:minimal
- cmake --build . --target install --parallel --config %CONFIGURATION% -- /m /v:minimal

test_script:
- ctest --parallel 4 --verbose -C %CONFIGURATION%
- cd ..
- ps: |
mkdir build_test_cmake
cd build_test_cmake
cmake ..\test\cmake\ -G "$env:generator" -DCMAKE_PREFIX_PATH="$env:APPVEYOR_BUILD_FOLDER/install"
- cmake --build . --parallel --config %CONFIGURATION% -- /m /v:minimal

deploy: off
174 changes: 174 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
name: ci
run-name: ${{ github.actor }} is testing out GitHub Actions 🚀
on: [push]
jobs:
windows-latest:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
std: [98, 11, 17]
config: [Debug, Release]

steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
- name: CMake Version
run: cmake --version
- run: cmake -S. -B ./build_pure_std -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_pure_ext -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake -S. -B ./build_sse2_std -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_sse2_ext -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
#- run: cmake -S. -B ./build_avx2_std -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
#- run: cmake -S. -B ./build_avx2_ext -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake --build ./build_pure_std --config ${{matrix.config}}
- run: cmake --build ./build_pure_ext --config ${{matrix.config}}
- run: cmake --build ./build_sse2_std --config ${{matrix.config}}
- run: cmake --build ./build_sse2_ext --config ${{matrix.config}}
#- run: cmake --build ./build_avx2_std --config ${{matrix.config}}
#- run: cmake --build ./build_avx2_ext --config ${{matrix.config}}
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_pure_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_pure_ext
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_sse2_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_sse2_ext
#- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_std
#- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_ext
ubuntu-latest:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
std: [98, 11, 17]
config: [Debug, Release]

steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
- name: GCC Version
run: gcc --version
- name: CMake Version
run: cmake --version
- run: cmake -S. -B ./build_pure_std -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_pure_ext -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake -S. -B ./build_sse2_std -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_sse2_ext -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
#- run: cmake -S. -B ./build_avx2_std -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
#- run: cmake -S. -B ./build_avx2_ext -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake --build ./build_pure_std --config ${{matrix.config}}
- run: cmake --build ./build_pure_ext --config ${{matrix.config}}
- run: cmake --build ./build_sse2_std --config ${{matrix.config}}
- run: cmake --build ./build_sse2_ext --config ${{matrix.config}}
#- run: cmake --build ./build_avx2_std --config ${{matrix.config}}
#- run: cmake --build ./build_avx2_ext --config ${{matrix.config}}
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_pure_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_pure_ext
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_sse2_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_sse2_ext
#- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_std
#- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_ext
macos-latest:
runs-on: macos-latest
strategy:
fail-fast: false
matrix:
std: [98, 11, 17]
config: [Debug, Release]

steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
- name: CMake Version
run: cmake --version
- name: Clang Version
run: clang --version
- run: cmake -S. -B ./build_pure_std -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_pure_ext -DGLM_TEST_FORCE_PURE=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake -S. -B ./build_sse2_std -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
- run: cmake -S. -B ./build_sse2_ext -DGLM_TEST_ENABLE_SIMD_SSE2=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
#- run: cmake -S. -B ./build_avx2_std -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON
#- run: cmake -S. -B ./build_avx2_ext -DGLM_TEST_ENABLE_SIMD_AVX=ON -DGLM_TEST_ENABLE_CXX_${{matrix.std}}=ON -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON
- run: cmake --build ./build_pure_std --config ${{matrix.config}}
- run: cmake --build ./build_pure_ext --config ${{matrix.config}}
- run: cmake --build ./build_sse2_std --config ${{matrix.config}}
- run: cmake --build ./build_sse2_ext --config ${{matrix.config}}
#- run: cmake --build ./build_avx2_std --config ${{matrix.config}}
#- run: cmake --build ./build_avx2_ext --config ${{matrix.config}}
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_pure_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_pure_ext
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_sse2_std
- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_sse2_ext
#- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_std
#- run: ctest --verbose -C ${{matrix.config}} --test-dir ./build_avx2_ext

#name: GLM Unit Tests

#run-name: ${{ github.actor }} is running GLM unit tests

#on:
# push:
# pull_request:
# branches:
# - master

#jobs:
# windows-latest:
# runs-on: windows-latest
# strategy:
# fail-fast: false
# matrix:
# std: [98, 11, 14, 17, 20]
#os: [ubuntu-latest, macos-latest, windows-latest]
# config: [Debug, Release]

# name: "${{ matrix.os}} ${{ matrix.cxx }} C++:${{ matrix.std }}"
# runs-on: ubuntu-latest, macos-latest, windows-latest
# env:
# CXX: ${{ matrix.cxx }}

# steps:
# - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
# - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
# - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
# - name: Check out repository code
# uses: actions/checkout@v4
# - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
# - run: echo "🖥️ The workflow is now ready to test your code on the runner."
# - name: List files in the repository
# run: |
# ls ${{ github.workspace }}
# - run: echo "🍏 This job's status is ${{ job.status }}."

# - name: Tool versions
# run: |
# ${CXX} --version
# cmake --version

#- run: cmake --build . --parallel --config ${{matrix.config}}
#- run: ctest --parallel 4 --verbose -C ${{matrix.config}}
42 changes: 42 additions & 0 deletions .github/workflows/make_light_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# A workflow that creates a minimal archive with only the glm/ headers and copying.txt.

name: Make light release

on:
release:
types: [published]

jobs:
make_zip:
runs-on: ubuntu-latest

steps:
- name: Install dependencies
run: sudo apt-get update -y && sudo apt-get install -y zip p7zip

- name: Check out repository code
uses: actions/checkout@v3

- name: Set env
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV

- name: Prepare layout
run: mv copying.txt glm

- name: Create zip archive
run: zip -r glm-${{ env.RELEASE_VERSION }}-light.zip glm

- name: Create 7z archive
run: 7z a glm-${{ env.RELEASE_VERSION }}-light.7z glm

- uses: actions/upload-artifact@v3
with:
name: glm-${{ env.RELEASE_VERSION }}-light
path: glm-${{ env.RELEASE_VERSION }}-light.*

- name: Add to Release
uses: softprops/action-gh-release@v1
with:
files: |
glm-${{ env.RELEASE_VERSION }}-light.zip
glm-${{ env.RELEASE_VERSION }}-light.7z
61 changes: 61 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app

# CMake
CMakeCache.txt
CMakeFiles
cmake_install.cmake
install_manifest.txt
*.cmake
!glmConfig.cmake
!glmConfig-version.cmake
# ^ May need to add future .cmake files as exceptions

# Test logs
Testing/*

# Test input
test/gtc/*.dds

# Project Files
Makefile
*.cbp
*.user

# Misc.
*.log

# local build(s)
build*

/.vs
/.vscode
/CMakeSettings.json
.DS_Store
*.swp
Loading

0 comments on commit 3bb607e

Please sign in to comment.