// Kyler Olsen
// YREA SLS
// Main Header
// November 2025

#ifndef SLS_MAIN_H
#define SLS_MAIN_H

#define SLS_NAME "SLS_C"
#define SLS_VER "0.0.1-alpha"

#ifndef GIT_COMMIT_HASH
    #define GIT_COMMIT_HASH "UNKNOWN"
#endif

#if defined(__GNUC__)
    #define COMPILER_NAME "GCC"
    #define COMPILER_VER __GNUC__

#elif defined(__clang__)
    #define COMPILER_NAME "Clang"
    #define COMPILER_VER __clang_major__

#elif defined(_MSC_VER)
    #define COMPILER_NAME "MSVC"
    #define COMPILER_VER _MSC_VER

#else
    #define COMPILER_NAME "Unknown compiler"
    #define COMPILER_VER 0
#endif

void print_version();

#endif // SLS_MAIN_H
