xref: /honee/src/honee_versioning.c (revision 6157574bb7703484cd90c594fb43fbdc8092473a)
1*a5677b81SMohi #include <honee.h>
2*a5677b81SMohi /**
3*a5677b81SMohi   @brief Get Honee library version info
4*a5677b81SMohi 
5*a5677b81SMohi   Honee version numbers have the form major.minor.patch. Non-release versions may contain unstable interfaces.
6*a5677b81SMohi 
7*a5677b81SMohi   @param[out]  major    Major version of the library
8*a5677b81SMohi   @param[out]  minor    Minor version of the library
9*a5677b81SMohi   @param[out]  patch    Patch (subminor) version of the library
10*a5677b81SMohi   @param[out]  release  True for releases; false for development branches.
11*a5677b81SMohi 
12*a5677b81SMohi   The caller may pass NULL for any arguments that are not needed.
13*a5677b81SMohi 
14*a5677b81SMohi   @sa HONEE_VERSION_GE()
15*a5677b81SMohi 
16*a5677b81SMohi   @return An error code: 0 - success, otherwise - failure
17*a5677b81SMohi **/
HoneeGetVersion(int * major,int * minor,int * patch,PetscBool * release)18*a5677b81SMohi PetscErrorCode HoneeGetVersion(int *major, int *minor, int *patch, PetscBool *release) {
19*a5677b81SMohi   if (major) *major = HONEE_VERSION_MAJOR;
20*a5677b81SMohi   if (minor) *minor = HONEE_VERSION_MINOR;
21*a5677b81SMohi   if (patch) *patch = HONEE_VERSION_PATCH;
22*a5677b81SMohi   if (release) *release = HONEE_VERSION_RELEASE;
23*a5677b81SMohi   return 0;
24*a5677b81SMohi }
25