FindGTK2: Fix GTK2_LIBRARIES order for static gtk libraries
Before this, when creating GTK2_LIBRARIES, FindGTK2 added the GTK dependencies in wrong order into GTK2_LIBRARIES. With dynamic libraries this is not a major problem, but when linking to static gtk libraries, the linker outputs a lot of undefined symbols. Reorder the calls that append libraries to GTK2_LIBRARIES to respect dependency order.
This commit is contained in:
parent
82b077395d
commit
399c3b8e54
|
@ -439,28 +439,19 @@ list(APPEND GTK2_LIBRARIES ${FREETYPE_LIBRARIES})
|
|||
|
||||
foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
|
||||
if(_GTK2_component STREQUAL "gtk")
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLIB_INCLUDE_DIR glib.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLIBCONFIG_INCLUDE_DIR glibconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GLIB_LIBRARY glib false true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GOBJECT_INCLUDE_DIR gobject/gobject.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GOBJECT_LIBRARY gobject false true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDK_PIXBUF_INCLUDE_DIR gdk-pixbuf/gdk-pixbuf.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GDK_PIXBUF_LIBRARY gdk_pixbuf false true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDK_INCLUDE_DIR gdk/gdk.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDKCONFIG_INCLUDE_DIR gdkconfig.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GTK_INCLUDE_DIR gtk/gtk.h)
|
||||
|
||||
if(UNIX)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GDK_LIBRARY gdk-x11 false true)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GTK_LIBRARY gtk-x11 false true)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GDK_LIBRARY gdk-x11 false true)
|
||||
else()
|
||||
_GTK2_FIND_LIBRARY (GTK2_GDK_LIBRARY gdk-win32 false true)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GTK_LIBRARY gtk-win32 false true)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GDK_LIBRARY gdk-win32 false true)
|
||||
endif()
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDK_INCLUDE_DIR gdk/gdk.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDKCONFIG_INCLUDE_DIR gdkconfig.h)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_CAIRO_INCLUDE_DIR cairo.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_CAIRO_LIBRARY cairo false false)
|
||||
|
||||
|
@ -469,35 +460,40 @@ foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
|
|||
_GTK2_FIND_INCLUDE_DIR(GTK2_PANGO_INCLUDE_DIR pango/pango.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_PANGO_LIBRARY pango false true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDK_PIXBUF_INCLUDE_DIR gdk-pixbuf/gdk-pixbuf.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GDK_PIXBUF_LIBRARY gdk_pixbuf false true)
|
||||
|
||||
_GTK2_FIND_LIBRARY (GTK2_GIO_LIBRARY gio false true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_ATK_INCLUDE_DIR atk/atk.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_ATK_LIBRARY atk false true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GOBJECT_INCLUDE_DIR gobject/gobject.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GOBJECT_LIBRARY gobject false true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLIB_INCLUDE_DIR glib.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLIBCONFIG_INCLUDE_DIR glibconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GLIB_LIBRARY glib false true)
|
||||
|
||||
elseif(_GTK2_component STREQUAL "gtkmm")
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLIBMM_INCLUDE_DIR glibmm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLIBMMCONFIG_INCLUDE_DIR glibmmconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GLIBMM_LIBRARY glibmm true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDKMM_INCLUDE_DIR gdkmm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDKMMCONFIG_INCLUDE_DIR gdkmmconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GDKMM_LIBRARY gdkmm true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GTKMM_INCLUDE_DIR gtkmm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GTKMMCONFIG_INCLUDE_DIR gtkmmconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GTKMM_LIBRARY gtkmm true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_CAIROMM_INCLUDE_DIR cairomm/cairomm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_CAIROMMCONFIG_INCLUDE_DIR cairommconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_CAIROMM_LIBRARY cairomm true true)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDKMM_INCLUDE_DIR gdkmm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GDKMMCONFIG_INCLUDE_DIR gdkmmconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GDKMM_LIBRARY gdkmm true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_PANGOMM_INCLUDE_DIR pangomm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_PANGOMMCONFIG_INCLUDE_DIR pangommconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_PANGOMM_LIBRARY pangomm true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_SIGC++_INCLUDE_DIR sigc++/sigc++.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_SIGC++CONFIG_INCLUDE_DIR sigc++config.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_SIGC++_LIBRARY sigc true true)
|
||||
_GTK2_FIND_LIBRARY (GTK2_PANGOCAIRO_LIBRARY pangocairo true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_CAIROMM_INCLUDE_DIR cairomm/cairomm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_CAIROMMCONFIG_INCLUDE_DIR cairommconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_CAIROMM_LIBRARY cairomm true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GIOMM_INCLUDE_DIR giomm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GIOMMCONFIG_INCLUDE_DIR giommconfig.h)
|
||||
|
@ -506,6 +502,15 @@ foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
|
|||
_GTK2_FIND_INCLUDE_DIR(GTK2_ATKMM_INCLUDE_DIR atkmm.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_ATKMM_LIBRARY atkmm true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLIBMM_INCLUDE_DIR glibmm.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLIBMMCONFIG_INCLUDE_DIR glibmmconfig.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_GLIBMM_LIBRARY glibmm true true)
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_SIGC++_INCLUDE_DIR sigc++/sigc++.h)
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_SIGC++CONFIG_INCLUDE_DIR sigc++config.h)
|
||||
_GTK2_FIND_LIBRARY (GTK2_SIGC++_LIBRARY sigc true true)
|
||||
|
||||
|
||||
elseif(_GTK2_component STREQUAL "glade")
|
||||
|
||||
_GTK2_FIND_INCLUDE_DIR(GTK2_GLADE_INCLUDE_DIR glade/glade.h)
|
||||
|
@ -549,13 +554,13 @@ foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
|
|||
GTK2_GTK_LIBRARY
|
||||
GTK2_GTK_INCLUDE_DIR
|
||||
|
||||
GTK2_GLIB_INCLUDE_DIR
|
||||
GTK2_GLIBCONFIG_INCLUDE_DIR
|
||||
GTK2_GLIB_LIBRARY
|
||||
|
||||
GTK2_GDK_INCLUDE_DIR
|
||||
GTK2_GDKCONFIG_INCLUDE_DIR
|
||||
GTK2_GDK_LIBRARY
|
||||
|
||||
GTK2_GLIB_INCLUDE_DIR
|
||||
GTK2_GLIBCONFIG_INCLUDE_DIR
|
||||
GTK2_GLIB_LIBRARY
|
||||
)
|
||||
elseif(_GTK2_component STREQUAL "gtkmm")
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTK2_${_COMPONENT_UPPER} "Some or all of the gtkmm libraries were not found."
|
||||
|
@ -563,13 +568,14 @@ foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
|
|||
GTK2_GTKMM_INCLUDE_DIR
|
||||
GTK2_GTKMMCONFIG_INCLUDE_DIR
|
||||
|
||||
GTK2_GDKMM_INCLUDE_DIR
|
||||
GTK2_GDKMMCONFIG_INCLUDE_DIR
|
||||
GTK2_GDKMM_LIBRARY
|
||||
|
||||
GTK2_GLIBMM_INCLUDE_DIR
|
||||
GTK2_GLIBMMCONFIG_INCLUDE_DIR
|
||||
GTK2_GLIBMM_LIBRARY
|
||||
|
||||
GTK2_GDKMM_INCLUDE_DIR
|
||||
GTK2_GDKMMCONFIG_INCLUDE_DIR
|
||||
GTK2_GDKMM_LIBRARY
|
||||
)
|
||||
elseif(_GTK2_component STREQUAL "glade")
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTK2_${_COMPONENT_UPPER} "The glade library was not found."
|
||||
|
|
Loading…
Reference in New Issue