Hello!
I'm new to the list, and new to openpkg. I am trying to "port" openpkg to
an uClibc environment (I know, not supported). The environment is the dev.
image for x86 from www.uclibc.org. I have managed to build it
completely (with some non-intrusive patches applied to rpm-4.0.2, see
attachment, and consider applying at least the uclibc patch. If you are
going to update to rpm-4.0.[3,4], I have some additional required
patches). After running sh openpkg-1.2.0-xxx.sh file the files get
installed into the proper directory (I have also checked the content of
the binary rpm package, they are the same), the statically built binaries
installed in prefix/lib/openpkg/{bash,make, etc.) are unusable,
segfaulting. I have
tested the binaries produced at the beginning of build process, like
patch, make, tar, bash, these are dinamically built against the system
library, and used for the rest of the build process. What I didn't
found, where the statical build is done. I have already on this system a
usable rpm-4.0.4 (dynamic libraries), so I have checked building bash
statically from the Redhat 8.0 src.rpm package (adding only
--enable-static-link to configure). This binary is OK, so somehow the
statical build in openpkg has problems.
a. Can someone tell me where to look for the ./configure parameters used
for statical build, which [C,LD]FLAGS are used for each of the programs?
b. Why are the binaries build twice, once dinamically, once statically? It
would be a good "usability" check, if they are built at first instance as
static, and used for the build process?
Thanks in advance, Peter
--
Peter S. Mazinger <[EMAIL PROTECTED]> ID: 0xA5F059F2 NIC: IXUYHSKQLI
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08 BB6E C389 975E A5F0 59F2
--- rpmio/rpmio.h.mps 2003-02-14 01:28:36.000000000 +0100
+++ rpmio/rpmio.h 2003-02-14 01:28:55.000000000 +0100
@@ -22,7 +22,7 @@
* API unchanged.
*/
/*@{*/
-#if !defined(__LCLINT__) && defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__
== 2
+#if !defined(__LCLINT__) && defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__
+== 2 && !defined(__UCLIBC__)
#define USE_COOKIE_SEEK_POINTER 1
typedef _IO_off64_t _libio_off_t;
typedef _libio_off_t * _libio_pos_t;
--- rpmio/rpmio_internal.h.cosm 2003-02-14 17:47:10.000000000 +0100
+++ rpmio/rpmio_internal.h 2003-02-14 17:48:36.000000000 +0100
@@ -5,8 +5,6 @@
* \file rpmio/rpmio_internal.h
*/
-inline int fdFileno(void * cookie);
-
#include <rpmio.h>
#include <rpmurl.h>
@@ -380,7 +378,10 @@
/*@-shadow@*/
/** \ingroup rpmio
*/
-/*@unused@*/ static inline int fdFileno(void * cookie) {
+/*@unused@*/ static inline
+int fdFileno(/*@null@*/ void * cookie)
+ /*@*/
+{
FD_t fd;
if (cookie == NULL) return -2;
fd = c2f(cookie);