Kaynağa Gözat

Update the CLI11 snapshot and move the header to <lol/lib/cli11>

wip/image-kernel
Sam Hocevar 9 ay önce
ebeveyn
işleme
2c381c0075
4 değiştirilmiş dosya ile 36 ekleme ve 41 silme
  1. +2
    -2
      README.md
  2. +1
    -1
      include/lol/3rdparty/cli11
  3. +0
    -38
      include/lol/cli
  4. +33
    -0
      include/lol/lib/cli11

+ 2
- 2
README.md Dosyayı Görüntüle

@@ -25,7 +25,6 @@ The header-only part of the Lol Engine framework.

| header | description | examples |
|--------|-------------|----------|
| `<lol/cli>` | command-line parsing (imported from [cliutils/cli11](https://github.com/CLIUtils/CLI11)) | |
| `<lol/dialogs>` | portable file dialogs (imported from [samhocevar/portable-file-dialogs](https://github.com/samhocevar/portable-file-dialogs)) | |
| `<lol/file>` | file reading utilities | ● `lol::read(filename, data)` for any `std::string` or `std::vector`<br>● `lol::write(filename, data)` |
| `<lol/format>` | ensure `std::format` is available, using a fallback if necessary | |
@@ -50,6 +49,7 @@ The header-only part of the Lol Engine framework.

| header | description |
|--------|-------------|
| `<lol/lib/pegtl>` | the PEGTL parser (imported from [taocpp/pegtl](https://github.com/taocpp/PEGTL)) |
| `<lol/lib/cli11>` | the CLI11 command-line parsing library (imported from [cliutils/cli11](https://github.com/CLIUtils/CLI11)) | |
| `<lol/lib/doctest>` | the doctest unit test framework (imported from [doctest/doctest](https://github.com/doctest/doctest)) |
| `<lol/lib/doctest_main>` | a version of doctest that implements `main()` |
| `<lol/lib/pegtl>` | the PEGTL parser (imported from [taocpp/pegtl](https://github.com/taocpp/PEGTL)) |

+ 1
- 1
include/lol/3rdparty/cli11

@@ -1 +1 @@
Subproject commit 51f89966f07c12bb432e4521ec4a1b7d581e4435
Subproject commit 141a434249ff55f14ff10ff717ec7efd24d4d948

+ 0
- 38
include/lol/cli Dosyayı Görüntüle

@@ -1,38 +0,0 @@
//
// Lol Engine
//
// Copyright © 2010–2024 Sam Hocevar <sam@hocevar.net>
//
// Lol Engine is free software. It comes without any warranty, to
// the extent permitted by applicable law. You can redistribute it
// and/or modify it under the terms of the Do What the Fuck You Want
// to Public License, Version 2, as published by the WTFPL Task Force.
// See http://www.wtfpl.net/ for more details.
//

#pragma once

// Do not use <filesystem> on systems that do not have it
#include <version>
#if defined _LIBCPP_HAS_NO_FILESYSTEM_LIBRARY
# define CLI11_HAS_FILESYSTEM 0
#endif

#include "private/push_macros.h"
#include "3rdparty/cli11/include/CLI/CLI.hpp"
#include "private/pop_macros.h"

namespace CLI
{

using app = App;

};

namespace lol
{

namespace cli = CLI;

};


+ 33
- 0
include/lol/lib/cli11 Dosyayı Görüntüle

@@ -0,0 +1,33 @@
//
// Lol Engine
//
// Copyright © 2010–2024 Sam Hocevar <sam@hocevar.net>
//
// Lol Engine is free software. It comes without any warranty, to
// the extent permitted by applicable law. You can redistribute it
// and/or modify it under the terms of the Do What the Fuck You Want
// to Public License, Version 2, as published by the WTFPL Task Force.
// See http://www.wtfpl.net/ for more details.
//

#pragma once

// CLI11 unconditionally uses std::getenv, which is not available on SCE platforms
#if defined __SCE__
namespace std { static auto getenv = [](char const *) { return nullptr; }; }
#endif

// Tell CLI11 to not use <filesystem> on systems that do not have it, but before
// that, do not use <version> on systems that do not have it.
#if !defined __SCE__
# include <version>
# if defined _LIBCPP_HAS_NO_FILESYSTEM_LIBRARY
# define CLI11_HAS_FILESYSTEM 0
# endif
#endif

// The CLI11 library
#include "../3rdparty/cli11/include/CLI/CLI.hpp"

// Create a lol::cli::app alias for CLI::App
namespace lol::cli { using app = CLI::App; };

Yükleniyor…
İptal
Kaydet