• Joe Clarke's avatar
    Bug 23093 – FreeBSD portability fixes · de9453f4
    Joe Clarke authored
    There are a few issues with building polkit-0.93 on FreeBSD:
    
     * No clearenv() function on FreeBSD
    
     * While FreeBSD has a /proc, it is deprecated, and kinfo_proc should
       be used instead.
    
     * FreeBSD's printf() functions do not support the %m notation.  This
       is only supported for syslog().
    
      * You can't call GINT_TO_POINTER() on a 64-bit value, as this will
        break on 64-bit OSes.
    
    The attached patch fixes these problems.  First, a check for
    clearenv() is added to configure.  Second, I moved the check for
    process uid to polkit/polkitunixprocess.c.  This may not be ideal, but
    it seems to fit, and reduces code duplication.  Third, I replaces all
    %m with %s ... g_strerror (errno).  Finally, I replaced
    GINT_TO_POINTER() with GSIZE_TO_POINTER.
    Signed-off-by: default avatarDavid Zeuthen <davidz@redhat.com>
    de9453f4
configure.ac 15.1 KB