Use G_GNUC_PRINTF, except for headers to avoid glib dep