Banjo API 0.0.1
Multi-purpose C99 API
Loading...
Searching...
No Matches
build_info.c

Query binary information about the Banjo API.

Query binary information about the Banjo API.

#include <banjo/log.h>
#include <banjo/main.h>
#include <banjo/api.h>
#define DESC(mode) bj_info("%c %s", info->mode ? '+' : '-', #mode)
int main(int argc, char* argv[]) {
(void)argc;
(void)argv;
bj_info("%s", BANJO_ASSETS_DIR);
bj_info("%s API Version %d.%d.%d (0x%08X), %s build",
info->p_name,
info->version,
info->debug ? "Debug" : "Release"
);
bj_info("Compiler: %s %d", info->compiler_name, info->compiler_version);
DESC(feature_win32);
DESC(feature_x11);
DESC(feature_mme);
DESC(feature_alsa);
DESC(config_checks_abort);
DESC(config_checks_log);
DESC(config_log_color);
DESC(config_pedantic);
}
General-purpose definitions for Banjo API.
uint32_t version
Built version (BJ_VERSION)
Definition api.h:135
const char * compiler_name
Compiler C-String name.
Definition api.h:136
const char * p_name
API Name (BJ_NAME)
Definition api.h:134
bj_bool debug
Built with debug information.
Definition api.h:138
int compiler_version
Compiler version specifier.
Definition api.h:137
const bj_build_info * bj_get_build_info(void)
Returns the build information of the runtime Banjo binaries.
#define BJ_VERSION_MINOR(version)
Extracts the minor version number from a 32-bit version number.
Definition api.h:19
#define BJ_VERSION_MAJOR(version)
Extracts the major version number from a 32-bit version number.
Definition api.h:16
#define BJ_VERSION_PATCH(version)
Extracts the patch version number from a 32-bit version number.
Definition api.h:22
Structure holding build information of the binary.
Definition api.h:133
#define bj_info(...)
Log a message using the BJ_LOG_INFO level.
Definition log.h:103
Logging utility functions.