I've been working the last few weeks on upgrading the OpenSolaris/Nevada
libX11 from the currently shipped 1.1.3 to the just released 1.2.1.

This has included pushing a number of our changes upstream for inclusion
in 1.2.1, though unfortunately, far too many remain as customizations in
our tree and still need to be resolved with upstream in the future, and
we'll continue working on that.  (I've got a couple in the queue already
from our g11n team that I need to send out for upstream review before
pushing upstream, and am sure we'll find more as we review.)

I was hoping to get this in for build nv_113, but have now missed that, so
am slipping to 114 - obviously, *AFTER* 2009.06, since this isn't a stopper
bugfix, thus is too late for integration to that release.

I've posted several formats of diffs, including one just showing the changes
to the compose key mapping files for different locales, and a list of current
errors in the compose files that should be resolved, so even if you're not
a C programmer, if you care what compose sequences work in various locales you
may want to look at that part.

If you have any comments, suggestions, corrections or updates, please let me
know by next Wednesday, so they can be dealt with before the integration.

--- Compose file changes & errors:

Mostly I've tried to resolve conflicts with upstream where the choices were
obvious - incorporating typo fixes and newly added, non-conflicting keys from
upstream, removing changes in our patches that just changed white space or
ordering of lines or symbol comments, and removing the incorrectly added CDDL
headers on a number of files.

Some of our compose files, especially en_US.UTF-8 were just too massively
different from upstream, so I've not changed those.

The compose files, as installed, and diffs vs. those currently installed can
be seen at:
        http://cr.opensolaris.org/~alanc/libX11-1.2.1/compose-installed/

The compose files, in their source format, after our patches are applied,
but before the cpp preprocessing done in the build, and diffs vs. those
currently in our libX11-1.1.3 based Nevada source tree can be seen at:
        http://cr.opensolaris.org/~alanc/libX11-1.2.1/compose-sources/

To help verify these, I wrote a perl script to check them - the script is
posted at:
        http://cr.opensolaris.org/~alanc/libX11-1.2.1/compose-check.pl.txt

It found a number of entries where there are duplications in the compose
files, or compose key sequences where a shorter sequence clashes with a
longer one - that list is posted at:
        http://cr.opensolaris.org/~alanc/libX11-1.2.1/compose-check.out.txt

Those don't have to be resolved for this integration - they've been broken
for a while, but should probably be fixed long term.

--- Other source changes, including other i18n modules/data files:

Source changes mostly involved resyncing our patches against the libX11 1.2.1
upstream source tree.   To make the process manageable, the multimegabyte i18n
patches that patched dozens of files at once, and thus took forever to resync
as you had to update all of those files, were split into smaller patches that
only patched a handful of related files at a time and would be simpler to
upstream one-at-a-time rather than a massive merge of everything at once.

We got to remove a number of patches that we'd pulled from post-1.1.3 upstream
commits back to our 1.1.3 release as they were now upstream, and I took the
opportunity to simplify a couple of patches to reduce the work to keep resyncing
in the future.

A webrev showing all the changes to our master source tree, i.e. diffs to the
patches, is at:
        http://cr.opensolaris.org/~alanc/libX11-1.2.1/nevada-source/

For those not skilled in the reading of multiple levels of diffs, another webrev
showing the diffs between the raw upstream 1.2.1 and our newly patched 1.2.1 is
at:
   http://cr.opensolaris.org/~alanc/libX11-1.2.1/libX11-sources-vs-upstream/

and one showing the diffs between our patched 1.1.3 sources and the newly
patched 1.2.1 sources (i.e. all our changes plus all the upstream changes) is 
at:
        http://cr.opensolaris.org/~alanc/libX11-1.2.1/nevada-unpacked/

-- 
        -Alan Coopersmith-           alan.coopersmith at sun.com
         Sun Microsystems, Inc. - X Window System Engineering


Reply via email to