Subject: RE: firefox 1.5 font issues on netbsd/macppc
To: None <kdev@no-log.org>
From: David H. Gutteridge <dhgutteridge@sympatico.ca>
List: pkgsrc-users
Date: 11/27/2006 21:59:35
>Hello David
>I have experimented exactly the same fonts issues as you described here
>http://mail-index.netbsd.org/pkgsrc-users/2006/11/06/0001.html, so I will 
>also
>share my experience and results.
>
>The results of my our own findings are : - - as you stated it seems that 
>the file ppc hacks.mk situated in www/firefox
>has not no influence on the build.
>
>- -according to pkgsrc documentations, if you want to specify your own 
>CFLAGS
>you should do it in /etc/mk.conf. But in this case it does not work. Why ?
>Because a level of gcc optimisation is set in www/firefox/Makefile.common 
>(why
>here ? ).   And if you add your own CFLAGS via /etc/mk.conf, the CFLAGS set 
>by
>this www/firefox/Makefile.common go to the end of the gcc command line when 
>you
>compile, which means they override those from /etc/mk.conf (see man gcc )
>
>- -So after editing www/firefox/Makefile.common I was able to made an
>unoptimised build (-O0) of firefox-gtk1. Did not try yet with standard 
>firefox,
>but that will be he next step.

Hmm, if I recall I tried that but it didn't work for me.  I just tried
it again, and it didn't, I'm still getting -O2, e.g.:

cc -o jsopcode.o -c  -DOSTYPE=\"NetBSD3\" -DOSARCH=\"NetBSD\" 
-DBUILD_ID=0000000000 -DEXPORT_JS_API  -DJS_USE_SAFE_ARENA   
-I../../dist/include/js -I../../dist/include -I../../dist/include/nspr 
-I/usr/pkg/include -I/usr/pkg/include  -I../../dist/sdk/include -I. 
-I/usr/X11R6/include   -fPIC -DPIC -DPNG_NO_ASSEMBLER_CODE 
-I/usr/pkg/include -I/usr/include -I/usr/pkg/include/freetype2  
-I/usr/X11R6/include -Wall -W -Wno-unused -Wpointer-arith -Wcast-align 
-Wno-long-long -O2 -mcpu=750 -pipe -I/usr/pkg/include -I/usr/include 
-I/usr/pkg/include/freetype2 -Dunix -pthread -pipe  -DNDEBUG -DTRIMMED -pipe 
  -DPNG_NO_ASSEMBLER_CODE -I/usr/pkg/include -I/usr/include 
-I/usr/pkg/include/freetype2  -I/usr/X11R6/include -include 
./../mozilla-config.h -DMOZILLA_CLIENT -Wp,-MD,.deps/jsopcode.pp jsopcode.c

>- - with this unoptimized build and by setting  parameter to "always use my
>fonts", the display glitches are gone !

There's something I didn't try.  In Firefox 2.0, they've changed it to
"Allow pages to choose their own fonts, instead of my selections above".
It works the same way, except it's an opt-out choice now.

I disabled that option, and found that there seem (so far) to be fewer
display glitches than before.  I do still see some though, it seems to
really get tripped up by links more than anything else.

>Since you said even with unoptimized build, you had the display glitches, 
>did
>you checked that -O0 applied to both gcc and g++ ? - From firefox, the 
>about:buildconfig page shows you the necessary informations.

Yes, I used script(1) to generate a log of the build, and grepped it to
confirm what optimizations were used.

Here are my about:buildconfig results:

Build tools
Compiler 	Version 	Compiler flags
cc 	gcc version 3.3.3 (NetBSD nb3 20040520) 	-Wall -W -Wno-unused 
-Wpointer-arith -Wcast-align -Wno-long-long -O0 -mcpu=750 -pipe 
-I/usr/pkg/include -I/usr/include -I/usr/pkg/include/freetype2 -Dunix 
-pthread -pipe
c++ 	gcc version 3.3.3 (NetBSD nb3 20040520) 	-fno-rtti -fno-exceptions 
-Wall -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth 
-Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-long-long -O0 -mcpu=750 
-pipe -I/usr/pkg/include -I/usr/include -I/usr/pkg/include/freetype2 
-mcpu=750 -Dunix -fshort-wchar -pthread -pipe -DPNG_NO_ASSEMBLER_CODE 
-I/usr/pkg/include -I/usr/include -I/usr/pkg/include/freetype2 
-I/usr/X11R6/include

Configure arguments
--enable-application=browser --enable-single-profile --without-gssapi 
--enable-canvas --enable-extensions=default --disable-tests 
--disable-pedantic --with-system-jpeg=/usr/pkg --with-system-png=/usr/pkg 
--enable-crypto --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib 
--enable-default-toolkit=gtk2 --disable-gnomevfs --enable-svg 
--enable-svg-renderer=cairo --enable-system-cairo --enable-mathml 
--enable-xinerama --enable-optimize=-pipe --with-pthreads --enable-xft 
--disable-debug --without-libintl-prefix --without-libiconv-prefix 
--prefix=/usr/pkg --host=powerpc--netbsd --mandir=/usr/pkg/man

Thanks for the information, Firefox is less annoying after the settings
change you suggested.

>Manu

Dave