mirror of
https://github.com/jbeder/yaml-cpp.git
synced 2025-09-08 04:11:17 +00:00
Improve bazel build for Windows. (#1100)
Windows builds need some defines being set to use the static linking. Also add bazel builds and test to Github-CI.
This commit is contained in:

committed by
GitHub

parent
13626af92a
commit
420c982310
23
.github/workflows/build.yml
vendored
23
.github/workflows/build.yml
vendored
@@ -6,7 +6,7 @@ on:
|
|||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
cmake-build:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
os: [ubuntu-latest, windows-latest, macos-latest]
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
||||||
@@ -39,3 +39,24 @@ jobs:
|
|||||||
- name: Test
|
- name: Test
|
||||||
shell: bash
|
shell: bash
|
||||||
run: cd build && ctest --output-on-failure
|
run: cd build && ctest --output-on-failure
|
||||||
|
|
||||||
|
bazel-build:
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
cd "${{ github.workspace }}"
|
||||||
|
bazel build :all
|
||||||
|
|
||||||
|
- name: Test
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
cd "${{ github.workspace }}"
|
||||||
|
bazel test test
|
||||||
|
|
||||||
|
@@ -1,3 +1,9 @@
|
|||||||
|
yaml_cpp_defines = select({
|
||||||
|
# On Windows, ensure static linking is used.
|
||||||
|
"@platforms//os:windows": ["YAML_CPP_STATIC_DEFINE", "YAML_CPP_NO_CONTRIB"],
|
||||||
|
"//conditions:default": [],
|
||||||
|
})
|
||||||
|
|
||||||
cc_library(
|
cc_library(
|
||||||
name = "yaml-cpp_internal",
|
name = "yaml-cpp_internal",
|
||||||
visibility = ["//:__subpackages__"],
|
visibility = ["//:__subpackages__"],
|
||||||
@@ -11,4 +17,5 @@ cc_library(
|
|||||||
includes = ["include"],
|
includes = ["include"],
|
||||||
hdrs = glob(["include/**/*.h"]),
|
hdrs = glob(["include/**/*.h"]),
|
||||||
srcs = glob(["src/**/*.cpp", "src/**/*.h"]),
|
srcs = glob(["src/**/*.cpp", "src/**/*.h"]),
|
||||||
|
defines = yaml_cpp_defines,
|
||||||
)
|
)
|
||||||
|
Reference in New Issue
Block a user