Request 253 was acted upon.
_________________________________________________________________________

         URL: https://rt.openpkg.org/id/253
      Ticket: [OpenPKG #253]
     Subject: [bootstrap] missing header files
  Requestors: [EMAIL PROTECTED]
       Queue: openpkg
       Owner: Nobody
      Status: open
 Transaction: Correspondence added by [EMAIL PROTECTED]
        Time: Thu Sep 11 21:57:25 2003
________________________________________________________________________

On Thu, Sep 11, 2003 at 09:18:58PM +0200, Ralf S. Engelschall via RT wrote:
> Request 253 was acted upon.
> _________________________________________________________________________
> 
>          URL: https://rt.openpkg.org/id/253
>       Ticket: [OpenPKG #253]
>      Subject: [bootstrap] missing header files
>   Requestors: [EMAIL PROTECTED]
>        Queue: openpkg
>        Owner: Nobody
>       Status: open
>  Transaction: Correspondence added by rse
>         Time: Thu Sep 11 21:18:57 2003
> ________________________________________________________________________
> 
> On Wed, Sep 10, 2003, [EMAIL PROTECTED] via RT wrote:
> 
> > I'm working on a port of the previously-requested apt to OpenPKG, and it
> > looks like a few of the RPM header files aren't installed:
> >
> > <prefix>/include/rpmps.h
> > <prefix>/include/rpmsw.h
> > <prefix>/include/hdrinline.h
> > <prefix>/include/rpm/rpmdb.h
> > <prefix>/include/rpm/rpmds.h
> > <prefix>/include/rpm/rpmts.h
> >
> > I'm (for now) just extracting a copy of these from the RPM distribution
> > tarball in the bootstrap package, but it might be nice to make these
> > officially available.
> 
> Hmmm... these headers seem to be private API headers of RPM, not
> intended to be used by applications. So RPM does not install them by
> default as it looks. Can it be that APT is poking around too deep in
> RPM's API? Is it really required for building (or perhaps can it be
> disabled, etc)?

This headers, and some more, are installed by the "make install" of
rpm. They are just filtered out by the "%files" section of the OpenPKG
install. Maybe it was not updated during the 4.0.2 -> 4.1.2 transition ?
Why is there a filtering, anyway ?
Do a "rpmbuild -bi openpkg.spec" and look into the .../include/rpm dir.

But, while we are in the "too deep" section. Glob() and GlobFree() are
using glob_t. And this is not introduced in apt-rpm.
Because i did not find a place, where the routines Glob() and Globfree()
where used, i ifdef'ed them out with "#ifdef _IN_RPM" and added a
"#define _IN_RPM" at the end of config.h in the rpm package. Adding
glob.h from the rpm distribution to %{l_prefix}/include/rpm did not sound
like a good idea, and using the system supplied one could/will lead to
conflicts, because rpm uses a private implementation (at least on some
platforms).

There where still problems with "undeclared identifiers", so i made a
side step. It is often so, that routines are missed on some platforms.
Under Solaris, this are e.g. setenv(), unsetenv(), mkdtemp(), inet_aton().

One solution is, to copy over code snippets from elswhere to the
distribution tree of the application. A "locate glob.h" on my machine
gives dozents of matches (about 50, but i see some duplicates). This
is not very clean and it also may lead to license problems.

I try to set up a "libport", that can be used as a "last resort" in such
situations. It could be given in the link line like this:
gcc -o yo! pi.o pa.o po.o -L/else/where -lbla ... -lc -lport
Comments ?

In any case, hurry on, Matt. Would be *really* cool, when someone knows
how to configure apt-rpm, when i arrive :-)
In the end, what really interests me, is synapsis.


   (mk)

-- 
Matthias Kurz; Fuldastr. 3; D-28199 Bremen; VOICE +49 421 53 600 47
   >> Im prämotorischen Cortex kann jeder ein Held sein. (bdw) <<

______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
Bug Database Interface                           www.openpkg.org/bugdb
Bug Database List                            [EMAIL PROTECTED]

Reply via email to