emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r113253: * configure.ac (GTK_COMPILES): Check API a


From: Paul Eggert
Subject: [Emacs-diffs] trunk r113253: * configure.ac (GTK_COMPILES): Check API a bit more carefully.
Date: Tue, 02 Jul 2013 02:17:17 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 113253
revision-id: address@hidden
parent: address@hidden
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Mon 2013-07-01 19:17:12 -0700
message:
  * configure.ac (GTK_COMPILES): Check API a bit more carefully.
  
  Also check that it links.  Say whether it compiled and linked.
modified:
  ChangeLog                      changelog-20091113204419-o5vbwnq5f7feedwu-1538
  configure.ac                   
configure.in-20091113204419-o5vbwnq5f7feedwu-783
=== modified file 'ChangeLog'
--- a/ChangeLog 2013-07-02 00:35:28 +0000
+++ b/ChangeLog 2013-07-02 02:17:12 +0000
@@ -1,3 +1,8 @@
+2013-07-02  Paul Eggert  <address@hidden>
+
+       * configure.ac (GTK_COMPILES): Check API a bit more carefully.
+       Also check that it links.  Say whether it compiled and linked.
+
 2013-07-01  Paul Eggert  <address@hidden>
 
        Merge from gnulib, incorporating:

=== modified file 'configure.ac'
--- a/configure.ac      2013-06-30 15:24:14 +0000
+++ b/configure.ac      2013-07-02 02:17:12 +0000
@@ -2131,8 +2131,28 @@
   CFLAGS="$CFLAGS $GTK_CFLAGS"
   LIBS="$GTK_LIBS $LIBS"
   dnl Try to compile a simple GTK program.
+  AC_MSG_CHECKING([whether GTK compiles])
   GTK_COMPILES=no
-  AC_CHECK_FUNCS(gtk_main, GTK_COMPILES=yes)
+  AC_LINK_IFELSE(
+    [AC_LANG_PROGRAM(
+       [[/* Check the Gtk and Glib APIs.  */
+        #include <gtk/gtk.h>
+        #include <glib-object.h>
+        static void
+        callback (GObject *go, GParamSpec *spec, gpointer user_data)
+        {}
+       ]],
+       [[
+        GtkSettings *gs = 0;
+        /* Use G_CALLBACK to make sure function pointers can be cast to void *;
+           strict C prohibits this.  Use gtk_main_iteration to test that the
+           libraries are there.  */
+        if (g_signal_handler_find (G_OBJECT (gs), G_SIGNAL_MATCH_FUNC,
+                                   0, 0, 0, G_CALLBACK (callback), 0))
+          gtk_main_iteration ();
+       ]])],
+    [GTK_COMPILES=yes])
+  AC_MSG_RESULT([$GTK_COMPILES])
   if test "${GTK_COMPILES}" != "yes"; then
     GTK_OBJ=
     if test "$USE_X_TOOLKIT" != "maybe"; then


reply via email to

[Prev in Thread] Current Thread [Next in Thread]