CIOF
v1.0.0-build
Char Input Output Format - A simple Input and Output utility library
Loading...
Searching...
No Matches
CIOFpredefines.hpp
Go to the documentation of this file.
1
/**
2
* EXAMPLEpredefines.h - pcannonProjectStandards
3
* Predefines for C and C++ projects
4
* STD Information: 20250723 - 1.0S
5
* NOTICE:
6
* - RENAMED TO CIOFpredefines.hpp
7
* - MADE FOR The CIOF Project Utils
8
*/
9
10
#pragma once
11
12
// Project setup
13
#define CIOF_DEFAULT_CPP_STD 201703L
14
15
// Versioning
16
#define CIOF_VERSION_MAJOR 1
17
#define CIOF_VERSION_MINOR 1
18
#define CIOF_VERSION_PATCH 0
19
20
#define CIOF_VERSION_STD 20251013
21
22
// Version states:
23
// * dev
24
// * alpha
25
// * beta
26
// * build
27
#define CIOF_VERSION_STATE "build"
28
29
#define CIOF_VERSION ((CIOF_VERSION_MAJOR<<16)|(CIOF_VERSION_MINOR<<8)|(CIOF_VERSION_PATCH)|(CIOF_VERSION_STATE << 24))
30
31
#define CIOF_VERSION_CHECK(CIOF_VERSION_MAJOR, CIOF_VERSION_MINOR, CIOF_VERSION_PATCH, CIOF_VERSION_STATE) \
32
(((CIOF_VERSION_MAJOR)<<16)|((CIOF_VERSION_MINOR)<<8)|(CIOF_VERSION_PATCH)|((CIOF_VERSION_STATE) << 24))
33
34
// Macro utils
35
#define CIOF_STRINGIFY(x) #x
36
#define CIOF_TOSTRING(x) CIOF_STRINGIFY(x)
37
38
#ifndef CIOF_DEV
39
# define CIOF_DEV true
40
#endif
// !defined(CIOF_DEV)
41
42
// OS Checks
43
#ifdef WIN32
44
# define CIOF_OS_WIN32
45
# if !defined(WIN32_ANSI_SUPPORT)
46
# define WIN32_ANSI_SUPPORT 1
47
# endif
48
# if WIN32_ANSI_SUPPORT == 1
49
# warning "ANSI Support for Windows is supported from Windows 10 or newer"
50
# endif
51
#elif defined(__APPLE__) || defined(__MACH__) || defined(Macintosh)
52
# define CIOF_OS_MACOS
53
#elif defined(__linux__) || defined(__unix) || defined(__unix__)
54
# define CIOF_OS_UNIX_LINUX
55
#elif defined(__FreeBSD__)
56
# define CIOF_OS_FREEBSD
57
#else
58
# warning "Current platform might not supported"
59
#endif
// defined(WIN32) // Platform check
60
inc
ciof
CIOFpredefines.hpp
Generated by
1.14.0