[thunderbird-lightning] Initial import

Orion Poplawski orion at fedoraproject.org
Thu Apr 21 14:50:44 UTC 2011


commit 51e67de2d10ca17e2681112162cdb8faa5eda6c3
Author: Orion Poplawski <orion at cora.nwra.com>
Date:   Thu Apr 21 08:50:34 2011 -0600

    Initial import

 .gitignore                    |    1 +
 find-external-requires        |   23 +++++
 mozilla-build-s390.patch      |   11 +++
 mozilla-jemalloc.patch        |   47 ++++++++++
 mozilla-libjpeg-turbo.patch   |   54 +++++++++++
 mozilla-missing-cflags.patch  |    9 ++
 mozilla-notify.patch          |   12 +++
 sources                       |    1 +
 thunderbird-lightning.spec    |  196 +++++++++++++++++++++++++++++++++++++++++
 thunderbird-mozconfig         |   40 +++++++++
 thunderbird-version.patch     |   12 +++
 xulrunner-1.9.2.1-build.patch |   16 ++++
 xulrunner-2.0-os2cc.patch     |   21 +++++
 13 files changed, 443 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..65383a6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/thunderbird-3.1.9.source.tar.bz2
diff --git a/find-external-requires b/find-external-requires
new file mode 100755
index 0000000..d79db1d
--- /dev/null
+++ b/find-external-requires
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+# Finds requirements provided outside of the current file set
+
+filelist=`sed "s/[]['\"*?{}]/\\\\\&/g"`
+
+provides=`echo $filelist | /usr/lib/rpm/find-provides`
+
+{
+for f in $filelist ; do
+	echo $f | /usr/lib/rpm/find-requires | while read req ; do
+		found=0
+		for p in $provides ; do
+			if [ "$req" = "$p" ]; then
+				found=1
+			fi
+		done
+		if [ "$found" = "0" ]; then
+			echo $req
+		fi
+	done
+done
+} | sort -u
\ No newline at end of file
diff --git a/mozilla-build-s390.patch b/mozilla-build-s390.patch
new file mode 100644
index 0000000..2bfe1d5
--- /dev/null
+++ b/mozilla-build-s390.patch
@@ -0,0 +1,11 @@
+diff -up mozilla-1.9.2/js/src/jstl.h.s390 mozilla-1.9.2/js/src/jstl.h
+--- mozilla-1.9.2/js/src/jstl.h.s390	2011-02-18 19:33:24.000000000 +0100
++++ mozilla-1.9.2/js/src/jstl.h	2011-03-07 08:41:29.000000000 +0100
+@@ -195,7 +195,6 @@ class ReentrancyGuard
+ JS_ALWAYS_INLINE size_t
+ RoundUpPow2(size_t x)
+ {
+-    typedef tl::StaticAssert<tl::IsSameType<size_t,JSUword>::result>::result _;
+     size_t log2 = JS_CEILING_LOG2W(x);
+     JS_ASSERT(log2 < tl::BitSize<size_t>::result);
+     size_t result = size_t(1) << log2;
diff --git a/mozilla-jemalloc.patch b/mozilla-jemalloc.patch
new file mode 100644
index 0000000..ed255c0
--- /dev/null
+++ b/mozilla-jemalloc.patch
@@ -0,0 +1,47 @@
+# HG changeset patch
+# User Takanori MATSUURA <t.matsuu at gmail.com>
+# Date 1267955626 -3600
+# Node ID 7a2802932585e73f9fc817497b1d323f820d8fc9
+# Parent  c2630edd612be6e301616c5219327560ea3955f5
+Bug 526389 - Skip redefinition of memory allocation functions for MacOS X and Linux. r=jasone
+
+diff --git mozilla/memory/jemalloc/jemalloc.h mozilla/memory/jemalloc/jemalloc.h
+--- mozilla/memory/jemalloc/jemalloc.h
++++ mozilla/memory/jemalloc/jemalloc.h
+@@ -74,26 +74,31 @@ typedef struct {
+ 	 * Current memory usage statistics.
+ 	 */
+ 	size_t	mapped;		/* Bytes mapped (not necessarily committed). */
+ 	size_t	committed;	/* Bytes committed (readable/writable). */
+ 	size_t	allocated;	/* Bytes allocted (in use by application). */
+ 	size_t	dirty;		/* Bytes dirty (committed unused pages). */
+ } jemalloc_stats_t;
+ 
+-#ifndef MOZ_MEMORY_DARWIN
++/* Darwin and Linux already have memory allocation functions */
++#if (!defined(MOZ_MEMORY_DARWIN) && !defined(MOZ_MEMORY_LINUX))
+ void	*malloc(size_t size);
+ void	*valloc(size_t size);
+ void	*calloc(size_t num, size_t size);
+ void	*realloc(void *ptr, size_t size);
+ void	free(void *ptr);
+-#endif
++int	posix_memalign(void **memptr, size_t alignment, size_t size);
++#endif /* MOZ_MEMORY_DARWIN, MOZ_MEMORY_LINUX */
+ 
+-int	posix_memalign(void **memptr, size_t alignment, size_t size);
++/* Linux has memalign */
++#if !defined(MOZ_MEMORY_LINUX)
+ void	*memalign(size_t alignment, size_t size);
++#endif /* MOZ_MEMORY_LINUX */
++
+ size_t	malloc_usable_size(const void *ptr);
+ void	jemalloc_stats(jemalloc_stats_t *stats);
+ 
+ #ifdef __cplusplus
+ } /* extern "C" */
+ #endif
+ 
+ #endif /* _JEMALLOC_H_ */
+
+
diff --git a/mozilla-libjpeg-turbo.patch b/mozilla-libjpeg-turbo.patch
new file mode 100644
index 0000000..43783de
--- /dev/null
+++ b/mozilla-libjpeg-turbo.patch
@@ -0,0 +1,54 @@
+diff -up xulrunner-1.9.2.7/mozilla-1.9.2/modules/libpr0n/decoders/jpeg/nsJPEGDecoder.cpp.old xulrunner-1.9.2.7/mozilla-1.9.2/modules/libpr0n/decoders/jpeg/nsJPEGDecoder.cpp
+--- xulrunner-1.9.2.7/mozilla/modules/libpr0n/decoders/jpeg/nsJPEGDecoder.cpp.old	2010-07-13 21:10:28.000000000 +0200
++++ xulrunner-1.9.2.7/mozilla/modules/libpr0n/decoders/jpeg/nsJPEGDecoder.cpp	2010-07-22 12:33:21.000000000 +0200
+@@ -57,19 +57,6 @@
+ 
+ extern "C" {
+ #include "iccjpeg.h"
+-
+-/* Colorspace conversion (copied from jpegint.h) */
+-struct jpeg_color_deconverter {
+-  JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
+-  JMETHOD(void, color_convert, (j_decompress_ptr cinfo,
+-				JSAMPIMAGE input_buf, JDIMENSION input_row,
+-				JSAMPARRAY output_buf, int num_rows));
+-};
+-
+-METHODDEF(void)
+-ycc_rgb_convert_argb (j_decompress_ptr cinfo,
+-                 JSAMPIMAGE input_buf, JDIMENSION input_row,
+-                 JSAMPARRAY output_buf, int num_rows);
+ }
+ 
+ NS_IMPL_ISUPPORTS1(nsJPEGDecoder, imgIDecoder)
+@@ -514,14 +501,6 @@ nsresult nsJPEGDecoder::ProcessData(cons
+       return NS_OK; /* I/O suspension */
+     }
+ 
+-    /* Force to use our YCbCr to Packed RGB converter when possible */
+-    if (!mTransform && (gfxPlatform::GetCMSMode() == eCMSMode_Off) &&
+-        mInfo.jpeg_color_space == JCS_YCbCr && mInfo.out_color_space == JCS_RGB) {
+-      /* Special case for the most common case: transform from YCbCr direct into packed ARGB */
+-      mInfo.out_color_components = 4; /* Packed ARGB pixels are always 4 bytes...*/
+-      mInfo.cconvert->color_convert = ycc_rgb_convert_argb;
+-    }
+-
+     /* If this is a progressive JPEG ... */
+     mState = mInfo.buffered_image ? JPEG_DECOMPRESS_PROGRESSIVE : JPEG_DECOMPRESS_SEQUENTIAL;
+   }
+@@ -678,15 +657,6 @@ nsJPEGDecoder::OutputScanlines(PRBool* s
+       PRUint32 *imageRow = ((PRUint32*)mImageData) +
+                            (mInfo.output_scanline * mInfo.output_width);
+ 
+-      if (mInfo.cconvert->color_convert == ycc_rgb_convert_argb) {
+-        /* Special case: scanline will be directly converted into packed ARGB */
+-        if (jpeg_read_scanlines(&mInfo, (JSAMPARRAY)&imageRow, 1) != 1) {
+-          *suspend = PR_TRUE; /* suspend */
+-          break;
+-        }
+-        continue; /* all done for this row! */
+-      }
+-
+       JSAMPROW sampleRow = (JSAMPROW)imageRow;
+       if (mInfo.output_components == 3) {
+         /* Put the pixels at end of row to enable in-place expansion */
diff --git a/mozilla-missing-cflags.patch b/mozilla-missing-cflags.patch
new file mode 100644
index 0000000..fcef959
--- /dev/null
+++ b/mozilla-missing-cflags.patch
@@ -0,0 +1,9 @@
+diff -up comm-1.9.2/mozilla/toolkit/system/gnome/Makefile.in.mozcflags comm-1.9.2/mozilla/toolkit/system/gnome/Makefile.in
+--- comm-1.9.2/mozilla/toolkit/system/gnome/Makefile.in.mozcflags	2010-07-26 12:52:38.000000000 +0200
++++ comm-1.9.2/mozilla/toolkit/system/gnome/Makefile.in	2010-07-26 12:39:34.000000000 +0200
+@@ -93,4 +93,5 @@ CXXFLAGS += \
+ 	$(MOZ_GNOMEVFS_CFLAGS) \
+ 	$(GLIB_CFLAGS) \
+ 	$(MOZ_LIBNOTIFY_CFLAGS) \
++	$(MOZ_GTK2_CFLAGS) \
+ 	$(NULL)
diff --git a/mozilla-notify.patch b/mozilla-notify.patch
new file mode 100644
index 0000000..952567b
--- /dev/null
+++ b/mozilla-notify.patch
@@ -0,0 +1,12 @@
+diff -up comm-1.9.2/mozilla/toolkit/system/gnome/nsAlertsIconListener.cpp.libnotify comm-1.9.2/mozilla/toolkit/system/gnome/nsAlertsIconListener.cpp
+--- comm-1.9.2/mozilla/toolkit/system/gnome/nsAlertsIconListener.cpp.libnotify	2010-10-27 09:05:36.000000000 +0200
++++ comm-1.9.2/mozilla/toolkit/system/gnome/nsAlertsIconListener.cpp	2010-11-08 13:28:04.564002379 +0100
+@@ -204,7 +204,7 @@ nsAlertsIconListener::ShowAlert(GdkPixbu
+ {
+   NotifyNotification* notify = notify_notification_new(mAlertTitle.get(),
+                                                        mAlertText.get(),
+-                                                       NULL, NULL);
++                                                       NULL);
+   if (!notify)
+     return NS_ERROR_OUT_OF_MEMORY;
+ 
diff --git a/sources b/sources
index e69de29..c8728d6 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+e6917c419d3aaa8083a1d4b53fb80d8c  thunderbird-3.1.9.source.tar.bz2
diff --git a/thunderbird-lightning.spec b/thunderbird-lightning.spec
new file mode 100644
index 0000000..1d6c030
--- /dev/null
+++ b/thunderbird-lightning.spec
@@ -0,0 +1,196 @@
+%global nspr_version 4.8
+%global nss_version 3.12.8
+%global cairo_version 1.8.8
+%global freetype_version 2.1.9
+%global sqlite_version 3.6.14
+%global libnotify_version 0.4
+%global thunderbird_version 3.1.9
+%global moz_objdir objdir-tb
+%global thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\}
+%global lightning_release 0.39.b3pre
+%global lightning_extname %{_libdir}/mozilla/extensions/{3550f703-e582-4d05-9a08-453d09bdfdc6}/{e2fda1a4-762b-4020-b5ad-a41df1933103}
+%global gdata_extname %{_libdir}/mozilla/extensions/{3550f703-e582-4d05-9a08-453d09bdfdc6}/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}
+
+# The tarball is pretty inconsistent with directory structure.
+# Sometimes there is a top level directory.  That goes here.
+#
+# IMPORTANT: If there is no top level directory, this should be
+# set to the cwd, ie: '.'
+#define tarballdir .
+%global tarballdir comm-1.9.2
+
+%global version_internal  3.1
+%global mozappdir         %{_libdir}/%{name}-%{version_internal}
+
+Name:           thunderbird-lightning
+Summary:        The calendar extension to Thunderbird
+Version:        1.0
+Release:        0.41.b3pre%{?dist}
+URL:            http://www.mozilla.org/projects/calendar/lightning/
+License:        MPLv1.1 or GPLv2+ or LGPLv2+
+Group:          Applications/Productivity
+#Someday lightning will produce a release we can use
+#Source0:        http://releases.mozilla.org/pub/mozilla.org/calendar/lightning/releases/1.0b2rc3/source/lightning-1.0b2.source.tar.bz2
+Source0:        http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/%{thunderbird_version}/source/thunderbird-%{thunderbird_version}.source.tar.bz2
+# Config file for compilation
+Source10:       thunderbird-mozconfig
+# Finds requirements provided outside of the current file set
+Source100:      find-external-requires
+
+# Mozilla (XULRunner) patches
+Patch0:         thunderbird-version.patch
+Patch2:         mozilla-jemalloc.patch
+Patch3:         xulrunner-1.9.2.1-build.patch
+Patch4:         mozilla-libjpeg-turbo.patch
+Patch5:         mozilla-missing-cflags.patch
+Patch6:         mozilla-build-s390.patch
+Patch8:         mozilla-notify.patch
+Patch9:         xulrunner-2.0-os2cc.patch
+
+BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+BuildRequires:  nspr-devel >= %{nspr_version}
+BuildRequires:  nss-devel >= %{nss_version}
+BuildRequires:  cairo-devel >= %{cairo_version}
+BuildRequires:  libnotify-devel >= %{libnotify_version}
+BuildRequires:  libpng-devel
+BuildRequires:  libjpeg-devel
+BuildRequires:  zip
+BuildRequires:  bzip2-devel
+BuildRequires:  zlib-devel
+BuildRequires:  libIDL-devel
+BuildRequires:  gtk2-devel
+BuildRequires:  gnome-vfs2-devel
+BuildRequires:  libgnome-devel
+BuildRequires:  libgnomeui-devel
+BuildRequires:  krb5-devel
+BuildRequires:  pango-devel
+BuildRequires:  freetype-devel >= %{freetype_version}
+BuildRequires:  libXt-devel
+BuildRequires:  libXrender-devel
+BuildRequires:  hunspell-devel
+BuildRequires:  sqlite-devel >= %{sqlite_version}
+BuildRequires:  startup-notification-devel
+BuildRequires:  alsa-lib-devel
+BuildRequires:  autoconf213
+BuildRequires:  desktop-file-utils
+BuildRequires:  libcurl-devel
+Requires:       thunderbird >= %{thunderbird_version}
+Obsoletes:      thunderbird-lightning-wcap <= 0.8
+Provides:       thunderbird-lightning-wcap = %{version}-%{release}
+AutoProv: 0
+%global _use_internal_dependency_generator 0
+%global __find_requires %{SOURCE100}
+
+
+%description
+Lightning brings the Sunbird calendar to the popular email client,
+Mozilla Thunderbird. Since it's an extension, Lightning is tightly
+integrated with Thunderbird, allowing it to easily perform email-related
+calendaring tasks.
+
+
+%prep
+%setup -q -c
+cd %{tarballdir}
+
+sed -e 's/__RPM_VERSION_INTERNAL__/%{version_internal}/' %{P:%%PATCH0} \
+    > version.patch
+%{__patch} -p1 -b --suffix .version --fuzz=0 < version.patch
+
+# Mozilla (XULRunner) patches
+cd mozilla
+%patch2 -p1 -b .jemalloc
+%patch3 -p2 -b .protected
+%patch4 -p2 -b .turbo
+%patch5 -p2 -b .mozcflags
+%patch6 -p1 -b .s390
+%patch8 -p2 -b .libnotify
+%patch9 -p1 -b .os2cc
+cd ..
+
+%{__rm} -f .mozconfig
+%{__cp} %{SOURCE10} .mozconfig
+
+# Fix permissions
+find -name \*.js | xargs chmod -x
+
+#===============================================================================
+
+%build
+cd %{tarballdir}
+
+INTERNAL_GECKO=%{version_internal}
+MOZ_APP_DIR=%{mozappdir}
+
+# -fpermissive is needed to build with gcc 4.6+ which has become stricter
+#
+# Mozilla builds with -Wall with exception of a few warnings which show up
+# everywhere in the code; so, don't override that.
+#
+# Disable C++ exceptions since Mozilla code is not exception-safe
+# 
+MOZ_OPT_FLAGS=$(echo "$RPM_OPT_FLAGS -fpermissive" | \
+                      %{__sed} -e 's/-Wall//' -e 's/-fexceptions/-fno-exceptions/g')
+export CFLAGS=$MOZ_OPT_FLAGS
+export CXXFLAGS=$MOZ_OPT_FLAGS
+
+export PREFIX='%{_prefix}'
+export LIBDIR='%{_libdir}'
+
+%global moz_make_flags -j1
+%ifarch ppc ppc64 s390 s390x
+%global moz_make_flags -j1
+%else
+%global moz_make_flags %{?_smp_mflags}
+%endif
+
+export LDFLAGS="-Wl,-rpath,%{mozappdir}"
+export MAKE="gmake %{moz_make_flags}"
+make -f client.mk build STRIP=/bin/true
+
+#===============================================================================
+
+%install
+rm -rf $RPM_BUILD_ROOT
+cd %{tarballdir}
+
+# Avoid "Chrome Registration Failed" message on first startup and extension installation
+mkdir -p $RPM_BUILD_ROOT%{lightning_extname}
+touch $RPM_BUILD_ROOT%{lightning_extname}/chrome.manifest
+mkdir -p $RPM_BUILD_ROOT%{gdata_extname}
+touch $RPM_BUILD_ROOT%{gdata_extname}/chrome.manifest
+
+# Lightning and GData provider for it
+unzip -qod $RPM_BUILD_ROOT%{lightning_extname} objdir-tb/mozilla/dist/xpi-stage/lightning.xpi
+unzip -qod $RPM_BUILD_ROOT%{gdata_extname} objdir-tb/mozilla/dist/xpi-stage/gdata-provider.xpi
+
+# Fix up permissions
+find $RPM_BUILD_ROOT -name \*.so | xargs chmod 0755
+
+#===============================================================================
+
+%clean
+%{__rm} -rf $RPM_BUILD_ROOT
+
+#===============================================================================
+
+%files
+%defattr(-,root,root,-)
+%doc %{tarballdir}/mozilla/LEGAL %{tarballdir}/mozilla/LICENSE %{tarballdir}/mozilla/README.txt
+%{lightning_extname}
+%{gdata_extname}
+
+#===============================================================================
+
+%changelog
+* Mon Apr 11 2011 Orion Poplawski <orion at cora.nwra.com> 1.0-0.41.b3pre
+- Fix debuginfo builds
+- Remove official branding sections
+- Don't unpack the .xpi
+
+* Wed Apr 6 2011 Orion Poplawski <orion at cora.nwra.com> 1.0-0.40.b3pre
+- Fixup some file permissions
+- Minor review cleanups
+
+* Mon Apr 4 2011 Orion Poplawski <orion at cora.nwra.com> 1.0-0.39.b3pre
+- Initial packaging, based on thunderbird 3.1.9
diff --git a/thunderbird-mozconfig b/thunderbird-mozconfig
new file mode 100644
index 0000000..d88a1c2
--- /dev/null
+++ b/thunderbird-mozconfig
@@ -0,0 +1,40 @@
+mk_add_options MOZ_CO_PROJECT=mail
+ac_add_options --enable-application=mail
+mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-tb/
+mk_add_options AUTOCONF=autoconf-2.13
+
+#ac_add_options --with-system-png
+
+ac_add_options --prefix="$PREFIX"
+ac_add_options --libdir="$LIBDIR"
+ac_add_options --with-system-nspr
+ac_add_options --with-system-nss
+ac_add_options --with-system-jpeg
+ac_add_options --with-system-zlib
+ac_add_options --with-pthreads
+ac_add_options --enable-calendar
+ac_add_options --disable-tests
+ac_add_options --disable-debug
+ac_add_options --disable-installer
+ac_add_options --enable-optimize
+ac_add_options --enable-xinerama
+ac_add_options --enable-default-toolkit=cairo-gtk2
+ac_add_options --disable-xprint
+ac_add_options --disable-strip
+ac_add_options --disable-install-strip
+ac_add_options --enable-pango
+ac_add_options --enable-system-cairo
+ac_add_options --enable-svg
+ac_add_options --enable-canvas
+ac_add_options --enable-system-hunspell
+ac_add_options --disable-crashreporter
+ac_add_options --disable-necko-wifi
+ac_add_options --disable-updater
+ac_add_options --enable-static
+ac_add_options --enable-static-mail
+
+export BUILD_OFFICIAL=1
+export MOZILLA_OFFICIAL=1
+mk_add_options BUILD_OFFICIAL=1
+mk_add_options MOZILLA_OFFICIAL=1
+
diff --git a/thunderbird-version.patch b/thunderbird-version.patch
new file mode 100644
index 0000000..fa3096f
--- /dev/null
+++ b/thunderbird-version.patch
@@ -0,0 +1,12 @@
+diff -up comm-1.9.2/mail/installer/Makefile.in.version comm-1.9.2/mail/installer/Makefile.in
+--- comm-1.9.2/mail/installer/Makefile.in.version	2010-05-21 11:42:45.000000000 -0700
++++ comm-1.9.2/mail/installer/Makefile.in	2010-05-25 15:16:18.446197181 -0700
+@@ -44,6 +44,8 @@ include $(DEPTH)/config/autoconf.mk
+ 
+ include $(topsrcdir)/config/rules.mk
+ 
++MOZ_APP_VERSION="__RPM_VERSION_INTERNAL__"
++
+ MOZ_PKG_REMOVALS = $(srcdir)/removed-files.in
+ 
+ MOZ_PKG_MANIFEST_P = $(srcdir)/package-manifest.in
diff --git a/xulrunner-1.9.2.1-build.patch b/xulrunner-1.9.2.1-build.patch
new file mode 100644
index 0000000..1d32a0c
--- /dev/null
+++ b/xulrunner-1.9.2.1-build.patch
@@ -0,0 +1,16 @@
+XXX FIXME
+GCC complains that nsFrame::delete is protected
+..but this really needs to get solved a better way...
+
+diff -up xulrunner-1.9.2.1/mozilla-1.9.2/layout/generic/nsFrame.h.old xulrunner-1.9.2.1/mozilla-1.9.2/layout/generic/nsFrame.h
+--- xulrunner-1.9.2.1/mozilla/layout/generic/nsFrame.h.old	2009-11-11 15:34:51.000000000 +0100
++++ xulrunner-1.9.2.1/mozilla/layout/generic/nsFrame.h	2009-11-11 15:33:09.000000000 +0100
+@@ -157,7 +157,7 @@ private:
+   // Left undefined; nsFrame objects are never allocated from the heap.
+   void* operator new(size_t sz) CPP_THROW_NEW;
+ 
+-protected:
++public:
+   // Overridden to prevent the global delete from being called, since
+   // the memory came out of an arena instead of the heap.
+   //
diff --git a/xulrunner-2.0-os2cc.patch b/xulrunner-2.0-os2cc.patch
new file mode 100644
index 0000000..3aa5286
--- /dev/null
+++ b/xulrunner-2.0-os2cc.patch
@@ -0,0 +1,21 @@
+https://bugzilla.mozilla.org/show_bug.cgi?id=628252
+
+diff -r b5ee327bf536 gfx/ots/src/os2.cc
+--- a/gfx/ots/src/os2.cc	Fri Jan 28 19:59:59 2011 +0100
++++ b/gfx/ots/src/os2.cc	Sat Jan 29 10:56:30 2011 -0800
+@@ -1,12 +1,14 @@
+ // Copyright (c) 2009 The Chromium Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+ 
++#include <cstddef>
++
+ #include "os2.h"
+ 
+ #include "head.h"
+ 
+ // OS/2 - OS/2 and Windows Metrics
+ // http://www.microsoft.com/opentype/otspec/os2.htm
+ 
+ namespace ots {
+


More information about the scm-commits mailing list