CVEC
v1.0.0-build
Functional C++ vector-like manipulation for C
Loading...
Searching...
No Matches
CVECpredefines.h
Go to the documentation of this file.
1
/**
2
* CVECpredefines.h - pcannonProjectStandards
3
* Predefines for C and C++ projects
4
* STD Information: 20250723 - 1.0S
5
*/
6
7
#pragma once
8
9
// Project setup
10
#define CVEC_DEFAULT_C_STD 201112L
11
12
// Versioning
13
#define CVEC_VERSION_MAJOR 1
14
#define CVEC_VERSION_MINOR 0
15
#define CVEC_VERSION_PATCH 0
16
17
#define CVEC_VERSION_STD 20251201
18
19
// Version states:
20
// * dev
21
// * beta
22
// * build
23
#define CVEC_VERSION_STATE "build"
24
25
#define CVEC_VERSION ((CVEC_VERSION_MAJOR<<16)|(CVEC_VERSION_MINOR<<8)|(CVEC_VERSION_PATCH)|(CVEC_VERSION_STATE << 24))
26
27
#define CVEC_VERSION_CHECK(CVEC_VERSION_MAJOR, CVEC_VERSION_MINOR, CVEC_VERSION_PATCH, CVEC_VERSION_STATE) \
28
(((CVEC_VERSION_MAJOR)<<16)|((CVEC_VERSION_MINOR)<<8)|(CVEC_VERSION_PATCH)|((CVEC_VERSION_STATE) << 24))
29
30
// Macro utils
31
#define CVEC_STRINGIFY(x) #x
32
#define CVEC_TOSTRING(x) CVEC_STRINGIFY(x)
33
34
#ifndef CVEC_DEV
35
# define CVEC_DEV true
36
#endif
37
38
#if _MSC_VER
39
# warning "Currently not available for MSVC compilers, still proceeding"
40
#endif
41
42
#ifdef WIN32
43
# define CVEC_OS_WIN32
44
# warning "No full support for Windows"
45
#elif defined(__APPLE__) || defined(__MACH__) || defined(Macintosh)
46
# define CVEC_OS_MACOS
47
#elif defined(__linux__) || defined(__unix) || defined(__unix__)
48
# define CVEC_OS_UNIX_LINUX
49
#elif defined(__FreeBSD__)
50
# define CVEC_OS_FREEBSD
51
#else
52
# warning "Current platform might not be supported"
53
#endif
// defined(WIN32) // Platform check
54
inc
cvec
CVECpredefines.h
Generated by
1.15.0