A few questions about gnuplot port (wxwidgets-devel & autoconf patches)

Mojca Miklavec mojca.miklavec.lists at gmail.com
Wed Apr 4 11:17:01 PDT 2012


On Wed, Apr 4, 2012 at 15:29, Mojca Miklavec wrote:
>
> 2.) Including some Qt patches (low priority)
>
> So there are two different solutions to the problem:
> a) Using Carbon headers (I added a patch using that, but Ryan said
> that this doesn't work for him on 10.6)
> b) Splitting the part that uses Cocoa into a separate file.
>
> The part (b) is somewhat "problematic" from the perspective of the
> number of files that has to be modified. I have prepared a patch
> against gnuplot 4.6.0:
>    https://trac.macports.org/attachment/ticket/33596/gnuplot-qt-configuration.patch
> (Changes in src/qtterminal/QtGnuplotWidget.cpp are not related and
> have already been included upstream, all other changes are needed.)
>
> However this won't work until somebody runs the "./prepare" script
> which is only included in trunk, not in distributed gnuplot versions,
> and it is probably against the policy of macports to run autotools
> before ./configure anyway.
>
> This is not a problem per se, I can run ./prepare script myself.
> However I end up with *a lot* of changes in configuration scripts.
> Basically all Makefile.in files and a lot more is changed
> substantially just because I use a different version of autotools than
> the main developer of gnuplot who prepares the release. I tried to use
> git to do the following:
> - run ./prepare myself
> - apply patches
> - run ./prepare again
> - only exctract the changes done by the latest ./prepare
> but when I compile the result, it ends up in a very weird way and
> again fails to work.

Hello,

I just got a reply from the main gnuplot developer (who also generates
./configure and Makefile.in files using autotools). He sent me all the
files that would result after applying my suggested patch. The result
doesn't change.

- If I use the files that he sent me, I end up with lots and lots of
errors like the following:

minal/qt_term.cpp
 In file included from qtterminal/qt_term.cpp:49:
 In file included from ./plot.h:46:
 ./mouse.h:189:6: error: variable has incomplete type 'void'
 void set_ruler __PROTO((TBOOLEAN on, int mx, int my));
     ^
./mouse.h:189:16: error: use of undeclared identifier '_Bool'; did you
mean 'QBool'?
 void set_ruler __PROTO((TBOOLEAN on, int mx, int my));
               ^
./syscfg.h:189:25: note: instantiated from:
# define __PROTO(proto) proto
                        ^
./mouse.h:189:25: note: instantiated from:
# define bool _Bool
              ^

If I generate the files myself with the autootols provided by
macports, it just works, under exactly the same conditions. Here are
some of the differences:

-# Generated by GNU Autoconf 2.65 for gnuplot 4.6.0.
 +# Generated by GNU Autoconf 2.68 for gnuplot 4.6.0.

 -# Makefile.in generated by automake 1.11.1 from Makefile.am.
 +# Makefile.in generated by automake 1.11.3 from Makefile.am.
  # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
 -# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
 -# Inc.
 +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
 +# Foundation, Inc.

 -# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
 +# generated automatically by aclocal 1.11.3 -*- Autoconf -*-

  # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
 -# 2005, 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
 +# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
 +# Inc.

My only explanation is that autotools might have fixed some bug in the
meantime and that I've been hit by exactly that bug. But I don't
really know what is going on. I can attach diffs to some ticket on
trac if needed.

Any suggestions?

Thank you,
    Mojca


More information about the macports-dev mailing list