[csw-maintainers] wxwidgets in testing/ (was: Anyone wants to update wxWidgets?)

Maciej (Matchek) Blizinski maciej at opencsw.org
Mon Nov 16 09:13:54 CET 2009


On Fri, Nov 13, 2009 at 7:49 PM, Dagobert Michelsen <dam at opencsw.org> wrote:
> Hi,
>
> Am 13.11.2009 um 19:09 schrieb Maciej (Matchek) Blizinski:
>
>> However, Dago thinks that GNUlib can fix the problem.  I don't have a
>> lot of spare cycles right now, so if anyone wants to pick up the work,
>> everything is in the repository.
>
> I don't think this anymore, it will certainly take a day to do
> this right which would better be spend with other things
> moving forward.

Not that I disagree, but I've decided to give it another go.  I'm a
bit criss-cross, I know. I just thought that if it has been built
before, there must be a way and I wanted to know what was it.

Here are my findings: gnulib in fact does not have any code that
implements vswscanf, its documentation tells the truth. After adding
-D__EXTENSIONS__ another function started being a problem: vsscanf. A
grep through /opt/csw/include revealed that ncursesw provides an
implementation of this function, so I added a patch including the
ncursesw include and it started compiling. There was one more problem
with linking where the monolithic version Makefile was missing an
object file and was missing symbols.

As a side note, patching old versions of libraries is a bit
frustrating, as the patches won't get accepted upstream, yet must be
written.

The next hoop was a missing symbol (on x86 only): __sincos. Fixed by
throwing in -lsunmath.

It finally built fine: we now have unicode-enabled wxwidgets for
Solaris 8, both sparc and x86. Yey!

For the curious, here's the overview of the update. Most importantly,
/opt/csw/lib/libwx_gtk2u-2.8.so.0.2.0 stays in  to preserve backward
compatibility.  Since the newly built wxwidgets have the contrib
module turned on, there's a bunch of 0.2.0 files that aren't in the
current/ (wxwidgets_gtk2-2.8.5) package.  The new package has been
built as a modular library, because it's the upstream default.
wxwidgets_common gained some new files.  They make the package
architecture dependent, wxwidgets_common-2.8.5-SunOS5.8-all-CSW
becomes wxwidgets_common-2.8.10,REV=2009.11.16-SunOS5.8-sparc-CSW.
The devel package gained some new files too.  Notably, there's
/opt/csw/include/wx-2.8/wx/stc/stc.h which is required for the once
requested pgadmin3.

The comparepkg diffs:

wxwidgets_gtk2 http://dpaste.com/120986/
wxwidgets_common http://dpaste.com/120990/
wxwidgets_devel: http://dpaste.com/120992/

New packages are now available for testing.

Maciej



More information about the maintainers mailing list