State of GTK for nekoware
#1
State of GTK for nekoware
So I've been banging out nekoware related deps for a hot minute, and I've gotten a pretty clear picture of what's needed by what to upgrade as a result:

This post will be organized into four sections:

Dependency Chain for GTK2, and thus Firefox and others:

GTK2 at minimum (e.g. 2.12 or higher) depends on: Cairo, libpixman1, pango, atk, glib2

Cairo depends on: freetype2, fontconfig, glib2

libpixman1 depends libpng

Pango depends on Cairo, xft (later versions harfbuzz), perl, and glib2

atk depends on glib2, gettext, libiconv

glib2 depends on gettext, libiconv, libffi, python 2 (for build) and in newer versions, Meson. I chose 2.32.4 to start with. A few versions beyond what's in nekoware, and patched so I can try to get a later GTK running. 

xft depends on nothing

gettext I try to not use in base. But it is a nothing

iconv is a nothing

libffi is a nothing

Python2 (or tauthon) is in optxeno 

Perl I have not been excited to build. 

Dilemmas:

if I build a C++ lib like harfbuzz with GCC, then I'm forced to build everything with GCC. 

If I build with GCC, it is a hard dependency for all glib2 and gcc programs to use GCC practically

GCC 6.5.0 builds with the gnu linker, which has a nasty tendency to break stuff for mipspro in weird ways (I had a libffi C library installed that broke glib with a cryptic error)

Pango post 1.29 ish doesn't support XFT and needs harfbuzz which means harfbuzz, which is C++ and nasty to deal with, as well as SLOW. This may limit our GTK2 version. 

Progress

glib2 was fixed, Diegel was blocked on this for ages. Onre found the issue years ago. If I had to guess, glib2 will be the first to block bumping into 2.24

cairo 1.12.18 (2014 circa) built easily

ATK was no problem, but a custom define macro had to be added. 

libpixman circa 2022 (0.42.2) was built easily

Pango was a real pain. 

GTK built actually pretty smoothly. 

So yeah, we got GTK 2.20, ATK 1.32. 

I'll need someone to volunteer to test and build an app from nekoware historical against it when I pack it up. I am running headless, and this is the last of GTK I wanna see for a good while. Maybe someone can help out and maintain it? 

Diegel? Pls!???

I'm the system admin of this site. Private security technician, licensed locksmith, hack of a c developer and vintage computer enthusiast. 

https://contrib.irixnet.org/raion/ -- contributions and pieces that I'm working on currently. 

https://codeberg.org/SolusRaion -- Code repos I control

Technical problems should be sent my way.
Raion
Chief IRIX Officer

Trade Count: (9)
Posts: 4,254
Threads: 535
Joined: Nov 2017
Location: Eastern Virginia
Website Find Reply
03-07-2025, 03:07 AM


Forum Jump:


Users browsing this thread: 1 Guest(s)