Skip to content

Commit 3320025

Browse files
authored
Merge pull request #4 from Kataglyphis:develop
pumping up imgui dep
2 parents 8ad92d8 + 587fe6b commit 3320025

File tree

225 files changed

+698043
-339
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

225 files changed

+698043
-339
lines changed

.github/workflows/Linux.yml

+19-1
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,15 @@ jobs:
4848
iwyu
4949
- name: Install for Offscreen Rendering on GLFW
5050
run: sudo apt-get install libosmesa6-dev
51+
- name: Prepare python env for sphynx
52+
run: |
53+
pip install sphinx
54+
pip install sphinx-press-theme
55+
pip install myst-parser
56+
- name: Create docs
57+
run: |
58+
cd docs
59+
make html
5160
- name: Install Vulkan
5261
run: |
5362
wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo tee /etc/apt/trusted.gpg.d/lunarg.asc
@@ -76,7 +85,7 @@ jobs:
7685
working-directory: ${{github.workspace}}/build/
7786
# Execute tests defined by the CMake configuration.
7887
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
79-
run: ctest -C ${{env.BUILD_TYPE}} --verbose --extra-verbose --debug -T test --output-on-failure -E SetUp.blob
88+
run: ctest -C ${{env.BUILD_TYPE}} --verbose --extra-verbose --debug -T test --output-on-failure -E SetUp.blob RendererTest.DISABLED_BasicSetup
8089
- name: Build Code Coverage
8190
run: |
8291
llvm-profdata merge -sparse ${{github.workspace}}/build/Test/compile/default.profraw -o ${{github.workspace}}/build/compileTestSuite.profdata
@@ -91,3 +100,12 @@ jobs:
91100
name: codecov-umbrella # optional
92101
fail_ci_if_error: false # optional (default = false)
93102
verbose: false # optional (default = false)
103+
104+
- name: 📂 Sync files to dev domain
105+
if: github.ref == 'refs/heads/dev'
106+
uses: SamKirkland/[email protected]
107+
with:
108+
server: ${{ secrets.SERVER }}
109+
username: ${{ secrets.DEV_USERNAME }}
110+
password: ${{ secrets.DEV_PW }}
111+
local-dir: "./docs/build/html"

CMakeLists.txt

+13-5
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ myproject_global_options()
2727
myproject_local_options()
2828

2929
include(cmake/SystemLibDependencies.cmake)
30-
include(cmake/filters/SetExternalLibsFilters.cmake)
30+
include(Src/GraphicsEngineVulkan/cmake/filters/SetExternalLibsFilters.cmake)
3131
add_subdirectory(ExternalLib)
3232

3333
add_subdirectory(Src)
@@ -58,10 +58,17 @@ else()
5858
message(STATUS "WINDOWS_CI is OFF or not defined.")
5959
endif()
6060

61-
add_subdirectory(Test/commit)
62-
add_subdirectory(Test/compile)
63-
add_subdirectory(Test/perf)
64-
add_subdirectory(Test/fuzz)
61+
include(CTest)
62+
63+
if(BUILD_TESTING)
64+
message(STATUS "Tests are enabled.!")
65+
add_subdirectory(Test/commit)
66+
add_subdirectory(Test/compile)
67+
add_subdirectory(Test/perf)
68+
add_subdirectory(Test/fuzz)
69+
else()
70+
message(STATUS "Tests are disabled.!")
71+
endif()
6572

6673
# for correct library output needed
6774
install(
@@ -77,6 +84,7 @@ install(DIRECTORY ExternalLib/IMGUI/misc/fonts/ DESTINATION ExternalLib/IMGUI/mi
7784
# we are using this dir strings for removing hard coded file locations
7885
# at c++ side
7986
configure_file(VulkanRendererConfig.hpp.in "${CMAKE_CURRENT_SOURCE_DIR}/include/renderer/VulkanRendererConfig.hpp")
87+
configure_file(OpenGLRendererConfig.hpp.in "${CMAKE_CURRENT_SOURCE_DIR}/Src/GraphicsEngineOpenGL/renderer/OpenGLRendererConfig.hpp")
8088

8189
include(InstallRequiredSystemLibraries)
8290

ExternalLib/CMakeLists.txt

+38-1
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,22 @@ FetchContent_Declare(
1414
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
1515
FetchContent_MakeAvailable(googletest)
1616

17+
# We will not need to test benchmark lib itself.
18+
set(BENCHMARK_ENABLE_TESTING OFF CACHE BOOL "Disable benchmark testing as we don't need it.")
19+
# We will not need to test benchmark lib itself.
20+
set(BENCHMARK_INSTALL_DOCS OFF CACHE BOOL "Disable benchmark testing as we don't need it.")
21+
# We will not need to install benchmark since we link it statically.
22+
set(BENCHMARK_ENABLE_INSTALL OFF CACHE BOOL "Disable benchmark install to avoid overwriting vendor install.")
23+
set(BENCHMARK_USE_BUNDLED_GTEST OFF CACHE BOOL "Disable the bundled GTest usage.")
24+
1725
add_subdirectory(GOOGLE_BENCHMARK)
1826

1927
# hotfix for issue:
2028
# https://github.com/google/benchmark/pull/1875
2129
target_compile_options(benchmark INTERFACE -Wno-c++17-attribute-extensions)
2230
target_compile_options(benchmark_main INTERFACE -Wno-c++17-attribute-extensions)
2331

32+
2433
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
2534
message(STATUS "This is a Linux system.")
2635
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES ".*Clang")
@@ -83,6 +92,11 @@ add_subdirectory(SPDLOG)
8392

8493
add_subdirectory(NLOHMANN_JSON)
8594

95+
add_library(glad INTERFACE)
96+
target_include_directories(glad SYSTEM
97+
INTERFACE
98+
GLAD/include)
99+
86100
# https://stackoverflow.com/questions/49591804/clang-tidy-cmake-exclude-file-from-check/49591908#49591908
87101
# with this trick IMGUI will be excluded from time consuming static code analysis
88102
# we do not want to analyze imgui ...
@@ -97,16 +111,39 @@ add_library(
97111
target_link_libraries(IMGUI PRIVATE
98112
${CMAKE_DL_LIBS}
99113
Vulkan::Vulkan
114+
${OPENGL_LIBRARIES}
100115
glfw
101116
imgui
102117

103118
)
104119

105-
target_include_directories(IMGUI PRIVATE ${Vulkan_INCLUDE_DIRS})
120+
target_include_directories(IMGUI PRIVATE ${Vulkan_INCLUDE_DIRS}
121+
${OPENGL_INCLUDE_DIRS})
106122

107123
set_target_properties(
108124
IMGUI
109125
PROPERTIES
110126
CXX_CLANG_TIDY ""
111127
CXX_CPPCHECK ""
112128
)
129+
130+
# GLAD LIB
131+
add_library(
132+
GLAD
133+
OBJECT
134+
${GLAD_FILTER}
135+
)
136+
137+
target_link_libraries(GLAD PRIVATE ${OPENGL_LIBRARIES}
138+
139+
)
140+
141+
target_include_directories(GLAD PRIVATE GLAD/include
142+
${OPENGL_INCLUDE_DIRS})
143+
144+
set_target_properties(
145+
GLAD
146+
PROPERTIES
147+
CXX_CLANG_TIDY ""
148+
CXX_CPPCHECK ""
149+
)

0 commit comments

Comments
 (0)