Matthew Burgess wrote:
Hi folks.

A recent article on lwn.net discussing LFS (http://lwn.net/Articles/192904/) attracted the following comment:

"...it's worrying the number of little patches that the LFS instructions say need applying to the upstream source: why aren't they included upstream already?"

As a result, I've put the following web page together which details the upstream progress of each of the 35 patches currently being applied during a trunk build: http://www.linuxfromscratch.org/~matthew/lfs-patch-status.html. The good news is that 15 patches are backports of fixes already made upstream and can therefore be dropped once upstream release a new version. A further 3 patches are specific to LFS' build method so don't need to go upstream. Unfortunately, that leaves the bad news that we're currently using 17 patches that either upstream aren't aware of, or they have rejected.

I'll work on getting those sent upstream, but in the mean time, if anyone could check over the details on that page and inform me of any errors or omissions I'll gladly update it.

Coreutils Internationalization Fixes - Fixes various bugs with multibyte character support - The patch header says this was rejected upstream, but planned for 6.0 - Investigate current support in coreutils CVS head. If necessary, file bug reports concerning specific problems

No, no action required. Such big patches should be treated as "switching to a fork", not as regular patches. Coreutils upstream is already aware of the patch and the problems it fixes, and validly rejected it as badly coded. The patch is absolutely necessary for passing the Li18nux2000 part of LSB testsuite (FIXME: LFS doesn't pass it now), so it is present in all major distros, so in fact patched coreutils are tested better in the real world than unpatched. However, it is also an example where gearing the build process towards passing the testsuite is at least questionable. The testsuite is skewed, because tests very similar to those in LSB fail. Debian doesn't have this patch.

Another big problem with such big patches is that they often prevent upgrading package versions. E.g., the UTF-8 LFS book (before it got merged) once contained a warning that i18n patch is not available for coreutils-5.93, and contained a lot of backports for other bugfixes.

Diffutils i18n - Fixes handling of whitespace in multibyte locales - Unknown - Submit upstream, assuming its still being maintained!

Same situation as with coreutils, except that the patch is stable and doesn't evolve. Upstream is aware of the patch for at least 4 years.

Grep Redhat Fixes - Various fixes from Redhat's Grep package including i18n related fixes. - Some of these are upstream, others aren't. - Reassess the patches that are still required against Grep CVS Head and submit any unapplied ones upstream

No action required. We follow RedHat's version of Grep. If upstream releases a new version, we wait for RedHat action and import their new patch. They have already submitted their fixes upstream.

Groff Debian Fixes - Adds the ascii8 and nippon devices to groff, which are required for man-db. - I can only assume this hasn't been submitted upstream as Groff-1.19 was released without it having been applied. - We could fix `man' so that it can handle i18n man-pages so that we don't need man-db and therefore, presumably, this patch. Or we could submit this patch upstream.

Rejected as a bad hack. Upstream now has Unicode-aware Groff in CVS, using a completely different approach. Thus, the patch is obsolete, but must stay in LFS (and groff must not be upgraded in LFS) until a compatible version of Man appears.

In fact, the current version of Man can be made compatible with Groff CVS, but this means either a very long "Man configuration" page in LFS (that's why I switched to Man-DB), or recoding all manual pages to UTF-8 (impossible task for BLFS, judging from Randy's refusal to perform even an audit of the current state in http://wiki.linuxfromscratch.org/blfs/ticket/2102). Note that the Man-DB is compatible _only_ with Debian-patched Groff-1.18.1.1, not any later version.

Kbd Backspace - Makes Backspace and Delete keys consistent in all i386 keymaps - Not submitted because it's possibly incomplete - Submit upstream. Complete or otherwise, it's better than nothing and I don't think we've had any reports of broken keymaps for a while as the patch hasn't been updated recently.

Will do so.

Kbd GCC-4.x Fixes - Fixes compilation issues with GCC-4.x due to C aliasing rules - Unknown - Submit upstream.

Will do so.

Linux UTF-8 Input - Fixes dead keys and copy/paste of non-ASCII characters in UTF-8 mode on Linux console - Rejected upstream because it changes the meaning of an existing ioctl - Drop the patch and replace it with one that looks more likely to be accepted upstream.

Impossible without a full rewrite of the "kbd" package. This patch is still better than nothing in terms of functionality for former ISO-8859-2 users. A version applicable to 2.6.17 has been submitted, but no got reply, either positive or negative. I will try again.

Sysklogd 8-bit cleanliness - Allows meaningful Russian messages in UTF-8 to be logged - Not submitted as it is deemed unlikely it'll be accepted - Submit it upstream anyway, just in case. If it gets rejected, then submit a bug report upstream detailing the problem

Upstream is Debian. I will submit a bug report today.

Texinfo Multibyte - Works around info's inability to wrap output from `man' in multibyte locales - Not submitted, it's a hack - Find a non-hackish solution and/or report the bug upstream

A non-hackish solution requires full rewrite of character handling. Way beyond my abilities. Will submit a bug report, though.

Vim Mandir Adjusts location of man pages to meet man-db's expectations Not submitted, N/A LFS-specific, apparently. I think the first hunk should go upstream, as it fixes non-compliance with the FHS. Other than that, maybe we can drop this if/when LFS uses `man' rather than `man-db' again.

This is not LFS-specific. No known version of any Man-like program searches in the /usr/share/man/ru.KOI8-R directory.

--
Alexander E. Patrakov
--
http://linuxfromscratch.org/mailman/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to