Fixing Logging. DevPlayground compiles and runs on Linux now.
This commit is contained in:
parent
defa41b42a
commit
d6362a62df
56
.gitignore
vendored
56
.gitignore
vendored
@ -6,16 +6,60 @@ external/
|
|||||||
# Frequently edited tests
|
# Frequently edited tests
|
||||||
Tests/TestProject/
|
Tests/TestProject/
|
||||||
|
|
||||||
|
# CMake Build Files
|
||||||
|
CMakeLists.txt.user
|
||||||
|
CMakeCache.txt
|
||||||
|
CMakeFiles/
|
||||||
|
CMakeScripts/
|
||||||
|
Testing/
|
||||||
|
Makefile
|
||||||
|
cmake_install.cmake
|
||||||
|
install_manifest.txt
|
||||||
|
compile_commands.json
|
||||||
|
CTestTestfile.cmake
|
||||||
|
_deps/
|
||||||
|
CMakeUserPresets.json
|
||||||
|
build/
|
||||||
|
|
||||||
|
|
||||||
# Exclude files
|
# Exclude files
|
||||||
|
|
||||||
|
# C++
|
||||||
|
# Prerequisites
|
||||||
|
*.d
|
||||||
|
|
||||||
|
# Compiled Object files
|
||||||
|
*.slo
|
||||||
|
*.lo
|
||||||
|
*.o
|
||||||
|
*.obj
|
||||||
|
|
||||||
|
# Precompiled Headers
|
||||||
|
*.gch
|
||||||
|
*.pch
|
||||||
|
|
||||||
|
# Compiled Dynamic libraries
|
||||||
|
*.so
|
||||||
|
*.dylib
|
||||||
|
*.dll
|
||||||
|
|
||||||
|
# Fortran module files
|
||||||
|
*.mod
|
||||||
|
*.smod
|
||||||
|
|
||||||
|
# Compiled Static libraries
|
||||||
|
*.lai
|
||||||
|
*.la
|
||||||
|
*.a
|
||||||
|
*.lib
|
||||||
|
|
||||||
|
# Executables
|
||||||
|
*.exe
|
||||||
|
*.out
|
||||||
|
*.app
|
||||||
|
|
||||||
# Temporary excludes
|
# Temporary excludes
|
||||||
|
|
||||||
Core/private/Math/
|
|
||||||
|
|
||||||
Matrix4.h
|
|
||||||
IntVector4.h
|
|
||||||
Vector4.h
|
|
||||||
|
|
||||||
############################################################################################
|
############################################################################################
|
||||||
|
|
||||||
## Ignore Visual Studio temporary files, build results, and
|
## Ignore Visual Studio temporary files, build results, and
|
||||||
|
89
.vscode/settings.json
vendored
89
.vscode/settings.json
vendored
@ -3,8 +3,8 @@
|
|||||||
"C_Cpp.loggingLevel": "Error",
|
"C_Cpp.loggingLevel": "Error",
|
||||||
"C_Cpp.default.cppStandard": "c++20",
|
"C_Cpp.default.cppStandard": "c++20",
|
||||||
"C_Cpp.default.includePath": [
|
"C_Cpp.default.includePath": [
|
||||||
"${workspaceFolder}/Engine/Source/Runtime",
|
"${workspaceFolder}/Engine/Source/Runtime/",
|
||||||
"${workspaceFolder}/Engine/Source/ThirdParty"
|
"${workspaceFolder}/Engine/Source/ThirdParty/"
|
||||||
],
|
],
|
||||||
|
|
||||||
"C_Cpp.default.browse.path": [
|
"C_Cpp.default.browse.path": [
|
||||||
@ -13,10 +13,93 @@
|
|||||||
],
|
],
|
||||||
"C_Cpp.default.browse.databaseFilename": "${workspaceFolder}/.vscode/browse.vc.db",
|
"C_Cpp.default.browse.databaseFilename": "${workspaceFolder}/.vscode/browse.vc.db",
|
||||||
"files.associations": {
|
"files.associations": {
|
||||||
"cstdint": "cpp"
|
"cstdint": "cpp",
|
||||||
|
"chrono": "cpp",
|
||||||
|
"string": "cpp",
|
||||||
|
"cctype": "cpp",
|
||||||
|
"clocale": "cpp",
|
||||||
|
"cmath": "cpp",
|
||||||
|
"cstdarg": "cpp",
|
||||||
|
"cstddef": "cpp",
|
||||||
|
"cstdio": "cpp",
|
||||||
|
"cstdlib": "cpp",
|
||||||
|
"cstring": "cpp",
|
||||||
|
"ctime": "cpp",
|
||||||
|
"cwchar": "cpp",
|
||||||
|
"cwctype": "cpp",
|
||||||
|
"any": "cpp",
|
||||||
|
"array": "cpp",
|
||||||
|
"atomic": "cpp",
|
||||||
|
"bit": "cpp",
|
||||||
|
"*.tcc": "cpp",
|
||||||
|
"bitset": "cpp",
|
||||||
|
"charconv": "cpp",
|
||||||
|
"cinttypes": "cpp",
|
||||||
|
"codecvt": "cpp",
|
||||||
|
"compare": "cpp",
|
||||||
|
"complex": "cpp",
|
||||||
|
"concepts": "cpp",
|
||||||
|
"condition_variable": "cpp",
|
||||||
|
"deque": "cpp",
|
||||||
|
"forward_list": "cpp",
|
||||||
|
"list": "cpp",
|
||||||
|
"map": "cpp",
|
||||||
|
"set": "cpp",
|
||||||
|
"unordered_map": "cpp",
|
||||||
|
"unordered_set": "cpp",
|
||||||
|
"vector": "cpp",
|
||||||
|
"exception": "cpp",
|
||||||
|
"expected": "cpp",
|
||||||
|
"algorithm": "cpp",
|
||||||
|
"functional": "cpp",
|
||||||
|
"iterator": "cpp",
|
||||||
|
"memory": "cpp",
|
||||||
|
"memory_resource": "cpp",
|
||||||
|
"numeric": "cpp",
|
||||||
|
"optional": "cpp",
|
||||||
|
"random": "cpp",
|
||||||
|
"ratio": "cpp",
|
||||||
|
"regex": "cpp",
|
||||||
|
"source_location": "cpp",
|
||||||
|
"string_view": "cpp",
|
||||||
|
"system_error": "cpp",
|
||||||
|
"tuple": "cpp",
|
||||||
|
"type_traits": "cpp",
|
||||||
|
"utility": "cpp",
|
||||||
|
"hash_map": "cpp",
|
||||||
|
"hash_set": "cpp",
|
||||||
|
"format": "cpp",
|
||||||
|
"fstream": "cpp",
|
||||||
|
"future": "cpp",
|
||||||
|
"initializer_list": "cpp",
|
||||||
|
"iomanip": "cpp",
|
||||||
|
"iosfwd": "cpp",
|
||||||
|
"iostream": "cpp",
|
||||||
|
"istream": "cpp",
|
||||||
|
"limits": "cpp",
|
||||||
|
"mutex": "cpp",
|
||||||
|
"new": "cpp",
|
||||||
|
"numbers": "cpp",
|
||||||
|
"ostream": "cpp",
|
||||||
|
"semaphore": "cpp",
|
||||||
|
"shared_mutex": "cpp",
|
||||||
|
"span": "cpp",
|
||||||
|
"sstream": "cpp",
|
||||||
|
"stdexcept": "cpp",
|
||||||
|
"stdfloat": "cpp",
|
||||||
|
"stop_token": "cpp",
|
||||||
|
"streambuf": "cpp",
|
||||||
|
"text_encoding": "cpp",
|
||||||
|
"thread": "cpp",
|
||||||
|
"cfenv": "cpp",
|
||||||
|
"typeindex": "cpp",
|
||||||
|
"typeinfo": "cpp",
|
||||||
|
"valarray": "cpp",
|
||||||
|
"variant": "cpp"
|
||||||
},
|
},
|
||||||
"C_Cpp.default.defines": [
|
"C_Cpp.default.defines": [
|
||||||
"P_LINUX_BUILD",
|
"P_LINUX_BUILD",
|
||||||
"__SSE__",
|
"__SSE__",
|
||||||
],
|
],
|
||||||
|
"cmake.sourceDirectory": "/home/morthaine/Development/PhanesEngine/DevPlayground",
|
||||||
}
|
}
|
@ -2,9 +2,6 @@ cmake_minimum_required(VERSION 3.15...3.30)
|
|||||||
|
|
||||||
project(DevPlayground)
|
project(DevPlayground)
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libstdc++")
|
|
||||||
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Engine/Source/Runtime ${CMAKE_BINARY_DIR}/Engine)
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Engine/Source/Runtime ${CMAKE_BINARY_DIR}/Engine)
|
||||||
|
|
||||||
|
|
||||||
|
@ -22,5 +22,8 @@ ${StartingPointPCH}
|
|||||||
add_compile_definitions(P_LINUX_BUILD)
|
add_compile_definitions(P_LINUX_BUILD)
|
||||||
add_compile_definitions(P_DEBUG)
|
add_compile_definitions(P_DEBUG)
|
||||||
|
|
||||||
|
# fmt for spdlog. It uses the external module which needs to be linked manually
|
||||||
|
find_package(fmt)
|
||||||
|
target_link_libraries(PhanesCore fmt::fmt)
|
||||||
|
|
||||||
target_include_directories(PhanesCore PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../)
|
target_include_directories(PhanesCore PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../)
|
@ -6,13 +6,19 @@
|
|||||||
|
|
||||||
namespace Phanes::Core::Logging
|
namespace Phanes::Core::Logging
|
||||||
{
|
{
|
||||||
static Phanes::Ref<spdlog::logger> _PEngineLogger;
|
class Logger {
|
||||||
static Phanes::Ref<spdlog::logger> _PAppLogger;
|
|
||||||
|
|
||||||
void Init();
|
public:
|
||||||
|
|
||||||
inline std::shared_ptr<spdlog::logger>& PEngineLogger() { return _PEngineLogger; };
|
static void Init();
|
||||||
inline std::shared_ptr<spdlog::logger>& PAppLogger() { return _PAppLogger; };
|
|
||||||
|
static std::shared_ptr<spdlog::logger>& PEngineLogger() { return _PEngineLogger; }
|
||||||
|
static std::shared_ptr<spdlog::logger>& PAppLogger() { return _PAppLogger; }
|
||||||
|
|
||||||
|
private:
|
||||||
|
static std::shared_ptr<spdlog::logger> _PEngineLogger;
|
||||||
|
static std::shared_ptr<spdlog::logger> _PAppLogger;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -22,18 +28,18 @@ namespace PLog = Phanes::Core::Logging; // User Macros
|
|||||||
|
|
||||||
// Default logger
|
// Default logger
|
||||||
|
|
||||||
#define PENGINE_LOG_TRACE(...) ::Phanes::Core::Logging::PEngineLogger()->trace(__VA_ARGS__)
|
#define PENGINE_LOG_TRACE(...) ::Phanes::Core::Logging::Logger::PEngineLogger()->trace(__VA_ARGS__)
|
||||||
#define PENGINE_LOG_INFO(...) ::Phanes::Core::Logging::PEngineLogger()->info(__VA_ARGS__)
|
#define PENGINE_LOG_INFO(...) ::Phanes::Core::Logging::Logger::PEngineLogger()->info(__VA_ARGS__)
|
||||||
#define PENGINE_LOG_WARN(...) ::Phanes::Core::Logging::PEngineLogger()->warn(__VA_ARGS__)
|
#define PENGINE_LOG_WARN(...) ::Phanes::Core::Logging::Logger::PEngineLogger()->warn(__VA_ARGS__)
|
||||||
#define PENGINE_LOG_ERROR(...) ::Phanes::Core::Logging::PEngineLogger()->error(__VA_ARGS__)
|
#define PENGINE_LOG_ERROR(...) ::Phanes::Core::Logging::Logger::PEngineLogger()->error(__VA_ARGS__)
|
||||||
#define PENGINE_LOG_FATAL(...) ::Phanes::Core::Logging::PEngineLogger()->critical(__VA_ARGS__)
|
#define PENGINE_LOG_FATAL(...) ::Phanes::Core::Logging::Logger::PEngineLogger()->critical(__VA_ARGS__)
|
||||||
|
|
||||||
|
|
||||||
#define PAPP_LOG_TRACE(...) ::Phanes::Core::Logging::PAppLogger()->trace(__VA_ARGS__)
|
#define PAPP_LOG_TRACE(...) ::Phanes::Core::Logging::Logger::PAppLogger()->trace(__VA_ARGS__)
|
||||||
#define PAPP_LOG_INFO(...) ::Phanes::Core::Logging::PAppLogger()->info(__VA_ARGS__)
|
#define PAPP_LOG_INFO(...) ::Phanes::Core::Logging::Logger::PAppLogger()->info(__VA_ARGS__)
|
||||||
#define PAPP_LOG_WARN(...) ::Phanes::Core::Logging::PAppLogger()->warn(__VA_ARGS__)
|
#define PAPP_LOG_WARN(...) ::Phanes::Core::Logging::Logger::PAppLogger()->warn(__VA_ARGS__)
|
||||||
#define PAPP_LOG_ERROR(...) ::Phanes::Core::Logging::PAppLogger()->error(__VA_ARGS__)
|
#define PAPP_LOG_ERROR(...) ::Phanes::Core::Logging::Logger::PAppLogger()->error(__VA_ARGS__)
|
||||||
#define PAPP_LOG_FATAL(...) ::Phanes::Core::Logging::PAppLogger()->critical(__VA_ARGS__)
|
#define PAPP_LOG_FATAL(...) ::Phanes::Core::Logging::Logger::PAppLogger()->critical(__VA_ARGS__)
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
@ -1,6 +1,13 @@
|
|||||||
#include "Core/Logging/Logging.h"
|
#include "Core/Logging/Logging.h"
|
||||||
|
|
||||||
void Phanes::Core::Logging::Init()
|
namespace Phanes::Core::Logging
|
||||||
|
{
|
||||||
|
std::shared_ptr<spdlog::logger> Logger::_PEngineLogger;
|
||||||
|
std::shared_ptr<spdlog::logger> Logger::_PAppLogger;
|
||||||
|
} // namespace Phanes::Core::Logging
|
||||||
|
|
||||||
|
|
||||||
|
void Phanes::Core::Logging::Logger::Init()
|
||||||
{
|
{
|
||||||
spdlog::set_pattern("%^[%n][%T][%l]:%$ %v");
|
spdlog::set_pattern("%^[%n][%T][%l]:%$ %v");
|
||||||
|
|
||||||
|
@ -7,15 +7,12 @@ extern Phanes::Core::Application::PhanesProject* Phanes::Core::Application::Crea
|
|||||||
|
|
||||||
int main(int argc, char** argv)
|
int main(int argc, char** argv)
|
||||||
{
|
{
|
||||||
Phanes::Core::Logging::Init();
|
Phanes::Core::Logging::Logger::Init();
|
||||||
PENGINE_LOG_INFO("Logger initialized!");
|
PENGINE_LOG_INFO("Logger initialized!");
|
||||||
PENGINE_LOG_INFO("Welcome to PhanesEngine!");
|
PENGINE_LOG_INFO("Welcome to PhanesEngine!");
|
||||||
|
|
||||||
|
|
||||||
auto phanes_game = Phanes::Core::Application::CreatePhanesGame();
|
auto phanes_game = Phanes::Core::Application::CreatePhanesGame();
|
||||||
|
|
||||||
PENGINE_LOG_INFO("Loading project {0}...", phanes_game->GetName());
|
|
||||||
|
|
||||||
phanes_game->Run();
|
phanes_game->Run();
|
||||||
|
|
||||||
delete phanes_game;
|
delete phanes_game;
|
||||||
|
@ -1,24 +1,25 @@
|
|||||||
#include "Core/StartingPoint/StartingPoint.h"
|
#include "Core/StartingPoint/StartingPoint.h"
|
||||||
|
#include "Core/Logging/Logging.h"
|
||||||
|
|
||||||
static void IdleMsg()
|
static void IdleMsg()
|
||||||
{
|
{
|
||||||
std::cout << "\n\nWelcome to PhanesEngine!" << std::endl << std::endl;
|
std::cout << "\nWelcome to PhanesEngine!\n";
|
||||||
|
|
||||||
std::this_thread::sleep_for(std::chrono::seconds(5));
|
std::this_thread::sleep_for(std::chrono::seconds(5));
|
||||||
|
|
||||||
std::cout << "It's silent..." << std::endl << std::endl;
|
std::cout << "It's silent...\n";
|
||||||
|
|
||||||
std::this_thread::sleep_for(std::chrono::seconds(3));
|
std::this_thread::sleep_for(std::chrono::seconds(3));
|
||||||
|
|
||||||
std::cout << "To silent." << std::endl;
|
std::cout << "To silent.\n";
|
||||||
|
|
||||||
std::this_thread::sleep_for(std::chrono::seconds(5));
|
std::this_thread::sleep_for(std::chrono::seconds(5));
|
||||||
|
|
||||||
std::cout << "\nI will go now" << std::endl;
|
std::cout << "I will go now\n";
|
||||||
|
|
||||||
std::this_thread::sleep_for(std::chrono::seconds(4));
|
std::this_thread::sleep_for(std::chrono::seconds(4));
|
||||||
|
|
||||||
std::cout << "\nGood by!" << std::endl;
|
std::cout << "Good by!\n\n";
|
||||||
std::this_thread::sleep_for(std::chrono::seconds(3));
|
std::this_thread::sleep_for(std::chrono::seconds(3));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -27,11 +28,13 @@ static void IdleMsg()
|
|||||||
|
|
||||||
Phanes::Core::Application::PhanesProject::PhanesProject(std::string _ProjectName)
|
Phanes::Core::Application::PhanesProject::PhanesProject(std::string _ProjectName)
|
||||||
: projectName(_ProjectName)
|
: projectName(_ProjectName)
|
||||||
{};
|
{
|
||||||
|
PAPP_LOG_INFO("Loading project: {0}", this->GetName());
|
||||||
|
};
|
||||||
|
|
||||||
Phanes::Core::Application::PhanesProject::~PhanesProject()
|
Phanes::Core::Application::PhanesProject::~PhanesProject()
|
||||||
{
|
{
|
||||||
this->projectName = "Unnamed Project";
|
PAPP_LOG_INFO("Unloading project: {0}", this->GetName());
|
||||||
};
|
};
|
||||||
|
|
||||||
std::string Phanes::Core::Application::PhanesProject::GetName()
|
std::string Phanes::Core::Application::PhanesProject::GetName()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user