From 511cac8db4f9d9d5eda95a6e16af74e0731f5f32 Mon Sep 17 00:00:00 2001 From: Charles Giessen Date: Wed, 10 Jun 2020 13:39:14 -0600 Subject: [PATCH] Fix license, add it to source, fix readme. Delete .gitmodules, update readme to mention that enabling testing automatically gets the dependencies, no more git submodules. Add license to top of source files. --- LICENSE.txt | 2 +- README.md | 35 ++++++++++++++--------------------- src/VkBootstrap.cpp | 16 ++++++++++++++++ src/VkBootstrap.h | 16 ++++++++++++++++ 4 files changed, 47 insertions(+), 22 deletions(-) diff --git a/LICENSE.txt b/LICENSE.txt index 02bb6d6..8eececa 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,4 +1,4 @@ -Copyright © 2020 Charles Giessen (charles-lunarg@gmail.com) +Copyright © 2020 Charles Giessen (charles@lunarg.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/README.md b/README.md index 7e1b379..e7af311 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,21 @@ -# Vk-Bootstrap +# vk-bootstrap -A Vulkan utility library meant to jump start any Vulkan Application +A utility library meant to jump start developing a Vulkan Application This library simplifies the tedious process of: -* Instance Creation -* Picking a Physical Device -* Device Creation -* Getting Queues -* Swapchain Creation +* Instance creation +* Physical Device selection +* Device creation +* Getting queues +* Swapchain creation It also adds several conveniences for: * Enabling validation layers -* Adding a debug callback -* Select a gpu based on a set of criteria like features, extensions, memory, etc. +* Adding a debug callback messenger +* Enabling extensions on a physical device +* Select a gpu based on a set of criteria like features, extensions, memory, etc Read the [Getting Started](docs/getting_started.md) guide for a quick start on using `vk-bootstrap` @@ -82,7 +83,7 @@ See `example/triangle.cpp` for an example that renders a triangle to the screen. This library has no external dependencies beyond C++11 and the standard library. -Simply copy the `src/VkBootstrap.h` and `src/VkBootstrap.cpp` files into your project and compile them as you normally would +Simply copy the `src/VkBootstrap.h` and `src/VkBootstrap.cpp` files into your project, include them, compile as you normally would. ### With git-submodule + CMake @@ -112,17 +113,9 @@ cmake .. ## Testing -To test, glfw and Catch2 are automatically included using git submodules. - -In the project directory, run the following to get the required dependencies to test. +Testing requires GLFW and Catch2 but are acquired automatically using cmake. +Tests will be enabled if you open this project standalone. If you include this project as a subdirectory, you can force enable tests by setting the option `VK_BOOTSTRAP_TEST` to `ON`, otherwise it won't be built. ```bash -git submodule update --init -``` - -Tests will be enabled by default if you open this project standalone. If you include this project as a subdirectory, -you can force enable tests by adding `-DVK_BOOTSTRAP_TEST` to the cmake command line arguments - -```bash -cmake ../path/to/your-project/ -DVK_BOOTSTRAP_TEST=ON +cmake ../path/to/your_project/ -DVK_BOOTSTRAP_TEST=ON ``` diff --git a/src/VkBootstrap.cpp b/src/VkBootstrap.cpp index 6f7dd13..73e3b6f 100644 --- a/src/VkBootstrap.cpp +++ b/src/VkBootstrap.cpp @@ -1,3 +1,19 @@ +/* + * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated + * documentation files (the “Software”), to deal in the Software without restriction, including without + * limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies + * of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT + * LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Copyright © 2020 Charles Giessen (charles@lunarg.com) + */ + #include "VkBootstrap.h" #include diff --git a/src/VkBootstrap.h b/src/VkBootstrap.h index d7abb3f..b5b1b8b 100644 --- a/src/VkBootstrap.h +++ b/src/VkBootstrap.h @@ -1,3 +1,19 @@ +/* + * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated + * documentation files (the “Software”), to deal in the Software without restriction, including without + * limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies + * of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT + * LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Copyright © 2020 Charles Giessen (charles@lunarg.com) + */ + #pragma once #include