Enable maximum warnings.
A bunch of compile fixes.
This commit is contained in:
parent
b4aeb6038d
commit
9a827ead86
@ -10,6 +10,8 @@ AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 no-dist-gzip])
|
|||||||
AC_DISABLE_STATIC
|
AC_DISABLE_STATIC
|
||||||
AC_PROG_LIBTOOL
|
AC_PROG_LIBTOOL
|
||||||
|
|
||||||
|
GNOME_COMPILE_WARNINGS(maximum)
|
||||||
|
|
||||||
AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
|
AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
|
||||||
|
|
||||||
AM_PATH_PYTHON
|
AM_PATH_PYTHON
|
||||||
|
141
m4/gnome-compiler-flags.m4
Normal file
141
m4/gnome-compiler-flags.m4
Normal file
@ -0,0 +1,141 @@
|
|||||||
|
dnl GNOME_COMPILE_WARNINGS
|
||||||
|
dnl Turn on many useful compiler warnings
|
||||||
|
dnl For now, only works on GCC
|
||||||
|
AC_DEFUN([GNOME_COMPILE_WARNINGS],[
|
||||||
|
dnl ******************************
|
||||||
|
dnl More compiler warnings
|
||||||
|
dnl ******************************
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(compile-warnings,
|
||||||
|
AC_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@],
|
||||||
|
[Turn on compiler warnings]),,
|
||||||
|
[enable_compile_warnings="m4_default([$1],[yes])"])
|
||||||
|
|
||||||
|
warnCFLAGS=
|
||||||
|
if test "x$GCC" != xyes; then
|
||||||
|
enable_compile_warnings=no
|
||||||
|
fi
|
||||||
|
|
||||||
|
warning_flags=
|
||||||
|
realsave_CFLAGS="$CFLAGS"
|
||||||
|
|
||||||
|
case "$enable_compile_warnings" in
|
||||||
|
no)
|
||||||
|
warning_flags=
|
||||||
|
;;
|
||||||
|
minimum)
|
||||||
|
warning_flags="-Wall"
|
||||||
|
;;
|
||||||
|
yes)
|
||||||
|
warning_flags="-Wall -Wmissing-prototypes"
|
||||||
|
;;
|
||||||
|
maximum|error)
|
||||||
|
warning_flags="-Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith"
|
||||||
|
CFLAGS="$warning_flags $CFLAGS"
|
||||||
|
for option in -Wno-sign-compare; do
|
||||||
|
SAVE_CFLAGS="$CFLAGS"
|
||||||
|
CFLAGS="$CFLAGS $option"
|
||||||
|
AC_MSG_CHECKING([whether gcc understands $option])
|
||||||
|
AC_TRY_COMPILE([], [],
|
||||||
|
has_option=yes,
|
||||||
|
has_option=no,)
|
||||||
|
CFLAGS="$SAVE_CFLAGS"
|
||||||
|
AC_MSG_RESULT($has_option)
|
||||||
|
if test $has_option = yes; then
|
||||||
|
warning_flags="$warning_flags $option"
|
||||||
|
fi
|
||||||
|
unset has_option
|
||||||
|
unset SAVE_CFLAGS
|
||||||
|
done
|
||||||
|
unset option
|
||||||
|
if test "$enable_compile_warnings" = "error" ; then
|
||||||
|
warning_flags="$warning_flags -Werror"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
AC_MSG_ERROR(Unknown argument '$enable_compile_warnings' to --enable-compile-warnings)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
CFLAGS="$realsave_CFLAGS"
|
||||||
|
AC_MSG_CHECKING(what warning flags to pass to the C compiler)
|
||||||
|
AC_MSG_RESULT($warning_flags)
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(iso-c,
|
||||||
|
AC_HELP_STRING([--enable-iso-c],
|
||||||
|
[Try to warn if code is not ISO C ]),,
|
||||||
|
[enable_iso_c=no])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING(what language compliance flags to pass to the C compiler)
|
||||||
|
complCFLAGS=
|
||||||
|
if test "x$enable_iso_c" != "xno"; then
|
||||||
|
if test "x$GCC" = "xyes"; then
|
||||||
|
case " $CFLAGS " in
|
||||||
|
*[\ \ ]-ansi[\ \ ]*) ;;
|
||||||
|
*) complCFLAGS="$complCFLAGS -ansi" ;;
|
||||||
|
esac
|
||||||
|
case " $CFLAGS " in
|
||||||
|
*[\ \ ]-pedantic[\ \ ]*) ;;
|
||||||
|
*) complCFLAGS="$complCFLAGS -pedantic" ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
AC_MSG_RESULT($complCFLAGS)
|
||||||
|
|
||||||
|
WARN_CFLAGS="$warning_flags $complCFLAGS"
|
||||||
|
AC_SUBST(WARN_CFLAGS)
|
||||||
|
])
|
||||||
|
|
||||||
|
dnl For C++, do basically the same thing.
|
||||||
|
|
||||||
|
AC_DEFUN([GNOME_CXX_WARNINGS],[
|
||||||
|
AC_ARG_ENABLE(cxx-warnings,
|
||||||
|
AC_HELP_STRING([--enable-cxx-warnings=@<:@no/minimum/yes@:>@]
|
||||||
|
[Turn on compiler warnings.]),,
|
||||||
|
[enable_cxx_warnings="m4_default([$1],[minimum])"])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING(what warning flags to pass to the C++ compiler)
|
||||||
|
warnCXXFLAGS=
|
||||||
|
if test "x$GXX" != xyes; then
|
||||||
|
enable_cxx_warnings=no
|
||||||
|
fi
|
||||||
|
if test "x$enable_cxx_warnings" != "xno"; then
|
||||||
|
if test "x$GXX" = "xyes"; then
|
||||||
|
case " $CXXFLAGS " in
|
||||||
|
*[\ \ ]-Wall[\ \ ]*) ;;
|
||||||
|
*) warnCXXFLAGS="-Wall -Wno-unused" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
## -W is not all that useful. And it cannot be controlled
|
||||||
|
## with individual -Wno-xxx flags, unlike -Wall
|
||||||
|
if test "x$enable_cxx_warnings" = "xyes"; then
|
||||||
|
warnCXXFLAGS="$warnCXXFLAGS -Wshadow -Woverloaded-virtual"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
AC_MSG_RESULT($warnCXXFLAGS)
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(iso-cxx,
|
||||||
|
AC_HELP_STRING([--enable-iso-cxx],
|
||||||
|
[Try to warn if code is not ISO C++ ]),,
|
||||||
|
[enable_iso_cxx=no])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING(what language compliance flags to pass to the C++ compiler)
|
||||||
|
complCXXFLAGS=
|
||||||
|
if test "x$enable_iso_cxx" != "xno"; then
|
||||||
|
if test "x$GXX" = "xyes"; then
|
||||||
|
case " $CXXFLAGS " in
|
||||||
|
*[\ \ ]-ansi[\ \ ]*) ;;
|
||||||
|
*) complCXXFLAGS="$complCXXFLAGS -ansi" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
case " $CXXFLAGS " in
|
||||||
|
*[\ \ ]-pedantic[\ \ ]*) ;;
|
||||||
|
*) complCXXFLAGS="$complCXXFLAGS -pedantic" ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
AC_MSG_RESULT($complCXXFLAGS)
|
||||||
|
|
||||||
|
WARN_CXXFLAGS="$CXXFLAGS $warnCXXFLAGS $complCXXFLAGS"
|
||||||
|
AC_SUBST(WARN_CXXFLAGS)
|
||||||
|
])
|
@ -14,6 +14,7 @@ pkgpyexecdir = $(pythondir)/sugar
|
|||||||
pkgpyexec_LTLIBRARIES = _sugarext.la
|
pkgpyexec_LTLIBRARIES = _sugarext.la
|
||||||
|
|
||||||
_sugarext_la_CFLAGS = \
|
_sugarext_la_CFLAGS = \
|
||||||
|
$(WARN_CFLAGS) \
|
||||||
$(EXT_CFLAGS) \
|
$(EXT_CFLAGS) \
|
||||||
$(PYTHON_INCLUDES)
|
$(PYTHON_INCLUDES)
|
||||||
|
|
||||||
|
@ -10,8 +10,8 @@ headers
|
|||||||
#include "sugar-preview.h"
|
#include "sugar-preview.h"
|
||||||
#include "sexy-icon-entry.h"
|
#include "sexy-icon-entry.h"
|
||||||
#include "gsm-session.h"
|
#include "gsm-session.h"
|
||||||
|
#include "gsm-xsmp.h"
|
||||||
|
|
||||||
#define EGG_SM_CLIENT_BACKEND_XSMP
|
|
||||||
#include "eggsmclient.h"
|
#include "eggsmclient.h"
|
||||||
#include "eggsmclient-private.h"
|
#include "eggsmclient-private.h"
|
||||||
|
|
||||||
|
@ -25,6 +25,8 @@
|
|||||||
|
|
||||||
G_BEGIN_DECLS
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
#define EGG_SM_CLIENT_BACKEND_XSMP
|
||||||
|
|
||||||
GKeyFile *egg_sm_client_save_state (EggSMClient *client);
|
GKeyFile *egg_sm_client_save_state (EggSMClient *client);
|
||||||
void egg_sm_client_quit_requested (EggSMClient *client);
|
void egg_sm_client_quit_requested (EggSMClient *client);
|
||||||
void egg_sm_client_quit_cancelled (EggSMClient *client);
|
void egg_sm_client_quit_cancelled (EggSMClient *client);
|
||||||
|
@ -150,53 +150,6 @@ end_phase (GsmSession *session)
|
|||||||
start_phase (session);
|
start_phase (session);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
app_condition_changed (GsmApp *app, gboolean condition, gpointer data)
|
|
||||||
{
|
|
||||||
GsmSession *session;
|
|
||||||
GsmClient *client = NULL;
|
|
||||||
GSList *cl = NULL;
|
|
||||||
|
|
||||||
g_return_if_fail (data != NULL);
|
|
||||||
|
|
||||||
session = (GsmSession *) data;
|
|
||||||
|
|
||||||
/* Check for an existing session client for this app */
|
|
||||||
for (cl = session->clients; cl; cl = cl->next)
|
|
||||||
{
|
|
||||||
GsmClient *c = GSM_CLIENT (cl->data);
|
|
||||||
|
|
||||||
if (!strcmp (app->client_id, gsm_client_get_client_id (c)))
|
|
||||||
client = c;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (condition)
|
|
||||||
{
|
|
||||||
GError *error = NULL;
|
|
||||||
|
|
||||||
if (app->pid <= 0 && client == NULL)
|
|
||||||
gsm_app_launch (app, &error);
|
|
||||||
|
|
||||||
if (error != NULL)
|
|
||||||
{
|
|
||||||
g_warning ("Not able to launch autostart app from its condition: %s",
|
|
||||||
error->message);
|
|
||||||
|
|
||||||
g_error_free (error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* Kill client in case condition if false and make sure it won't
|
|
||||||
* be automatically restarted by adding the client to
|
|
||||||
* condition_clients */
|
|
||||||
session->condition_clients =
|
|
||||||
g_slist_prepend (session->condition_clients, client);
|
|
||||||
gsm_client_die (client);
|
|
||||||
app->pid = -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
app_registered (GsmApp *app, gpointer data)
|
app_registered (GsmApp *app, gpointer data)
|
||||||
{
|
{
|
||||||
@ -241,10 +194,6 @@ phase_timeout (gpointer data)
|
|||||||
static void
|
static void
|
||||||
start_phase (GsmSession *session)
|
start_phase (GsmSession *session)
|
||||||
{
|
{
|
||||||
GsmApp *app;
|
|
||||||
GSList *a;
|
|
||||||
GError *err = NULL;
|
|
||||||
|
|
||||||
g_debug ("starting phase %d\n", session->phase);
|
g_debug ("starting phase %d\n", session->phase);
|
||||||
|
|
||||||
g_slist_free (session->pending_apps);
|
g_slist_free (session->pending_apps);
|
||||||
@ -359,8 +308,6 @@ client_saved_state (GsmClient *client, gpointer data)
|
|||||||
void
|
void
|
||||||
gsm_session_initiate_shutdown (GsmSession *session)
|
gsm_session_initiate_shutdown (GsmSession *session)
|
||||||
{
|
{
|
||||||
gboolean logout_prompt;
|
|
||||||
|
|
||||||
if (session->phase == GSM_SESSION_PHASE_SHUTDOWN)
|
if (session->phase == GSM_SESSION_PHASE_SHUTDOWN)
|
||||||
{
|
{
|
||||||
/* Already shutting down, nothing more to do */
|
/* Already shutting down, nothing more to do */
|
||||||
|
@ -50,6 +50,7 @@ void sugar_menu_set_active (SugarMenu *menu,
|
|||||||
gboolean active);
|
gboolean active);
|
||||||
void sugar_menu_embed (SugarMenu *menu,
|
void sugar_menu_embed (SugarMenu *menu,
|
||||||
GtkContainer *parent);
|
GtkContainer *parent);
|
||||||
|
void sugar_menu_unembed (SugarMenu *menu);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
|
|
||||||
#include <gdk/gdkx.h>
|
#include <gdk/gdkx.h>
|
||||||
#include <gtk/gtkwindow.h>
|
#include <gtk/gtkwindow.h>
|
||||||
|
#include <X11/extensions/XShm.h>
|
||||||
|
|
||||||
#include "sugar-preview.h"
|
#include "sugar-preview.h"
|
||||||
|
|
||||||
@ -37,8 +38,6 @@ sugar_preview_set_size(SugarPreview *preview, int width, int height)
|
|||||||
GdkPixbuf *
|
GdkPixbuf *
|
||||||
sugar_preview_get_pixbuf(SugarPreview *preview)
|
sugar_preview_get_pixbuf(SugarPreview *preview)
|
||||||
{
|
{
|
||||||
GdkPixbuf *pixbuf;
|
|
||||||
|
|
||||||
if (preview->pixbuf != NULL) {
|
if (preview->pixbuf != NULL) {
|
||||||
return preview->pixbuf;
|
return preview->pixbuf;
|
||||||
}
|
}
|
||||||
@ -92,7 +91,7 @@ sugar_preview_take_screenshot(SugarPreview *preview, GdkDrawable *drawable)
|
|||||||
XShmGetImage(GDK_SCREEN_XDISPLAY(screen),
|
XShmGetImage(GDK_SCREEN_XDISPLAY(screen),
|
||||||
GDK_DRAWABLE_XID(drawable),
|
GDK_DRAWABLE_XID(drawable),
|
||||||
gdk_x11_image_get_ximage(preview->image),
|
gdk_x11_image_get_ximage(preview->image),
|
||||||
0, 0, AllPlanes, ZPixmap);
|
0, 0, AllPlanes);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Loading…
Reference in New Issue
Block a user