mirror of
https://github.com/outbackdingo/nDPId.git
synced 2026-01-27 10:19:45 +00:00
Added CMake option BUILD_NDPI_FORCE_GIT_UPDATE to fix broken submodule caches in GitLab CIs..
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
This commit is contained in:
@@ -31,7 +31,7 @@ build_and_test_static_libndpi_tsan:
|
||||
# static linked build
|
||||
- mkdir build-clang-tsan
|
||||
- cd build-clang-tsan
|
||||
- env CMAKE_C_FLAGS='-Werror' CMAKE_C_COMPILER='clang' cmake .. -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DENABLE_SANITIZER_THREAD=ON -DENABLE_ZLIB=ON
|
||||
- env CMAKE_C_FLAGS='-Werror' CMAKE_C_COMPILER='clang' cmake .. -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DBUILD_NDPI_FORCE_GIT_UPDATE=ON -DENABLE_SANITIZER_THREAD=ON -DENABLE_ZLIB=ON
|
||||
- make clean-libnDPI
|
||||
- make libnDPI
|
||||
- tree libnDPI
|
||||
@@ -48,7 +48,7 @@ build_and_test_static_libndpi:
|
||||
script:
|
||||
- mkdir build-cmake-submodule
|
||||
- cd build-cmake-submodule
|
||||
- env CMAKE_C_FLAGS='-Werror' cmake .. -DENABLE_SYSTEMD=ON -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DENABLE_ZLIB=ON
|
||||
- env CMAKE_C_FLAGS='-Werror' cmake .. -DENABLE_SYSTEMD=ON -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DBUILD_NDPI_FORCE_GIT_UPDATE=ON -DENABLE_ZLIB=ON
|
||||
- make clean-libnDPI
|
||||
- make libnDPI
|
||||
- tree libnDPI
|
||||
@@ -77,7 +77,7 @@ build_and_test_static_libndpi_coverage:
|
||||
script:
|
||||
- mkdir build-cmake-submodule
|
||||
- cd build-cmake-submodule
|
||||
- env CMAKE_C_FLAGS='-Werror' cmake .. -DENABLE_SYSTEMD=ON -DENABLE_COVERAGE=ON -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DENABLE_SANITIZER=ON -DENABLE_ZLIB=ON
|
||||
- env CMAKE_C_FLAGS='-Werror' cmake .. -DENABLE_SYSTEMD=ON -DENABLE_COVERAGE=ON -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DBUILD_NDPI_FORCE_GIT_UPDATE=ON -DENABLE_SANITIZER=ON -DENABLE_ZLIB=ON
|
||||
- make clean-libnDPI
|
||||
- make libnDPI
|
||||
- tree libnDPI
|
||||
|
||||
@@ -61,6 +61,7 @@ option(ENABLE_SYSTEMD "Install systemd components." OFF)
|
||||
option(BUILD_EXAMPLES "Build C examples." ON)
|
||||
option(BUILD_NDPI "Clone and build nDPI from github." OFF)
|
||||
if(BUILD_NDPI)
|
||||
option(BUILD_NDPI_FORCE_GIT_UPDATE "Forcefully instruments nDPI build script to update the git submodule." OFF)
|
||||
unset(NDPI_NO_PKGCONFIG CACHE)
|
||||
unset(STATIC_LIBNDPI_INSTALLDIR CACHE)
|
||||
else()
|
||||
@@ -219,6 +220,7 @@ if(BUILD_NDPI)
|
||||
ADDITIONAL_ARGS=${NDPI_ADDITIONAL_ARGS}
|
||||
MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
|
||||
DEST_INSTALL=${CMAKE_BINARY_DIR}/libnDPI
|
||||
FORCE_GIT_UPDATE=${BUILD_NDPI_FORCE_GIT_UPDATE}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/get-and-build-libndpi.sh
|
||||
BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/libnDPI/lib/libndpi.a
|
||||
BUILD_COMMAND ""
|
||||
|
||||
@@ -50,6 +50,7 @@ MAKE_PROGRAM=${MAKE_PROGRAM:-}
|
||||
MAKEFLAGS=${MAKEFLAGS}
|
||||
DEST_INSTALL=${DEST_INSTALL:-}
|
||||
NDPI_COMMIT_HASH=${NDPI_COMMIT_HASH:-}
|
||||
FORCE_GIT_UPDATE=${FORCE_GIT_UPDATE:-}
|
||||
-----------------------------------
|
||||
EOF
|
||||
|
||||
@@ -60,7 +61,14 @@ cd "$(dirname "${0}")/.."
|
||||
GIT_SUCCESS=0
|
||||
if [ -d ./.git -o -f ./.git ]; then
|
||||
GIT_SUCCESS=1
|
||||
LINES_CHANGED="$(git --no-pager diff ./libnDPI 2>/dev/null | wc -l || printf '0')"
|
||||
|
||||
if [ ! -z "${FORCE_GIT_UPDATE}" ]; then
|
||||
git submodule deinit --force -- ./libnDPI || { GIT_SUCCESS=0; true; }
|
||||
LINES_CHANGED=0
|
||||
else
|
||||
LINES_CHANGED="$(git --no-pager diff ./libnDPI 2>/dev/null | wc -l || printf '0')"
|
||||
fi
|
||||
|
||||
if [ ${LINES_CHANGED} -eq 0 ]; then
|
||||
git submodule update --progress --init ./libnDPI || { GIT_SUCCESS=0; true; }
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user