rpms/thunderbird/devel firefox-1.5-nopangoxft.patch, NONE, 1.1 firefox-1.5-pango-mathml.patch, NONE, 1.1 thunderbird-1.5-visibility.patch, NONE, 1.1 thunderbird-1.5-pango-start.patch, 1.1, 1.2 thunderbird.sh.in, 1.5, 1.6 thunderbird.spec, 1.77, 1.78 firefox-nopangoxft.patch, 1.1, NONE
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Tue Sep 5 08:45:52 UTC 2006
Author: caillon
Update of /cvs/dist/rpms/thunderbird/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv18508
Modified Files:
thunderbird-1.5-pango-start.patch thunderbird.sh.in
thunderbird.spec
Added Files:
firefox-1.5-nopangoxft.patch firefox-1.5-pango-mathml.patch
thunderbird-1.5-visibility.patch
Removed Files:
firefox-nopangoxft.patch
Log Message:
* Tue Sep 5 2006 Christopher Aillon <caillon at redhat.com> - 1.5.0.5-5
- Update nopangoxft.patch
- Fix rendering of MathML thanks to Behdad Esfahbod.
- Update start page text to reflect the MathML fixes.
- Enable pango by default on all locales
- Build using -rpath
- Re-enable GCC visibility
firefox-1.5-nopangoxft.patch:
mozilla-decoder.cpp | 12 +++++++++---
1 files changed, 9 insertions(+), 3 deletions(-)
--- NEW FILE firefox-1.5-nopangoxft.patch ---
--- mozilla/gfx/src/gtk/mozilla-decoder.cpp.noxft 2004-11-07 18:59:23.000000000 -0500
+++ mozilla/gfx/src/gtk/mozilla-decoder.cpp 2006-08-06 18:24:37.000000000 -0400
@@ -40,10 +40,9 @@
#define PANGO_ENABLE_ENGINE
#include "mozilla-decoder.h"
-#include <pango/pangoxft.h>
#include <pango/pangofc-fontmap.h>
#include <pango/pangofc-font.h>
-#include <gdk/gdkx.h>
+#include <gdk/gdkpango.h>
#include "nsString.h"
#include "nsIPersistentProperties2.h"
@@ -145,6 +144,13 @@ mozilla_decoders_init(void)
if (initialized)
return 0;
+ PangoContext* context = gdk_pango_context_get ();
+ PangoFontMap* fontmap = pango_context_get_font_map (context);
+ g_object_unref (context);
+
+ if (!PANGO_IS_FC_FONT_MAP (fontmap))
+ return -1;
+
encoder_hash = g_hash_table_new(g_str_hash, g_str_equal);
cmap_hash = g_hash_table_new(g_str_hash, g_str_equal);
wide_hash = g_hash_table_new(g_str_hash, g_str_equal);
@@ -208,7 +214,7 @@ mozilla_decoders_init(void)
}
}
- pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(pango_xft_get_font_map(GDK_DISPLAY(),gdk_x11_get_default_screen())),
+ pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(fontmap),
mozilla_find_decoder,
NULL,
NULL);
firefox-1.5-pango-mathml.patch:
nsFontMetricsPango.cpp | 21 +++++++++------------
1 files changed, 9 insertions(+), 12 deletions(-)
--- NEW FILE firefox-1.5-pango-mathml.patch ---
--- mozilla/gfx/src/gtk/nsFontMetricsPango.cpp.mathml 2006-02-23 16:01:42.000000000 -0500
+++ mozilla/gfx/src/gtk/nsFontMetricsPango.cpp 2006-08-22 20:06:40.000000000 -0400
@@ -829,30 +829,27 @@ nsFontMetricsPango::GetBoundingMetrics(c
goto loser;
}
- pango_layout_set_text(layout, text, strlen(text));
+ pango_layout_set_text(layout, text, -1);
FixupSpaceWidths(layout, text);
- // Get the logical extents
PangoLayoutLine *line;
if (pango_layout_get_line_count(layout) != 1) {
printf("Warning: more than one line!\n");
}
line = pango_layout_get_line(layout, 0);
- // Get the ink extents
- PangoRectangle rect;
- pango_layout_line_get_extents(line, NULL, &rect);
+ // Get the ink and logical extents
+ PangoRectangle ink, logical;
+ pango_layout_line_get_extents(line, &ink, &logical);
float P2T;
P2T = mDeviceContext->DevUnitsToAppUnits();
- aBoundingMetrics.leftBearing =
- NSToCoordRound(rect.x * P2T / PANGO_SCALE);
- aBoundingMetrics.rightBearing =
- NSToCoordRound(rect.width * P2T / PANGO_SCALE);
- aBoundingMetrics.width = NSToCoordRound((rect.x + rect.width) * P2T / PANGO_SCALE);
- aBoundingMetrics.ascent = NSToCoordRound(rect.y * P2T / PANGO_SCALE);
- aBoundingMetrics.descent = NSToCoordRound(rect.height * P2T / PANGO_SCALE);
+ aBoundingMetrics.leftBearing = NSToCoordRound(PANGO_LBEARING(ink) * P2T / PANGO_SCALE);
+ aBoundingMetrics.rightBearing = NSToCoordRound(PANGO_RBEARING(ink) * P2T / PANGO_SCALE);
+ aBoundingMetrics.ascent = NSToCoordRound(PANGO_ASCENT(ink) * P2T / PANGO_SCALE);
+ aBoundingMetrics.descent = NSToCoordRound(PANGO_DESCENT(ink) * P2T / PANGO_SCALE);
+ aBoundingMetrics.width = NSToCoordRound(logical.width * P2T / PANGO_SCALE);
loser:
g_free(text);
thunderbird-1.5-visibility.patch:
config/system-headers | 12 +++
configure | 127 ++++++++++++++++++++++++++++-----------
configure.in | 111 ++++++++++++++++++++++++----------
js/src/jstypes.h | 2
modules/libreg/include/NSReg.h | 2
modules/oji/src/nsJVMManager.cpp | 2
modules/zlib/src/mozzconf.h | 2
xpcom/base/nscore.h | 2
8 files changed, 190 insertions(+), 70 deletions(-)
--- NEW FILE thunderbird-1.5-visibility.patch ---
Mostly the same as firefox-1.5-visibility.patch with the addition of lber.h
--- mozilla/config/system-headers.visibility 2005-06-17 17:03:42.000000000 -0400
+++ mozilla/config/system-headers 2006-09-05 00:03:12.000000000 -0400
@@ -66,6 +66,7 @@
Button.h
byteswap.h
cairo.h
+cairo-xlib.h
callconv.h
Carbon/Carbon.h
CarbonEvents.h
@@ -176,7 +177,7 @@
freetype/freetype.h
freetype/ftcache.h
freetype/ftglyph.h
-freetype/ftoutlin.h
+freetype/ftoutln.h
freetype/ttnameid.h
freetype/tttables.h
fribidi/fribidi.h
@@ -192,6 +193,8 @@
gdk/gdkregion.h
gdk/gdkwindow.h
gdk/gdkx.h
+gdk/gdkpango.h
+gdk/gdkalias.h
gdk-pixbuf/gdk-pixbuf.h
Gestalt.h
getopt.h
@@ -212,7 +215,11 @@
gtk/gtkcontainer.h
gtk/gtkdialog.h
gtk/gtkentry.h
+gtk/gtkfilechooser.h
+gtk/gtkfixed.h
gtk/gtk.h
+gtk/gtkiconfactory.h
+gtk/gtkimage.h
gtk/gtkimmulticontext.h
gtk/gtkinvisible.h
gtk/gtkmain.h
@@ -279,6 +286,7 @@
LaunchServices.h
LBroadcaster.h
LButton.h
+lber.h
lcache.h
LCaption.h
LCheckBox.h
@@ -500,6 +508,7 @@
PLStringFuncs.h
PMApplication.h
pmddim.h
+png.h
poll.h
Polygon.h
portable.h
@@ -874,6 +883,7 @@
X11/Xutil.h
xpt_struct.h
xpt_xdr.h
+zlib.h
zmouse.h
sslt.h
smime.h
--- mozilla/xpcom/base/nscore.h.visibility 2006-02-21 22:19:38.000000000 -0500
+++ mozilla/xpcom/base/nscore.h 2006-09-04 23:26:15.000000000 -0400
@@ -105,7 +105,7 @@
#define NS_VISIBILITY_HIDDEN
#endif
-#if defined(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) && defined(HAVE_VISIBILITY_PRAGMA)
+#if defined(HAVE_VISIBILITY_ATTRIBUTE)
#define NS_VISIBILITY_DEFAULT __attribute__ ((visibility ("default")))
#else
#define NS_VISIBILITY_DEFAULT
--- mozilla/configure.visibility 2006-09-04 23:26:15.000000000 -0400
+++ mozilla/configure 2006-09-04 23:26:15.000000000 -0400
@@ -5331,9 +5331,9 @@
OS_CONFIG="${OS_TARGET}${OS_RELEASE}"
if test "$GNU_CC"; then
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
- MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
- DSO_LDOPTS='-shared -Wl,-h -Wl,$@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
+ DSO_LDOPTS='-shared'
DSO_CFLAGS=''
DSO_PIC_CFLAGS='-fPIC'
_MOZ_RTTI_FLAGS_ON=${_COMPILER_PREFIX}-frtti
@@ -5357,9 +5357,9 @@
_DEFINES_CFLAGS='-include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT'
_USE_CPP_INCLUDE_FLAG=1
else
- MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
- MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
- DSO_LDOPTS='-shared -h $@'
+ MKSHLIB='$(LD) $(DSO_LDOPTS) -h $@ -o $@'
+ MKCSHLIB='$(LD) $(DSO_LDOPTS) -h $@ -o $@'
+ DSO_LDOPTS='-shared'
DSO_CFLAGS=''
DSO_PIC_CFLAGS='-KPIC'
_DEFINES_CFLAGS='$(ACDEFINES) -D_MOZILLA_CONFIG_H_ -DMOZILLA_CLIENT'
@@ -5703,9 +5703,9 @@
*-beos*)
no_x=yes
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
_PLATFORM_DEFAULT_TOOLKIT="beos"
- DSO_LDOPTS='-nostart -Wl,-h -Wl,$@'
+ DSO_LDOPTS='-nostart'
TK_LIBS='-lbe -lroot'
LIBS="$LIBS -lbe"
if test "$COMPILE_ENVIRONMENT"; then
@@ -5871,16 +5871,16 @@
*-hpux*)
DLL_SUFFIX=".sl"
if test ! "$GNU_CC"; then
- DSO_LDOPTS='-b -Wl,+s -L$(DIST)/bin'
+ DSO_LDOPTS='-b -Wl,+s'
DSO_CFLAGS=""
DSO_PIC_CFLAGS="+Z"
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -L$(DIST)/bin -o $@'
MKCSHLIB='$(LD) -b +s -L$(DIST)/bin -o $@'
CXXFLAGS="$CXXFLAGS -Wc,-ansi_for_scope,on"
else
- DSO_LDOPTS='-b -E +s -L$(DIST)/bin -L$(DIST)/lib'
- MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
- MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
+ DSO_LDOPTS='-b -E +s'
+ MKSHLIB='$(LD) $(DSO_LDOPTS) -L$(DIST)/bin -L$(DIST)/lib -o $@'
+ MKCSHLIB='$(LD) $(DSO_LDOPTS) -L$(DIST)/bin -L$(DIST)/lib -o $@'
fi
MOZ_POST_PROGRAM_COMMAND='chatr +s enable'
cat >> confdefs.h <<\EOF
@@ -5895,11 +5895,16 @@
EOF
DSO_LDOPTS='-elf -shared'
+
if test "$GNU_CC"; then
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
MKSHLIB_FORCE_ALL='-Wl,-all'
MKSHLIB_UNFORCE_ALL='-Wl,-none'
CXXFLAGS="$CXXFLAGS -D_LANGUAGE_C_PLUS_PLUS"
else
+ MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
+ MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
MKSHLIB_FORCE_ALL='-all'
MKSHLIB_UNFORCE_ALL='-none'
fi
@@ -6338,7 +6343,7 @@
if $CC -E - -dM </dev/null | grep __ELF__ >/dev/null; then
DLL_SUFFIX=".so"
DSO_PIC_CFLAGS='-fPIC -DPIC'
- DSO_LDOPTS='-shared -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX)'
+ DSO_LDOPTS='-shared'
BIN_FLAGS='-Wl,--export-dynamic'
else
DSO_PIC_CFLAGS='-fPIC -DPIC'
@@ -6351,6 +6356,8 @@
if test "$LIBRUNPATH"; then
DSO_LDOPTS="-Wl,-R$LIBRUNPATH $DSO_LDOPTS"
fi
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX) -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX) -o $@'
;;
*-nto*)
@@ -6571,17 +6578,19 @@
alpha*-*-osf*)
if test "$GNU_CC"; then
- DSO_LDOPTS='-shared -Wl,-soname -Wl,$@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,$@ -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,$@ -o $@'
+
else
MOZ_DEBUG_FLAGS='-g'
ASFLAGS='-I$(topsrcdir)/xpcom/reflect/xptcall/public -g'
CFLAGS="$CFLAGS -ieee"
CXXFLAGS="$CXXFLAGS "'-noexceptions -ieee -ptr $(DIST)/cxx_repository'
- DSO_LDOPTS='-shared -msym -expect_unresolved \* -soname $@ -update_registry $(DIST)/so_locations'
+ DSO_LDOPTS='-shared -msym -expect_unresolved \* -update_registry $(DIST)/so_locations'
DSO_CFLAGS=
DSO_PIC_CFLAGS=
- MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -soname $@ -o $@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -soname $@ -o $@'
MKSHLIB_FORCE_ALL='-all'
MKSHLIB_UNFORCE_ALL='-none'
cat >> confdefs.h <<\EOF
@@ -6634,7 +6643,7 @@
CXXFLAGS="$CXXFLAGS -I/usr/include/CC"
if test ! "$GNU_CC"; then
- DSO_LDOPTS='-G -h $@'
+ DSO_LDOPTS='-G'
fi
;;
@@ -6655,11 +6664,11 @@
CXXFLAGS="$CXXFLAGS -xbuiltin=%all -features=tmplife"
LDFLAGS="-xildoff -zlazyload -zcombreloc $LDFLAGS"
MOZ_OPTIMIZE_FLAGS="-xO4"
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -o $@'
- MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -Wl,-z -Wl,muldefs -o $@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -h $@ -o $@'
+ KCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -Wl,-z -Wl,muldefs -h $@ -o $@'
MKSHLIB_FORCE_ALL='-Qoption ld -z,allextract'
MKSHLIB_UNFORCE_ALL=''
- DSO_LDOPTS='-G -Qoption ld -z,muldefs -h $@'
+ DSO_LDOPTS='-G -Qoption ld -z,muldefs'
AR_LIST="$AR t"
AR_EXTRACT="$AR x"
AR_DELETE="$AR d"
@@ -6717,7 +6726,7 @@
else
ASFLAGS="$ASFLAGS -fPIC"
- DSO_LDOPTS='-G -h $@'
+ DSO_LDOPTS='-G'
_WARNINGS_CFLAGS=''
_WARNINGS_CXXFLAGS=''
if test "$OS_RELEASE" = "5.3"; then
@@ -7708,13 +7717,39 @@
fi
echo "$ac_t""$ac_cv_visibility_hidden" 1>&6
- if test "$ac_cv_visibility_hidden" = "yes"; then
- cat >> confdefs.h <<\EOF
+ if test "$ac_cv_visibility_hidden" = "yes"; then
+ cat >> confdefs.h <<\EOF
#define HAVE_VISIBILITY_HIDDEN_ATTRIBUTE 1
EOF
+
+ echo $ac_n "checking for visibility(default) attribute""... $ac_c" 1>&6
+echo "configure:7728: checking for visibility(default) attribute" >&5
+if eval "test \"`echo '$''{'ac_cv_visibility_default'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.c <<EOF
+ int foo __attribute__ ((visibility ("default"))) = 1;
+EOF
+ ac_cv_visibility_default=no
+ if ${CC-cc} -fvisibility=hidden -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
+ if ! grep '\.hidden.*foo' conftest.s >/dev/null; then
+ ac_cv_visibility_default=yes
+ fi
+ fi
+ rm -f conftest.cs
+
+fi
+
+echo "$ac_t""$ac_cv_visibility_default" 1>&6
+ if test "$ac_cv_visibility_default" = "yes"; then
+ cat >> confdefs.h <<\EOF
+#define HAVE_VISIBILITY_ATTRIBUTE 1
+EOF
+
+
echo $ac_n "checking for visibility pragma support""... $ac_c" 1>&6
-echo "configure:7710: checking for visibility pragma support" >&5
+echo "configure:7753: checking for visibility pragma support" >&5
if eval "test \"`echo '$''{'ac_cv_visibility_pragma'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -7738,15 +7773,41 @@
echo "$ac_t""$ac_cv_visibility_pragma" 1>&6
if test "$ac_cv_visibility_pragma" = "yes"; then
- cat >> confdefs.h <<\EOF
-#define HAVE_VISIBILITY_PRAGMA 1
+ echo $ac_n "checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)""... $ac_c" 1>&6
+echo "configure:7778: checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)" >&5
+if eval "test \"`echo '$''{'ac_cv_have_visibility_builtin_bug'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.c <<EOF
+#pragma GCC visibility push(hidden)
+#pragma GCC visibility push(default)
+#include <string.h>
+#pragma GCC visibility pop
+
+__attribute__ ((visibility ("default"))) void Func() {
+ char c[100];
+ memset(c, 0, sizeof(c));
+}
EOF
+ ac_cv_have_visibility_builtin_bug=no
+ if ! ${CC-cc} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -o conftest.so conftest.c >/dev/null 2>&1; then
+ ac_cv_have_visibility_builtin_bug=yes
+ fi
+ rm -f conftest.{c,so}
+
+fi
- VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
- WRAP_SYSTEM_INCLUDES=1
- fi
- fi
-fi # GNU_CC
+echo "$ac_t""$ac_cv_have_visibility_builtin_bug" 1>&6
+ if test "$ac_cv_have_visibility_builtin_bug" = "no"; then
+ VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
+ WRAP_SYSTEM_INCLUDES=1
+ else
+ VISIBILITY_FLAGS='-fvisibility=hidden'
+ fi # have visibility pragma bug
+ fi # have visibility pragma
+ fi # have visibility(default) attribute
+ fi # have visibility(hidden) attribute
+fi # GNU_CC
--- mozilla/configure.in.visibility 2006-09-04 23:26:15.000000000 -0400
+++ mozilla/configure.in 2006-09-04 23:26:15.000000000 -0400
@@ -1103,9 +1103,9 @@
dnl GNU specific defaults
dnl ========================================================
if test "$GNU_CC"; then
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
- MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
- DSO_LDOPTS='-shared -Wl,-h -Wl,$@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
+ DSO_LDOPTS='-shared'
DSO_CFLAGS=''
DSO_PIC_CFLAGS='-fPIC'
_MOZ_RTTI_FLAGS_ON=${_COMPILER_PREFIX}-frtti
@@ -1130,9 +1130,9 @@
_DEFINES_CFLAGS='-include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT'
_USE_CPP_INCLUDE_FLAG=1
else
- MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
- MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
- DSO_LDOPTS='-shared -h $@'
+ MKSHLIB='$(LD) $(DSO_LDOPTS) -h $@ -o $@'
+ MKCSHLIB='$(LD) $(DSO_LDOPTS) -h $@ -o $@'
+ DSO_LDOPTS='-shared'
DSO_CFLAGS=''
DSO_PIC_CFLAGS='-KPIC'
_DEFINES_CFLAGS='$(ACDEFINES) -D_MOZILLA_CONFIG_H_ -DMOZILLA_CLIENT'
@@ -1360,9 +1360,9 @@
*-beos*)
no_x=yes
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
_PLATFORM_DEFAULT_TOOLKIT="beos"
- DSO_LDOPTS='-nostart -Wl,-h -Wl,$@'
+ DSO_LDOPTS='-nostart'
TK_LIBS='-lbe -lroot'
LIBS="$LIBS -lbe"
if test "$COMPILE_ENVIRONMENT"; then
@@ -1442,16 +1442,16 @@
*-hpux*)
DLL_SUFFIX=".sl"
if test ! "$GNU_CC"; then
- DSO_LDOPTS='-b -Wl,+s -L$(DIST)/bin'
+ DSO_LDOPTS='-b -Wl,+s'
DSO_CFLAGS=""
DSO_PIC_CFLAGS="+Z"
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -L$(DIST)/bin -o $@'
MKCSHLIB='$(LD) -b +s -L$(DIST)/bin -o $@'
CXXFLAGS="$CXXFLAGS -Wc,-ansi_for_scope,on"
else
- DSO_LDOPTS='-b -E +s -L$(DIST)/bin -L$(DIST)/lib'
- MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
- MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
+ DSO_LDOPTS='-b -E +s'
+ MKSHLIB='$(LD) $(DSO_LDOPTS) -L$(DIST)/bin -L$(DIST)/lib -o $@'
+ MKCSHLIB='$(LD) $(DSO_LDOPTS) -L$(DIST)/bin -L$(DIST)/lib -o $@'
fi
MOZ_POST_PROGRAM_COMMAND='chatr +s enable'
AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
@@ -1460,11 +1460,16 @@
*-irix5*)
AC_DEFINE(IRIX)
DSO_LDOPTS='-elf -shared'
+
if test "$GNU_CC"; then
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
MKSHLIB_FORCE_ALL='-Wl,-all'
MKSHLIB_UNFORCE_ALL='-Wl,-none'
CXXFLAGS="$CXXFLAGS -D_LANGUAGE_C_PLUS_PLUS"
else
+ MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
+ MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
MKSHLIB_FORCE_ALL='-all'
MKSHLIB_UNFORCE_ALL='-none'
fi
@@ -1818,7 +1823,7 @@
if $CC -E - -dM </dev/null | grep __ELF__ >/dev/null; then
DLL_SUFFIX=".so"
DSO_PIC_CFLAGS='-fPIC -DPIC'
- DSO_LDOPTS='-shared -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX)'
+ DSO_LDOPTS='-shared'
BIN_FLAGS='-Wl,--export-dynamic'
else
DSO_PIC_CFLAGS='-fPIC -DPIC'
@@ -1831,6 +1836,8 @@
if test "$LIBRUNPATH"; then
DSO_LDOPTS="-Wl,-R$LIBRUNPATH $DSO_LDOPTS"
fi
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX) -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX) -o $@'
;;
*-nto*)
@@ -1994,17 +2001,19 @@
alpha*-*-osf*)
if test "$GNU_CC"; then
- DSO_LDOPTS='-shared -Wl,-soname -Wl,$@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,$@ -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,$@ -o $@'
+
else
MOZ_DEBUG_FLAGS='-g'
ASFLAGS='-I$(topsrcdir)/xpcom/reflect/xptcall/public -g'
CFLAGS="$CFLAGS -ieee"
CXXFLAGS="$CXXFLAGS "'-noexceptions -ieee -ptr $(DIST)/cxx_repository'
- DSO_LDOPTS='-shared -msym -expect_unresolved \* -soname $@ -update_registry $(DIST)/so_locations'
+ DSO_LDOPTS='-shared -msym -expect_unresolved \* -update_registry $(DIST)/so_locations'
DSO_CFLAGS=
DSO_PIC_CFLAGS=
- MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
+ MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -soname $@ -o $@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -soname $@ -o $@'
MKSHLIB_FORCE_ALL='-all'
MKSHLIB_UNFORCE_ALL='-none'
dnl Might fix the libxpcom.so breakage on this platform as well....
@@ -2036,7 +2045,7 @@
AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
CXXFLAGS="$CXXFLAGS -I/usr/include/CC"
if test ! "$GNU_CC"; then
- DSO_LDOPTS='-G -h $@'
+ DSO_LDOPTS='-G'
fi
;;
@@ -2052,11 +2061,11 @@
CXXFLAGS="$CXXFLAGS -xbuiltin=%all -features=tmplife"
LDFLAGS="-xildoff -zlazyload -zcombreloc $LDFLAGS"
MOZ_OPTIMIZE_FLAGS="-xO4"
- MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -o $@'
- MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -Wl,-z -Wl,muldefs -o $@'
+ MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -h $@ -o $@'
+ KCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -Wl,-z -Wl,muldefs -h $@ -o $@'
MKSHLIB_FORCE_ALL='-Qoption ld -z,allextract'
MKSHLIB_UNFORCE_ALL=''
- DSO_LDOPTS='-G -Qoption ld -z,muldefs -h $@'
+ DSO_LDOPTS='-G -Qoption ld -z,muldefs'
AR_LIST="$AR t"
AR_EXTRACT="$AR x"
AR_DELETE="$AR d"
@@ -2086,7 +2095,7 @@
AC_LANG_RESTORE
else
ASFLAGS="$ASFLAGS -fPIC"
- DSO_LDOPTS='-G -h $@'
+ DSO_LDOPTS='-G'
_WARNINGS_CFLAGS=''
_WARNINGS_CXXFLAGS=''
if test "$OS_RELEASE" = "5.3"; then
@@ -2444,8 +2453,25 @@
fi
rm -f conftest.[cs]
])
- if test "$ac_cv_visibility_hidden" = "yes"; then
- AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE)
+ if test "$ac_cv_visibility_hidden" = "yes"; then
+ AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE)
+
+ AC_CACHE_CHECK(for visibility(default) attribute,
+ ac_cv_visibility_default,
+ [cat > conftest.c <<EOF
+ int foo __attribute__ ((visibility ("default"))) = 1;
+EOF
+ ac_cv_visibility_default=no
+ if ${CC-cc} -fvisibility=hidden -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
+ if ! grep '\.hidden.*foo' conftest.s >/dev/null; then
+ ac_cv_visibility_default=yes
+ fi
+ fi
+ rm -f conftest.[cs]
+ ])
+ if test "$ac_cv_visibility_default" = "yes"; then
+ AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE)
+
AC_CACHE_CHECK(for visibility pragma support,
ac_cv_visibility_pragma,
[cat > conftest.c <<EOF
@@ -2465,12 +2491,35 @@
rm -f conftest.[cs]
])
if test "$ac_cv_visibility_pragma" = "yes"; then
- AC_DEFINE(HAVE_VISIBILITY_PRAGMA)
- VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
- WRAP_SYSTEM_INCLUDES=1
- fi
- fi
-fi # GNU_CC
+ AC_CACHE_CHECK(For x86_64 gcc visibility bug with builtins (GCC bug 20297),
+ ac_cv_have_visibility_builtin_bug,
+ [cat > conftest.c <<EOF
+#pragma GCC visibility push(hidden)
+#pragma GCC visibility push(default)
+#include <string.h>
+#pragma GCC visibility pop
+
+__attribute__ ((visibility ("default"))) void Func() {
+ char c[[100]];
+ memset(c, 0, sizeof(c));
+}
+EOF
+ ac_cv_have_visibility_builtin_bug=no
+ if ! ${CC-cc} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -o conftest.so conftest.c >/dev/null 2>&1; then
+ ac_cv_have_visibility_builtin_bug=yes
+ fi
+ rm -f conftest.{c,so}
+ ])
+ if test "$ac_cv_have_visibility_builtin_bug" = "no"; then
+ VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
+ WRAP_SYSTEM_INCLUDES=1
+ else
+ VISIBILITY_FLAGS='-fvisibility=hidden'
+ fi # have visibility pragma bug
+ fi # have visibility pragma
+ fi # have visibility(default) attribute
+ fi # have visibility(hidden) attribute
+fi # GNU_CC
AC_SUBST(WRAP_SYSTEM_INCLUDES)
AC_SUBST(VISIBILITY_FLAGS)
--- mozilla/js/src/jstypes.h.visibility 2005-09-18 00:35:05.000000000 -0400
+++ mozilla/js/src/jstypes.h 2006-09-04 23:26:15.000000000 -0400
@@ -109,7 +109,7 @@
#else /* Unix */
-#ifdef HAVE_VISIBILITY_PRAGMA
+#ifdef HAVE_VISIBILITY_ATTRIBUTE
#define JS_EXTERNAL_VIS __attribute__((visibility ("default")))
#else
#define JS_EXTERNAL_VIS
--- mozilla/modules/zlib/src/mozzconf.h.visibility 2005-08-04 15:14:14.000000000 -0400
+++ mozilla/modules/zlib/src/mozzconf.h 2006-09-04 23:26:15.000000000 -0400
@@ -41,7 +41,7 @@
#undef ZLIB_DLL
#endif
-#ifdef HAVE_VISIBILITY_PRAGMA
+#ifdef HAVE_VISIBILITY_ATTRIBUTE
#define ZEXTERN __attribute__((visibility ("default"))) extern
#endif
--- mozilla/modules/oji/src/nsJVMManager.cpp.visibility 2005-08-22 10:09:59.000000000 -0400
+++ mozilla/modules/oji/src/nsJVMManager.cpp 2006-09-04 23:26:15.000000000 -0400
@@ -845,7 +845,7 @@
return fStatus;
}
-extern "C" nsresult JSJ_RegisterLiveConnectFactory(void);
+extern "C" NS_VISIBILITY_DEFAULT nsresult JSJ_RegisterLiveConnectFactory(void);
PRBool
nsJVMManager::MaybeStartupLiveConnect(void)
--- mozilla/modules/libreg/include/NSReg.h.visibility 2004-12-15 00:52:38.000000000 -0500
+++ mozilla/modules/libreg/include/NSReg.h 2006-09-04 23:26:15.000000000 -0400
@@ -129,7 +129,7 @@
#endif
#elif defined XP_MAC
#define VR_INTERFACE(__x) __declspec(export) __x
-#elif defined (HAVE_VISIBILITY_PRAGMA)
+#elif defined (HAVE_VISIBILITY_ATTRIBUTE)
#define VR_INTERFACE(type) __attribute__ ((visibility ("default"))) type
#else
#define VR_INTERFACE(type) type
thunderbird-1.5-pango-start.patch:
start.xhtml | 4 ++++
1 files changed, 4 insertions(+)
Index: thunderbird-1.5-pango-start.patch
===================================================================
RCS file: /cvs/dist/rpms/thunderbird/devel/thunderbird-1.5-pango-start.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- thunderbird-1.5-pango-start.patch 13 Mar 2006 16:48:21 -0000 1.1
+++ thunderbird-1.5-pango-start.patch 5 Sep 2006 08:45:49 -0000 1.2
@@ -10,7 +10,7 @@
<p>&startpage.pageInfo; <a href="&startpage.pageURL;">&startpage.page;</a>.</p>
+<p>
-+In order to better support certain scripts (such as Indic and some CJK scripts), Fedora builds its Thunderbird, with permission from the Mozilla Corporation, with the Pango system as its text renderer. This change is known to break rendering of MathML, and may negatively impact performance on some e-mails. To disable the use of Pango, set <tt>MOZ_DISABLE_PANGO=1</tt> in your environment before launching Thunderbird.
++In order to better support certain scripts (such as Indic and some CJK scripts), Fedora builds its Thunderbird, with permission from the Mozilla Corporation, with the Pango system as its text renderer. This may negatively impact performance on some e-mails. To disable the use of Pango, set <tt>MOZ_DISABLE_PANGO=1</tt> in your environment before launching Thunderbird.
+</p>
+
<!-- Localization-specific information, i.e. how to download a dictionary. -->
Index: thunderbird.sh.in
===================================================================
RCS file: /cvs/dist/rpms/thunderbird/devel/thunderbird.sh.in,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- thunderbird.sh.in 10 Mar 2006 07:00:58 -0000 1.5
+++ thunderbird.sh.in 5 Sep 2006 08:45:49 -0000 1.6
@@ -25,16 +25,6 @@
#MOZ_DISABLE_PANGO=1
#export MOZ_DISABLE_PANGO
-# For now, in order to ship with firefox trademarks, we need to default to
-# disable pango on non-indic locales. Use MOZ_ENABLE_PANGO=1 to force pango.
-tmplang=${LC_CTYPE:-${LANG:-"en_US.UTF-8"}}
-if ! echo $tmplang | grep "^..[_-]IN" > /dev/null; then
- if [ -z "$MOZ_ENABLE_PANGO" ]; then
- MOZ_DISABLE_PANGO=1
- export MOZ_DISABLE_PANGO
- fi
-fi
-
function check_running() {
$MOZ_CLIENT_PROGRAM 'ping()' 2>/dev/null >/dev/null
Index: thunderbird.spec
===================================================================
RCS file: /cvs/dist/rpms/thunderbird/devel/thunderbird.spec,v
retrieving revision 1.77
retrieving revision 1.78
diff -u -r1.77 -r1.78
--- thunderbird.spec 3 Aug 2006 18:53:22 -0000 1.77
+++ thunderbird.spec 5 Sep 2006 08:45:49 -0000 1.78
@@ -8,7 +8,7 @@
Summary: Mozilla Thunderbird mail/newsgroup client
Name: thunderbird
Version: 1.5.0.5
-Release: 4
+Release: 5
Epoch: 0
URL: http://www.mozilla.org/projects/thunderbird/
License: MPL
@@ -32,7 +32,7 @@
# Build patches
Patch2: firefox-1.0-prdtoa.patch
Patch4: firefox-1.5-with-system-nss.patch
-Patch5: firefox-1.1-visibility.patch
+Patch5: thunderbird-1.5-visibility.patch
Patch6: firefox-1.1-nss-system-nspr.patch
Patch7: thunderbird-mimeeobj-externalc.patch
@@ -47,7 +47,8 @@
Patch42: firefox-1.1-uriloader.patch
# font system fixes
-Patch81: firefox-nopangoxft.patch
+Patch81: firefox-1.5-nopangoxft.patch
+Patch82: firefox-1.5-pango-mathml.patch
# patches from upstream (Patch100+)
Patch102: thunderbird-1.5-pango-start.patch
@@ -86,13 +87,7 @@
%patch2 -p0
%patch4 -p1
-
-# Pragma visibility is broken on most platforms for some reason.
-# It works on i386 so leave it alone there. Disable elsewhere.
-# See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20297
-%ifnarch i386
-%patch5 -p0
-%endif
+%patch5 -p1 -b .visibility
%patch6 -p1
%patch7 -p1
@@ -119,7 +114,8 @@
export CXXFLAGS="$CFLAGS"
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
-time make -f client.mk build_all
+export LDFLAGS="-Wl,-rpath,%{tbdir}"
+make -f client.mk build
#===============================================================================
@@ -214,6 +210,14 @@
#===============================================================================
%changelog
+* Tue Sep 5 2006 Christopher Aillon <caillon at redhat.com> - 1.5.0.5-5
+- Update nopangoxft.patch
+- Fix rendering of MathML thanks to Behdad Esfahbod.
+- Update start page text to reflect the MathML fixes.
+- Enable pango by default on all locales
+- Build using -rpath
+- Re-enable GCC visibility
+
* Thu Aug 3 2006 Kai Engert <kengert at redhat.com> - 1.5.0.5-4
- Fix a build failure in mailnews mime code.
--- firefox-nopangoxft.patch DELETED ---
More information about the fedora-cvs-commits
mailing list