Compare commits
5 Commits
9786d5a016
...
StaticAnal
| Author | SHA1 | Date | |
|---|---|---|---|
| fcfe551c5c | |||
| 02a08012d0 | |||
| 063645fae3 | |||
| 6c8979684d | |||
| 245867da3b |
22
.clang-tidy
Normal file
22
.clang-tidy
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
# .clang-tidy
|
||||||
|
---
|
||||||
|
Checks: >
|
||||||
|
-*,
|
||||||
|
bugprone-*,
|
||||||
|
clang-analyzer-*,
|
||||||
|
cppcoreguidelines-*,
|
||||||
|
modernize-*,
|
||||||
|
performance-*,
|
||||||
|
readability-*,
|
||||||
|
portability-*,
|
||||||
|
|
||||||
|
-modernize-use-trailing-return-type,
|
||||||
|
-readability-avoid-const-params-in-decls,
|
||||||
|
-cppcoreguidelines-macro-usage,
|
||||||
|
-cppcoreguidelines-avoid-do-while
|
||||||
|
|
||||||
|
ExcludeHeaderFilterRegex: '_generated.*'
|
||||||
|
|
||||||
|
CheckOptions:
|
||||||
|
- key: readability-implicit-bool-conversion.AllowPointerConditions
|
||||||
|
value: true
|
||||||
46
.gitea/workflows/sonarqube.yml
Normal file
46
.gitea/workflows/sonarqube.yml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
name: Bigfoot
|
||||||
|
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
types: [opened, synchronize, reopened]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-and-test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
timeout-minutes: 120
|
||||||
|
container:
|
||||||
|
image: git.romainboullard.com/bigfootdev/linuxbigfootbuilder:main
|
||||||
|
name: "Sonarqube"
|
||||||
|
steps:
|
||||||
|
- name: Install Node.js
|
||||||
|
run: apt-get update && apt-get install -y nodejs
|
||||||
|
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v6
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
submodules: recursive
|
||||||
|
|
||||||
|
- name: Generate
|
||||||
|
run: |
|
||||||
|
conan install . --deployer=full_deploy --deployer-folder=build --remote=bigfootpackages -pr:h=clang_coverage -pr:b=clang_coverage --build=missing -s build_type=Debug -o bigfoot/*:build_tests=True -o bigfoot/*:tracy=False -o bigfoot/*:build_tools=True -o bigfoot/*:vulkan=True -o bigfoot/*:build_benchmarks=True
|
||||||
|
cmake -S . -B ./build/Debug --toolchain ./build/Debug/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Debug -G "Ninja"
|
||||||
|
cmake --build build/Debug --parallel $(nproc)
|
||||||
|
|
||||||
|
- name: Clang-Tidy
|
||||||
|
run: run-clang-tidy -p ./build/Debug/ >> tidy_result.txt
|
||||||
|
|
||||||
|
- name: Infer
|
||||||
|
run: infer run --compilation-database build/Debug/compile_commands.json
|
||||||
|
|
||||||
|
- name: SonarQube Scan
|
||||||
|
if: github.event_name == 'push'
|
||||||
|
uses: SonarSource/sonarqube-scan-action@v7.0.0
|
||||||
|
with:
|
||||||
|
args: >
|
||||||
|
-Dsonar.cxx.jsonCompilationDatabase=./build/Debug/compile_commands.json
|
||||||
|
-Dsonar.verbose=true
|
||||||
|
env:
|
||||||
|
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
|
||||||
|
SONAR_HOST_URL: ${{ secrets.SONAR_HOST }}
|
||||||
3
.inferconfig
Normal file
3
.inferconfig
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
@@ -92,7 +92,7 @@ class Version
|
|||||||
return m_combined;
|
return m_combined;
|
||||||
}
|
}
|
||||||
|
|
||||||
[[nodiscard]] operator std::string() const;
|
operator std::string() const;
|
||||||
|
|
||||||
constexpr Version& operator=(const Version& p_version) = default;
|
constexpr Version& operator=(const Version& p_version) = default;
|
||||||
|
|
||||||
|
|||||||
@@ -22,6 +22,8 @@ function(bigfoot_create_package_lib PackagePublicDependencies PackagePrivateDepe
|
|||||||
${_BF_SOURCES}
|
${_BF_SOURCES}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
target_compile_options(${PROJECT_NAME} PRIVATE ${BIGFOOT_CXX_FLAGS})
|
||||||
|
|
||||||
target_link_libraries(${PROJECT_NAME} PUBLIC unordered_dense::unordered_dense EASTL::EASTL flatbuffers::flatbuffers rapidhash::rapidhash)
|
target_link_libraries(${PROJECT_NAME} PUBLIC unordered_dense::unordered_dense EASTL::EASTL flatbuffers::flatbuffers rapidhash::rapidhash)
|
||||||
target_link_libraries(${PROJECT_NAME} PRIVATE ${CMAKE_DL_LIBS})
|
target_link_libraries(${PROJECT_NAME} PRIVATE ${CMAKE_DL_LIBS})
|
||||||
|
|
||||||
@@ -55,6 +57,9 @@ function(bigfoot_create_package_tests ParentFolder BigfootDependencies)
|
|||||||
${_BF_TEST_SOURCES}
|
${_BF_TEST_SOURCES}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
target_compile_options(${PROJECT_NAME} PRIVATE ${BIGFOOT_CXX_FLAGS})
|
||||||
|
target_link_options(${PROJECT_NAME} PRIVATE ${BIGFOOT_EXE_LINK_FLAGS})
|
||||||
|
|
||||||
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/Include)
|
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/Include)
|
||||||
|
|
||||||
target_link_libraries(${PROJECT_NAME} PRIVATE $<LINK_LIBRARY:WHOLE_ARCHIVE,${PackageName}>)
|
target_link_libraries(${PROJECT_NAME} PRIVATE $<LINK_LIBRARY:WHOLE_ARCHIVE,${PackageName}>)
|
||||||
@@ -89,5 +94,4 @@ function(bigfoot_create_package_tests ParentFolder BigfootDependencies)
|
|||||||
add_dependencies(${PROJECT_NAME} ${PROJECT_NAME}Fixture)
|
add_dependencies(${PROJECT_NAME} ${PROJECT_NAME}Fixture)
|
||||||
|
|
||||||
set_target_properties(${PROJECT_NAME}Fixture PROPERTIES FOLDER UtilityTargets/Tests/Bigfoot/${ParentFolder})
|
set_target_properties(${PROJECT_NAME}Fixture PROPERTIES FOLDER UtilityTargets/Tests/Bigfoot/${ParentFolder})
|
||||||
|
|
||||||
endfunction()
|
endfunction()
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
cmake_minimum_required(VERSION 3.24)
|
cmake_minimum_required(VERSION 3.24)
|
||||||
|
|
||||||
|
# CMake sets this flag by default, we don't use exception in bigfoot, we can remove it
|
||||||
string(REPLACE "/EHsc" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
string(REPLACE "/EHsc" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
||||||
|
|
||||||
project(Bigfoot VERSION 0.1.0
|
project(Bigfoot VERSION 0.1.0
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ class Bigfoot(ConanFile):
|
|||||||
self.requires("eastl/3.27.01@bigfootdev/main", transitive_headers=True)
|
self.requires("eastl/3.27.01@bigfootdev/main", transitive_headers=True)
|
||||||
self.requires("unordered_dense/4.8.1@bigfootdev/main", transitive_headers=True)
|
self.requires("unordered_dense/4.8.1@bigfootdev/main", transitive_headers=True)
|
||||||
self.requires("mimalloc/3.1.5@bigfootdev/main", transitive_headers=True)
|
self.requires("mimalloc/3.1.5@bigfootdev/main", transitive_headers=True)
|
||||||
self.requires("stduuid/1.2.3", transitive_headers=True)
|
self.requires("stduuid/1.2.3@bigfootdev/main", transitive_headers=True)
|
||||||
self.requires("sqlite3/3.51.0@bigfootdev/main", transitive_headers=True)
|
self.requires("sqlite3/3.51.0@bigfootdev/main", transitive_headers=True)
|
||||||
self.requires("cli11/2.6.0")
|
self.requires("cli11/2.6.0")
|
||||||
self.requires("rapidhash/3.0@bigfootdev/main", transitive_headers=True)
|
self.requires("rapidhash/3.0@bigfootdev/main", transitive_headers=True)
|
||||||
|
|||||||
14
sonar-project.properties
Normal file
14
sonar-project.properties
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
sonar.projectKey=Bigfoot
|
||||||
|
|
||||||
|
sonar.projectVersion=0.1.0
|
||||||
|
|
||||||
|
sonar.sourceEncoding=UTF-8
|
||||||
|
|
||||||
|
sonar.sources=Bigfoot/Sources
|
||||||
|
sonar.tests=Bigfoot/Tests
|
||||||
|
|
||||||
|
sonar.cxx.file.suffixes=.hpp,.cpp,.h
|
||||||
|
sonar.cxx.clangtidy.reportPaths=tidy_result.txt
|
||||||
|
sonar.cxx.infer.reportPaths=infer-out/report.json
|
||||||
|
|
||||||
|
sonar.cxx.jsonCompilationDatabase.analyzeOnlyContainedFiles=True
|
||||||
Reference in New Issue
Block a user