- new_docker_build.sh: new --run-coverage mode (mutually exclusive with --run-jenkins-builder). Instruments the release-scope build with -O0 -g --coverage -fPIC -DNDEBUG (RELEASE flag override keeps -DNDEBUG and -fPIC so behavior and PIC match the green baseline), runs ctest, then collects the lcov report: capture --external -> extract on the four release dirs -> remove test sources -> summary -> genhtml, all with --ignore-errors mismatch,inconsistent,unused (GCC 15 + lcov 2.4). Report lands in --coverage-output-dir (default ./coverage-out): html/index.html, coverage.info, coverage_summary.txt. - Dockerfile image gains lcov via APT_PACKAGES (genhtml ships in the same package). - Jenkinsfile: RunCoverage parameter (default on) + per-OS Coverage stage running the driver on the agent and archiving coverage/<project>/<os>/**. - release-16-10-2026.sh: same coverage step, gated by DRYRUN_COVERAGE (default ON, mirrors the Jenkins default). - README: Step 6 (code coverage) and options/env reference entries. - .gitignore: coverage-out/
41 lines
788 B
CMake
Executable File
41 lines
788 B
CMake
Executable File
# Modified CMakeLists.txt from github.com/wille-io/httq
|
|
|
|
# Make ${Qt6_WebSockets} optional
|
|
if(QT6_WEBSOCKETS_REAL_FOUND OR Qt6WebSockets_FOUND)
|
|
set(Qt6_WebSockets Qt6::WebSockets)
|
|
else()
|
|
set(Qt6_WebSockets "")
|
|
endif()
|
|
|
|
|
|
set(src
|
|
include/http_parser.h
|
|
include/http_parser.c # TODO: move out of include dir
|
|
|
|
include/httq/AbstractServer.h
|
|
include/httq/DataStream.h
|
|
include/httq/HttpRequest.h
|
|
include/httq/Logger.h
|
|
|
|
AbstractServer.cpp
|
|
DataStream.cpp
|
|
HttpRequest.cpp
|
|
Logger.cpp
|
|
)
|
|
|
|
NGL_ADD_LIBRARY2(SV WS httq SHARED ${src})
|
|
|
|
NGL_TARGET_INCLUDE_DIRECTORIES(httq
|
|
PUBLIC
|
|
${CMAKE_CURRENT_BINARY_DIR}/../ # export file
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/
|
|
)
|
|
|
|
NGL_TARGET_LINK_LIBRARIES(httq
|
|
Qt6::Core
|
|
Qt6::Network
|
|
${Qt6_WebSockets}
|
|
)
|
|
|
|
NGL_INSTALL_TARGET(httq)
|