diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 123470a..9acb551 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,7 +1,7 @@ name: Build and test # Run the jobs for pushes and pull requests targetting main branch. -on: +on: push: branches: - main @@ -20,131 +20,135 @@ on: jobs: # A build job matrix based on pre-built USD binaries provided by NVIDIA. -# nvidia-usd-binaries-linux-build: -# strategy: -# matrix: -# usdVersion: -# - 21.05 -# include: -# - usdVersion: 21.05 -# usdVersionUrl: 21-05 -# pythonVersion: 3.6 -# USE_PYTHON_3: ON -# buildType: Release -# buildTests: 'ON' -# runs-on: ubuntu-18.04 -# name: 'Ubuntu 18.04 NVIDIA Pre-built Binaries -# ' -# steps: -# - name: Install dependencies (Linux) -# run: sudo apt-get install cmake python${{ matrix.pythonVersion }} python${{ matrix.pythonVersion }}-dev -# - uses: actions/checkout@v2 -# - name: Download and extract pre-built USD binaries -# run: | -# curl -L -o /tmp/usd-${{ matrix.usdVersion }}.7z https://developer.nvidia.com/usd-${{ matrix.usdVersionUrl }}-binary-linux-python-${{ matrix.pythonVersion }} -# mkdir -p /tmp/usd-${{ matrix.usdVersion }} -# 7z x /tmp/usd-${{ matrix.usdVersion }}.7z -o/tmp/usd-${{ matrix.usdVersion }} -# - name: Create build directories -# run: | -# mkdir _build -# mkdir _install -# - name: Configure -# run: | -# cmake -DUSD_ROOT="/tmp/usd-${{ matrix.usdVersion }}/" \ -# -DTBB_ROOT="/tmp/usd-${{ matrix.usdVersion }}/" \ -# -DBOOST_ROOT="/tmp/usd-${{ matrix.usdVersion }}/" \ -# -DUSE_PYTHON_3=${{ matrix.USE_PYTHON_3 }} \ -# -DCMAKE_BUILD_TYPE=${{ matrix.buildType }} \ -# -DBUILD_TESTING=${{ matrix.buildTests }} \ -# -DCMAKE_CXX_FLAGS="-D_GLIBCXX_USE_CXX11_ABI=0" \ -# -DCMAKE_INSTALL_PREFIX=../_install \ -# .. -# working-directory: _build -# - name: Build -# run: | -# cmake --build . \ -# --verbose \ -# --target install \ -# --config ${{ matrix.buildType }} -# working-directory: _build -# - name: Test -# run: ctest -VV --output-on-failure -C ${{ matrix.buildType }} -# working-directory: _build + nvidia-usd-binaries-linux-build: + strategy: + matrix: + usdVersion: + - 22.08 + include: + - usdVersion: 22.08 + usdVersionUrl: 22-08 + pythonVersion: 3.7 + USE_PYTHON_3: ON + buildType: Release + buildTests: 'ON' + runs-on: ubuntu-18.04 + name: 'Ubuntu 18.04 NVIDIA Pre-built Binaries + ' + steps: + - name: Install dependencies (Linux) + run: sudo apt-get install cmake python${{ matrix.pythonVersion }} python${{ matrix.pythonVersion }}-dev + - name: Set up Python ${{ matrix.pythonVersion }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.pythonVersion }} + - uses: actions/checkout@v2 + - name: Download and extract pre-built USD binaries + run: | + curl -L -o /tmp/usd-${{ matrix.usdVersion }}.7z https://developer.nvidia.com/usd-${{ matrix.usdVersionUrl }}-binary-linux-python-${{ matrix.pythonVersion }} + mkdir -p /tmp/usd-${{ matrix.usdVersion }} + 7z x /tmp/usd-${{ matrix.usdVersion }}.7z -o/tmp/usd-${{ matrix.usdVersion }} + - name: Create build directories + run: | + mkdir _build + mkdir _install + - name: Configure + run: | + cmake -DUSD_ROOT="/tmp/usd-${{ matrix.usdVersion }}/" \ + -DTBB_ROOT="/tmp/usd-${{ matrix.usdVersion }}/" \ + -DBOOST_ROOT="/tmp/usd-${{ matrix.usdVersion }}/" \ + -DUSE_PYTHON_3=${{ matrix.USE_PYTHON_3 }} \ + -DCMAKE_BUILD_TYPE=${{ matrix.buildType }} \ + -DBUILD_TESTING=${{ matrix.buildTests }} \ + -DCMAKE_CXX_FLAGS="-D_GLIBCXX_USE_CXX11_ABI=0" \ + -DCMAKE_INSTALL_PREFIX=../_install \ + .. + working-directory: _build + - name: Build + run: | + cmake --build . \ + --verbose \ + --target install \ + --config ${{ matrix.buildType }} + working-directory: _build + - name: Test + run: ctest -VV --output-on-failure -C ${{ matrix.buildType }} + working-directory: _build -# A build job matrix based on pre-built USD binaries provided by NVIDIA on Windows. -# nvidia-usd-binaries-windows-build: -# strategy: -# matrix: -# usdVersion: -# - 21.05 -# include: -# - usdVersion: 21.05 -# usdVersionUrl: 21-05 -# pythonVersion: 3.6 -# USE_PYTHON_3: ON -# buildType: Release -# buildTests: ON -# runs-on: windows-2016 -# name: 'Windows 2016 NVIDIA Pre-built Binaries -# ' -# steps: -# - uses: actions/checkout@v2 -# - name: Set up Python ${{ matrix.pythonVersion }} -# uses: actions/setup-python@v2 -# with: -# python-version: ${{ matrix.pythonVersion }} -# - name: Download and extract pre-built USD binaries -# run: | -# Invoke-WebRequest https://developer.nvidia.com/usd-${{ matrix.usdVersionUrl }}-binary-windows-python-${{ matrix.pythonVersion }} -OutFile $env:TEMP/usd-${{ matrix.usdVersion }}.zip -# mkdir -Force $env:TEMP/usd-${{ matrix.usdVersion }} -# 7z x $env:TEMP/usd-${{ matrix.usdVersion }}.zip $("-o" + "$env:TEMP" + "\usd-${{ matrix.usdVersion }}") -y -# - name: Create build directories -# run: | -# mkdir -Force _build -# mkdir -Force _install -# - name: Configure -# run: | -# cmake -DUSD_ROOT="$env:TEMP/usd-${{ matrix.usdVersion }}" ` -# -DTBB_ROOT="$env:TEMP/usd-${{ matrix.usdVersion }}" ` -# -DBOOST_ROOT="$env:TEMP/usd-${{ matrix.usdVersion }}" ` -# -DUSE_PYTHON_3=${{ matrix.USE_PYTHON_3 }} ` -# -DCMAKE_BUILD_TYPE=${{ matrix.buildType }} ` -# -DBUILD_TESTING=${{ matrix.buildTests }} ` -# -DCMAKE_INSTALL_PREFIX="../_install" ` -# -G "Visual Studio 15 2017 Win64" ` -# .. -# working-directory: "_build" -# - name: Build -# run: | -# cmake --build . ` -# --verbose ` -# --config ${{ matrix.buildType }} ` -# --target ALL_BUILD -# working-directory: "_build" -# - name: Run Tests -# run: | -# ctest --extra-verbose ` -# --output-on-failure ` -# -C ${{ matrix.buildType }} -# working-directory: "_build" -# - name: Install -# run: | -# cmake --build . ` -# --verbose ` -# --config ${{ matrix.buildType }} ` -# --target INSTALL -# working-directory: "_build" + # A build job matrix based on pre-built USD binaries provided by NVIDIA on Windows. + nvidia-usd-binaries-windows-build: + strategy: + matrix: + usdVersion: + - 22.08 + include: + - usdVersion: 22.08 + usdVersionUrl: 22-08 + pythonVersion: 3.7 + USE_PYTHON_3: ON + buildType: Release + buildTests: ON + runs-on: windows-2016 + name: 'Windows 2016 NVIDIA Pre-built Binaries + ' + steps: + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.pythonVersion }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.pythonVersion }} + - name: Download and extract pre-built USD binaries + run: | + Invoke-WebRequest https://developer.nvidia.com/usd-${{ matrix.usdVersionUrl }}-binary-windows-python-${{ matrix.pythonVersion }} -OutFile $env:TEMP/usd-${{ matrix.usdVersion }}.zip + mkdir -Force $env:TEMP/usd-${{ matrix.usdVersion }} + 7z x $env:TEMP/usd-${{ matrix.usdVersion }}.zip $("-o" + "$env:TEMP" + "\usd-${{ matrix.usdVersion }}") -y + - name: Create build directories + run: | + mkdir -Force _build + mkdir -Force _install + - name: Configure + run: | + cmake -DUSD_ROOT="$env:TEMP/usd-${{ matrix.usdVersion }}" ` + -DTBB_ROOT="$env:TEMP/usd-${{ matrix.usdVersion }}" ` + -DBOOST_ROOT="$env:TEMP/usd-${{ matrix.usdVersion }}" ` + -DUSE_PYTHON_3=${{ matrix.USE_PYTHON_3 }} ` + -DCMAKE_BUILD_TYPE=${{ matrix.buildType }} ` + -DBUILD_TESTING=${{ matrix.buildTests }} ` + -DCMAKE_INSTALL_PREFIX="../_install" ` + -G "Visual Studio 15 2017 Win64" ` + .. + working-directory: "_build" + - name: Build + run: | + cmake --build . ` + --verbose ` + --config ${{ matrix.buildType }} ` + --target ALL_BUILD + working-directory: "_build" + - name: Run Tests + run: | + ctest --extra-verbose ` + --output-on-failure ` + -C ${{ matrix.buildType }} + working-directory: "_build" + - name: Install + run: | + cmake --build . ` + --verbose ` + --config ${{ matrix.buildType }} ` + --target INSTALL + working-directory: "_build" # Run automated code formatting checks. code-formatting-check: - runs-on: ubuntu-18.04 + runs-on: ubuntu-18.04 steps: - name: Install dependencies (Linux) run: |