NeoMutt  2025-01-09-146-g8c4f7e
Teaching an old dog new tricks
DOXYGEN
Loading...
Searching...
No Matches
version.h
Go to the documentation of this file.
1
23#ifndef MUTT_VERSION_H
24#define MUTT_VERSION_H
25
26#include <stdbool.h>
27#include <stdio.h>
28#include "mutt/lib.h"
29
34{
35 const char *key;
36 const char *value;
37};
38ARRAY_HEAD(KeyValueArray, struct KeyValue);
39
44{
45 const char *name;
46 int enabled;
47};
48
53{
54 const char *version;
55
56 struct KeyValueArray system;
57
58 struct Slist *storage;
60
61 struct Slist *configure;
63
64 const struct CompileOption *feature;
65 const struct CompileOption *devel;
66
67 struct KeyValueArray paths;
68};
69
70struct NeoMuttVersion *version_get (void);
71void version_free(struct NeoMuttVersion **ptr);
72
73const char *mutt_make_version(void);
74bool print_version(FILE *fp, bool use_ansi);
75bool print_copyright(void);
76bool feature_enabled(const char *name);
77
78#endif /* MUTT_VERSION_H */
#define ARRAY_HEAD(name, type)
Define a named struct for arrays of elements of a certain type.
Definition: array.h:47
Convenience wrapper for the library headers.
Built-in capability.
Definition: version.h:44
const char * name
Option name.
Definition: version.h:45
int enabled
0 Disabled, 1 Enabled, 2 Devel only
Definition: version.h:46
Key/Value pairs.
Definition: version.h:34
const char * key
Definition: version.h:35
const char * value
Definition: version.h:36
Version info about NeoMutt.
Definition: version.h:53
struct KeyValueArray paths
Compiled-in paths.
Definition: version.h:67
struct Slist * configure
Configure options.
Definition: version.h:61
const char * version
Version of NeoMutt: YYYYMMDD-NUM-HASH (number of commits, git hash)
Definition: version.h:54
struct Slist * compression
Compression methods, e.g. zlib.
Definition: version.h:59
struct Slist * storage
Storage backends, e.g. lmdb.
Definition: version.h:58
const struct CompileOption * devel
Compiled-in development features.
Definition: version.h:65
const struct CompileOption * feature
Compiled-in features.
Definition: version.h:64
struct Slist * compilation
Compilation CFLAGS.
Definition: version.h:62
struct KeyValueArray system
System information.
Definition: version.h:56
String list.
Definition: slist.h:37
void version_free(struct NeoMuttVersion **ptr)
Free a NeoMuttVersion.
Definition: version.c:506
const char * mutt_make_version(void)
Generate the NeoMutt version string.
Definition: version.c:295
bool print_copyright(void)
Print copyright message.
Definition: version.c:702
bool print_version(FILE *fp, bool use_ansi)
Print system and compile info to a file.
Definition: version.c:591
bool feature_enabled(const char *name)
Test if a compile-time feature is enabled.
Definition: version.c:729
struct NeoMuttVersion * version_get(void)
Get NeoMutt version info.
Definition: version.c:469