Skip to content

Commit e6842ad

Browse files
authored
score_basilibs: Update to official release 0.1.2 (#159)
* score_basilibs: Update to official release 0.1.2 - Rename and updated score-baselibs 0.0 -> score_baselibs 0.1.2 - Handling for injected implicit score-baselibs dependency - Suppress compiler warnings (treated as errors) inherited - Rename all dependencies * toolchain: Switch from llvm to score gcc Instead of using llvm from global bazel registry switch to score_toolchains_gcc. Did needed changes to get compilation running. * workflows/check: Update coverage workflow Adapt the workflow to work with the new toolchain. Currently the coverage report is created manually since the bazel coverage workflow is broken (see eclipse-score/toolchains_gcc#21).
1 parent 5164090 commit e6842ad

File tree

7 files changed

+58
-46
lines changed

7 files changed

+58
-46
lines changed

.bazelrc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@ build --tool_java_language_version=17
33
build --java_runtime_version=remotejdk_17
44
build --tool_java_runtime_version=remotejdk_17
55

6+
build --@score_baselibs//score/json:base_library=nlohmann
7+
build --@score_baselibs//score/mw/log/flags:KRemote_Logging=False
8+
9+
# ToDo: needed for "wrong" implicit dependencies
610
build --@score-baselibs//score/json:base_library=nlohmann
711
build --@score-baselibs//score/mw/log/flags:KRemote_Logging=False
812

.github/workflows/check.yml

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -165,11 +165,24 @@ jobs:
165165
166166
- name: Extract Coverage for CPP Files
167167
run: |
168-
REPORT=$(find "$(bazel info output_path)" -type f -path '*/cpp/*/coverage.dat' | head -n1)
169-
lcov \
170-
--rc branch_coverage=1 \
171-
--extract "$REPORT" '*.cpp' -o "${REPORT}.cpp" \
172-
--output-file kvs_coverage.info
168+
# ToDo: should work out of the box with bazel coverage (https://github.com/eclipse-score/toolchains_gcc/issues/21)
169+
# run test binary to generate coverage data (*.gcda files). Manually
170+
# since it is build already with the correct flags and the gcda ends
171+
# up in a proper location
172+
./bazel-bin/src/cpp/tests/test_kvs_cpp
173+
174+
# define some variables for easier usage
175+
BASE_DIR="$(pwd)"
176+
GCOV_TOOL="./bazel-persistency/external/score_toolchains_gcc++gcc+gcc_toolchain_gcc/bin/x86_64-unknown-linux-gnu-gcov"
177+
BIN_DIR="./bazel-bin/src/cpp/"
178+
OUT_FILE="lcov_coverage.info"
179+
# capture coverage info
180+
lcov --capture --directory "$BIN_DIR" --output-file "$OUT_FILE" --gcov-tool "$GCOV_TOOL" --base-directory "$BASE_DIR" --branch-coverage --ignore-errors mismatch --exclude "*/external/*"
181+
# display summary
182+
lcov --summary --rc branch_coverage=1 "$OUT_FILE"
183+
# generate html report (for local inspection if needed)
184+
# genhtml "$OUT_FILE" -o coverage_html --show-details --legend --function-coverage --branch-coverage
185+
rm ${OUT_FILE}
173186
174187
- name: Bazel Benchmark
175188
run: bazel run -c opt //:bm_kvs_cpp

MODULE.bazel

Lines changed: 21 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -46,28 +46,26 @@ rust.toolchain(
4646
versions = ["1.85.0"],
4747
)
4848

49-
# LLVM Toolchains Rules - host configuration
49+
# bazel cc rules
5050
bazel_dep(name = "rules_cc", version = "0.1.1")
5151

52-
bazel_dep(name = "toolchains_llvm", version = "1.2.0", dev_dependency = True)
52+
#score gcc toolchain
53+
bazel_dep(name = "score_toolchains_gcc", version = "0.5", dev_dependency = False)
5354

54-
llvm = use_extension("@toolchains_llvm//toolchain/extensions:llvm.bzl", "llvm", dev_dependency = True)
55-
llvm.toolchain(
56-
cxx_standard = {"": "c++17"},
57-
llvm_version = "19.1.0",
55+
gcc = use_extension("@score_toolchains_gcc//extentions:gcc.bzl", "gcc", dev_dependency = False)
56+
gcc.toolchain(
57+
sha256 = "8fa85c2a93a6bef1cf866fa658495a2416dfeec692e4246063b791abf18da083",
58+
strip_prefix = "x86_64-unknown-linux-gnu",
59+
url = "https://github.com/eclipse-score/toolchains_gcc_packages/releases/download/v0.0.3/x86_64-unknown-linux-gnu_gcc12.tar.gz",
5860
)
59-
use_repo(llvm, "llvm_toolchain")
60-
use_repo(llvm, "llvm_toolchain_llvm")
61+
use_repo(gcc, "gcc_toolchain", "gcc_toolchain_gcc")
6162

62-
register_toolchains(
63-
"@llvm_toolchain//:all",
64-
dev_dependency = True,
65-
)
63+
register_toolchains("@gcc_toolchain//:all")
6664

6765
## Bazel registry
6866
# Module dependencies
69-
bazel_dep(name = "googletest", version = "1.15.0")
70-
bazel_dep(name = "google_benchmark", version = "1.9.4")
67+
bazel_dep(name = "googletest", version = "1.17.0.bcr.1", dev_dependency = True)
68+
bazel_dep(name = "google_benchmark", version = "1.9.4", dev_dependency = True)
7169

7270
## S-CORE bazel registry
7371
bazel_dep(name = "score_tooling", version = "1.0.2")
@@ -85,7 +83,7 @@ bazel_dep(name = "score_platform", version = "0.3.0")
8583
bazel_dep(name = "score_process", version = "1.1.0")
8684

8785
# Module deps
88-
bazel_dep(name = "score-baselibs", version = "0.0.0")
86+
bazel_dep(name = "score_baselibs", version = "0.1.2")
8987

9088
## additional settings / config
9189
crate = use_extension("@rules_rust//crate_universe:extensions.bzl", "crate")
@@ -121,23 +119,18 @@ git_override(
121119
remote = "https://github.com/qorix-group/testing_tools.git",
122120
)
123121

122+
# ToDo: `-`version needed still because of indirect dependency
123+
bazel_dep(name = "score-baselibs", version = "", dev_dependency = True)
124124
git_override(
125-
module_name = "score_docs_as_code",
126-
commit = "13ba715a95cfe85158b60d7f4748ba8e28895d8c",
127-
remote = "https://github.com/eclipse-score/docs-as-code.git",
128-
)
129-
130-
#bazel_dep on module 'rules_boost' has no version -> override needed
131-
archive_override(
132-
module_name = "rules_boost",
133-
strip_prefix = "rules_boost-master",
134-
urls = ["https://github.com/nelhage/rules_boost/archive/refs/heads/master.tar.gz"],
125+
module_name = "score-baselibs",
126+
commit = "06a27a163a2aa787e1b99f6b04feb00b413b3355",
127+
remote = "https://github.com/eclipse-score/baselibs.git",
135128
)
136129

137130
git_override(
138-
module_name = "score-baselibs",
139-
commit = "46923f5c4f302bd9feae0261588687aaf32e3c5c",
140-
remote = "https://github.com/eclipse-score/baselibs.git",
131+
module_name = "score_docs_as_code",
132+
commit = "13ba715a95cfe85158b60d7f4748ba8e28895d8c",
133+
remote = "https://github.com/eclipse-score/docs-as-code.git",
141134
)
142135

143136
bazel_dep(name = "score_toolchains_rust", version = "0.1", dev_dependency = True)

src/cpp/src/BUILD

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,9 @@ cc_library(
4747
deps = [
4848
":kvsvalue",
4949
"//src/cpp/src/internal:error",
50-
"@score-baselibs//score/filesystem:filesystem",
51-
"@score-baselibs//score/json",
52-
"@score-baselibs//score/mw/log",
53-
"@score-baselibs//score/result:result",
50+
"@score_baselibs//score/filesystem",
51+
"@score_baselibs//score/json",
52+
"@score_baselibs//score/mw/log",
53+
"@score_baselibs//score/result",
5454
],
5555
)

src/cpp/src/internal/BUILD

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ cc_library(
2424
"//src/cpp/tests:__pkg__",
2525
],
2626
deps = [
27-
"@score-baselibs//score/result:result",
27+
"@score_baselibs//score/result",
2828
],
2929
)
3030

@@ -43,6 +43,6 @@ cc_library(
4343
deps = [
4444
":error",
4545
"//src/cpp/src:kvsvalue",
46-
"@score-baselibs//score/json",
46+
"@score_baselibs//score/json",
4747
],
4848
)

src/cpp/src/kvsvalue.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,12 @@
1313
#ifndef SCORE_LIB_KVS_KVSVALUE_HPP
1414
#define SCORE_LIB_KVS_KVSVALUE_HPP
1515

16+
#include <memory>
1617
#include <optional>
1718
#include <stdexcept>
1819
#include <string>
1920
#include <unordered_map>
21+
#include <variant>
2022
#include <vector>
2123

2224
namespace score::mw::per::kvs {

src/cpp/tests/BUILD

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ cc_test(
2727
"//:kvs_cpp",
2828
"//src/cpp/src/internal:kvs_helper",
2929
"@googletest//:gtest_main",
30-
"@score-baselibs//score/filesystem:filesystem",
31-
"@score-baselibs//score/filesystem:mock",
32-
"@score-baselibs//score/json:mock",
33-
"@score-baselibs//score/result:result",
30+
"@score_baselibs//score/filesystem",
31+
"@score_baselibs//score/filesystem:mock",
32+
"@score_baselibs//score/json:mock",
33+
"@score_baselibs//score/result",
3434
],
3535
)
3636

@@ -45,8 +45,8 @@ cc_test(
4545
"//:kvs_cpp",
4646
"//src/cpp/src/internal:kvs_helper",
4747
"@google_benchmark//:benchmark",
48-
"@score-baselibs//score/filesystem:filesystem",
49-
"@score-baselibs//score/json",
50-
"@score-baselibs//score/result:result",
48+
"@score_baselibs//score/filesystem",
49+
"@score_baselibs//score/json",
50+
"@score_baselibs//score/result",
5151
],
5252
)

0 commit comments

Comments
 (0)