Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/code-quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: CC=/usr/bin/clang CXX=/usr/bin/clang++ cmake -GNinja -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_SHARED_LIBS=OFF -DAUI_IGNORE_OPENSSL=TRUE -DCMAKE_CXX_CLANG_TIDY=/usr/bin/clang-tidy -DCMAKE_CXX_FLAGS="-stdlib=libc++ -std=c++20"
run: CC=/usr/bin/clang CXX=/usr/bin/clang++ cmake -GNinja -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=OFF -DAUI_IGNORE_OPENSSL=TRUE -DCMAKE_CXX_CLANG_TIDY=/usr/bin/clang-tidy -DCMAKE_CXX_FLAGS="-stdlib=libc++ -std=c++20" ${{ matrix.compiler }}

- name: Run tidy
# Build your program with the given configuration
Expand Down Expand Up @@ -65,4 +65,4 @@ jobs:

- name: Run AUI tests asan
working-directory: ${{github.workspace}}/build/bin
run: valgrind --suppressions=${{github.workspace}}/valgrind_suppressions.supp --error-exitcode=1 --tool=memcheck --leak-check=full --track-origins=yes --gen-suppressions=all ${{github.workspace}}/build/bin/Tests --gtest_filter="-Threading.FutureOn*"
run: valgrind --suppressions=${{github.workspace}}/valgrind_suppressions.supp --error-exitcode=1 --tool=memcheck --leak-check=full --track-origins=yes --gen-suppressions=all ${{github.workspace}}/build/bin/Tests
3 changes: 2 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@ project(example_app
)

option(BUILD_SHARED_LIBS "Build shared libs" OFF)
option(AUIB_FORCE_PRECOMPILED "AUI.Boot: force precompiled dependencies" ON)

set(AUI_VERSION a98b704e4cda510781ea2d0931c1c7b6e755912c)
set(AUI_VERSION v7.0.0-rc.21)

# Use AUI.Boot
file(
Expand Down
22 changes: 22 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,3 +51,25 @@ The template includes `.clang-format` and `.clang-tidy`, the latter is used for

To create a release, simply push an update to version in `CMakeLists.txt`. Pipeline will create a GitHub Release Draft
for you. After release draft is created, perform manual review and submit release.

# Syncing with this template

In some cases, you might want to sync with this template. Generally, you would want to sync with CI/CD stuff
(`.github`). If such, use some git techniques:

```shell
# only for the first time
git remote add template https://github.com/aui-framework/example_app

# syncing
git fetch template
git merge template/master --allow-unrelated-histories

# from now on, check git status and throw out anything you don't need

# remove unwanted files, i.e., SumTest.cpp:
git rm tests/SumTest.cpp -f

# keep YOURS src, tests, CMakeLists:
git checkout HEAD -- CMakeLists.txt src tests
```
54 changes: 54 additions & 0 deletions valgrind_suppressions.supp
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# SPDX-License-Identifier: MPL-2.0
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# This file is a suppression list for valgrind (dynamic analysis tool). Use this file as such:
# valgrind --suppressions=valgrind_suppressions.supp ./Tests

{
Backtrace
Memcheck:Param
openat(filename)
...
fun:backtrace_open
...
}

{
ThreadStart
Memcheck:Leak
match-leak-kinds: possible
...
fun:_ZN7AThread5startEv
...
}

{
IDontknowWhatIsThis
Memcheck:Leak
match-leak-kinds: possible
fun:malloc
fun:RegisterStubCallbacks
...
}

{
fontconfig
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
...
fun:XML_ParseBuffer
...
}

{
dlopen
Memcheck:Leak
match-leak-kinds: possible
...
fun:do_dlopen
...
}