Add Global CMake Build and OSS Tests (#1217)

Summary:
Pull Request resolved: https://github.com/facebook/yoga/pull/1217

This updates the CMake build present for being able to share options, fixing up flags, etc. A GTest build is added as well, along with a script and VSCode debug target so that OSS contributors can very easily run and debug tests on any OS.

Note that this isn't completely done (need to revise Windows, Mac, documentation), but should be finished enough otherwise for review.

Changelog: [Internal]

Reviewed By: cortinico

Differential Revision: D42406686

fbshipit-source-id: 95e7ba5e4751c496a171785490e85cf0097fa839
This commit is contained in:
Nick Gerleman
2023-01-16 07:56:11 -08:00
committed by Facebook GitHub Bot
parent 53872e2521
commit 83c6997f29
21 changed files with 380 additions and 119 deletions

View File

@@ -0,0 +1,14 @@
name: Install Ninja
runs:
using: "composite"
steps:
- name: Install ninja (Linux)
if: ${{ runner.os == 'Linux' }}
shell: bash
run: sudo apt-get install -y ninja-build
- name: Install ninja (Windows)
if: ${{ runner.os == 'Windows' }}
shell: powershell
run: choco install ninja

12
.github/actions/setup-cpp/action.yml vendored Normal file
View File

@@ -0,0 +1,12 @@
name: Setup C++ envirionment
runs:
using: "composite"
steps:
- name: Install Ninja
if: ${{ runner.os != 'Windows' }}
uses: ./.github/actions/install-ninja
- name: Setup VS Developer Command Prompt
if: ${{ runner.os == 'Windows' }}
uses: ilammy/msvc-dev-cmd@v1

View File

@@ -11,15 +11,8 @@ runs:
- name: Install emsdk
uses: ./.github/actions/install-emsdk
- name: Install ninja (Linux)
if: ${{ runner.os == 'Linux' }}
shell: bash
run: sudo apt-get install -y ninja-build
- name: Install ninja (Windows)
if: ${{ runner.os == 'Windows' }}
shell: powershell
run: choco install ninja
- name: Install Ninja
uses: ./.github/actions/install-ninja
- name: yarn install
shell: bash