Started the engine, using a 'header-only' architecture for compoments of the engine
This commit is contained in:
parent
7be2cf162d
commit
13327f6fc3
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,6 +1,8 @@
|
||||
# Build directories
|
||||
build/
|
||||
build-*/
|
||||
bin/
|
||||
bin-*/
|
||||
cmake-build-*/
|
||||
|
||||
# CMake generated files
|
||||
|
||||
86
CMakeLists.txt
Normal file
86
CMakeLists.txt
Normal file
@ -0,0 +1,86 @@
|
||||
cmake_minimum_required (VERSION 3.29)
|
||||
|
||||
project(VulkanEngine)
|
||||
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
|
||||
# Find all package dependencies
|
||||
find_package( glm REQUIRED ) # just one package as an exemple
|
||||
find_package( VulkanMemoryAllocator CONFIG REQUIRED )
|
||||
find_package( sdl2 REQUIRED )
|
||||
|
||||
# fastgltf because it's not in nixpkgs
|
||||
include(FetchContent)
|
||||
|
||||
FetchContent_Declare(
|
||||
fastgltf
|
||||
GIT_REPOSITORY https://github.com/spnda/fastgltf.git
|
||||
GIT_TAG v0.8.0
|
||||
)
|
||||
FetchContent_MakeAvailable(fastgltf)
|
||||
|
||||
# Enables LTO
|
||||
include(CheckIPOSupported)
|
||||
check_ipo_supported(RESULT LTO_SUPPORTED OUTPUT LTO_ERROR)
|
||||
|
||||
if(LTO_SUPPORTED AND CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||
message(STATUS "LTO activated")
|
||||
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
|
||||
else()
|
||||
message(WARNING "LTO not supported : ${LTO_ERROR}")
|
||||
endif()
|
||||
|
||||
# A function to automate executables aditions
|
||||
|
||||
function ( addBinary BINARY_NAME )
|
||||
cmake_parse_arguments ( BINARY "" "SHADER" "LIBS;TEXTURES;MODELS" ${ARGN} )
|
||||
add_executable ( ${BINARY_NAME} src/${BINARY_NAME}.cpp )
|
||||
# Sets the output dir to have clear separation between binaries
|
||||
set_target_properties ( ${BINARY_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${BINARY_NAME} )
|
||||
set_target_properties ( ${BINARY_NAME} PROPERTIES CXX_STANDARD 20 ) # Uses C++20
|
||||
|
||||
# Define VULKAN_HPP_HANDLE_ERROR_OUT_OF_DATE_AS_SUCCESS to treat VK_ERROR_OUT_OF_DATE_KHR as a success code
|
||||
target_compile_definitions ( ${BINARY_NAME} PRIVATE "VULKAN_HPP_HANDLE_ERROR_OUT_OF_DATE_AS_SUCCESS" )
|
||||
|
||||
|
||||
|
||||
if (DEFINED BINARY_LIBS)
|
||||
target_link_libraries ( ${BINARY_NAME} ${BINARY_LIBS} )
|
||||
endif()
|
||||
|
||||
if (DEFINED BINARY_MODELS) # Adds the 3D models in the binary folder
|
||||
set(RESOLVED_MODELS "")
|
||||
foreach(MODEL_PATTERN ${BINARY_MODELS})
|
||||
file(GLOB MATCHED_MODELS CONFIGURE_DEPENDS
|
||||
"${CMAKE_SOURCE_DIR}/assets/models/${MODEL_PATTERN}"
|
||||
)
|
||||
list(APPEND RESOLVED_MODELS ${MATCHED_MODELS})
|
||||
endforeach()
|
||||
|
||||
if (RESOLVED_MODELS)
|
||||
file(COPY ${RESOLVED_MODELS} DESTINATION ${CMAKE_BINARY_DIR}/${BINARY_NAME}/models)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (DEFINED BINARY_TEXTURES) # Adds the textures in the binary folder
|
||||
set(RESOLVED_TEXTURES "")
|
||||
foreach(TEX_PATTERN ${BINARY_TEXTURES})
|
||||
file(GLOB MATCHED_TEXTURES CONFIGURE_DEPENDS
|
||||
"${CMAKE_SOURCE_DIR}/assets/textures/${TEX_PATTERN}"
|
||||
)
|
||||
list(APPEND RESOLVED_TEXTURES ${MATCHED_TEXTURES})
|
||||
endforeach()
|
||||
|
||||
if (RESOLVED_TEXTURES)
|
||||
file(COPY ${RESOLVED_TEXTURES} DESTINATION ${CMAKE_BINARY_DIR}/${BINARY_NAME}/textures)
|
||||
endif()
|
||||
endif ()
|
||||
endfunction()
|
||||
|
||||
# Adds the main binary
|
||||
|
||||
addBinary (
|
||||
main
|
||||
|
||||
LIBS SDL2::SDL2
|
||||
)
|
||||
BIN
bin/.ninja_deps
Normal file
BIN
bin/.ninja_deps
Normal file
Binary file not shown.
23
bin/.ninja_log
Normal file
23
bin/.ninja_log
Normal file
@ -0,0 +1,23 @@
|
||||
# ninja log v7
|
||||
2 832 1776524224772581787 build.ninja 49485a7fb337b1e6
|
||||
2 832 1776524224770019075 /home/alex/Developer/Code/Vulkan/bin/cmake_install.cmake 49485a7fb337b1e6
|
||||
1 2544 1776523437569221238 _deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/io.cpp.o 55102a173727ecf5
|
||||
0 2839 1776523437568925562 _deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/base64.cpp.o 24783971ab3df401
|
||||
1 3179 1776523437569454443 _deps/fastgltf-build/CMakeFiles/fastgltf.dir/deps/simdjson/simdjson.cpp.o 81bd726d153d0dba
|
||||
0 7845 1776523437568734172 _deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/fastgltf.cpp.o 808ecdb040f91506
|
||||
2 832 1776524224772581787 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build/cmake_install.cmake 49485a7fb337b1e6
|
||||
2 234 1776523743038837711 _deps/fastgltf-build/libfastgltf.a 35ed20c53ec12f4b
|
||||
3 443 1776523899323132202 CMakeFiles/main.dir/src/main.cpp.o.ddi 2c0b378e41ca85e7
|
||||
3 14 1776523941796235970 CMakeFiles/main.dir/CXX.dd 64625a41e7cb2d24
|
||||
3 14 1776523941796235970 CMakeFiles/main.dir/CXXModules.json 64625a41e7cb2d24
|
||||
3 14 1776523941796235970 CMakeFiles/main.dir/src/main.cpp.o.modmap 64625a41e7cb2d24
|
||||
452 2309 1776523899772136336 CMakeFiles/main.dir/src/main.cpp.o a3ec966cb9dd3537
|
||||
4 803 1776524224772581787 build.ninja 49485a7fb337b1e6
|
||||
4 803 1776524224772581787 /home/alex/Developer/Code/Vulkan/bin/cmake_install.cmake 49485a7fb337b1e6
|
||||
4 803 1776524224772581787 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build/cmake_install.cmake 49485a7fb337b1e6
|
||||
2 481 1776524224779019102 CMakeFiles/main.dir/src/main.cpp.o.ddi ad45a11344eefd19
|
||||
481 491 1776524225259020540 CMakeFiles/main.dir/CXX.dd 64625a41e7cb2d24
|
||||
481 491 1776524225259020540 CMakeFiles/main.dir/CXXModules.json 64625a41e7cb2d24
|
||||
481 491 1776524225259020540 CMakeFiles/main.dir/src/main.cpp.o.modmap 64625a41e7cb2d24
|
||||
491 2388 1776524225268140989 CMakeFiles/main.dir/src/main.cpp.o b37edae0e954e5dc
|
||||
2388 2579 1776524227165026252 main/main 5d4e64b1fe423d3a
|
||||
1
bin/_deps/fastgltf-src
Submodule
1
bin/_deps/fastgltf-src
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit d4734a7e55d8d25155e755d895e018e423845cd0
|
||||
37
bin/_deps/fastgltf-subbuild/.ninja_log
Normal file
37
bin/_deps/fastgltf-subbuild/.ninja_log
Normal file
@ -0,0 +1,37 @@
|
||||
# ninja log v7
|
||||
1 16 1776523434263396135 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir e7b554f212059804
|
||||
1 16 1776523434263396135 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir e7b554f212059804
|
||||
16 1402 1776523435649396820 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download d6b057c3f4523864
|
||||
16 1402 1776523435649396820 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download d6b057c3f4523864
|
||||
0 15 1776523941056234125 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update 18ab84be450bf721
|
||||
0 15 1776523941056234125 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update 18ab84be450bf721
|
||||
15 30 1776523941085234197 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch 4ddfc104a209a355
|
||||
15 30 1776523941085234197 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch 4ddfc104a209a355
|
||||
30 44 1776523941100234235 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure f003ba6b94beeb51
|
||||
30 44 1776523941100234235 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure f003ba6b94beeb51
|
||||
45 58 1776523941114234269 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build 94eddf46f8205f82
|
||||
45 58 1776523941114234269 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build 94eddf46f8205f82
|
||||
59 72 1776523941128234304 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install 8ab81e46393e391c
|
||||
59 72 1776523941128234304 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install 8ab81e46393e391c
|
||||
72 87 1776523941142234339 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test 985ab92c32343512
|
||||
72 87 1776523941142234339 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test 985ab92c32343512
|
||||
87 107 1776523941162234389 CMakeFiles/fastgltf-populate-complete 4f7c559732830105
|
||||
87 107 1776523941162234389 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-done 4f7c559732830105
|
||||
87 107 1776523941162234389 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/CMakeFiles/fastgltf-populate-complete 4f7c559732830105
|
||||
87 107 1776523941162234389 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-done 4f7c559732830105
|
||||
0 16 1776524224080017009 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update 18ab84be450bf721
|
||||
0 16 1776524224080017009 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update 18ab84be450bf721
|
||||
16 30 1776524224109017096 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch 4ddfc104a209a355
|
||||
16 30 1776524224109017096 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch 4ddfc104a209a355
|
||||
30 44 1776524224124017141 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure f003ba6b94beeb51
|
||||
30 44 1776524224124017141 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure f003ba6b94beeb51
|
||||
44 58 1776524224138017182 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build 94eddf46f8205f82
|
||||
44 58 1776524224138017182 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build 94eddf46f8205f82
|
||||
58 72 1776524224151017221 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install 8ab81e46393e391c
|
||||
58 72 1776524224151017221 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install 8ab81e46393e391c
|
||||
72 86 1776524224166017266 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test 985ab92c32343512
|
||||
72 86 1776524224166017266 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test 985ab92c32343512
|
||||
86 106 1776524224186017326 CMakeFiles/fastgltf-populate-complete 4f7c559732830105
|
||||
86 106 1776524224186017326 fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-done 4f7c559732830105
|
||||
86 106 1776524224186017326 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/CMakeFiles/fastgltf-populate-complete 4f7c559732830105
|
||||
86 106 1776524224186017326 /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-done 4f7c559732830105
|
||||
42
bin/_deps/fastgltf-subbuild/CMakeLists.txt
Normal file
42
bin/_deps/fastgltf-subbuild/CMakeLists.txt
Normal file
@ -0,0 +1,42 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file LICENSE.rst or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 4.1.2)
|
||||
|
||||
# Reject any attempt to use a toolchain file. We must not use one because
|
||||
# we could be downloading it here. If the CMAKE_TOOLCHAIN_FILE environment
|
||||
# variable is set, the cache variable will have been initialized from it.
|
||||
unset(CMAKE_TOOLCHAIN_FILE CACHE)
|
||||
unset(ENV{CMAKE_TOOLCHAIN_FILE})
|
||||
|
||||
# We name the project and the target for the ExternalProject_Add() call
|
||||
# to something that will highlight to the user what we are working on if
|
||||
# something goes wrong and an error message is produced.
|
||||
|
||||
project(fastgltf-populate NONE)
|
||||
|
||||
|
||||
# Pass through things we've already detected in the main project to avoid
|
||||
# paying the cost of redetecting them again in ExternalProject_Add()
|
||||
set(GIT_EXECUTABLE [==[/etc/profiles/per-user/alex/bin/git]==])
|
||||
set(GIT_VERSION_STRING [==[2.53.0]==])
|
||||
set_property(GLOBAL PROPERTY _CMAKE_FindGit_GIT_EXECUTABLE_VERSION
|
||||
[==[/etc/profiles/per-user/alex/bin/git;2.53.0]==]
|
||||
)
|
||||
|
||||
|
||||
include(ExternalProject)
|
||||
ExternalProject_Add(fastgltf-populate
|
||||
"UPDATE_DISCONNECTED" "False" "GIT_REPOSITORY" "https://github.com/spnda/fastgltf.git" "EXTERNALPROJECT_INTERNAL_ARGUMENT_SEPARATOR" "GIT_TAG" "v0.8.0"
|
||||
SOURCE_DIR "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
BINARY_DIR "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build"
|
||||
CONFIGURE_COMMAND ""
|
||||
BUILD_COMMAND ""
|
||||
INSTALL_COMMAND ""
|
||||
TEST_COMMAND ""
|
||||
USES_TERMINAL_DOWNLOAD YES
|
||||
USES_TERMINAL_UPDATE YES
|
||||
USES_TERMINAL_PATCH YES
|
||||
)
|
||||
|
||||
|
||||
208
bin/_deps/fastgltf-subbuild/build.ninja
Normal file
208
bin/_deps/fastgltf-subbuild/build.ninja
Normal file
@ -0,0 +1,208 @@
|
||||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Ninja" Generator, CMake Version 4.1
|
||||
|
||||
# This file contains all the build statements describing the
|
||||
# compilation DAG.
|
||||
|
||||
# =============================================================================
|
||||
# Write statements declared in CMakeLists.txt:
|
||||
#
|
||||
# Which is the root file.
|
||||
# =============================================================================
|
||||
|
||||
# =============================================================================
|
||||
# Project: fastgltf-populate
|
||||
# Configurations:
|
||||
# =============================================================================
|
||||
|
||||
#############################################
|
||||
# Minimal version of Ninja required by this file
|
||||
|
||||
ninja_required_version = 1.5
|
||||
|
||||
# =============================================================================
|
||||
# Include auxiliary files.
|
||||
|
||||
|
||||
#############################################
|
||||
# Include rules file.
|
||||
|
||||
include CMakeFiles/rules.ninja
|
||||
|
||||
# =============================================================================
|
||||
|
||||
#############################################
|
||||
# Logical path to working directory; prefix for absolute paths.
|
||||
|
||||
cmake_ninja_workdir = /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/
|
||||
|
||||
#############################################
|
||||
# Utility command for fastgltf-populate
|
||||
|
||||
build fastgltf-populate: phony CMakeFiles/fastgltf-populate CMakeFiles/fastgltf-populate-complete fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-done fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update
|
||||
|
||||
|
||||
#############################################
|
||||
# Utility command for edit_cache
|
||||
|
||||
build CMakeFiles/edit_cache.util: CUSTOM_COMMAND
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
|
||||
DESC = No interactive CMake dialog available...
|
||||
restat = 1
|
||||
|
||||
build edit_cache: phony CMakeFiles/edit_cache.util
|
||||
|
||||
|
||||
#############################################
|
||||
# Utility command for rebuild_cache
|
||||
|
||||
build CMakeFiles/rebuild_cache.util: CUSTOM_COMMAND
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake --regenerate-during-build -S/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild -B/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild
|
||||
DESC = Running CMake to regenerate build system...
|
||||
pool = console
|
||||
restat = 1
|
||||
|
||||
build rebuild_cache: phony CMakeFiles/rebuild_cache.util
|
||||
|
||||
|
||||
#############################################
|
||||
# Phony custom command for CMakeFiles/fastgltf-populate
|
||||
|
||||
build CMakeFiles/fastgltf-populate | ${cmake_ninja_workdir}CMakeFiles/fastgltf-populate: phony CMakeFiles/fastgltf-populate-complete
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for CMakeFiles/fastgltf-populate-complete
|
||||
|
||||
build CMakeFiles/fastgltf-populate-complete fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-done | ${cmake_ninja_workdir}CMakeFiles/fastgltf-populate-complete ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-done: CUSTOM_COMMAND fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E make_directory /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/CMakeFiles && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/CMakeFiles/fastgltf-populate-complete && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-done
|
||||
DESC = Completed 'fastgltf-populate'
|
||||
restat = 1
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build
|
||||
|
||||
build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build | ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build: CUSTOM_COMMAND fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E echo_append && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build
|
||||
DESC = No build step for 'fastgltf-populate'
|
||||
restat = 1
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure
|
||||
|
||||
build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure | ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure: CUSTOM_COMMAND fastgltf-populate-prefix/tmp/fastgltf-populate-cfgcmd.txt fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E echo_append && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-configure
|
||||
DESC = No configure step for 'fastgltf-populate'
|
||||
restat = 1
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download
|
||||
|
||||
build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download | ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download: CUSTOM_COMMAND fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitinfo.txt fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE -P /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/tmp/fastgltf-populate-gitclone.cmake && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download
|
||||
DESC = Performing download step (git clone) for 'fastgltf-populate'
|
||||
pool = console
|
||||
restat = 1
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install
|
||||
|
||||
build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install | ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install: CUSTOM_COMMAND fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-build
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E echo_append && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install
|
||||
DESC = No install step for 'fastgltf-populate'
|
||||
restat = 1
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir
|
||||
|
||||
build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir | ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir: CUSTOM_COMMAND
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -Dcfgdir= -P /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/tmp/fastgltf-populate-mkdirs.cmake && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-mkdir
|
||||
DESC = Creating directories for 'fastgltf-populate'
|
||||
restat = 1
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch
|
||||
|
||||
build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch | ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch: CUSTOM_COMMAND fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch-info.txt fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E echo_append && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-patch
|
||||
DESC = No patch step for 'fastgltf-populate'
|
||||
pool = console
|
||||
restat = 1
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test
|
||||
|
||||
build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test | ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test: CUSTOM_COMMAND fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-install
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E echo_append && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -E touch /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-test
|
||||
DESC = No test step for 'fastgltf-populate'
|
||||
restat = 1
|
||||
|
||||
|
||||
#############################################
|
||||
# Custom command for fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update
|
||||
|
||||
build fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update | ${cmake_ninja_workdir}fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update: CUSTOM_COMMAND fastgltf-populate-prefix/tmp/fastgltf-populate-gitupdate.cmake fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-update-info.txt fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-download
|
||||
COMMAND = cd /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src && /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake -Dcan_fetch=YES -DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE -P /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/tmp/fastgltf-populate-gitupdate.cmake
|
||||
DESC = Performing update step for 'fastgltf-populate'
|
||||
pool = console
|
||||
|
||||
# =============================================================================
|
||||
# Target aliases.
|
||||
|
||||
# =============================================================================
|
||||
# Folder targets.
|
||||
|
||||
# =============================================================================
|
||||
|
||||
#############################################
|
||||
# Folder: /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild
|
||||
|
||||
build codegen: phony
|
||||
|
||||
# =============================================================================
|
||||
|
||||
#############################################
|
||||
# Folder: /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild
|
||||
|
||||
build all: phony fastgltf-populate
|
||||
|
||||
# =============================================================================
|
||||
# Built-in targets
|
||||
|
||||
|
||||
#############################################
|
||||
# Re-run CMake if any of its inputs changed.
|
||||
|
||||
build build.ninja /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/cmake_install.cmake: RERUN_CMAKE | /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/CMakeGenericSystem.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/CMakeInitializeConfigs.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/CMakeSystemSpecificInformation.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/CMakeSystemSpecificInitialize.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/PatchInfo.txt.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/RepositoryInfo.txt.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/UpdateInfo.txt.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/cfgcmd.txt.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/gitclone.cmake.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/gitupdate.cmake.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/mkdirs.cmake.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/shared_internal_commands.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/Platform/Linux-Initialize.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/Platform/Linux.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/4.1.2/CMakeSystem.cmake CMakeLists.txt fastgltf-populate-prefix/tmp/fastgltf-populate-mkdirs.cmake
|
||||
pool = console
|
||||
|
||||
|
||||
#############################################
|
||||
# A missing CMake input file is not an error.
|
||||
|
||||
build /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/CMakeGenericSystem.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/CMakeInitializeConfigs.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/CMakeSystemSpecificInformation.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/CMakeSystemSpecificInitialize.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/PatchInfo.txt.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/RepositoryInfo.txt.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/UpdateInfo.txt.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/cfgcmd.txt.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/gitclone.cmake.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/gitupdate.cmake.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/mkdirs.cmake.in /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/ExternalProject/shared_internal_commands.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/Platform/Linux-Initialize.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/Platform/Linux.cmake /nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/share/cmake-4.1/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/4.1.2/CMakeSystem.cmake CMakeLists.txt fastgltf-populate-prefix/tmp/fastgltf-populate-mkdirs.cmake: phony
|
||||
|
||||
|
||||
#############################################
|
||||
# Clean all the built files.
|
||||
|
||||
build clean: CLEAN
|
||||
|
||||
|
||||
#############################################
|
||||
# Print all primary targets available.
|
||||
|
||||
build help: HELP
|
||||
|
||||
|
||||
#############################################
|
||||
# Make the all target the default.
|
||||
|
||||
default all
|
||||
@ -0,0 +1,15 @@
|
||||
# This is a generated file and its contents are an internal implementation detail.
|
||||
# The download step will be re-executed if anything in this file changes.
|
||||
# No other meaning or use of this file is supported.
|
||||
|
||||
method=git
|
||||
command=/nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake;-DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE;-P;/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/tmp/fastgltf-populate-gitclone.cmake
|
||||
source_dir=/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src
|
||||
work_dir=/home/alex/Developer/Code/Vulkan/bin/_deps
|
||||
repository=https://github.com/spnda/fastgltf.git
|
||||
remote=origin
|
||||
init_submodules=TRUE
|
||||
recurse_submodules=--recursive
|
||||
submodules=
|
||||
CMP0097=NEW
|
||||
|
||||
@ -0,0 +1,15 @@
|
||||
# This is a generated file and its contents are an internal implementation detail.
|
||||
# The download step will be re-executed if anything in this file changes.
|
||||
# No other meaning or use of this file is supported.
|
||||
|
||||
method=git
|
||||
command=/nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake;-DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE;-P;/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/tmp/fastgltf-populate-gitclone.cmake
|
||||
source_dir=/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src
|
||||
work_dir=/home/alex/Developer/Code/Vulkan/bin/_deps
|
||||
repository=https://github.com/spnda/fastgltf.git
|
||||
remote=origin
|
||||
init_submodules=TRUE
|
||||
recurse_submodules=--recursive
|
||||
submodules=
|
||||
CMP0097=NEW
|
||||
|
||||
@ -0,0 +1,6 @@
|
||||
# This is a generated file and its contents are an internal implementation detail.
|
||||
# The update step will be re-executed if anything in this file changes.
|
||||
# No other meaning or use of this file is supported.
|
||||
|
||||
command=
|
||||
work_dir=
|
||||
@ -0,0 +1,7 @@
|
||||
# This is a generated file and its contents are an internal implementation detail.
|
||||
# The patch step will be re-executed if anything in this file changes.
|
||||
# No other meaning or use of this file is supported.
|
||||
|
||||
command (connected)=/nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake;-Dcan_fetch=YES;-DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE;-P;/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/tmp/fastgltf-populate-gitupdate.cmake
|
||||
command (disconnected)=/nix/store/lxkvigfj5xy6w2bs7h4xwr3d7wb7piqb-cmake-4.1.2/bin/cmake;-Dcan_fetch=NO;-DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE;-P;/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/tmp/fastgltf-populate-gitupdate.cmake
|
||||
work_dir=/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src
|
||||
@ -0,0 +1 @@
|
||||
cmd=''
|
||||
@ -0,0 +1,87 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file LICENSE.rst or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION ${CMAKE_VERSION}) # this file comes with cmake
|
||||
|
||||
if(EXISTS "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitclone-lastrun.txt" AND EXISTS "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitinfo.txt" AND
|
||||
"/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitclone-lastrun.txt" IS_NEWER_THAN "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitinfo.txt")
|
||||
message(VERBOSE
|
||||
"Avoiding repeated git clone, stamp file is up to date: "
|
||||
"'/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitclone-lastrun.txt'"
|
||||
)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Even at VERBOSE level, we don't want to see the commands executed, but
|
||||
# enabling them to be shown for DEBUG may be useful to help diagnose problems.
|
||||
cmake_language(GET_MESSAGE_LOG_LEVEL active_log_level)
|
||||
if(active_log_level MATCHES "DEBUG|TRACE")
|
||||
set(maybe_show_command COMMAND_ECHO STDOUT)
|
||||
else()
|
||||
set(maybe_show_command "")
|
||||
endif()
|
||||
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E rm -rf "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
RESULT_VARIABLE error_code
|
||||
${maybe_show_command}
|
||||
)
|
||||
if(error_code)
|
||||
message(FATAL_ERROR "Failed to remove directory: '/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src'")
|
||||
endif()
|
||||
|
||||
# try the clone 3 times in case there is an odd git clone issue
|
||||
set(error_code 1)
|
||||
set(number_of_tries 0)
|
||||
while(error_code AND number_of_tries LESS 3)
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git"
|
||||
clone --no-checkout --config "advice.detachedHead=false" "https://github.com/spnda/fastgltf.git" "fastgltf-src"
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps"
|
||||
RESULT_VARIABLE error_code
|
||||
${maybe_show_command}
|
||||
)
|
||||
math(EXPR number_of_tries "${number_of_tries} + 1")
|
||||
endwhile()
|
||||
if(number_of_tries GREATER 1)
|
||||
message(NOTICE "Had to git clone more than once: ${number_of_tries} times.")
|
||||
endif()
|
||||
if(error_code)
|
||||
message(FATAL_ERROR "Failed to clone repository: 'https://github.com/spnda/fastgltf.git'")
|
||||
endif()
|
||||
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git"
|
||||
checkout "v0.8.0" --
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
RESULT_VARIABLE error_code
|
||||
${maybe_show_command}
|
||||
)
|
||||
if(error_code)
|
||||
message(FATAL_ERROR "Failed to checkout tag: 'v0.8.0'")
|
||||
endif()
|
||||
|
||||
set(init_submodules TRUE)
|
||||
if(init_submodules)
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git"
|
||||
submodule update --recursive --init
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
RESULT_VARIABLE error_code
|
||||
${maybe_show_command}
|
||||
)
|
||||
endif()
|
||||
if(error_code)
|
||||
message(FATAL_ERROR "Failed to update submodules in: '/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src'")
|
||||
endif()
|
||||
|
||||
# Complete success, update the script-last-run stamp file:
|
||||
#
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E copy "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitinfo.txt" "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitclone-lastrun.txt"
|
||||
RESULT_VARIABLE error_code
|
||||
${maybe_show_command}
|
||||
)
|
||||
if(error_code)
|
||||
message(FATAL_ERROR "Failed to copy script-last-run stamp file: '/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/fastgltf-populate-gitclone-lastrun.txt'")
|
||||
endif()
|
||||
@ -0,0 +1,317 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file LICENSE.rst or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION ${CMAKE_VERSION}) # this file comes with cmake
|
||||
|
||||
# Even at VERBOSE level, we don't want to see the commands executed, but
|
||||
# enabling them to be shown for DEBUG may be useful to help diagnose problems.
|
||||
cmake_language(GET_MESSAGE_LOG_LEVEL active_log_level)
|
||||
if(active_log_level MATCHES "DEBUG|TRACE")
|
||||
set(maybe_show_command COMMAND_ECHO STDOUT)
|
||||
else()
|
||||
set(maybe_show_command "")
|
||||
endif()
|
||||
|
||||
function(do_fetch)
|
||||
message(VERBOSE "Fetching latest from the remote origin")
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git fetch --tags --force "origin"
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
COMMAND_ERROR_IS_FATAL LAST
|
||||
${maybe_show_command}
|
||||
)
|
||||
endfunction()
|
||||
|
||||
function(get_hash_for_ref ref out_var err_var)
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git rev-parse "${ref}^0"
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
RESULT_VARIABLE error_code
|
||||
OUTPUT_VARIABLE ref_hash
|
||||
ERROR_VARIABLE error_msg
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
if(error_code)
|
||||
set(${out_var} "" PARENT_SCOPE)
|
||||
else()
|
||||
set(${out_var} "${ref_hash}" PARENT_SCOPE)
|
||||
endif()
|
||||
set(${err_var} "${error_msg}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
get_hash_for_ref(HEAD head_sha error_msg)
|
||||
if(head_sha STREQUAL "")
|
||||
message(FATAL_ERROR "Failed to get the hash for HEAD:\n${error_msg}")
|
||||
endif()
|
||||
|
||||
if("${can_fetch}" STREQUAL "")
|
||||
set(can_fetch "YES")
|
||||
endif()
|
||||
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git show-ref "v0.8.0"
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
OUTPUT_VARIABLE show_ref_output
|
||||
)
|
||||
if(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/remotes/")
|
||||
# Given a full remote/branch-name and we know about it already. Since
|
||||
# branches can move around, we should always fetch, if permitted.
|
||||
if(can_fetch)
|
||||
do_fetch()
|
||||
endif()
|
||||
set(checkout_name "v0.8.0")
|
||||
|
||||
elseif(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/tags/")
|
||||
# Given a tag name that we already know about. We don't know if the tag we
|
||||
# have matches the remote though (tags can move), so we should fetch. As a
|
||||
# special case to preserve backward compatibility, if we are already at the
|
||||
# same commit as the tag we hold locally, don't do a fetch and assume the tag
|
||||
# hasn't moved on the remote.
|
||||
# FIXME: We should provide an option to always fetch for this case
|
||||
get_hash_for_ref("v0.8.0" tag_sha error_msg)
|
||||
if(tag_sha STREQUAL head_sha)
|
||||
message(VERBOSE "Already at requested tag: v0.8.0")
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(can_fetch)
|
||||
do_fetch()
|
||||
endif()
|
||||
set(checkout_name "v0.8.0")
|
||||
|
||||
elseif(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/heads/")
|
||||
# Given a branch name without any remote and we already have a branch by that
|
||||
# name. We might already have that branch checked out or it might be a
|
||||
# different branch. It isn't fully safe to use a bare branch name without the
|
||||
# remote, so do a fetch (if allowed) and replace the ref with one that
|
||||
# includes the remote.
|
||||
if(can_fetch)
|
||||
do_fetch()
|
||||
endif()
|
||||
set(checkout_name "origin/v0.8.0")
|
||||
|
||||
else()
|
||||
get_hash_for_ref("v0.8.0" tag_sha error_msg)
|
||||
if(tag_sha STREQUAL head_sha)
|
||||
# Have the right commit checked out already
|
||||
message(VERBOSE "Already at requested ref: ${tag_sha}")
|
||||
return()
|
||||
|
||||
elseif(tag_sha STREQUAL "")
|
||||
# We don't know about this ref yet, so we have no choice but to fetch.
|
||||
if(NOT can_fetch)
|
||||
message(FATAL_ERROR
|
||||
"Requested git ref \"v0.8.0\" is not present locally, and not "
|
||||
"allowed to contact remote due to UPDATE_DISCONNECTED setting."
|
||||
)
|
||||
endif()
|
||||
|
||||
# We deliberately swallow any error message at the default log level
|
||||
# because it can be confusing for users to see a failed git command.
|
||||
# That failure is being handled here, so it isn't an error.
|
||||
if(NOT error_msg STREQUAL "")
|
||||
message(DEBUG "${error_msg}")
|
||||
endif()
|
||||
do_fetch()
|
||||
set(checkout_name "v0.8.0")
|
||||
|
||||
else()
|
||||
# We have the commit, so we know we were asked to find a commit hash
|
||||
# (otherwise it would have been handled further above), but we don't
|
||||
# have that commit checked out yet. We don't need to fetch from the remote.
|
||||
set(checkout_name "v0.8.0")
|
||||
if(NOT error_msg STREQUAL "")
|
||||
message(WARNING "${error_msg}")
|
||||
endif()
|
||||
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(git_update_strategy "REBASE")
|
||||
if(git_update_strategy STREQUAL "")
|
||||
# Backward compatibility requires REBASE as the default behavior
|
||||
set(git_update_strategy REBASE)
|
||||
endif()
|
||||
|
||||
if(git_update_strategy MATCHES "^REBASE(_CHECKOUT)?$")
|
||||
# Asked to potentially try to rebase first, maybe with fallback to checkout.
|
||||
# We can't if we aren't already on a branch and we shouldn't if that local
|
||||
# branch isn't tracking the one we want to checkout.
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git symbolic-ref -q HEAD
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
OUTPUT_VARIABLE current_branch
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
# Don't test for an error. If this isn't a branch, we get a non-zero error
|
||||
# code but empty output.
|
||||
)
|
||||
|
||||
if(current_branch STREQUAL "")
|
||||
# Not on a branch, checkout is the only sensible option since any rebase
|
||||
# would always fail (and backward compatibility requires us to checkout in
|
||||
# this situation)
|
||||
set(git_update_strategy CHECKOUT)
|
||||
|
||||
else()
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git for-each-ref "--format=%(upstream:short)" "${current_branch}"
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
OUTPUT_VARIABLE upstream_branch
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
COMMAND_ERROR_IS_FATAL ANY # There is no error if no upstream is set
|
||||
)
|
||||
if(NOT upstream_branch STREQUAL checkout_name)
|
||||
# Not safe to rebase when asked to checkout a different branch to the one
|
||||
# we are tracking. If we did rebase, we could end up with arbitrary
|
||||
# commits added to the ref we were asked to checkout if the current local
|
||||
# branch happens to be able to rebase onto the target branch. There would
|
||||
# be no error message and the user wouldn't know this was occurring.
|
||||
set(git_update_strategy CHECKOUT)
|
||||
endif()
|
||||
|
||||
endif()
|
||||
elseif(NOT git_update_strategy STREQUAL "CHECKOUT")
|
||||
message(FATAL_ERROR "Unsupported git update strategy: ${git_update_strategy}")
|
||||
endif()
|
||||
|
||||
|
||||
# Check if stash is needed
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git status --porcelain
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
RESULT_VARIABLE error_code
|
||||
OUTPUT_VARIABLE repo_status
|
||||
)
|
||||
if(error_code)
|
||||
message(FATAL_ERROR "Failed to get the status")
|
||||
endif()
|
||||
string(LENGTH "${repo_status}" need_stash)
|
||||
|
||||
# If not in clean state, stash changes in order to be able to perform a
|
||||
# rebase or checkout without losing those changes permanently
|
||||
if(need_stash)
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git stash save --quiet;--include-untracked
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
${maybe_show_command}
|
||||
)
|
||||
endif()
|
||||
|
||||
if(git_update_strategy STREQUAL "CHECKOUT")
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git checkout "${checkout_name}"
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
${maybe_show_command}
|
||||
)
|
||||
else()
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git rebase "${checkout_name}"
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
RESULT_VARIABLE error_code
|
||||
OUTPUT_VARIABLE rebase_output
|
||||
ERROR_VARIABLE rebase_output
|
||||
)
|
||||
if(error_code)
|
||||
# Rebase failed, undo the rebase attempt before continuing
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git rebase --abort
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
${maybe_show_command}
|
||||
)
|
||||
|
||||
if(NOT git_update_strategy STREQUAL "REBASE_CHECKOUT")
|
||||
# Not allowed to do a checkout as a fallback, so cannot proceed
|
||||
if(need_stash)
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git stash pop --index --quiet
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
${maybe_show_command}
|
||||
)
|
||||
endif()
|
||||
message(FATAL_ERROR "\nFailed to rebase in: '/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src'."
|
||||
"\nOutput from the attempted rebase follows:"
|
||||
"\n${rebase_output}"
|
||||
"\n\nYou will have to resolve the conflicts manually")
|
||||
endif()
|
||||
|
||||
# Fall back to checkout. We create an annotated tag so that the user
|
||||
# can manually inspect the situation and revert if required.
|
||||
# We can't log the failed rebase output because MSVC sees it and
|
||||
# intervenes, causing the build to fail even though it completes.
|
||||
# Write it to a file instead.
|
||||
string(TIMESTAMP tag_timestamp "%Y%m%dT%H%M%S" UTC)
|
||||
set(tag_name _cmake_ExternalProject_moved_from_here_${tag_timestamp}Z)
|
||||
set(error_log_file ${CMAKE_CURRENT_LIST_DIR}/rebase_error_${tag_timestamp}Z.log)
|
||||
file(WRITE ${error_log_file} "${rebase_output}")
|
||||
message(WARNING "Rebase failed, output has been saved to ${error_log_file}"
|
||||
"\nFalling back to checkout, previous commit tagged as ${tag_name}")
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git tag -a
|
||||
-m "ExternalProject attempting to move from here to ${checkout_name}"
|
||||
${tag_name}
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
${maybe_show_command}
|
||||
)
|
||||
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git checkout "${checkout_name}"
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
${maybe_show_command}
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(need_stash)
|
||||
# Put back the stashed changes
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git stash pop --index --quiet
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
RESULT_VARIABLE error_code
|
||||
${maybe_show_command}
|
||||
)
|
||||
if(error_code)
|
||||
# Stash pop --index failed: Try again dropping the index
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git reset --hard --quiet
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
${maybe_show_command}
|
||||
)
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git stash pop --quiet
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
RESULT_VARIABLE error_code
|
||||
${maybe_show_command}
|
||||
)
|
||||
if(error_code)
|
||||
# Stash pop failed: Restore previous state.
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git reset --hard --quiet ${head_sha}
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
${maybe_show_command}
|
||||
)
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git" --git-dir=.git stash pop --index --quiet
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
${maybe_show_command}
|
||||
)
|
||||
message(FATAL_ERROR "\nFailed to unstash changes in: '/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src'."
|
||||
"\nYou will have to resolve the conflicts manually")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(init_submodules "TRUE")
|
||||
if(init_submodules)
|
||||
execute_process(
|
||||
COMMAND "/etc/profiles/per-user/alex/bin/git"
|
||||
--git-dir=.git
|
||||
submodule update --recursive --init
|
||||
WORKING_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
${maybe_show_command}
|
||||
)
|
||||
endif()
|
||||
@ -0,0 +1,27 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file LICENSE.rst or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION ${CMAKE_VERSION}) # this file comes with cmake
|
||||
|
||||
# If CMAKE_DISABLE_SOURCE_CHANGES is set to true and the source directory is an
|
||||
# existing directory in our source tree, calling file(MAKE_DIRECTORY) on it
|
||||
# would cause a fatal error, even though it would be a no-op.
|
||||
if(NOT EXISTS "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src")
|
||||
file(MAKE_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src")
|
||||
endif()
|
||||
file(MAKE_DIRECTORY
|
||||
"/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build"
|
||||
"/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix"
|
||||
"/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/tmp"
|
||||
"/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp"
|
||||
"/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src"
|
||||
"/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp"
|
||||
)
|
||||
|
||||
set(configSubDirs )
|
||||
foreach(subDir IN LISTS configSubDirs)
|
||||
file(MAKE_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp/${subDir}")
|
||||
endforeach()
|
||||
if(cfgdir)
|
||||
file(MAKE_DIRECTORY "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-subbuild/fastgltf-populate-prefix/src/fastgltf-populate-stamp${cfgdir}") # cfgdir has leading slash
|
||||
endif()
|
||||
349
bin/build.ninja
Normal file
349
bin/build.ninja
Normal file
File diff suppressed because one or more lines are too long
32
bin/compile_commands.json
Normal file
32
bin/compile_commands.json
Normal file
@ -0,0 +1,32 @@
|
||||
[
|
||||
{
|
||||
"directory": "/home/alex/Developer/Code/Vulkan/bin",
|
||||
"command": "/nix/store/a245z3cvf9x9sn0xlk6k8j9xhxbhda1z-gcc-wrapper-15.2.0/bin/g++ -DVULKAN_HPP_HANDLE_ERROR_OUT_OF_DATE_AS_SUCCESS -isystem /nix/store/55g2yvciw0whi44h5614q58lfv8akh5d-sdl2-compat-2.32.62-dev/include -isystem /nix/store/55g2yvciw0whi44h5614q58lfv8akh5d-sdl2-compat-2.32.62-dev/include/SDL2 -g -std=gnu++20 -fmodules-ts -fmodule-mapper=CMakeFiles/main.dir/src/main.cpp.o.modmap -MD -fdeps-format=p1689r5 -x c++ -o CMakeFiles/main.dir/src/main.cpp.o -c /home/alex/Developer/Code/Vulkan/src/main.cpp",
|
||||
"file": "/home/alex/Developer/Code/Vulkan/src/main.cpp",
|
||||
"output": "/home/alex/Developer/Code/Vulkan/bin/CMakeFiles/main.dir/src/main.cpp.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/alex/Developer/Code/Vulkan/bin",
|
||||
"command": "/nix/store/a245z3cvf9x9sn0xlk6k8j9xhxbhda1z-gcc-wrapper-15.2.0/bin/g++ -DFASTGLTF_DISABLE_CUSTOM_MEMORY_POOL=0 -DFASTGLTF_ENABLE_DEPRECATED_EXT=0 -DFASTGLTF_USE_64BIT_FLOAT=0 -DFASTGLTF_USE_CUSTOM_SMALLVECTOR=0 -DSIMDJSON_TARGET_VERSION=\\\"3.9.4\\\" -I/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/include -I/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/deps/simdjson -g -Wall -Wno-unknown-pragmas -flax-vector-conversions -fpermissive -finline-functions -o _deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/fastgltf.cpp.o -c /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/src/fastgltf.cpp",
|
||||
"file": "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/src/fastgltf.cpp",
|
||||
"output": "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/fastgltf.cpp.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/alex/Developer/Code/Vulkan/bin",
|
||||
"command": "/nix/store/a245z3cvf9x9sn0xlk6k8j9xhxbhda1z-gcc-wrapper-15.2.0/bin/g++ -DFASTGLTF_DISABLE_CUSTOM_MEMORY_POOL=0 -DFASTGLTF_ENABLE_DEPRECATED_EXT=0 -DFASTGLTF_USE_64BIT_FLOAT=0 -DFASTGLTF_USE_CUSTOM_SMALLVECTOR=0 -DSIMDJSON_TARGET_VERSION=\\\"3.9.4\\\" -I/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/include -I/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/deps/simdjson -g -Wall -Wno-unknown-pragmas -flax-vector-conversions -fpermissive -finline-functions -o _deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/base64.cpp.o -c /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/src/base64.cpp",
|
||||
"file": "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/src/base64.cpp",
|
||||
"output": "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/base64.cpp.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/alex/Developer/Code/Vulkan/bin",
|
||||
"command": "/nix/store/a245z3cvf9x9sn0xlk6k8j9xhxbhda1z-gcc-wrapper-15.2.0/bin/g++ -DFASTGLTF_DISABLE_CUSTOM_MEMORY_POOL=0 -DFASTGLTF_ENABLE_DEPRECATED_EXT=0 -DFASTGLTF_USE_64BIT_FLOAT=0 -DFASTGLTF_USE_CUSTOM_SMALLVECTOR=0 -DSIMDJSON_TARGET_VERSION=\\\"3.9.4\\\" -I/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/include -I/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/deps/simdjson -g -Wall -Wno-unknown-pragmas -flax-vector-conversions -fpermissive -finline-functions -o _deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/io.cpp.o -c /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/src/io.cpp",
|
||||
"file": "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/src/io.cpp",
|
||||
"output": "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build/CMakeFiles/fastgltf.dir/src/io.cpp.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/alex/Developer/Code/Vulkan/bin",
|
||||
"command": "/nix/store/a245z3cvf9x9sn0xlk6k8j9xhxbhda1z-gcc-wrapper-15.2.0/bin/g++ -DFASTGLTF_DISABLE_CUSTOM_MEMORY_POOL=0 -DFASTGLTF_ENABLE_DEPRECATED_EXT=0 -DFASTGLTF_USE_64BIT_FLOAT=0 -DFASTGLTF_USE_CUSTOM_SMALLVECTOR=0 -DSIMDJSON_TARGET_VERSION=\\\"3.9.4\\\" -I/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/include -I/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/deps/simdjson -g -Wall -Wno-unknown-pragmas -flax-vector-conversions -fpermissive -finline-functions -o _deps/fastgltf-build/CMakeFiles/fastgltf.dir/deps/simdjson/simdjson.cpp.o -c /home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/deps/simdjson/simdjson.cpp",
|
||||
"file": "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-src/deps/simdjson/simdjson.cpp",
|
||||
"output": "/home/alex/Developer/Code/Vulkan/bin/_deps/fastgltf-build/CMakeFiles/fastgltf.dir/deps/simdjson/simdjson.cpp.o"
|
||||
}
|
||||
]
|
||||
BIN
bin/main/main
Executable file
BIN
bin/main/main
Executable file
Binary file not shown.
87
src/engine/engine.h
Normal file
87
src/engine/engine.h
Normal file
@ -0,0 +1,87 @@
|
||||
#pragma once
|
||||
// Normal header
|
||||
|
||||
#include "types.h"
|
||||
#include <vulkan/vulkan_core.h>
|
||||
|
||||
#define GLFW_INCLUDE_VULKAN
|
||||
#include <GLFW/glfw3.h>
|
||||
|
||||
class Engine {
|
||||
public:
|
||||
bool _isInitialized { false };
|
||||
int _frameNumber { 0 };
|
||||
VkExtent2D _windowExtent { 1700, 900 };
|
||||
|
||||
struct SDL_Window* _window { nullptr };
|
||||
|
||||
void init();
|
||||
|
||||
void cleanup();
|
||||
|
||||
void draw();
|
||||
|
||||
void run();
|
||||
};
|
||||
|
||||
#ifdef ENGINE_IMPL
|
||||
// Implementation
|
||||
// Change this to use GLFW later
|
||||
|
||||
#include "initializers.h"
|
||||
|
||||
void Engine::init() {
|
||||
#ifndef NDEBUG
|
||||
fmt::println("Initializing the engine...")
|
||||
#endif
|
||||
|
||||
glfwInit();
|
||||
|
||||
glfwWindowHint(GLFW_CLIENT_API, GLFW_NO_API);
|
||||
glfwWindowHint(GLFW_RESIZABLE, GLFW_FALSE);
|
||||
|
||||
window = glfwCreateWindow(
|
||||
static_cast<uint32_t>(windowExtent.width),
|
||||
static_cast<uint32_t>(windowExtent.height),
|
||||
"Engine",
|
||||
nullptr,
|
||||
nullptr
|
||||
);
|
||||
|
||||
_isInitialized = true;
|
||||
|
||||
#ifndef NDEBUG
|
||||
fmt::println("Engine Initialized !")
|
||||
#endif
|
||||
}
|
||||
|
||||
void Engine::cleanup() {
|
||||
if (_isInitialized) {
|
||||
SDL_DestroyWindow(_window);
|
||||
}
|
||||
}
|
||||
|
||||
void Engine::draw() {
|
||||
// Todo
|
||||
}
|
||||
|
||||
void Engine::run() {
|
||||
SDL_Event e;
|
||||
bool bQuit = false;
|
||||
|
||||
while (!bQuit) {
|
||||
while ( SDL_PollEvent(&e) != 0 ) {
|
||||
if ( e.type == SDL_QUIT ) {
|
||||
bQuit = true;
|
||||
}
|
||||
|
||||
if (!GLFW_VISIBLE) {
|
||||
// Window is not visible (minimized or somehting else), throttle render
|
||||
}
|
||||
|
||||
draw();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
7
src/engine/images.h
Normal file
7
src/engine/images.h
Normal file
@ -0,0 +1,7 @@
|
||||
#pragma once
|
||||
// Normal header
|
||||
|
||||
#ifdef IMAGES_IMPL
|
||||
// Implementation
|
||||
|
||||
#endif
|
||||
7
src/engine/initializers.h
Normal file
7
src/engine/initializers.h
Normal file
@ -0,0 +1,7 @@
|
||||
#pragma once
|
||||
// Normal header
|
||||
|
||||
#ifdef INITIALIZERS_IMPL
|
||||
// Implementation
|
||||
|
||||
#endif
|
||||
7
src/engine/pipelines.h
Normal file
7
src/engine/pipelines.h
Normal file
@ -0,0 +1,7 @@
|
||||
#pragma once
|
||||
// Normal header
|
||||
|
||||
#ifdef PIPELINES_IMPL
|
||||
// Implementation
|
||||
|
||||
#endif
|
||||
25
src/engine/types.h
Normal file
25
src/engine/types.h
Normal file
@ -0,0 +1,25 @@
|
||||
#pragma once
|
||||
// Normal header
|
||||
#include <memory>
|
||||
#include <optional>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <span>
|
||||
#include <array>
|
||||
#include <functional>
|
||||
#include <deque>
|
||||
|
||||
#include <vulkan/vulkan.h>
|
||||
#include <vulkan/vk_enum_string_helper.h>
|
||||
#include <vk_mem_alloc.h>
|
||||
|
||||
#include <fmt/core.h>
|
||||
|
||||
#include <glm/mat4x4.hpp>
|
||||
#include <glm/vec4.hpp>
|
||||
|
||||
|
||||
#ifdef TYPES_IMPL
|
||||
// Implementation
|
||||
|
||||
#endif
|
||||
11
src/main.cpp
Normal file
11
src/main.cpp
Normal file
@ -0,0 +1,11 @@
|
||||
#define ENGINE_IMPL
|
||||
#include "engine/engine.h"
|
||||
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
Engine engine;
|
||||
|
||||
engine.init();
|
||||
// Just works :)
|
||||
return 0;
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user