Version Checking

Version Checking — Tools for checking Pango version at compile- and run-time.

Functions

#define PANGO_VERSION_ENCODE()
#define PANGO_VERSION_CHECK()
int pango_version ()
const char * pango_version_string ()
const char * pango_version_check ()

Types and Values

Description

The capital-letter macros defined here can be used to check the version of Pango at compile-time, and to encode Pango versions into integers.

The functions can be used to check the version of the linked Pango library at run-time.

Functions

PANGO_VERSION_ENCODE()

#define             PANGO_VERSION_ENCODE(major, minor, micro)

This macro encodes the given Pango version into an integer. The numbers returned by PANGO_VERSION and pango_version() are encoded using this macro. Two encoded version numbers can be compared as integers.

Parameters

major

the major component of the version number

 

minor

the minor component of the version number

 

micro

the micro component of the version number

 

PANGO_VERSION_CHECK()

#define             PANGO_VERSION_CHECK(major,minor,micro)

Checks that the version of Pango available at compile-time is not older than the provided version number.

Parameters

major

the major component of the version number

 

minor

the minor component of the version number

 

micro

the micro component of the version number

 

pango_version ()

int
pango_version (void);

This is similar to the macro PANGO_VERSION except that it returns the encoded version of Pango available at run-time, as opposed to the version available at compile-time.

A version number can be encoded into an integer using PANGO_VERSION_ENCODE().

Returns

The encoded version of Pango library available at run time.

Since: 1.16


pango_version_string ()

const char *
pango_version_string (void);

This is similar to the macro PANGO_VERSION_STRING except that it returns the version of Pango available at run-time, as opposed to the version available at compile-time.

Returns

A string containing the version of Pango library available at run time. The returned string is owned by Pango and should not be modified or freed.

Since: 1.16


pango_version_check ()

const char *
pango_version_check (int required_major,
                     int required_minor,
                     int required_micro);

Checks that the Pango library in use is compatible with the given version. Generally you would pass in the constants PANGO_VERSION_MAJOR, PANGO_VERSION_MINOR, PANGO_VERSION_MICRO as the three arguments to this function; that produces a check that the library in use at run-time is compatible with the version of Pango the application or module was compiled against.

Compatibility is defined by two things: first the version of the running library is newer than the version required_major.required_minor .required_micro . Second the running library must be binary compatible with the version required_major.required_minor .required_micro (same major version.)

For compile-time version checking use PANGO_VERSION_CHECK().

Parameters

required_major

the required major version.

 

required_minor

the required minor version.

 

required_micro

the required major version.

 

Returns

NULL if the Pango library is compatible with the given version, or a string describing the version mismatch. The returned string is owned by Pango and should not be modified or freed.

[nullable]

Since: 1.16

Types and Values

PANGO_VERSION

#define             PANGO_VERSION

The version of Pango available at compile-time, encoded using PANGO_VERSION_ENCODE().


PANGO_VERSION_MAJOR

#define PANGO_VERSION_MAJOR 1

The major component of the version of Pango available at compile-time.


PANGO_VERSION_MINOR

#define PANGO_VERSION_MINOR 40

The minor component of the version of Pango available at compile-time.


PANGO_VERSION_MICRO

#define PANGO_VERSION_MICRO 3

The micro component of the version of Pango available at compile-time.


PANGO_VERSION_STRING

#define PANGO_VERSION_STRING "1.40.3"

A string literal containing the version of Pango available at compile-time.


PANGO_VERSION_1_2

#define PANGO_VERSION_1_2        (G_ENCODE_VERSION (1, 2))

A macro that evaluates to the 1.2 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_4

#define PANGO_VERSION_1_4        (G_ENCODE_VERSION (1, 4))

A macro that evaluates to the 1.4 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_6

#define PANGO_VERSION_1_6        (G_ENCODE_VERSION (1, 6))

A macro that evaluates to the 1.6 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_8

#define PANGO_VERSION_1_8        (G_ENCODE_VERSION (1, 8))

A macro that evaluates to the 1.8 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_10

#define PANGO_VERSION_1_10       (G_ENCODE_VERSION (1, 10))

A macro that evaluates to the 1.10 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_12

#define PANGO_VERSION_1_12       (G_ENCODE_VERSION (1, 12))

A macro that evaluates to the 1.12 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_14

#define PANGO_VERSION_1_14       (G_ENCODE_VERSION (1, 14))

A macro that evaluates to the 1.14 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_16

#define PANGO_VERSION_1_16       (G_ENCODE_VERSION (1, 16))

A macro that evaluates to the 1.16 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_18

#define PANGO_VERSION_1_18       (G_ENCODE_VERSION (1, 18))

A macro that evaluates to the 1.18 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_20

#define PANGO_VERSION_1_20       (G_ENCODE_VERSION (1, 20))

A macro that evaluates to the 1.20 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_22

#define PANGO_VERSION_1_22       (G_ENCODE_VERSION (1, 22))

A macro that evaluates to the 1.22 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_24

#define PANGO_VERSION_1_24       (G_ENCODE_VERSION (1, 24))

A macro that evaluates to the 1.24 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_26

#define PANGO_VERSION_1_26       (G_ENCODE_VERSION (1, 26))

A macro that evaluates to the 1.26 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_28

#define PANGO_VERSION_1_28       (G_ENCODE_VERSION (1, 28))

A macro that evaluates to the 1.28 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_30

#define PANGO_VERSION_1_30       (G_ENCODE_VERSION (1, 30))

A macro that evaluates to the 1.30 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_32

#define PANGO_VERSION_1_32       (G_ENCODE_VERSION (1, 32))

A macro that evaluates to the 1.32 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_34

#define PANGO_VERSION_1_34       (G_ENCODE_VERSION (1, 34))

A macro that evaluates to the 1.34 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_36

#define PANGO_VERSION_1_36       (G_ENCODE_VERSION (1, 36))

A macro that evaluates to the 1.36 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_38

#define PANGO_VERSION_1_38       (G_ENCODE_VERSION (1, 38))

A macro that evaluates to the 1.38 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_40

#define PANGO_VERSION_1_40       (G_ENCODE_VERSION (1, 40))

A macro that evaluates to the 1.40 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42


PANGO_VERSION_1_42

#define PANGO_VERSION_1_42       (G_ENCODE_VERSION (1, 42))

A macro that evaluates to the 2.38 version of Pango, in a format that can be used by the C pre-processor.

Since: 1.42