Bug 78918

Summary: Firefox does not build with freetype2-2.1.9
Product: Ports & Packages Reporter: Peter Weiss <Peter.Weiss>
Component: Individual Port(s)Assignee: freebsd-gnome (Nobody) <gnome>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   

Description Peter Weiss 2005-03-16 14:00:08 UTC
      c++ -o nsFontFreeType.o -c -DNATIVE_THEME_SUPPORT -DOSTYPE=\"FreeBSD5\" -DOSARCH=\"FreeBSD\" -DUSE_POSTSCRIPT -DUSE_XPRINT -DUSE_MOZILLA_TYPES -I../.. -I./. -I./.. -I./../shared -I./../freetype -I./../x11shared -I/usr/X11R6/include -I/usr/X11R6/include/freetype2    -I../../../dist/include/xpcom -I../../../dist/include/string -I../../../dist/include/widget -I../../../dist/include/view -I../../../dist/include/util -I../../../dist/include/pref -I../../../dist/include/uconv -I../../../dist/include/unicharutil -I../../../dist/include/locale -I../../../dist/include/necko -I../../../dist/include/content -I../../../dist/include/dom -I../../../dist/include/layout -I../../../dist/include/imglib2 -I../../../dist/include/xprintutil -I../../../dist/include/gfx -I../../../dist/include -I/usr/ports/www/firefox/work/mozilla/dist/include/nspr  -I/usr/local/include -I/usr/local/include  -I/usr/local/include/freetype2 -I/usr/local/include -I/usr/X11R6/include   -fPIC  -I/usr/X11R6/include
  -I/usr/local/include  -I/usr/X11R6/include  -I/usr/X11R6/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-long-long -O2 -fno-strict-aliasing -pipe -fshort-wchar -pipe  -DNDEBUG -DTRIMMED -O  -DXTHREADS -DXUSE_MTSAFE_API -I/usr/local/include/atk-1.0 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/X11R6/include/gtk-2.0 -I/usr/X11R6/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/X11R6/include/pango-1.0 -I/usr/X11R6/include/freetype2    -I/usr/X11R6/include -I/usr/local/include  -I/usr/X11R6/include  -I/usr/X11R6/include -DMOZILLA_CLIENT -include ../../../mozilla-config.h nsFontFreeType.cpp
nsFontFreeType.cpp: In member function `FT_FaceRec_* nsFreeTypeFont::getFTFace()':
nsFontFreeType.cpp:180: error: 'struct FTC_ImageTypeRec_' has no member named 'face_id'
nsFontFreeType.cpp: In constructor `nsFreeTypeFont::nsFreeTypeFont(nsITrueTypeFontCatalogEntry*, PRUint16, const char*)':
nsFontFreeType.cpp:194: error: 'struct FTC_ImageTypeRec_' has no member named 'face_id'
nsFontFreeType.cpp:195: error: 'struct FTC_ImageTypeRec_' has no member named 'width'
nsFontFreeType.cpp:196: error: 'struct FTC_ImageTypeRec_' has no member named 'height'
gmake[4]: *** [nsFontFreeType.o] Error 1
gmake[4]: Leaving directory `/usr/ports/www/firefox/work/mozilla/gfx/src/gtk'
gmake[3]: *** [libs] Error 2
gmake[3]: Leaving directory `/usr/ports/www/firefox/work/mozilla/gfx/src'
gmake[2]: *** [libs] Error 2
gmake[2]: Leaving directory `/usr/ports/www/firefox/work/mozilla/gfx'
gmake[1]: *** [tier_9] Error 2
gmake[1]: Leaving directory `/usr/ports/www/firefox/work/mozilla'
gmake: *** [default] Error 2
*** Error code 2

Stop in /usr/ports/www/firefox.

How-To-Repeat: upgrade freetype2 to 2.1.9, build firefox

/usr/ports2> grep VERSION= www/firefox/Makefile print/freetype2/Makefile 
www/firefox/Makefile:PORTVERSION=       1.0.1
print/freetype2/Makefile:PORTVERSION=   2.1.9
Comment 1 Thierry Thomas freebsd_committer freebsd_triage 2005-03-16 17:44:51 UTC
Responsible Changed
From-To: freebsd-bugs->gnome


Change category and assign to maintainer.
Comment 2 Michael Johnson freebsd_committer freebsd_triage 2005-03-16 21:13:41 UTC
State Changed
From-To: open->closed

Please make sure your ports tree (www/firefox) is up to date. Looks like you  
may be missing www/firefox/files/patch-bugzilla149334
Comment 3 Peter Weiss 2005-03-18 06:14:24 UTC
Michael Johnson <ahze@FreeBSD.org> writes:

> Synopsis: Firefox does not build with freetype2-2.1.9
>
> State-Changed-From-To: open->closed 
> State-Changed-By: ahze
> State-Changed-When: Wed Mar 16 21:13:41 GMT 2005
> State-Changed-Why: 
> Please make sure your ports tree (www/firefox) is up to date. Looks like you 
> may be missing www/firefox/files/patch-bugzilla149334
>
> http://www.freebsd.org/cgi/query-pr.cgi?pr=78918


Hi,

my patch-bugzilla149334 is of latest revision:

/usr/ports/www/firefox/files:1> cvs stat patch-bugzilla149334 
===================================================================
File: patch-bugzilla149334      Status: Up-to-date

   Working revision:    1.1     Thu Mar 10 00:43:22 2005
   Repository revision: 1.1     /export/cvs/ports/www/firefox/files/patch-bugzilla149334,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      (none)

/usr/ports/www/firefox/files:1> md5sum patch-bugzilla149334 
1aef0c52cf1902d24a3e2d6c6a37e6ba  patch-bugzilla149334

/usr/ports/www/firefox:1> make extract
===>  Vulnerability check disabled, database not found
===>  Found saved configuration for firefox-1.0_7,1
===>  Extracting for firefox-1.0.1_3,1
=> Checksum OK for firefox-1.0.1-source.tar.bz2.
===>   firefox-1.0.1_3,1 depends on file: /usr/local/bin/perl5.8.6 - found

Extracting source (this takes a while) ...

/usr/ports/www/firefox:1> make patch
===>  Patching for firefox-1.0.1_3,1
===>   firefox-1.0.1_3,1 depends on file: /usr/local/bin/perl5.8.6 - found
===>  Applying FreeBSD patches for firefox-1.0.1_3,1
/usr/ports/www/firefox:1> echo $?
0

But firefox still fails to build.  Of course I did a make clean, cvs
update and all that...

If I look into the patch it patches nsFreeTypeFont.cpp to use the member face_id
of class FTC_ImageTypeRec which the compiler complains about:

@@ -177,7 +177,7 @@ nsFreeTypeFont::getFTFace()
   FTC_Manager mgr;
   nsresult rv;
   mFt2->GetFTCacheManager(&mgr);
-  rv = mFt2->ManagerLookupSize(mgr, &mImageDesc.font, &face, nsnull);
+  rv = mFt2->ManagerLookupFace(mgr, mImageDesc->face_id, &face);
   NS_ASSERTION(NS_SUCCEEDED(rv), "failed to get face/size");

Peter

-- 
Peter.Weiss@consol.de                         ConSol* Software GmbH
Phone  +49 89 45841-100                       Consulting & Solutions
Mobile +49 177 6040121                        Franziskanerstr. 38
http://www.consol.de                          D-81669 München