[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: re-upload kernel-package-1.01



Hi,
>>"Juha" == Juha Heinanen <jh@lohi.dat.tele.fi> writes:

Juha> i had istalled debian beta kernel sources and later noticed that
Juha> /usr/include/linux and /usr/include/asm were real directories
Juha> instead of links to /usr/src/linux.  is that still so?  if so,
Juha> it is very dangerous and should be changed to the standard
Juha> practice.

	This _is_ standard practice for debian (including
/usr/include/linux and /usr/include/asm in libc5-dev).  This has been
discussed at length and the decision reached after a long, drawn out
debate. This is on it;s way to becoming a faq:

-------------------------------------------------------------------
        The headers were included in libc5-dev after a rash of very
 buggy alpha kernel releases (1.3.7* or something like that) that
 proceeded to break compilations, etc.  Kernel versions are changed
 far more rapidly than libc is, and there are higer chances that
 people install a custom kernel than they install custom libc.

        Add to that the fact that few programs really need the more
volatile elements of the header files (that is, things that really
change from kernel version to kernel version), [before you reject
this, consider: programs compiled on one kernel version usually work
on other kernels].

       So, it makes sense that a set of headers be provided from a
known good kernel version, and that is sufficient for compiling most
programs, (it also makes the compile time environments for programs on
debian machines a well known one, easing the process of dealing with
problem reports), the few programs that really depend on cutting edge
kernel data structures may just use -I/usr/src/linux/include (provided
that kernel-headers or kernel-source exists on the system).

        libc5-deb is uploaded frequently enough that it never lags too
far behind the latest released kernel.

	Lets see if I can clarify this.  There are two different
capabilities which are the issue, and the kernel-packages and
libc5-dev address different ones:

a) The kernel packages try to provide a stable, well behaved kernel
   image and modules, and may be upgraded whenever there are
   significant advances in those directions (bug fixes, more/better
   module support, etc).  These, however, may not have include files
   that are non-broken as far as non-kernel programs are concerned,
   and the quality of the development/compilation environment is not
   the kernel packages priority (Also, please note that the kernel
   packages are tied together, so kernel-source, headers, and image
   are produced in sync)

b) Quality of the development/compilation environment is the priority
   of libc5-dev package, and it tries to ensure that the headers it
   provides would be stable and not break non-kernel programs. This
   assertion may fail for alpha kernels, which may otherwise be
   perfectly stable, hence the need for a different set of known-good
   kernel include files.

	In summary, most programs, even if they include
<linux/something.h>, do not really depend on the version of the
kernel, as long as the kernel versions are not too far off, they will
work. And the headers provided in libc5-dev are just that.
-------------------------------------------------------------------

	manoj
--
Manoj Srivastava               Systems Research Programmer, Project Pilgrim,
Phone: (413) 545-3918                A143B Lederle Graduate Research Center,
Fax:   (413) 545-1249         University of Massachusetts, Amherst, MA 01003
<srivasta@pilgrim.umass.edu> <URL:http://www.pilgrim.umass.edu/%7Esrivasta/>

--PAA29181.833485481/diamond.pilgrim.umass.edu--



Reply to: