diff --git a/.github/workflows/build-windows.yml b/.github/workflows/build-windows.yml new file mode 100644 index 00000000..581a7a13 --- /dev/null +++ b/.github/workflows/build-windows.yml @@ -0,0 +1,46 @@ +--- +name: Build - Windows + +on: + workflow_dispatch: + pull_request: + types: [opened, synchronize, reopened, ready_for_review] + push: + branches: + - main + - master + +env: + CMAKE_BUILD_PARALLEL_LEVEL: 2 + MAKEFLAGS: '-j 2' + +jobs: + job: + if: ${{ github.event_name == 'push' || !github.event.pull_request.draft }} + name: ${{ matrix.os }}-${{ matrix.buildtype }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [windows-2022] + buildtype: [Release, Debug] + include: + - os: windows-2022 + triplet: x64-windows + packages: > + sccache + steps: + - name: Setup MSBuild.exe + uses: microsoft/setup-msbuild@v1.1 + + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Install vcpkg + run: | + git clone https://github.com/Microsoft/vcpkg.git + cd vcpkg + ./bootstrap-vcpkg.bat + ./vcpkg integrate install + + - name: Build project + run: msbuild.exe /p:VcpkgEnableManifest=true vcproj/RME.sln diff --git a/CMakeSettings.json b/CMakeSettings.json index 3c3046d7..c825dfc9 100644 --- a/CMakeSettings.json +++ b/CMakeSettings.json @@ -1,11 +1,22 @@ -{ +{ "configurations": [ { "name": "x64-Release", "generator": "Ninja", - "configurationType": "RelWithDebInfo", - "buildRoot": "${projectDir}\\out\\build\\${name}", - "installRoot": "${projectDir}\\out\\install\\${name}", + "configurationType": "Release", + "buildRoot": "${projectDir}\\build\\${name}", + "installRoot": "${projectDir}\\install\\${name}", + "cmakeCommandArgs": "", + "buildCommandArgs": "", + "ctestCommandArgs": "", + "inheritEnvironments": [ "msvc_x64_x64" ] + }, + { + "name": "x64-Debug", + "generator": "Ninja", + "configurationType": "Debug", + "buildRoot": "${projectDir}\\build\\${name}", + "installRoot": "${projectDir}\\install\\${name}", "cmakeCommandArgs": "", "buildCommandArgs": "", "ctestCommandArgs": "", diff --git a/vcpkg.json b/vcpkg.json new file mode 100644 index 00000000..202acfd1 --- /dev/null +++ b/vcpkg.json @@ -0,0 +1,12 @@ +{ + "name": "remeres", + "version-string": "1.0.0", + "dependencies": [ + "asio", + "freeglut", + "nlohmann-json", + "fmt", + "wxwidgets", + "opengl" + ] +}