I just spent some time bootstrapping OpenPKG Release 2.2 on a Cobalt RAQ4
system.  This required some minor hacking, largely due to the fact that
shtool is more than the /bin/sh on that system can handle.

The initial failure occurs when shtool is used to see if required files
such as gtar are available.

My solution was to extract the tarball for the current version of bash from
the bash-3.0.13-2.2.2.src.rpm, building it to install under /usr/local/bin,
linking bash to sh in that directory, then putting /usr/local/bin in $PATH
before /bin.  This worked until the bootstrap got to the uuid package where
it failed with libtool version calls using ./shtool.  Initially I thought
the problem was with libtool and the auto* tools so I built m4, libtool,
autoconf, and automake locally.  This didn't solve the problem so I dug a
bit deeper into the uuid Makefile finding that the invocations of ./shtool
were failing in that Makefile.  At this point I hacked the openpgk.spec
file in the boot directory using ``sed'' to change the definitions in the
Makefile to execute libtool and shtool using sh directly instead of from
the first line of the files:

LIBTOOL = sh ./libtool
SHTOOL  = sh ./shtool

The bootstrap ran successfully with this modification.

I checked the installed version of shtool-2.0.1-2.2.0.src.rpm on one of our
Linux boxes, and see that it starts with the normal invocation
``#!/bin/sh'' which will cause problems on these ancient boxes down the
road.  I would like to suggest two things since libtool is central to
openpkg operations:

  1.  ln %{l_prefix}/lib/openpkg/bash %{l_prefix}/lib/openpkg/sh

  2.  Change the first line of the libtool script to invoke this version of
      ``sh'' instead of ``/bin/sh''.  Perhaps it would work to change it
      the ``bash'', but I think that there might be problems with changed
      behaviour depending on the invocation name.

These changes would remove any dependency on the host system's /bin/sh,
without affecting OpenPKG operation.

Bill
--
INTERNET:   [EMAIL PROTECTED]  Bill Campbell; Celestial Systems, Inc.
UUCP:               camco!bill  PO Box 820; 6641 E. Mercer Way
FAX:            (206) 232-9186  Mercer Island, WA 98040-0820; (206) 236-1676
URL: http://www.celestial.com/

Foreign aid might be defined as a transfer from poor people in rich
countries to rich people in poor countries -- Douglas Casey
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
Developer Communication List                   openpkg-dev@openpkg.org

Reply via email to