[MacPorts] #50199: gnuplot: opportunistically uses gtk2 when building with wxwidgets enabled
MacPorts
noreply at macports.org
Mon Jan 4 02:43:53 PST 2016
#50199: gnuplot: opportunistically uses gtk2 when building with wxwidgets enabled
-----------------------+---------------------
Reporter: devans@… | Owner: mojca@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: gnuplot |
-----------------------+---------------------
Comment (by mojca@…):
I tried some relatively naive code for `configure.ac`:
{{{
dnl Check for gtk (raise/lower tweaks)
AC_MSG_CHECKING(if using wxGTK)
AC_LANG_PUSH([C++])
CXXFLAGS_OLD=$CXXFLAGS
CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <wx/wx.h>]],
[[int a = __WXGTK__]])],
[AC_MSG_RESULT(yes)
have_gtk=yes
AC_MSG_CHECKING(if using wxGTK3)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <wx/wx.h>]],
[[int a = __WXGTK3__]])],
[AC_MSG_RESULT(yes)
have_gtk3=yes],
[AC_MSG_RESULT(no)
have_gtk3=no])
],
[AC_MSG_RESULT(no)
have_gtk=no
have_gtk3=no])
CXXFLAGS=$CXXFLAGS_OLD
AC_LANG_POP([C++])
if test "${have_gtk}" = yes ; then
if test "${have_gtk3}" = yes ; then
PKG_CHECK_MODULES(GTK, [gtk+-3.0],, [have_gtk=no have_gtk3=no])
AC_DEFINE(HAVE_GTK, 1, [Define to use gtk/gdk tweaks])
WX_CXXFLAGS="$WX_CXXFLAGS $GTK_CFLAGS"
WX_LIBS="$WX_LIBS $GTK_LIBS"
else
PKG_CHECK_MODULES(GTK, [gtk+-2.0],, have_gtk=no)
AC_DEFINE(HAVE_GTK, 1, [Define to use gtk/gdk tweaks])
WX_CXXFLAGS="$WX_CXXFLAGS $GTK_CFLAGS"
WX_LIBS="$WX_LIBS $GTK_LIBS"
fi
fi
}}}
but when I build against GTK 3 this fails to build:
{{{
mv -f $depbase.Tpo $depbase.Po
../../gnuplot/src/wxterminal/wxt_gui.cpp:1537:20: error: use of undeclared
identifier 'gdk_window_foreign_new'
gdk_window_raise(gdk_window_foreign_new(windowid));
^
../../gnuplot/src/wxterminal/wxt_gui.cpp:1538:20: error: use of undeclared
identifier 'gdk_window_foreign_new'
gdk_window_focus(gdk_window_foreign_new(windowid),
GDK_CURRENT_TIME);
^
../../gnuplot/src/wxterminal/wxt_gui.cpp:3170:48: error: no member named
'window' in '_GtkWidget'
gdk_window_raise(window->frame->GetHandle()->window);
~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
../../gnuplot/src/wxterminal/wxt_gui.cpp:3183:47: error: no member named
'window' in '_GtkWidget'
gdk_window_lower(window->frame->GetHandle()->window);
~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
4 errors generated.
}}}
It looks like the patches are specific to GTK version 2.0 only.
--
Ticket URL: <https://trac.macports.org/ticket/50199#comment:6>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list