build-unit-test-docker: Add catch2 unit-test framework
This test framework is similar to googletest, but much more c++11
friendly and supports sectioned test semantics that are much more ugly
to implement in googletest.
https://github.com/catchorg/Catch2/blob/master/docs/why-catch.md
Change-Id: Icd547ba54e372e1656df58418c0dd1c661ca5a8d
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/build-unit-test-docker.sh b/build-unit-test-docker.sh
index 8651888..497f540 100755
--- a/build-unit-test-docker.sh
+++ b/build-unit-test-docker.sh
@@ -92,6 +92,7 @@
declare -A PKG_REV=(
[boost]=1.69.0
[cereal]=v1.2.2
+ [catch2]=v2.10.0
[CLI11]=v1.8.0
[fmt]=5.3.0
# Snapshot from 2019-03-10
@@ -265,6 +266,15 @@
make -j$(nproc) && \
make install
+FROM openbmc-base as openbmc-catch2
+RUN curl -L https://github.com/catchorg/Catch2/archive/${PKG_REV['catch2']}.tar.gz | tar -xz && \
+cd Catch2-* && \
+mkdir build && \
+cd build && \
+cmake ${CMAKE_FLAGS[@]} -DCATCH_BUILD_TESTING=OFF -DCATCH_INSTALL_DOCS=OFF .. && \
+make -j$(nproc) && \
+make install
+
FROM openbmc-base as openbmc-cereal
RUN curl -L https://github.com/USCiLab/cereal/archive/${PKG_REV['cereal']}.tar.gz | tar -xz && \
cp -a cereal-*/include/cereal/ ${PREFIX}/include/