diff --git a/CMakeLists.txt b/CMakeLists.txt index 94b3288..b818ba1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,9 +1,9 @@ -# Copyright 2017-2021 the nyan authors. See copying.md for legal info. +# Copyright 2017-2025 the nyan authors. See copying.md for legal info. # main nyan build configuration file -cmake_minimum_required(VERSION 3.8.0) -# required for CMAKE_CXX_STANDARD 17 +cmake_minimum_required(VERSION 3.20.0) +# required for CMAKE_CXX_STANDARD 23 message(" @@ -38,7 +38,7 @@ project(nyan VERSION ${nyan_VERSION} LANGUAGES CXX) set(nyan_exports_name "nyanTargets") # C++ standard requirement -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) # CMake policies diff --git a/README.md b/README.md index 524bd7f..674a717 100644 --- a/README.md +++ b/README.md @@ -19,12 +19,12 @@ The main focus is *readability* and *moddability*. The foundation of **nyan**: -Technology | Component ------------------------|---------- -**C++20** | nyan core -**Flex** | Tokenizer generator -**CMake** | Build "system" -**Humans** | Doing it wrong all the time +| Technology | Component | +| ---------- | --------------------------- | +| **C++23** | nyan core | +| **Flex** | Tokenizer generator | +| **CMake** | Build "system" | +| **Humans** | Doing it wrong all the time | How? @@ -133,9 +133,9 @@ Please submit bugs and feature requests (and patches) on [GitHub](https://github Dependencies, Building and Running ---------------------------------- -Operating System | Build status ---------------------|-------------- -Debian Sid | [Todo: Kevin #11](https://github.com/SFTtech/kevin/issues/11) +| Operating System | Build status | +| ---------------- | ------------------------------------------------------------- | +| Debian Sid | [Todo: Kevin #11](https://github.com/SFTtech/kevin/issues/11) | - How do I get this to install on my box? diff --git a/doc/building.md b/doc/building.md index 2b104c7..7e3fd5a 100644 --- a/doc/building.md +++ b/doc/building.md @@ -1,12 +1,12 @@ # Building nyan -This project requires a C++20 compiler (e.g gcc >= 10 or clang >= 10) and +This project requires a C++23 compiler (e.g gcc >= 11 or clang >= 13) and uses `flex` and `cmake`. ## Dependencies -###### Ubuntu 20.04 or later +###### Ubuntu 22.04 or later ``` sudo apt-get update @@ -36,7 +36,7 @@ sudo emerge -avt cmake flex make - [Visual Studio 2017 Community edition](https://www.visualstudio.com/downloads/) - [flex](https://sourceforge.net/projects/winflexbison/) - The path to win_flex.exe needs to be added to the PATH environment variable - + ## Clone this repository ``` @@ -58,7 +58,7 @@ make -j$(nproc) _Note:_ on windows the last command is ```powershell cmake --build . --config RelWithDebInfo -``` +``` _Note:_ if nyan can't find flex add `-DFLEX_EXECUTABLE=path/to/win_flex.exe` to the cmake configure command. diff --git a/nyan/CMakeLists.txt b/nyan/CMakeLists.txt index d7f9023..f7a6972 100644 --- a/nyan/CMakeLists.txt +++ b/nyan/CMakeLists.txt @@ -115,7 +115,7 @@ set_target_properties(nyan PROPERTIES # C++ standard requirement target_compile_features(nyan PUBLIC - cxx_std_17 + cxx_std_23 ) # binaries