Skip to content

Commit c127dec

Browse files
Merge pull request #102 from ArkadiuszSarwa/master
Fix warnings and add option to build Script
2 parents 6c4084e + 84b208c commit c127dec

9 files changed

Lines changed: 38 additions & 18 deletions

File tree

CMakeLists.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ project (Anvil)
44
option(ANVIL_INCLUDE_WIN3264_WINDOW_SYSTEM_SUPPORT "Includes 32-/64-bit Windows window system support (Windows builds only)" ON)
55
option(ANVIL_INCLUDE_XCB_WINDOW_SYSTEM_SUPPORT "Includes XCB window system support (Linux builds only)" ON)
66
option(ANVIL_LINK_WITH_GLSLANG "Links with glslang, instead of spawning a new process whenever GLSL->SPIR-V conversion is required" ON)
7+
option(ANVIL_LINK_EXAMPLES "Build examples showing how to use Anvil" OFF)
78

89

910
# Do not modify anything after this line, unless you know what you're doing.
@@ -238,6 +239,15 @@ if (ANVIL_LINK_WITH_GLSLANG)
238239
endif()
239240
endif()
240241

242+
243+
if (ANVIL_LINK_EXAMPLES)
244+
add_subdirectory("examples/DynamicBuffers")
245+
add_subdirectory("examples/MultiViewport")
246+
add_subdirectory("examples/OcclusionQuery")
247+
add_subdirectory("examples/OutOfOrderRasterization")
248+
add_subdirectory("examples/PushConstants")
249+
endif()
250+
241251
# Enable level-4 warnings
242252
if (MSVC)
243253
ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS)

examples/DynamicBuffers/CMakeLists.txt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,14 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
1616
endif()
1717
endif()
1818

19-
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
19+
if (NOT ANVIL_LINK_EXAMPLES)
20+
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
21+
endif()
2022

2123
target_include_directories(Anvil PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/anvil/include")
2224

2325
include_directories(${Anvil_SOURCE_DIR}/include
24-
${DynamicBuffers_SOURCE_DIR}/include)
26+
${DynamicBuffers_SOURCE_DIR}/include)
2527

2628
# Include the Vulkan header.
2729
if (WIN32)

examples/DynamicBuffers/src/app.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -478,7 +478,7 @@ void App::init_buffers()
478478

479479
/* We also need some space for a uniform block which is going to hold time info. */
480480
const auto dynamic_ub_alignment_requirement = m_device_ptr->get_physical_device_properties().core_vk1_0_properties_ptr->limits.min_uniform_buffer_offset_alignment;
481-
const auto sine_props_data_buffer_size_per_swapchain_image = Anvil::Utils::round_up(sizeof(float),
481+
const auto sine_props_data_buffer_size_per_swapchain_image = Anvil::Utils::round_up(static_cast<decltype(dynamic_ub_alignment_requirement)>(sizeof(float)),
482482
dynamic_ub_alignment_requirement);
483483
const auto sine_props_data_buffer_size_total = sine_props_data_buffer_size_per_swapchain_image * N_SWAPCHAIN_IMAGES;
484484

examples/MultiViewport/CMakeLists.txt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,12 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
1616
endif()
1717
endif()
1818

19-
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
19+
if (NOT ANVIL_LINK_EXAMPLES)
20+
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
21+
endif()
2022

2123
target_include_directories(Anvil PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/anvil/include")
2224

23-
include_directories(${Anvil_SOURCE_DIR}/include
24-
${MultiViewport_SOURCE_DIR}/include)
25-
2625
if (WIN32)
2726
include_directories($ENV{VK_SDK_PATH}/Include
2827
$ENV{VULKAN_SDK}/Include)
@@ -47,6 +46,9 @@ else()
4746
$ENV{VULKAN_SDK}/x86_64/lib)
4847
endif()
4948

49+
include_directories(${Anvil_SOURCE_DIR}/include
50+
${MultiViewport_SOURCE_DIR}/include)
51+
5052
# Create the MultiViewport project.
5153
add_executable (MultiViewport include/app.h
5254
include/app.h

examples/OcclusionQuery/CMakeLists.txt

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,12 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
1616
endif()
1717
endif()
1818

19-
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
19+
if (NOT ANVIL_LINK_EXAMPLES)
20+
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
21+
endif()
2022

2123
target_include_directories(Anvil PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/anvil/include")
2224

23-
include_directories(${Anvil_SOURCE_DIR}/include
24-
${OcclusionQuery_SOURCE_DIR}/include)
25-
2625
# Include the Vulkan header.
2726
if (WIN32)
2827
include_directories($ENV{VK_SDK_PATH}/Include
@@ -46,7 +45,10 @@ else()
4645
link_directories ($ENV{VK_SDK_PATH}/x86_64/lib
4746
$ENV{VULKAN_SDK}/lib
4847
$ENV{VULKAN_SDK}/x86_64/lib)
49-
endif()
48+
endif()
49+
50+
include_directories(${Anvil_SOURCE_DIR}/include
51+
${OcclusionQuery_SOURCE_DIR}/include)
5052

5153
# Create the OcclusionQuery project.
5254
add_executable (OcclusionQuery include/app.h

examples/OcclusionQuery/src/app.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -346,9 +346,9 @@ void App::init_buffers()
346346
{
347347
const VkDeviceSize uniform_alignment_req(m_physical_device_ptr->get_device_properties().core_vk1_0_properties_ptr->limits.min_uniform_buffer_offset_alignment);
348348

349-
m_n_bytes_per_query = static_cast<uint32_t>(Anvil::Utils::round_up(sizeof(uint32_t),
349+
m_n_bytes_per_query = static_cast<uint32_t>(Anvil::Utils::round_up(static_cast<VkDeviceSize>(sizeof(uint32_t)),
350350
uniform_alignment_req) );
351-
m_time_n_bytes_per_swapchain_image = static_cast<uint32_t>(Anvil::Utils::round_up(sizeof(float),
351+
m_time_n_bytes_per_swapchain_image = static_cast<uint32_t>(Anvil::Utils::round_up(static_cast<VkDeviceSize>(sizeof(float)),
352352
uniform_alignment_req) );
353353

354354
{

examples/OutOfOrderRasterization/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
1616
endif()
1717
endif()
1818

19-
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
19+
if (NOT ANVIL_LINK_EXAMPLES)
20+
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
21+
endif()
2022

2123
target_include_directories(Anvil PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/anvil/include")
2224

examples/PushConstants/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
1616
endif()
1717
endif()
1818

19-
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
19+
if (NOT ANVIL_LINK_EXAMPLES)
20+
add_subdirectory (../.. "${CMAKE_CURRENT_BINARY_DIR}/anvil")
21+
endif()
2022

2123
target_include_directories(Anvil PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/anvil/include")
2224

src/wrappers/image.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -880,7 +880,7 @@ const VkImage& Anvil::Image::get_image(const bool& in_bake_memory_if_necessary)
880880
/* Please see header for specification */
881881
VkExtent2D Anvil::Image::get_image_extent_2D(uint32_t in_n_mipmap) const
882882
{
883-
VkExtent2D result;
883+
VkExtent2D result = { 0u, 0u };
884884
uint32_t size[2];
885885

886886
if (!get_image_mipmap_size(in_n_mipmap,
@@ -903,7 +903,7 @@ VkExtent2D Anvil::Image::get_image_extent_2D(uint32_t in_n_mipmap) const
903903
/* Please see header for specification */
904904
VkExtent3D Anvil::Image::get_image_extent_3D(uint32_t in_n_mipmap) const
905905
{
906-
VkExtent3D result;
906+
VkExtent3D result = { 0u, 0u, 0u };
907907
uint32_t size[3];
908908

909909
if (!get_image_mipmap_size(in_n_mipmap,

0 commit comments

Comments
 (0)