Skip to content
  • Daniel P. Berrangé's avatar
    e71e8cc0
    glib: enforce the minimum required version and warn about old APIs · e71e8cc0
    Daniel P. Berrangé authored
    
    
    There are two useful macros that can be defined before including
    glib.h that are related to the min required glib version
    
     - GLIB_VERSION_MIN_REQUIRED
    
       When this is defined, if code uses an API that was deprecated
       in this version, or older, a compiler warning will be emitted.
       This alerts maintainers to update their code to whatever new
       replacement API is now recommended best practice.
    
     - GLIB_VERSION_MAX_ALLOWED
    
       When this is defined, if code uses an API that was introduced
       in a version that is newer than the declared version, a compiler
       warning will be emitted. This alerts maintainers if new code
       accidentally uses functionality that won't be available on some
       supported platforms.
    
    The GLIB_VERSION_MAX_ALLOWED constant makes it a bit harder to opt
    in to using specific new APIs with a GLIB_CHECK_VERSION conditional.
    To workaround this Pragmas can be used to temporarily turn off the
    -Wdeprecated-declarations compiler warning, while a static inline
    compat function is implemented. This workaround is illustrated with the
    implementation of the g_strv_contains method to satisfy the test suite.
    
    Signed-off-by: default avatarDaniel P. Berrangé <berrange@redhat.com>
    e71e8cc0
    glib: enforce the minimum required version and warn about old APIs
    Daniel P. Berrangé authored
    
    
    There are two useful macros that can be defined before including
    glib.h that are related to the min required glib version
    
     - GLIB_VERSION_MIN_REQUIRED
    
       When this is defined, if code uses an API that was deprecated
       in this version, or older, a compiler warning will be emitted.
       This alerts maintainers to update their code to whatever new
       replacement API is now recommended best practice.
    
     - GLIB_VERSION_MAX_ALLOWED
    
       When this is defined, if code uses an API that was introduced
       in a version that is newer than the declared version, a compiler
       warning will be emitted. This alerts maintainers if new code
       accidentally uses functionality that won't be available on some
       supported platforms.
    
    The GLIB_VERSION_MAX_ALLOWED constant makes it a bit harder to opt
    in to using specific new APIs with a GLIB_CHECK_VERSION conditional.
    To workaround this Pragmas can be used to temporarily turn off the
    -Wdeprecated-declarations compiler warning, while a static inline
    compat function is implemented. This workaround is illustrated with the
    implementation of the g_strv_contains method to satisfy the test suite.
    
    Signed-off-by: default avatarDaniel P. Berrangé <berrange@redhat.com>
Loading