From: Gordon Matzigkeit <[EMAIL PROTECTED]>
Subject: Re: grub-0.5.90 is released
Date: 02 Mar 1999 00:15:10 -0600

> I use DATA because it is the only way to get grub to install a
> ``miscellaneous file''.  It doesn't violate anything (except maybe
> elegance) to force it to install into libdir.

  I think you are wrong in these points:

1. Grub stage* are architecture-dependent, which violates the automake
policy, that is, DATA should be architecture-independent.

2. pkglib_DATA is not allowed. In the automake manual,

   Such data can be installed in the directories `datadir',
`sysconfdir', `sharedstatedir', `localstatedir', or `pkgdatadir'.

though current automake doesn't check. Why shouldn't DATA be installed
in libdir (or pkglibdir)? The reason is that DATA is
architecture-independent and libdir (pkglibdir) is used for
architecture-dependent files.

3. GRUB stage* are not object files. Will you link other object files
with them to create a program or a library? No! stage* are executables
or architecture-dependent data files.

> I may end up putting them in datadir, once the architecture is wired
> into the filename (something like $(datadir)/grub/i386).  Does that
> sound like a good idea?

  No. The Makefile Conventions says:

`datadir'
     The directory for installing read-only architecture independent
     data files.  This should normally be `/usr/local/share', but write
     it as `$(prefix)/share'.  (If you are using Autoconf, write it as
     `@datadir@'.) As a special exception, see `$(infodir)' and
     `$(includedir)' below.

Therefore, installing them in datadir is obviously strange. In my
opinion, they should be installed in bootdir as they were, because
there is no suitable standard directory for them.

----------------------------------------------------------------------
OKUJI Yoshinori  <[EMAIL PROTECTED]>           ^o-o^
http://duff.kuicr.kyoto-u.ac.jp/~okuji (in English)     m /

Reply via email to