Merge commit '565efa4f39650d09c05f3895f9a2b16d0f5e7bad'
Some checks failed
ContinuousDelivery / linux-ubuntu (push) Has been cancelled
ContinuousDelivery / linux-debian12 (push) Has been cancelled
ContinuousDelivery / android (map[ndk_abi:arm64-v8a vcpkg_toolkit:arm64-android-23]) (push) Has been cancelled
ContinuousDelivery / android (map[ndk_abi:armeabi-v7a vcpkg_toolkit:arm-neon-android-23]) (push) Has been cancelled
ContinuousDelivery / android (map[ndk_abi:x86_64 vcpkg_toolkit:x64-android-23]) (push) Has been cancelled
ContinuousDelivery / windows (windows-2022, ) (push) Has been cancelled
ContinuousDelivery / windows (windows-2022, asan) (push) Has been cancelled
ContinuousIntegration / on ubuntu-24.04-arm (push) Has been cancelled
ContinuousIntegration / asan on ubuntu-24.04-arm (push) Has been cancelled
ContinuousIntegration / on ubuntu-latest (push) Has been cancelled
ContinuousIntegration / asan on ubuntu-latest (push) Has been cancelled
ContinuousIntegration / linux-debian12 (push) Has been cancelled
ContinuousIntegration / android (map[ndk_abi:arm64-v8a vcpkg_toolkit:arm64-android-23]) (push) Has been cancelled
ContinuousIntegration / android (map[ndk_abi:armeabi-v7a vcpkg_toolkit:arm-neon-android-23]) (push) Has been cancelled
ContinuousIntegration / android (map[ndk_abi:x86_64 vcpkg_toolkit:x64-android-23]) (push) Has been cancelled
ContinuousIntegration / macos (push) Has been cancelled
ContinuousIntegration / windows (push) Has been cancelled
ContinuousDelivery / dumpsyms (push) Has been cancelled
ContinuousDelivery / release (push) Has been cancelled
Some checks failed
ContinuousDelivery / linux-ubuntu (push) Has been cancelled
ContinuousDelivery / linux-debian12 (push) Has been cancelled
ContinuousDelivery / android (map[ndk_abi:arm64-v8a vcpkg_toolkit:arm64-android-23]) (push) Has been cancelled
ContinuousDelivery / android (map[ndk_abi:armeabi-v7a vcpkg_toolkit:arm-neon-android-23]) (push) Has been cancelled
ContinuousDelivery / android (map[ndk_abi:x86_64 vcpkg_toolkit:x64-android-23]) (push) Has been cancelled
ContinuousDelivery / windows (windows-2022, ) (push) Has been cancelled
ContinuousDelivery / windows (windows-2022, asan) (push) Has been cancelled
ContinuousIntegration / on ubuntu-24.04-arm (push) Has been cancelled
ContinuousIntegration / asan on ubuntu-24.04-arm (push) Has been cancelled
ContinuousIntegration / on ubuntu-latest (push) Has been cancelled
ContinuousIntegration / asan on ubuntu-latest (push) Has been cancelled
ContinuousIntegration / linux-debian12 (push) Has been cancelled
ContinuousIntegration / android (map[ndk_abi:arm64-v8a vcpkg_toolkit:arm64-android-23]) (push) Has been cancelled
ContinuousIntegration / android (map[ndk_abi:armeabi-v7a vcpkg_toolkit:arm-neon-android-23]) (push) Has been cancelled
ContinuousIntegration / android (map[ndk_abi:x86_64 vcpkg_toolkit:x64-android-23]) (push) Has been cancelled
ContinuousIntegration / macos (push) Has been cancelled
ContinuousIntegration / windows (push) Has been cancelled
ContinuousDelivery / dumpsyms (push) Has been cancelled
ContinuousDelivery / release (push) Has been cancelled
This commit is contained in:
@@ -4,11 +4,16 @@ CPPFLAGS="-DMIN_LOGGER_LEVEL=LOGGER_LEVEL_TRACE"
|
||||
CPPFLAGS+=("-DCMP_NO_FLOAT=1")
|
||||
CPPFLAGS+=("-isystem" "/usr/include/opus")
|
||||
CPPFLAGS+=("-Iauto_tests")
|
||||
CPPFLAGS+=("-Iauto_tests/scenarios")
|
||||
CPPFLAGS+=("-Iauto_tests/scenarios/framework")
|
||||
CPPFLAGS+=("-Iother")
|
||||
CPPFLAGS+=("-Iother/bootstrap_daemon/src")
|
||||
CPPFLAGS+=("-Iother/fun")
|
||||
CPPFLAGS+=("-Itesting")
|
||||
CPPFLAGS+=("-Itesting/fuzzing")
|
||||
CPPFLAGS+=("-Itesting/support")
|
||||
CPPFLAGS+=("-Itesting/support/doubles")
|
||||
CPPFLAGS+=("-Itesting/support/public")
|
||||
CPPFLAGS+=("-Itoxcore")
|
||||
CPPFLAGS+=("-Itoxcore/events")
|
||||
CPPFLAGS+=("-Itoxav")
|
||||
@@ -49,29 +54,44 @@ callmain() {
|
||||
|
||||
# Include all C and C++ code
|
||||
FIND_QUERY="find . '-(' -name '*.c' -or -name '*.cc' '-)'"
|
||||
# Excludes
|
||||
FIND_QUERY="$FIND_QUERY -and -not -wholename './_build/*'"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -wholename './other/docker/*'"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -wholename './super_donators/*'"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -name amalgamation.cc"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -name av_test.c"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -name cracker.c"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -name version_test.c"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -name '*_fuzz_test.cc'"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -wholename './testing/fuzzing/*'"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -wholename './third_party/cmp/examples/*'"
|
||||
FIND_QUERY="$FIND_QUERY -and -not -wholename './third_party/cmp/test/*'"
|
||||
HEADER_QUERY="find . '-(' -name '*.h' -or -name '*.hh' '-)'"
|
||||
|
||||
if [ "$SKIP_GTEST" == 1 ]; then
|
||||
FIND_QUERY="$FIND_QUERY -and -not -name '*_test.cc'"
|
||||
COMMON_EXCLUDES=""
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -wholename './_build/*'"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -wholename './other/docker/*'"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -wholename './super_donators/*'"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -wholename './testing/fuzzing/*'"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -wholename './third_party/cmp/examples/*'"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -wholename './third_party/cmp/test/*'"
|
||||
|
||||
# File name excludes
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -name amalgamation.cc"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -name av_test.c"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -name cracker.c"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -name version_test.c"
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -name '*_fuzz_test.cc'"
|
||||
|
||||
if [ "$SKIP_BENCHMARK" == 1 ]; then
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -name '*_bench.cc'"
|
||||
fi
|
||||
|
||||
readarray -t FILES <<<"$(eval "$FIND_QUERY")"
|
||||
if [ "$SKIP_GTEST" == 1 ]; then
|
||||
COMMON_EXCLUDES="$COMMON_EXCLUDES -and -not -name '*_test.cc'"
|
||||
fi
|
||||
|
||||
(for i in "${FILES[@]}"; do
|
||||
FIND_QUERY="$FIND_QUERY $COMMON_EXCLUDES"
|
||||
HEADER_QUERY="$HEADER_QUERY $COMMON_EXCLUDES"
|
||||
|
||||
readarray -t FILES <<<"$(eval "$FIND_QUERY")"
|
||||
readarray -t HEADERS <<<"$(eval "$HEADER_QUERY")"
|
||||
|
||||
INCLUDES=$(for i in "${FILES[@]}" "${HEADERS[@]}"; do
|
||||
grep -o '#include <[^>]*>' "$i" |
|
||||
grep -E -v '<win|<ws|<iphlp|<libc|<mach/|<crypto_|<randombytes|<u.h>|<sys/filio|<stropts.h>|<linux'
|
||||
done) | sort -u >>amalgamation.cc
|
||||
done | sort -u)
|
||||
|
||||
echo "$INCLUDES" | grep "<memory>" >>amalgamation.cc
|
||||
echo "$INCLUDES" | grep -v "<memory>" >>amalgamation.cc
|
||||
|
||||
put auto_tests/check_compat.h
|
||||
|
||||
|
||||
@@ -36,7 +36,13 @@ run() {
|
||||
-Wno-unreachable-code-return \
|
||||
-Wno-unsafe-buffer-usage \
|
||||
-Wno-unused-parameter \
|
||||
-Wno-used-but-marked-unused
|
||||
-Wno-used-but-marked-unused \
|
||||
-Wno-unneeded-member-function \
|
||||
-Wno-unused-function \
|
||||
-Wno-unused-member-function \
|
||||
-Wno-unused-parameter \
|
||||
-Wno-unused-template
|
||||
# TODO(iphydf): Remove these last 5 when the test framework matures.
|
||||
}
|
||||
|
||||
. other/analysis/variants.sh
|
||||
|
||||
@@ -9,7 +9,30 @@ run() {
|
||||
clang++ --analyze amalgamation.cc \
|
||||
"${CPPFLAGS[@]}" \
|
||||
"$@" \
|
||||
-std=c++20
|
||||
-std=c++20 &
|
||||
local pid=$!
|
||||
local start_time="$(date +%s)"
|
||||
local last_update="$start_time"
|
||||
local timeout=$((30 * 60))
|
||||
local interval=$((5 * 60))
|
||||
|
||||
while kill -0 "$pid" 2>/dev/null; do
|
||||
local current_time="$(date +%s)"
|
||||
if ((current_time - start_time > timeout)); then
|
||||
echo "Timeout reached. Killing process."
|
||||
kill -9 "$pid"
|
||||
wait "$pid"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if ((current_time - last_update > interval)); then
|
||||
echo "Still running..."
|
||||
last_update=$current_time
|
||||
fi
|
||||
sleep 1
|
||||
done
|
||||
|
||||
wait "$pid"
|
||||
}
|
||||
|
||||
. other/analysis/variants.sh
|
||||
|
||||
@@ -16,8 +16,7 @@ CHECKS="$CHECKS,-clang-analyzer-nullability.NullPassedToNonnull"
|
||||
# =========================================================
|
||||
|
||||
# TODO(iphydf): Fix these.
|
||||
ERRORS="$ERRORS,-cert-err34-c"
|
||||
ERRORS="$ERRORS,-readability-suspicious-call-argument"
|
||||
CHECKS="$CHECKS,-readability-suspicious-call-argument"
|
||||
CHECKS="$CHECKS,-cppcoreguidelines-avoid-goto,-hicpp-avoid-goto"
|
||||
CHECKS="$CHECKS,-bugprone-incorrect-roundings"
|
||||
|
||||
@@ -193,12 +192,15 @@ CHECKS="$CHECKS,-cppcoreguidelines-macro-usage"
|
||||
# These are all very C++ and/or LLVM specific.
|
||||
CHECKS="$CHECKS,-llvmlibc-*"
|
||||
|
||||
# We use unions in C, and can't use std::variant or boost::variant.
|
||||
CHECKS="$CHECKS,-cppcoreguidelines-pro-type-union-access"
|
||||
|
||||
set -eux
|
||||
|
||||
# TODO(iphydf): Add toxav.
|
||||
DIRS=(
|
||||
other/bootstrap_daemon/src
|
||||
other
|
||||
toxav
|
||||
toxcore
|
||||
toxcore/events
|
||||
toxencryptsave
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
SKIP_GTEST=1
|
||||
SKIP_BENCHMARK=1
|
||||
|
||||
. other/analysis/gen-file.sh
|
||||
|
||||
@@ -14,8 +15,6 @@ CPPCHECK+=("--library=other/docker/cppcheck/toxcore.cfg")
|
||||
CPPCHECK+=("--error-exitcode=1")
|
||||
# Some files don't match all our suppressions below.
|
||||
CPPCHECK+=("--suppress=unmatchedSuppression")
|
||||
# We don't cast function pointers, which cppcheck suggests here.
|
||||
CPPCHECK+=("--suppress=constParameterCallback")
|
||||
# This disagrees with clang's warnings.
|
||||
CPPCHECK+=("--suppress=invalidPrintfArgType_uint")
|
||||
# False positives in switch statements.
|
||||
@@ -24,8 +23,11 @@ CPPCHECK+=("--suppress=knownConditionTrueFalse")
|
||||
CPPCHECK+=("--suppress=missingIncludeSystem")
|
||||
# TODO(iphydf): Maybe fix?
|
||||
CPPCHECK+=("--suppress=signConversion")
|
||||
# We have suppressions in the code for the misra extension.
|
||||
CPPCHECK+=("--suppress=unmatchedSuppression")
|
||||
# These const correctness checks are very broken for C.
|
||||
CPPCHECK+=("--suppress=constParameter")
|
||||
CPPCHECK+=("--suppress=constParameterCallback")
|
||||
CPPCHECK+=("--suppress=constParameterPointer")
|
||||
CPPCHECK+=("--suppress=constVariablePointer")
|
||||
|
||||
# We use this for VLAs.
|
||||
CPPCHECK_CXX+=("--suppress=allocaCalled")
|
||||
|
||||
@@ -65,7 +65,9 @@ run() {
|
||||
-Wunused-value \
|
||||
-Wunused-but-set-parameter \
|
||||
-Wunused-but-set-variable \
|
||||
-fopenmp
|
||||
-fopenmp \
|
||||
-Wno-unused-function
|
||||
# TODO(iphydf): Remove this last 1 when the test framework matures.
|
||||
}
|
||||
|
||||
. other/analysis/variants.sh
|
||||
|
||||
Reference in New Issue
Block a user