lkml.org 
[lkml]   [2009]   [Jan]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: PATCH [0/3]: Simplify the kernel build by removing perl.
    Date
    On Saturday 03 January 2009 18:37:12 Leon Woestenberg wrote:
    > Hello,
    >
    > On Sun, Jan 4, 2009 at 12:03 AM, H. Peter Anvin <hpa@zytor.com> wrote:
    > >> Dependencies very quickly become dependency hell. If A requires B,
    > >> then A also inherits all (future) requirements of B, etc. etc.
    > >>
    > >> In my daily software development work with Linux and GNU software in
    > >> general, 10% of it is spent fighting/removing these extremely "thin"
    > >> or false depencies, so that it is usuable in embedded devices.
    > >
    > > First of all, I largely consider this a joke. All real-life embedded
    > > kernel builds take place on hosted platforms; anything else seems to be
    > > done "just because it can be done", as a kind of show-off art project.
    > > Cute, but hardly worth impeding the rest of the kernel community for.
    >
    > Let me explain why it is not a joke for me, although yes I agree it's
    > a funny way of how software engineering works.
    >
    > My argument on thin dependencies indeed mostly holds for run-time
    > dependencies (to reduce size) but also for build dependency (to reduce
    > complexity)*.

    I usually just point to the gnucash 1.6 release as where this sort of thing
    leads if you ignore it long enough:
    http://lwn.net/2001/0614/

    These days, a more modern example is the way that after even the gentoo folks
    gave up on trying to build openoffice (and shipped prebuilt binaries of it in
    their "build everything from source code" OS), Open Office's own developers
    described that project "profoundly sick" and "stagnating" (
    http://developers.slashdot.org/article.pl?sid=08/12/28/0124230 ).

    Neither project _started_ with an inbred development community that presented
    a brick wall to new developers. Complexity grew because they didn't fight
    against it, and because they didn't have good rules by which they could say
    "no" to any.

    Environmental dependencies in your build environment are a cost, and as with
    all costs it's ok if you get enough in return for it. The Linux kernel has
    historically been extremely lean in this regard, and discarding that strength
    should at the very least come with commensurate concrete benefits.

    Rob


    \
     
     \ /
      Last update: 2009-01-04 03:57    [W:0.033 / U:0.136 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site