Skip to content
  • Daniel P. Berrangé's avatar
    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