* [PATCH] libsolv: don't pick up bundled db from host rpm
@ 2017-05-17 20:16 Max Krummenacher
2017-05-18 5:37 ` Alexander Kanavin
0 siblings, 1 reply; 3+ messages in thread
From: Max Krummenacher @ 2017-05-17 20:16 UTC (permalink / raw)
To: openembedded-core; +Cc: Max Krummenacher
With rpm v4 in openembedded but on a host with existing /usr/include/rpm/db.h
the build fails to compile.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
---
...01-don-t-pick-up-bundled-db-from-host-rpm.patch | 38 ++++++++++++++++++++++
meta/recipes-extended/libsolv/libsolv_0.6.26.bb | 3 +-
2 files changed, 40 insertions(+), 1 deletion(-)
create mode 100644 meta/recipes-extended/libsolv/libsolv/0001-don-t-pick-up-bundled-db-from-host-rpm.patch
diff --git a/meta/recipes-extended/libsolv/libsolv/0001-don-t-pick-up-bundled-db-from-host-rpm.patch b/meta/recipes-extended/libsolv/libsolv/0001-don-t-pick-up-bundled-db-from-host-rpm.patch
new file mode 100644
index 0000000..e0eb36e
--- /dev/null
+++ b/meta/recipes-extended/libsolv/libsolv/0001-don-t-pick-up-bundled-db-from-host-rpm.patch
@@ -0,0 +1,38 @@
+From 7bd5f609ce63876e2d52dea26cd40cbd2cfb4532 Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Sat, 7 May 2017 20:28:11 +0100
+Subject: [PATCH] don't pick up bundled db from host rpm
+
+With rpm v4 in openembedded but on a host with existing /usr/include/rpm/db.h
+the build is configured to have HAVE_RPM_DB_H but fails to compile.
+
+Fixes the following link errors:
+| ../ext/libsolvext.so.0: undefined reference to `db_create_rpmdb'
+| ../ext/libsolvext.so.0: undefined reference to `db_env_create_rpmdb'
+
+Observed on a openSUSE Leap 42.1 build host with rpm-devel installed.
+
+Upstream-Status: Inappropriate [cross build specific]
+
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ CMakeLists.txt | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 838f9d0..b64bcd9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -205,8 +205,7 @@ IF (ENABLE_RPMDB)
+ ENDIF (RPMMISC_LIBRARY)
+ ENDIF (RPM5)
+
+- # check if rpm contains a bundled berkeley db
+- CHECK_INCLUDE_FILE(rpm/db.h HAVE_RPM_DB_H)
++ set(HAVE_RPM_DB_H 0)
+ IF (NOT HAVE_RPM_DB_H)
+ FIND_LIBRARY (DB_LIBRARY NAMES db)
+ IF (DB_LIBRARY)
+--
+2.6.6
+
diff --git a/meta/recipes-extended/libsolv/libsolv_0.6.26.bb b/meta/recipes-extended/libsolv/libsolv_0.6.26.bb
index a33c251..ccd9cfa 100644
--- a/meta/recipes-extended/libsolv/libsolv_0.6.26.bb
+++ b/meta/recipes-extended/libsolv/libsolv_0.6.26.bb
@@ -8,7 +8,8 @@ LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8"
DEPENDS = "expat zlib rpm"
SRC_URI = "git://github.com/openSUSE/libsolv.git \
- "
+ file://0001-don-t-pick-up-bundled-db-from-host-rpm.patch \
+ "
SRC_URI_append_libc-musl = " file://0001-Add-fallback-fopencookie-implementation.patch \
file://0002-Fixes-to-internal-fopencookie-implementation.patch \
"
--
2.9.3
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH] libsolv: don't pick up bundled db from host rpm
2017-05-17 20:16 [PATCH] libsolv: don't pick up bundled db from host rpm Max Krummenacher
@ 2017-05-18 5:37 ` Alexander Kanavin
2017-05-18 21:54 ` Max Krummenacher
0 siblings, 1 reply; 3+ messages in thread
From: Alexander Kanavin @ 2017-05-18 5:37 UTC (permalink / raw)
To: openembedded-core, Max Krummenacher, Max Krummenacher
On 05/17/2017 11:16 PM, Max Krummenacher wrote:
> With rpm v4 in openembedded but on a host with existing /usr/include/rpm/db.h
> the build fails to compile.
> +- # check if rpm contains a bundled berkeley db
> +- CHECK_INCLUDE_FILE(rpm/db.h HAVE_RPM_DB_H)
> ++ set(HAVE_RPM_DB_H 0)
The problem seems to be that CHECK_INCLUDE_FILE is incorrectly looking
for headers in host's /usr/include. Perhaps you could look into why that
is happening and if it can be fixed, rather than fix one specific
instance in libsolv where it is known to cause trouble?
Alex
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] libsolv: don't pick up bundled db from host rpm
2017-05-18 5:37 ` Alexander Kanavin
@ 2017-05-18 21:54 ` Max Krummenacher
0 siblings, 0 replies; 3+ messages in thread
From: Max Krummenacher @ 2017-05-18 21:54 UTC (permalink / raw)
To: Alexander Kanavin, openembedded-core, Max Krummenacher
Hi Alex
Am Donnerstag, den 18.05.2017, 08:37 +0300 schrieb Alexander Kanavin:
> On 05/17/2017 11:16 PM, Max Krummenacher wrote:
> > With rpm v4 in openembedded but on a host with existing /usr/include/rpm/db.h
> > the build fails to compile.
> > +- # check if rpm contains a bundled berkeley db
> > +- CHECK_INCLUDE_FILE(rpm/db.h HAVE_RPM_DB_H)
> > ++ set(HAVE_RPM_DB_H 0)
>
> The problem seems to be that CHECK_INCLUDE_FILE is incorrectly looking
> for headers in host's /usr/include. Perhaps you could look into why that
> is happening and if it can be fixed, rather than fix one specific
> instance in libsolv where it is known to cause trouble?
Ok, will try to find a more generic solution.
Max
>
> Alex
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-05-18 21:54 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-17 20:16 [PATCH] libsolv: don't pick up bundled db from host rpm Max Krummenacher
2017-05-18 5:37 ` Alexander Kanavin
2017-05-18 21:54 ` Max Krummenacher
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox