Skip to content

.clang-tidy for Linux OS and AVX2 detection improvement#132

Closed
luadebug wants to merge 895 commits intoorange-cpp:mainfrom
luadebug:tidy
Closed

.clang-tidy for Linux OS and AVX2 detection improvement#132
luadebug wants to merge 895 commits intoorange-cpp:mainfrom
luadebug:tidy

Conversation

@luadebug
Copy link
Contributor

@luadebug luadebug commented Dec 30, 2025

1 Try to silence warnings.
2 Improve AVX2 detection,
3 Add .clang-tidy improvement and CMakeLists.txt integration.
4 Add missing link for MinGW.
5. Add /EHsc for clang-cl.exe
6. Add sanitizers and triplets, we need triplets to build vcpkg dependencies with sanitizers as well.
7. Add msan as well, since we build llvm with memory sanitizer support as done by another repos, zlib-ng, libavif.
8. Add .cmake-format and format cmakelists and .cmake files.

…calc_fix

Fixes NDC calculation and updates formulas
Introduces a constants header file for the Frostbite engine,
including common vectors, matrices, and angle types.
This provides a centralized location for defining and accessing
essential mathematical constants used throughout the engine.
…gine

Defines constants for Frostbite engine
Corrected formatting and removed extra spaces in the LICENSE file.
Enables building unit tests using GTest and benchmarks using Benchmark,
through Vcpkg features.

Adds `tests` and `benchmark` features to `vcpkg.json`,
and adds corresponding CMake logic to control their build based on
Vcpkg manifest features.
Configures CMakePresets.json to utilize vcpkg for dependency management.
Adds support for building with vcpkg.

Adds error message for missing VCPKG_ROOT environment variable.
Adds explicit VCPKG_MANIFEST_FEATURES and VCPKG_INSTALLED_DIR to CMakePresets.json.
Adds benchmark dependency to vcpkg.json.
Adds vcpkg setup for Arch Linux and Windows CI jobs.

This ensures consistent dependency management and builds via Vcpkg for both platforms and enables OMath to build via vcpkg.
Clones the vcpkg repository and bootstraps it during the job execution.
Configures CMake to utilize vcpkg for dependency management on both Linux and Windows platforms.
This ensures consistent build environments across different operating systems and simplifies the integration of external libraries.
Sets up CMake presets to utilize the Vcpkg toolchain.

Specifies the Vcpkg root directory and manifest features.

Defines the installation directory for Vcpkg packages.

Forces the usage of Ninja as the make program.
Migrates to CMake presets and enables VCPKG to manage dependencies.
Removes explicit submodule configuration.
Updates benchmark and googletest to be integrated or linked properly.
The goal is to ease the build process and reduce complexity related to linking and dependency management.
Eliminates the `builtin-baseline` setting from the omath vcpkg.json file.
This setting is no longer necessary.
Conditionally links the test target to gtest when it is available,
rather than requiring the OMATH_BUILD_VIA_VCPKG flag to be false.
This allows for a more flexible test setup.
@luadebug
Copy link
Contributor Author

It looks like newest MinGW still expect experimental flag for std::print 13b81e7

@luadebug
Copy link
Contributor Author

I tried to use https://aur.archlinux.org/packages/libc++abi-msan but I did not encounter solution for MSan locally yet.

@luadebug
Copy link
Contributor Author

Looks like this works for local msan.sh test, as long as I got rid of std::mt19937 gen(std::random_device{}());

luadebug and others added 8 commits December 31, 2025 01:07
* added some code

* improvement

* visit

* added scanner code

* update

* fixed naming

* added const

* added type casting

* added file

* patch

* added unlikely

* added in module scanner

* fixing test

* fix

* remove

* improvement

* fix

* Update source/utility/elf_pattern_scan.cpp

Co-authored-by: Saikari <lin@sz.cn.eu.org>

* rev

* fix

* patch

* decomposed method

* fix

* fix

* improvement

* fix

* fix

* commented stuff

---------

Co-authored-by: Saikari <lin@sz.cn.eu.org>
@luadebug
Copy link
Contributor Author

/gemini review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

Comments