[libsoup/gnome-3-8] Fix build on Windows, deprecate soup-portability.h



commit c48b661a18bad9e98737be9522ebadf54be29fd6
Author: Dan Winship <danw gnome org>
Date:   Wed Apr 24 11:34:30 2013 -0400

    Fix build on Windows, deprecate soup-portability.h
    
    soup-portability.h created portability problems (ha!) because the
    windows headers do "#define interface struct", conflicting with
    variable names elsewhere.
    
    The only thing that needed soup-portability.h in the public headers
    was soup-address.h, which uses struct sockaddr. But we can just do a
    forward declaration of that type rather than actually pulling in the
    headers.
    
    In git master, we made soup-address.h stop including
    soup-portability.h, but that might possibly break some other modules
    that depended on implicitly getting network includes as a side effect
    of including soup.h, and we shouldn't be doing that in the stable
    branch. So instead, we just tweak things so that it doesn't get
    included from within libsoup, but still does externally.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=692134

 libsoup/Makefile.am     |    1 +
 libsoup/soup-address.c  |    2 ++
 libsoup/soup-address.h  |    4 ++++
 libsoup/soup-socket.c   |    2 ++
 tests/Makefile.am       |    1 +
 tests/connection-test.c |    2 ++
 tests/socket-test.c     |    6 ++----
 7 files changed, 14 insertions(+), 4 deletions(-)
---
diff --git a/libsoup/Makefile.am b/libsoup/Makefile.am
index d54a06a..508bf9c 100644
--- a/libsoup/Makefile.am
+++ b/libsoup/Makefile.am
@@ -11,6 +11,7 @@ endif
 INCLUDES =                             \
        -DG_LOG_DOMAIN=\"libsoup\"      \
        -DLOCALEDIR=\"$(localedir)\"    \
+       -DSOUP_COMPILATION              \
        -I$(top_srcdir)                 \
        -I$(top_builddir)               \
        $(SOUP_DEBUG_FLAGS)             \
diff --git a/libsoup/soup-address.c b/libsoup/soup-address.c
index 286be8c..da4da94 100644
--- a/libsoup/soup-address.c
+++ b/libsoup/soup-address.c
@@ -11,6 +11,8 @@
 
 #include <string.h>
 
+#include <gio/gnetworking.h>
+
 #include "soup-address.h"
 #include "soup.h"
 #include "soup-marshal.h"
diff --git a/libsoup/soup-address.h b/libsoup/soup-address.h
index dd4c275..f882a08 100644
--- a/libsoup/soup-address.h
+++ b/libsoup/soup-address.h
@@ -8,7 +8,9 @@
 
 #include <sys/types.h>
 
+#ifndef SOUP_COMPILATION
 #include <libsoup/soup-portability.h>
+#endif
 #include <libsoup/soup-types.h>
 
 G_BEGIN_DECLS
@@ -51,6 +53,8 @@ typedef enum {
 
 #define SOUP_ADDRESS_ANY_PORT 0
 
+struct sockaddr;
+
 typedef void   (*SoupAddressCallback)            (SoupAddress         *addr,
                                                  guint                status,
                                                  gpointer             user_data);
diff --git a/libsoup/soup-socket.c b/libsoup/soup-socket.c
index 4268429..9e4de13 100644
--- a/libsoup/soup-socket.c
+++ b/libsoup/soup-socket.c
@@ -11,6 +11,8 @@
 
 #include <string.h>
 
+#include <gio/gnetworking.h>
+
 #include "soup-socket.h"
 #include "soup.h"
 #include "soup-filter-input-stream.h"
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 417b04c..7407dfe 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -2,6 +2,7 @@ INCLUDES =              \
        -I$(top_srcdir) \
        -DSRCDIR=\""$(abs_srcdir)"\" \
        -DBUILDDIR=\""$(builddir)"\" \
+       -DSOUP_COMPILATION \
        $(GLIB_CFLAGS)
 
 LIBS =                 \
diff --git a/tests/connection-test.c b/tests/connection-test.c
index b721136..6dc7c00 100644
--- a/tests/connection-test.c
+++ b/tests/connection-test.c
@@ -5,6 +5,8 @@
 
 #include "test-utils.h"
 
+#include <gio/gnetworking.h>
+
 SoupServer *server;
 SoupURI *base_uri;
 GMutex server_mutex;
diff --git a/tests/socket-test.c b/tests/socket-test.c
index 60c3e86..42ab6c8 100644
--- a/tests/socket-test.c
+++ b/tests/socket-test.c
@@ -4,12 +4,10 @@
  * Copyright 2012 Nokia Corporation
  */
 
-#include <libsoup/soup.h>
-
-#include <string.h>
-
 #include "test-utils.h"
 
+#include <gio/gnetworking.h>
+
 static void
 do_unconnected_socket_test (void)
 {


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