Subject: pkg/31481: Numerous Mozilla/Firefox problems on Solaris 10
To: None <,,>
From: None <>
List: pkgsrc-bugs
Date: 10/05/2005 12:55:00
>Number:         31481
>Category:       pkg
>Synopsis:       Numerous Mozilla/Firefox problems on Solaris 10
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Oct 05 12:55:00 +0000 2005
>Originator:     segv
SunOS 5.10 Generic sun4u sparc SUNW,Ultra-5_10
It is not possible to build a satisfactory binary distribution of www/firefox from pkgsrc-2005Q3 on Solaris 10, due to a number of problems, details of which follow below:

1. Mozilla/Firefox are built without Xft support, hence the fonts look pretty ugly

The problem is due to www/mozilla/Makefile.common, below is one possible fix:

--- www/mozilla/Makefile.common.orig    2005-10-05 13:21:40.000000000 +0100
+++ www/mozilla/Makefile.common 2005-10-05 13:23:20.000000000 +0100
@@ -187,7 +187,7 @@
 CONFIGURE_ARGS+= --with-pthreads
-.if ${MOZILLA_USE_XFT} == "YES" && exists(${X11BASE}/include/X11/Xdefs.h)
+.if ${MOZILLA_USE_XFT} == "YES"
 CONFIGURE_ARGS+=       --enable-xft
 # pkgconfig defaults to a "build" dependency, which is what we want.
 .include "../../fonts/Xft2/"

The problem occurs because Makefile tests for presence of ${X11BASE}/include/X11/Xdefs.h (which does not exist on Solaris 10) in order to enable Xft support. My guess that this "fix" got implemented due to PR#21745, which breaks Xft support on Solaris. Either remove the test for Xdefs.h from this Makefile, or make it more intelligent, i.e. not enabling Xft support because some header file does not exist is pretty lame, not everyone is running XFree86.

2. www/firefox/patch-ap breaks this package on Solaris 10, which results in the following error:

Undefined                       first referenced
 symbol                             in file
mont_mulf_noconv                    SunOS5.10_OPT.OBJ/mpmontg.o
conv_i32_to_d32                     SunOS5.10_OPT.OBJ/mpmontg.o
conv_i32_to_d16                     SunOS5.10_OPT.OBJ/mpmontg.o
s_mpv_mul_d_add_prop                SunOS5.10_OPT.OBJ/mpmontg.o
s_mpv_mul_d_add                     SunOS5.10_OPT.OBJ/mpi.o
conv_i32_to_d32_and_d16             SunOS5.10_OPT.OBJ/mpmontg.o
s_mpv_mul_d                         SunOS5.10_OPT.OBJ/mpmontg.o
ld: fatal: Symbol referencing errors. No output written to SunOS5.10_OPT.OBJ/lib
collect2: ld returned 1 exit status

There is already PR#31363 describing the same problem. See for more details on this bug. The fix is to fix www/firefox/patches/patch-ap

--- www/firefox/patches/patch-ap.orig   2005-10-05 13:19:34.000000000 +0100
+++ www/firefox/patches/patch-ap        2005-10-03 00:55:27.000000000 +0100
@@ -7,7 +7,7 @@
  NFSPWD        = $(NSINSTALL_DIR)/nfspwd
  RANLIB        = echo
  TAR           = /bin/tar

3. Running 'bmake package' in www/firefox fails to build a binary package, because www/firefox/PLIST contains the following file, which for some reason is not installed on Solaris


I'm not sure of the best way to solve this, either ignore that particular file from PLIST when creating binary package, or find out why is not installed on Solaris.
I applied the following patch in order to create binary package on Solaris

--- www/firefox/PLIST.orig      2005-10-05 13:16:56.000000000 +0100
+++ www/firefox/PLIST   2005-10-03 09:54:27.000000000 +0100
@@ -302,7 +302,7 @@
+@comment lib/${MOZILLA}/res/fonts/