## Version Checking Version Checking |

## Functions

#define | EDS_CHECK_VERSION()
const gchar * | eds_check_version ()

## Types and Values

#define | EDS_MAJOR_VERSION
#define | EDS_MINOR_VERSION
#define | EDS_MICRO_VERSION
extern const guint | eds_major_version
extern const guint | eds_minor_version
extern const guint | eds_micro_version

## Description

## Functions

### EDS_CHECK_VERSION()

    #define             EDS_CHECK_VERSION(major,minor,micro)

Checks the version of the Evolution-Data-Server library. Returns `TRUE` if the version of the EDS header files is the same as or newer than the passed-in version.

#### Parameters

major | the major version number |
minor | the minor version number |
micro | the micro version number |

### eds_check_version ()

    const gchar *
    eds_check_version (guint required_major,
                       guint required_minor,
                       guint required_micro);

Checks that the Evolution-Data-Server library in use is compatible with the given version. Generally you would pass in the constants EDS_MAJOR_VERSION, EDS_MINOR_VERSION, EDS_MICRO_VERSION as the three arguments to this function. That produces a check that the library in use is compatible with the version of Evolution-Data-Server the application or module was compiled against.

#### Parameters

required_major | the required major version |
required_minor | the required minor version |
required_micro | the required micro version |

#### Returns

`NULL` if the Evolution-Data-Server library is compatible with the given version, or a string describing the version mismatch. The returned string is owned by libedataserver and must not be modified or freed.

Since: 2.24

## Types and Values

### EDS_MAJOR_VERSION

    #define EDS_MAJOR_VERSION 3

The major version number of the Evolution-Data-Server library. Like `eds_major_version()`, but from the headers used at application compile time, rather than from the library linked against at application run time.

### EDS_MINOR_VERSION

    #define EDS_MINOR_VERSION 16

The minor version number of the Evolution-Data-Server library. Like `eds_minor_version()`, but from the headers used at application compile time, rather than from the library linked against at application run time.

### EDS_MICRO_VERSION

    #define EDS_MICRO_VERSION 4

The micro version number of the Evolution-Data-Server library. Like `eds_micro_version()`, but from the headers used at application compile time, rather than from the library linked against at application run time.

### eds_major_version

    extern const guint eds_major_version;

The major version number of the Evolution-Data-Server libraries. (e.g. in Evolution-Data-Server 2.24.1 this is 2.)

This variable is in the library, so it represents the EDS library you have linked against. Contrast with the EDS_MAJOR_VERSION macro, which represents the major version of the EDS headers you have included.

### eds_minor_version

    extern const guint eds_minor_version;

The minor version number of the Evolution-Data-Server libraries. (e.g. in Evolution-Data-Server 2.24.1 this is 24.)

This variable is in the library, so it represents the EDS library you have linked against. Contrast with the EDS_MINOR_VERSION macro, which represents the minor version of the EDS headers you have included.

### eds_micro_version

    extern const guint eds_micro_version;

The micro version number of the Evolution-Data-Server libraries. (e.g. in Evolution-Data-Server 2.24.1 this is 1.)

This variable is in the library, so it represents the EDS library you have linked against. Contrast with the EDS_MICRO_VERSION macro, which represents the micro version of the EDS headers you have included.