diff options
| author | Alex Valavanis <valavanisalex@gmail.com> | 2013-03-26 16:03:49 +0000 |
|---|---|---|
| committer | Alex Valavanis <valavanisalex@googlemail.com> | 2013-03-26 16:03:49 +0000 |
| commit | d2bba282171a9e2c70a624794650689ec4531047 (patch) | |
| tree | 726ae8aa2ae75cc8272f13fa09ed8abc56e60724 | |
| parent | Revert r12183 and replace with better work-around for Pango bug (incorrect (diff) | |
| download | inkscape-d2bba282171a9e2c70a624794650689ec4531047.tar.gz inkscape-d2bba282171a9e2c70a624794650689ec4531047.zip | |
Fix Glibmm inclusions for Gtk+ 3 builds and implement a Gtk+ 3 compatible check for X11 backend
Fixed bugs:
- https://launchpad.net/bugs/1160252
- https://launchpad.net/bugs/1122774
(bzr r12247)
| -rw-r--r-- | configure.ac | 21 | ||||
| -rw-r--r-- | src/Makefile.am | 6 | ||||
| -rw-r--r-- | src/bind/javabind.h | 2 | ||||
| -rw-r--r-- | src/color-profile.cpp | 2 | ||||
| -rw-r--r-- | src/dom/dom.h | 4 | ||||
| -rw-r--r-- | src/dom/io/domstream.cpp | 5 | ||||
| -rw-r--r-- | src/dom/uri.cpp | 9 | ||||
| -rw-r--r-- | src/dom/views.h | 5 | ||||
| -rw-r--r-- | src/dom/xpathparser.cpp | 3 | ||||
| -rw-r--r-- | src/extension/init.cpp | 4 | ||||
| -rw-r--r-- | src/extension/internal/odf.h | 5 | ||||
| -rw-r--r-- | src/extension/script/InkscapeScript.h | 4 | ||||
| -rw-r--r-- | src/file.cpp | 4 | ||||
| -rw-r--r-- | src/interface.cpp | 3 | ||||
| -rw-r--r-- | src/libnrtype/font-lister.cpp | 3 | ||||
| -rw-r--r-- | src/main.cpp | 4 | ||||
| -rw-r--r-- | src/shortcuts.cpp | 3 | ||||
| -rw-r--r-- | src/shortcuts.h | 1 | ||||
| -rw-r--r-- | src/ui/dialog/export.cpp | 2 | ||||
| -rw-r--r-- | src/ui/dialog/filedialog.cpp | 2 | ||||
| -rw-r--r-- | src/ui/dialog/filedialog.h | 3 | ||||
| -rw-r--r-- | src/ui/dialog/filedialogimpl-gtkmm.cpp | 5 | ||||
| -rw-r--r-- | src/ui/dialog/filter-effects-dialog.cpp | 4 | ||||
| -rw-r--r-- | src/ui/dialog/ocaldialogs.cpp | 8 | ||||
| -rw-r--r-- | src/ui/dialog/svg-fonts-dialog.cpp | 4 | ||||
| -rw-r--r-- | src/ui/tool/path-manipulator.cpp | 1 | ||||
| -rw-r--r-- | src/ui/widget/preferences-widget.cpp | 2 |
27 files changed, 87 insertions, 32 deletions
diff --git a/configure.ac b/configure.ac index 828b851d5..0010229f9 100644 --- a/configure.ac +++ b/configure.ac @@ -642,6 +642,9 @@ if test "x$enable_gtk3" = "xyes"; then AC_MSG_ERROR([Some dependencies were not fulfilled for the experimental GTK+ 3 build. One possible cause for this is a new dependency on the gdl-3.0 development package.]) fi + # Check whether we are using the X11 backend target for Gtk+ 3. + GTK_CHECK_BACKEND([x11], , [have_x11=yes], [have_x11=no]) + # Enable strict build options that should work on most systems unless # the build has been configured not to do so if test "x$enable_strict_build" != "xno"; then @@ -668,6 +671,15 @@ else fi PKG_CHECK_MODULES(INKSCAPE, bdw-gc >= 7.1 glib-2.0 >= 2.28 gtk+-2.0 >= 2.24 libxml-2.0 >= 2.6.11 libxslt >= 1.0.15 cairo >= 1.10 cairomm-1.0 >= 1.9.8 sigc++-2.0 >= 2.0.12 $ink_spell_pkg gthread-2.0 >= 2.0 libpng >= 1.2 gsl glibmm-2.4 >= 2.28 giomm-2.4 gdkmm-2.4 gtkmm-2.4 >= 2.24 pango >= 1.24 pangoft2 >= 1.24) + + # Check whether we are using the X11 backend for Gtk+ 2. + AC_MSG_CHECKING([if Gtk+ 2.0 is using the X11 backend target]) + if test `$PKG_CONFIG --variable=target gtk+-2.0`; then + have_x11=yes + else + have_x11=no + fi + AC_MSG_RESULT($have_x11) # Enable build strict options that should work on most systems unless # the build has been configured explicitly not to do so @@ -696,6 +708,15 @@ else fi fi +dnl Configure x11 library if Gtk+ uses it as a backend. +dnl Note that this is only here because we directly use X11 functionality. We +dnl wouldn't need this check if we were only using X as the Gtk+ backend. +if test "x$have_x11" = "xyes"; then + PKG_CHECK_MODULES(X11, x11) +fi +AC_SUBST(X11_CFLAGS) +AC_SUBST(X11_LIBS) + AM_CONDITIONAL(WITH_EXT_GDL, test "x$with_gtkmm_3_0" = "xyes") # Prevent usage of deprecated library symbols unless strict build diff --git a/src/Makefile.am b/src/Makefile.am index 7d8a9ef50..b9ec53ab1 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -49,7 +49,8 @@ all_libs = \ $(LIBCDR_LIBS) \ $(DBUS_LIBS) \ $(GDL_LIBS) \ - $(IMAGEMAGICK_LIBS) + $(IMAGEMAGICK_LIBS) \ + $(X11_LIBS) # Add sources common for Inkscape and Inkview to this variable. ink_common_sources = @@ -83,7 +84,8 @@ AM_CPPFLAGS = \ $(WIN32_CFLAGS) \ -I$(srcdir)/bind/javainc \ -I$(srcdir)/bind/javainc/linux \ - -I$(builddir)/extension/dbus + -I$(builddir)/extension/dbus \ + $(X11_CFLAGS) CXXTEST_TEMPLATE = $(srcdir)/cxxtest-template.tpl CXXTESTGENFLAGS = --root --have-eh --template=$(CXXTEST_TEMPLATE) diff --git a/src/bind/javabind.h b/src/bind/javabind.h index 254548bfb..c11656a66 100644 --- a/src/bind/javabind.h +++ b/src/bind/javabind.h @@ -27,8 +27,8 @@ #ifndef SEEN_JAVABIND_H #define SEEN_JAVABIND_H -#include <glibmm.h> #include <vector> +#include <glibmm/ustring.h> namespace Inkscape diff --git a/src/color-profile.cpp b/src/color-profile.cpp index e7f18af15..14f88c77e 100644 --- a/src/color-profile.cpp +++ b/src/color-profile.cpp @@ -47,6 +47,8 @@ #include <icm.h> #endif // WIN32 +#include <glibmm/convert.h> + using Inkscape::ColorProfile; using Inkscape::ColorProfileClass; using Inkscape::ColorProfileImpl; diff --git a/src/dom/dom.h b/src/dom/dom.h index 22fd09ebf..14165166e 100644 --- a/src/dom/dom.h +++ b/src/dom/dom.h @@ -60,9 +60,9 @@ */ #ifdef DOM_STANDALONE -#include <string> +# include <string> #else -#include <glibmm.h> +# include <glibmm/ustring.h> #endif //# Unfortunate hack for a name collision diff --git a/src/dom/io/domstream.cpp b/src/dom/io/domstream.cpp index 7118025d6..1f08c0eee 100644 --- a/src/dom/io/domstream.cpp +++ b/src/dom/io/domstream.cpp @@ -34,9 +34,10 @@ * */ +#include <cmath> +#include <cstdarg> #include <cstdio> -#include <math.h> -#include <stdarg.h> +#include <cstdlib> #include "domstream.h" #include "dom/ucd.h" diff --git a/src/dom/uri.cpp b/src/dom/uri.cpp index e1089017d..231995daf 100644 --- a/src/dom/uri.cpp +++ b/src/dom/uri.cpp @@ -27,17 +27,14 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ - - - #include "uri.h" #include "ucd.h" -#include <stdio.h> -#include <stdarg.h> +#include <cstdarg> +#include <cstdio> +#include <cstdlib> #include <vector> - namespace org { namespace w3c diff --git a/src/dom/views.h b/src/dom/views.h index f165d2a9b..f1154fb62 100644 --- a/src/dom/views.h +++ b/src/dom/views.h @@ -45,12 +45,9 @@ * Be prepared in the future to adjust to this, if SVG ever switches . */ - - +#include <cstdlib> #include "dom.h" - - namespace org { namespace w3c diff --git a/src/dom/xpathparser.cpp b/src/dom/xpathparser.cpp index b19975966..4785ce93f 100644 --- a/src/dom/xpathparser.cpp +++ b/src/dom/xpathparser.cpp @@ -27,10 +27,9 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ - #include "ucd.h" #include "xpathparser.h" - +#include <cstdlib> namespace org { diff --git a/src/extension/init.cpp b/src/extension/init.cpp index 5555eddf6..d403d270f 100644 --- a/src/extension/init.cpp +++ b/src/extension/init.cpp @@ -26,8 +26,10 @@ #include "path-prefix.h" #include "inkscape.h" -#include <glibmm/ustring.h> + +#include <glibmm/fileutils.h> #include <glibmm/i18n.h> +#include <glibmm/ustring.h> #include "system.h" #include "db.h" diff --git a/src/extension/internal/odf.h b/src/extension/internal/odf.h index 219a99a4f..001f5e1f1 100644 --- a/src/extension/internal/odf.h +++ b/src/extension/internal/odf.h @@ -27,19 +27,18 @@ #include <io/stringstream.h> #include <dom/uri.h> -#include <glibmm.h> #include "extension/implementation/implementation.h" - #include <xml/repr.h> #include <string> #include <map> #include <dom/util/ziptool.h> -//#include <io/domstream.h> #include "sp-item.h" +#include <glibmm/ustring.h> + namespace Inkscape { namespace Extension diff --git a/src/extension/script/InkscapeScript.h b/src/extension/script/InkscapeScript.h index 2ebeb1b19..8d6346582 100644 --- a/src/extension/script/InkscapeScript.h +++ b/src/extension/script/InkscapeScript.h @@ -12,7 +12,9 @@ #include "config.h" -#include <glibmm.h> +namespace Glib { +class ustring; +} namespace Inkscape { diff --git a/src/file.cpp b/src/file.cpp index 5737f0a8a..453ddb546 100644 --- a/src/file.cpp +++ b/src/file.cpp @@ -68,8 +68,10 @@ #include "ui/dialog/font-substitution.h" #include <gtk/gtk.h> -#include <glib.h> + +#include <glibmm/convert.h> #include <glibmm/i18n.h> +#include <glibmm/miscutils.h> using Inkscape::DocumentUndo; diff --git a/src/interface.cpp b/src/interface.cpp index 4421b4a1d..986d3107f 100644 --- a/src/interface.cpp +++ b/src/interface.cpp @@ -79,7 +79,8 @@ #include "ui/dialog/layer-properties.h" #include <gdk/gdkkeysyms.h> -#include <gtk/gtk.h> + +#include <glibmm/miscutils.h> using Inkscape::DocumentUndo; diff --git a/src/libnrtype/font-lister.cpp b/src/libnrtype/font-lister.cpp index ace4a9ca9..39a04914b 100644 --- a/src/libnrtype/font-lister.cpp +++ b/src/libnrtype/font-lister.cpp @@ -9,7 +9,6 @@ #include <libnrtype/TextWrapper.h> #include <libnrtype/one-glyph.h> -#include <glibmm.h> #include "font-lister.h" #include "FontFactory.h" @@ -22,6 +21,8 @@ #include "sp-root.h" #include "xml/repr.h" +#include <glibmm/regex.h> + //#define DEBUG_FONT namespace Inkscape diff --git a/src/main.cpp b/src/main.cpp index 20330edbb..58ab19616 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -47,7 +47,6 @@ #endif /* Not def: POPT_TABLEEND */ #include <libxml/tree.h> -#include <glib.h> #include <glib/gprintf.h> #include <glib-object.h> #include <gtk/gtk.h> @@ -103,6 +102,9 @@ #include "extension/init.h" #include <glibmm/i18n.h> +#include <glibmm/main.h> +#include <glibmm/miscutils.h> + #include <gtkmm/main.h> #ifndef HAVE_BIND_TEXTDOMAIN_CODESET diff --git a/src/shortcuts.cpp b/src/shortcuts.cpp index a746b8633..2af04929e 100644 --- a/src/shortcuts.cpp +++ b/src/shortcuts.cpp @@ -29,7 +29,10 @@ #include <gdk/gdk.h> #include <gdk/gdkkeysyms.h> #include <gtk/gtk.h> + +#include <glibmm/convert.h> #include <glibmm/i18n.h> +#include <glibmm/miscutils.h> #include "helper/action.h" #include "io/sys.h" diff --git a/src/shortcuts.h b/src/shortcuts.h index 2d87b17ef..406768f97 100644 --- a/src/shortcuts.h +++ b/src/shortcuts.h @@ -10,6 +10,7 @@ * This code is in public domain */ +#include <vector> #include <gdkmm/types.h> typedef struct _GtkAccelGroup GtkAccelGroup; diff --git a/src/ui/dialog/export.cpp b/src/ui/dialog/export.cpp index 99a8c08d2..3017dc117 100644 --- a/src/ui/dialog/export.cpp +++ b/src/ui/dialog/export.cpp @@ -42,6 +42,8 @@ #endif #include <glibmm/i18n.h> +#include <glibmm/miscutils.h> + #include "helper/unit-menu.h" #include "helper/units.h" #include "unit-constants.h" diff --git a/src/ui/dialog/filedialog.cpp b/src/ui/dialog/filedialog.cpp index b3af6fc00..3413b0b0d 100644 --- a/src/ui/dialog/filedialog.cpp +++ b/src/ui/dialog/filedialog.cpp @@ -24,6 +24,8 @@ #include "extension/output.h" #include "preferences.h" +#include <glibmm/convert.h> + namespace Inkscape { namespace UI diff --git a/src/ui/dialog/filedialog.h b/src/ui/dialog/filedialog.h index 63cee6bdc..8dfcf5dce 100644 --- a/src/ui/dialog/filedialog.h +++ b/src/ui/dialog/filedialog.h @@ -16,12 +16,13 @@ #ifndef __FILE_DIALOG_H__ #define __FILE_DIALOG_H__ -#include <glibmm.h> #include <vector> #include <set> #include "extension/system.h" +#include <glibmm/ustring.h> + class SPDocument; namespace Inkscape { diff --git a/src/ui/dialog/filedialogimpl-gtkmm.cpp b/src/ui/dialog/filedialogimpl-gtkmm.cpp index cb6d92799..5808d7d21 100644 --- a/src/ui/dialog/filedialogimpl-gtkmm.cpp +++ b/src/ui/dialog/filedialogimpl-gtkmm.cpp @@ -34,7 +34,12 @@ #include <gtkmm/expander.h> #include <gtkmm/stock.h> + +#include <glibmm/convert.h> +#include <glibmm/fileutils.h> #include <glibmm/i18n.h> +#include <glibmm/miscutils.h> + #include "extension/input.h" #include "extension/output.h" #include "extension/db.h" diff --git a/src/ui/dialog/filter-effects-dialog.cpp b/src/ui/dialog/filter-effects-dialog.cpp index d65f5c48c..0d2d0757c 100644 --- a/src/ui/dialog/filter-effects-dialog.cpp +++ b/src/ui/dialog/filter-effects-dialog.cpp @@ -26,7 +26,11 @@ #endif #include "ui/widget/spinbutton.h" + +#include <glibmm/convert.h> #include <glibmm/i18n.h> +#include <glibmm/main.h> +#include <glibmm/stringutils.h> #include "desktop.h" #include "desktop-handles.h" diff --git a/src/ui/dialog/ocaldialogs.cpp b/src/ui/dialog/ocaldialogs.cpp index 09ce59e9c..c597bc849 100644 --- a/src/ui/dialog/ocaldialogs.cpp +++ b/src/ui/dialog/ocaldialogs.cpp @@ -33,10 +33,16 @@ #include <gtkmm/notebook.h> #include <gtkmm/spinner.h> #include <gtkmm/stock.h> -#include <glibmm/i18n.h> #include <gdkmm/general.h> #include <libxml/tree.h> +#include <glibmm/convert.h> +#include <glibmm/fileutils.h> +#include <glibmm/i18n.h> +#include <glibmm/main.h> +#include <glibmm/markup.h> +#include <glibmm/miscutils.h> + namespace Inkscape { namespace UI diff --git a/src/ui/dialog/svg-fonts-dialog.cpp b/src/ui/dialog/svg-fonts-dialog.cpp index bce63093d..ab5f4c0e9 100644 --- a/src/ui/dialog/svg-fonts-dialog.cpp +++ b/src/ui/dialog/svg-fonts-dialog.cpp @@ -22,7 +22,6 @@ #include <gtkmm/imagemenuitem.h> #include <gtkmm/scale.h> #include <gtkmm/stock.h> -#include <glibmm/i18n.h> #include <message-stack.h> #include "selection.h" #include <string.h> @@ -38,6 +37,9 @@ #include "sp-font.h" #include "sp-glyph-kerning.h" +#include <glibmm/i18n.h> +#include <glibmm/stringutils.h> + SvgFontDrawingArea::SvgFontDrawingArea(): _x(0), _y(0), diff --git a/src/ui/tool/path-manipulator.cpp b/src/ui/tool/path-manipulator.cpp index 35eb23f42..ac023beaa 100644 --- a/src/ui/tool/path-manipulator.cpp +++ b/src/ui/tool/path-manipulator.cpp @@ -19,7 +19,6 @@ #include <2geom/bezier-curve.h> #include <2geom/bezier-utils.h> #include <2geom/svg-path.h> -#include <glibmm.h> #include <glibmm/i18n.h> #include "ui/tool/path-manipulator.h" #include "desktop.h" diff --git a/src/ui/widget/preferences-widget.cpp b/src/ui/widget/preferences-widget.cpp index 314bf75bf..d32de6871 100644 --- a/src/ui/widget/preferences-widget.cpp +++ b/src/ui/widget/preferences-widget.cpp @@ -41,6 +41,8 @@ #include "selection-chemistry.h" #include "ui/dialog/filedialog.h" #include "xml/repr.h" + +#include <glibmm/convert.h> #include <glibmm/i18n.h> using namespace Inkscape::UI::Widget; |
