Re: Installing Arusha on a new site (long, but dull)

Will Partain <[email protected]> Thu, 26 Sep 2002 13:50:24 +0100
Newsgroups gmane.comp.sysutils.ark.devel
Message-ID <[email protected]>
[moved from ark-users]

Joel Shprentz writes:

> I notice that sidai/ALL.xml defines a process dependent on
> Arusha-installed versions of gzip, tar, gcc, and md5sum
> (from textutils).  I had better install those first.
> Let's see ... gcc needs texinfo, texinfo needs tar, tar
> needs gcc.  Uh oh!

Joel, thanks for all this!

A problem I have on this booting stuff is no spare machines,
and with my existing boxes having been ARKified years ago.
Are you going to be able to do "virgin installs" for a few
days longer (i.e. after I get some patches in)?

As you see above, (the design of) the booting stuff is a
mess, and unfriendly dependencies creep in over time (as has
happened here).

Here's a proposed solution -- you guys yell, OK?  I will use
the C compiler (host field <CC>) as an example.

* A team would defined both <CC-BOOT> (where it had a C
compiler way back when at BOOT time) and <CC> (where it has
a C compiler normally, but maybe not yet).

* Neither (especially <CC>) would have any <dependency>
defined (as they do now)  -- these only fire for
--use-deps=max, which is rarely used anyway.

* Package methods such as Sidai's ALL:<compile> would then
sort things out for themselves, e.g.

  <compile>
    <param name="cc">@proxy-host:CC@</param>
    <param name="ccboot">@proxy-host:CC-BOOT@</param>
    <param name="cxx">@proxy-host:CXX@</param>
    <param name="cxxboot">@proxy-host:CXX-BOOT@</param>
    ...
    <code once-per="hosts-supported" pretendable="yes"><![CDATA[
  cd $PKG_BUILD_DIR/$PKG_PROTO_HOST/$in_dir

  if [ ! -x "$cc" ] ; then
      if [ -x "$ccboot" ] ; then
          cc="$ccboot"
          cflags="$cflagsboot"
      else
          echo 'what, no C compiler (checked $cc and $ccboot)?' 2>&1 
          exit 1
      fi
  fi
  ... rest as before ...
  ]]></code></compile>

* Yes, it's turgid (but straightforward).  Special pleading
  could then be removed from all individual packages.

* Rinse, lather, repeat for other -BOOT fields.

You like?

Will


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf