Freetype Update auf 2.2.1

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
jochen_f
Interessierter
Interessierter
Beiträge: 67
Registriert: Montag 29. Januar 2007, 12:25

Freetype Update auf 2.2.1

Beitrag von jochen_f »

Um neutrino oder enigma auf aktuellen Linux-Distributionen besser entwickeln zu können, habe ich einen Patch geschrieben, der libfreetype auf Version 2.2.1 hebt und die API entsprechend anpaßt. Siehe hier
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

Danke!
was gibts denn dann für Vor/Nachteile?
racker
Einsteiger
Einsteiger
Beiträge: 369
Registriert: Samstag 29. Mai 2004, 01:50

Beitrag von racker »

Hi,

habs mal nur kurz überflogen.
Da die "ifdef" entfernt wurden, vermute ich mal, dass z.B tuxtxt nicht mehr auf der Dream laufen wird.
Dort wird noch die Version 2.0.9 eingesetzt.

Gruß
jochen_f
Interessierter
Interessierter
Beiträge: 67
Registriert: Montag 29. Januar 2007, 12:25

Beitrag von jochen_f »

racker hat geschrieben:Hi,

habs mal nur kurz überflogen.
Da die "ifdef" entfernt wurden, vermute ich mal, dass z.B tuxtxt nicht mehr auf der Dream laufen wird.
Dort wird noch die Version 2.0.9 eingesetzt.

Gruß
Hat die Dream wirklich so eine alte uralte Version von freetype (5 Jahre)? Die neue API wurde mit 2.1.8 eingeführt und das ist bereits fast 3 Jahre her :gruebel:

Dann sollten die ifdef wieder rein, aber eher so:

Code: Alles auswählen

#if (FREETYPE_MAJOR > 2 || (FREETYPE_MAJOR == 2 && (FREETYPE_MINOR > 1 || (FREETYPE_MINOR == 1 && FREETYPE_PATCH >= 8))))
#  define FT_NEW_CACHE_API
#endif
racker
Einsteiger
Einsteiger
Beiträge: 369
Registriert: Samstag 29. Mai 2004, 01:50

Beitrag von racker »

Tja, vor diesem Problem stand ich auch schon einmal ( siehe hier)
if (FREETYPE_MAJOR > 2 |
Finde ich persönlich mutig. Wer weiß, ob die API nicht doch noch geändert wird.
Z.Z. stört es aber nicht. ;)

Die grundsätzliche Frage ist:
Soll der Code auch noch die bisherigen Freetype-Versionen unterstützen?

a) Nein,
dann sollte der bisherige Code (CVS-Plugins und LCars) in eigene Branches verschoben werden.

b) Ja,
dann sind - wenn ich mich noch richtig erinnere - bis zu 3 verschiedene
Versionen zu berücksichtigen (2.09, jetzige, neue).

Egal wie man sich entscheidet, die meisten Nicht-CVS-Plugins und Programme,
die die libfreetype benötigen, werden nicht mehr funktionieren.

Generell wäre ich für eine Umstellung auf die neue Version -
verbunden mit ewas "ausmisten".
Allerdings fehlt mir dazu die freie Zeit...

@Houdini
Ein Vorteil der damaligen Version 2.1.10 war, dass Darstellungsfehler wie
z.B. beim Suchlauf bei Standardeinstellungen nicht mehr auftraten,
sondern erst wieder bei größeren Fonts.
Muttersöhnchen
Interessierter
Interessierter
Beiträge: 73
Registriert: Samstag 31. Juli 2004, 18:15

Beitrag von Muttersöhnchen »

racker hat geschrieben:Egal wie man sich entscheidet, die meisten Nicht-CVS-Plugins und Programme,
die die libfreetype benötigen, werden nicht mehr funktionieren.
Und das ist jede menge. Ich würde es trtzdem machen, sehe kein Grund wieso tux-cvs sich an die richten soll und nicht andersrum.
jochen_f
Interessierter
Interessierter
Beiträge: 67
Registriert: Montag 29. Januar 2007, 12:25

Beitrag von jochen_f »

racker hat geschrieben:Soll der Code auch noch die bisherigen Freetype-Versionen unterstützen?
Ich habe entsprechende #ifdefs in den Plugins eingebaut. Ein paar plugins wurden für die neue Dream-Firmware im CVS auch angepaßt worden, so daß sich der Patch nicht mehr sauber einspielen ließ. Der neue Patch ist auf http://ulc.tuxbox-cvs.sourceforge.net/ unter Diffs verfügbar.

Gruß, Jochen
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: Freetype Update auf 2.3.9

Beitrag von rhabarber1848 »

FTR: EDIT: Patch ist im CVS

libfreetype.so.6 ist in Version 2.3.9 in einem Flash-Neutrino-Image
127kb größer als Version 2.1.4. Deshalb sehe ich keinen Grund,
die Freetype-Version im CVS zu ändern.
racker
Einsteiger
Einsteiger
Beiträge: 369
Registriert: Samstag 29. Mai 2004, 01:50

Re: Freetype Update auf 2.3.9

Beitrag von racker »

rhabarber1848 hat geschrieben:...Deshalb sehe ich keinen Grund,
die Freetype-Version im CVS zu ändern.
Gelesen?
jochen_f hat geschrieben:Um neutrino oder enigma auf aktuellen Linux-Distributionen besser entwickeln zu können, ...
Es geht darum den Code für neuere Freetypeversionen nutzbar zu machen und nicht sinnlos
immer die neuesten Versionen von *was-weiß-ich-für-ein-Prog-oder-Lib" ins Image knallen.

Von daher ist der Patch - so gut er auch gemeint ist- in dieser Form leider nicht verwendbar.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Freetype Update auf 2.2.1

Beitrag von seife »

Ich habe den patch jetzt nicht probiert - aber dem Namen nach macht er, dass man Neutrino mit freetype 2.3.9 kompilieren kann. Das fände ich super, dann muss ich nicht extra eine alte freetype-Version zusätzlich installieren, um auf x86_64 zu entwickeln.

Oder verstehe ich grad was falsch.
Auf der Tripledragon werde ich dann auch die freetype-Version updaten.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: Freetype Update auf 2.2.1

Beitrag von rhabarber1848 »

seife hat geschrieben:aber dem Namen nach macht er, dass man Neutrino mit freetype 2.3.9 kompilieren kann.
Das stimmt.

Nicht alle Änderungen unterscheiden mittels #ifdef zwischen
FT 2.3.9 und der im Tuxbox CVS genutzten Version 2.1.4.
Deshalb kann der Patch imho, selbst ohne version bump,
nicht ins CVS. Mir ist klar, dass es hier um natives Kompilieren
geht, dennoch habe ich getestet, ob es im Flash zwischen
beiden Versionen einen Größenunterschied gibt.

Damit auch andere User etwas von meiner Arbeit haben,
habe ich den Patch, quasi FTR, hier reingestellt. Ich werde
ihn nicht weiter nutzen, da ich Neutrino nicht nativ kompiliere.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re:

Beitrag von rhabarber1848 »

racker hat geschrieben:dann sind - wenn ich mich noch richtig erinnere - bis zu 3 verschiedene
Versionen zu berücksichtigen (2.09, jetzige, neue).

Egal wie man sich entscheidet, die meisten Nicht-CVS-Plugins und Programme,
die die libfreetype benötigen, werden nicht mehr funktionieren.
Wie wäre es mit einer cdk/configure-Option?
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: Re:

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Wie wäre es mit einer cdk/configure-Option?
Ist mittlerweile erledigt:
http://www.tuxbox-cvs.sourceforge.net/f ... =7&t=49091