Update build scripts, add valgrind support.
This commit is contained in:
parent
19fa0c147d
commit
c1629dda81
|
@ -1,5 +1,7 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -eu
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
# @author : kyle (kyle@imap.cc)
|
# @author : kyle (kyle@imap.cc)
|
||||||
# @file : build-all-containers.sh
|
# @file : build-all-containers.sh
|
||||||
|
@ -14,6 +16,6 @@
|
||||||
for container_file in Containerfile.*
|
for container_file in Containerfile.*
|
||||||
do
|
do
|
||||||
flavor="${container_file#Containerfile.}"
|
flavor="${container_file#Containerfile.}"
|
||||||
./build-container.sh Container.${flavor} sc/dev:${flavor}
|
./build-container.sh Containerfile.${flavor} sc/dev:${flavor}
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,9 @@ CONTAINERFILE="${1}"
|
||||||
IMAGE_NAME="git.wntrmute.dev/${2}"
|
IMAGE_NAME="git.wntrmute.dev/${2}"
|
||||||
|
|
||||||
podman build -t ${IMAGE_NAME} -f ${CONTAINERFILE}
|
podman build -t ${IMAGE_NAME} -f ${CONTAINERFILE}
|
||||||
|
if [ "${BUILD_NO_PUSH:-no}" != "yes" ]
|
||||||
|
then
|
||||||
podman push ${IMAGE_NAME}
|
podman push ${IMAGE_NAME}
|
||||||
podman container prune --force
|
#podman container prune --force
|
||||||
podman image prune --force
|
#podman image prune --force
|
||||||
|
fi
|
||||||
|
|
|
@ -10,6 +10,8 @@
|
||||||
|
|
||||||
set -eux
|
set -eux
|
||||||
|
|
||||||
|
BUILD_TYPE="${BUILD_TYPE:-Debug}"
|
||||||
|
|
||||||
if [ "${USE_CLANG:-}" == "yes" ]
|
if [ "${USE_CLANG:-}" == "yes" ]
|
||||||
then
|
then
|
||||||
export CC=$(command -v clang)
|
export CC=$(command -v clang)
|
||||||
|
@ -17,4 +19,4 @@ then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mkdir -p build && cd build
|
mkdir -p build && cd build
|
||||||
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo .. && make all test && ctest
|
cmake -DCMAKE_BUILD_TYPE=${BUILD_TYPE} .. && make all test
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -eux
|
||||||
|
|
||||||
|
if [ ! -d build ]
|
||||||
|
then
|
||||||
|
echo "[!] build step not completed!" > /dev/stderr
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd build
|
||||||
|
|
||||||
|
for testbin in test_*
|
||||||
|
do
|
||||||
|
if [ ! -x ${testbin} ]
|
||||||
|
then
|
||||||
|
echo "[-] skipping ${testbin} because it isn't executable"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
valgrind -q ./${testbin} -n -q
|
||||||
|
done
|
|
@ -3,9 +3,9 @@
|
||||||
set -eu
|
set -eu
|
||||||
|
|
||||||
|
|
||||||
source /etc/lsb-release
|
|
||||||
SUDO="sudo"
|
SUDO="sudo"
|
||||||
USE_CMAKE_RC="${USE_CMAKE_RC:-}"
|
USE_CMAKE_RC="${USE_CMAKE_RC:-}"
|
||||||
|
DISTRIB=${DISTRIB:-jammy}
|
||||||
|
|
||||||
preinstall () {
|
preinstall () {
|
||||||
echo "[+] preparing to install"
|
echo "[+] preparing to install"
|
||||||
|
@ -25,7 +25,7 @@ do_install () {
|
||||||
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | $SUDO tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null
|
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | $SUDO tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null
|
||||||
|
|
||||||
echo "[+] adding repo to sources.list.d"
|
echo "[+] adding repo to sources.list.d"
|
||||||
echo "deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ ${DISTRIB_CODENAME} main" | \
|
echo "deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ ${DISTRIB} main" | \
|
||||||
$SUDO tee /etc/apt/sources.list.d/kitware.list >/dev/null
|
$SUDO tee /etc/apt/sources.list.d/kitware.list >/dev/null
|
||||||
$SUDO apt-get -y update
|
$SUDO apt-get -y update
|
||||||
|
|
||||||
|
|
|
@ -54,7 +54,8 @@ install_debianesque () {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "[+] installing tools"
|
echo "[+] installing tools"
|
||||||
sudo $SUDO apt-get $APTARGS install git clang scdoc python3-pip doxygen graphviz
|
sudo $SUDO apt-get $APTARGS install git clang scdoc \
|
||||||
|
python3-pip doxygen graphviz valgrind
|
||||||
}
|
}
|
||||||
|
|
||||||
install_alpine () {
|
install_alpine () {
|
||||||
|
@ -68,7 +69,7 @@ install_alpine () {
|
||||||
|
|
||||||
echo "[+] installing development tooling"
|
echo "[+] installing development tooling"
|
||||||
$APK_ADD clang clang-extra-tools cmake cppcheck doxygen g++ git \
|
$APK_ADD clang clang-extra-tools cmake cppcheck doxygen g++ git \
|
||||||
graphviz make scdoc
|
graphviz make scdoc valgrind
|
||||||
}
|
}
|
||||||
|
|
||||||
install_redhat () {
|
install_redhat () {
|
||||||
|
@ -84,7 +85,8 @@ install_redhat () {
|
||||||
# install everything in one shot.
|
# install everything in one shot.
|
||||||
$DNF_INSTALL ca-certificates gzip openssh tar \
|
$DNF_INSTALL ca-certificates gzip openssh tar \
|
||||||
clang clang-tools-extra cmake cppcheck doxygen \
|
clang clang-tools-extra cmake cppcheck doxygen \
|
||||||
gcc-c++ git graphviz libstdc++-devel make scdoc
|
gcc-c++ git graphviz libstdc++-devel make scdoc \
|
||||||
|
valgrind
|
||||||
}
|
}
|
||||||
|
|
||||||
install_unsupported () {
|
install_unsupported () {
|
||||||
|
|
Loading…
Reference in New Issue