Commit Graph

223 Commits

Author SHA1 Message Date
Alexander Kanavin 8c1c392ca3 dnf: move the entire dnf/rpm4 stack to Python 3
[YOCTO #11180]

(From OE-Core rev: bedcdc4cf921b70a8cfb16c6684668d0ac9e1942)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:13 +01:00
Robert Yang 94ffc8e017 rpm: change PROVIDES rpm-build to RPROVIDES
The rpm 5 has a rpm-build package, so here should use RPROVIDES rather
than PROVIDES to keep compatibility.

(From OE-Core rev: de2ee88f9cc0fc8d6d92ac2a79364e79a99ae98e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:22:50 +01:00
Alexander Kanavin fecf58b2a5 rpm: add a "rpm-build" PROVIDES
rpm 5.x was packaging build tools separately, so we need to unbreak
things that relied on that.

[YOCTO #11167]

(From OE-Core rev: 3b5ac72bdf76ac8ff98dc3c882a4edc77c6e2c33)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23 13:19:49 +00:00
Alexander Kanavin d4efcded26 nativesdk-packagegroup-sdk-host: replace smartpm with dnf
(From OE-Core rev: 45b97161915ce7872ef7161451a5c83507072a72)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-14 14:42:17 +00:00
Alexander Kanavin bbddf83f65 rpm: remove 5.x recipe
(From OE-Core rev: d0365f35303db3595688a6e5290677e02a72c54e)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-14 14:42:16 +00:00
Alexander Kanavin 27d56eeebd rpm: add a 4.x recipe
The dnf stack is written and tested against rpm 4.x. So if we want to use dnf for packaging,
we should also use rpm 4 - there's simply too much work involved in making rpm 5 work with it due
to significant API differences, and supporting that going forward.

(From OE-Core rev: 2358e786ec8d1199d90e181eb5d8d00816f669b4)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-14 14:42:16 +00:00
Alexander Kanavin c3df454357 rpmresolve: remove the recipe
The source code is incompatible with rpm4 API - let's use rpm
binary itself for now.

(From OE-Core rev: 127112fa05c7102dacda4173adf380c557bacecb)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-14 14:42:16 +00:00
Markus Lehtonen 8032d64c43 rpm: support customizing gpg command line
Add a new %_gpg_sign_cmd_extra_args macro that allows customizing the
gpg options used when signing rpm packages. This is needed to be able to
sign packages with gpg 2.1 which requires "--pinentry-mode loopback" to
allow non-interactive signing.

[YOCTO #11054]

(From OE-Core rev: 373a7146d596d27376a003014df0d06f3df5348d)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-01 23:27:07 +00:00
Richard Purdie bfd0a39bdf classes: Drop now unneeded update_data calls
Now that the datastore works dynamically we don't need the update_data calls
so we can just remove them. They're not actually done anything at all for
a while.

(From OE-Core rev: 8de0c5d3bd01919e2bf0394f9c485936d6098cec)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-02-15 09:29:55 -08:00
Markus Lehtonen 86310792d3 rpm: inherit pkgconfig
Rpm needs pkg-config in order to build successfully.  Recipe specific
sysroots revealed this missing dependency when trying to build on a host
without pkg-config.

(From OE-Core rev: 6ad1deb0d728b8d34589b1a42acc8fa268e95f28)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-31 15:25:56 +00:00
Joshua Lock c4e2c59088 meta: remove True option to getVar calls
getVar() now defaults to expanding by default, thus remove the True
option from getVar() calls with a regex search and replace.

Search made with the following regex: getVar ?\(( ?[^,()]*), True\)

(From OE-Core rev: 7c552996597faaee2fbee185b250c0ee30ea3b5f)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-16 10:23:23 +00:00
Chen Qi 43a135b0c8 rpm: fix multilib macro installation
For now, the rpm macro for multilib is not installed correctly. For
example, in x86-64 lib32 situation, the macro is installed under
tmp/work/x86-pokymllib32-linux/rpm/5.4.16-r0/image/usr/lib/rpm/poky/i686-linux/.

The directory is even not under WORKDIR. And it will of course not be
packaged.

We need to save necessary values before updating the localdata and restore
them so that the macros could be installed into the correct directory.

(From OE-Core rev: 40e92de46489bdab0af48fedc46c0d153355f15c)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-23 11:10:14 +00:00
Chen Qi 4c0d288642 rpm: fix file location of rpm2cpio.real
rpm2cpio is in ${PN}-common, but rpm2cpio.real is in ${PN}. This seperation
is really weird. Put them both in ${PN}-common.

(From OE-Core rev: 8a0af7e4ae8ba8ce0c7fd2a9f6ab7cc070f47af0)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-06 23:35:32 +00:00
Markus Lehtonen 5dba35767e rpm: prevent race in tempdir creation
This patch fixes an extramely rare race condition in creation of rpmdb
temporary directory. The "rpmdb-more-verbose-error-logging" patch is
still left in place, just for the case.

[YOCTO #9416]

(From OE-Core rev: 84de3283fa2a2908d367eb58953903ae685b0298)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-15 10:01:44 +01:00
Ross Burton 03fa8209e4 rpm: remove redundant removals
These were noticed by the use of bashisms (rm *.{foo,bar}) and lots of these rm
commands are deleting files which don't exist in the first place.

(From OE-Core rev: 52182efe70a8fb59b5640cd1cf2bdb55e77c0076)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-14 22:22:07 +01:00
Jérémy Rosen c14dc1a130 rpm: manually cleanup sysck
version 5.4.1 of rpm was not properly distclean before release, which
causes problems when cross-compiling.

The previous version this recipe called make distclean, but that would
trigger a call to ./configure which would fail when no gcc is
available and make the whole do_configure fail further down the line

This patch manually removes the files from the recipe.

(From OE-Core rev: 6c9f61233f64356291a0c42761a833f3b151114c)

Signed-off-by: Jérémy Rosen <jeremy.rosen@smile.fr>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-14 22:22:07 +01:00
Zhixiong Chi 0abb1d7e22 rpm: ensure rpm2cpio call rpm relocation code
We need to call rpmcliInit to ensure the rpm relocation code is called.
when we allow rpm2cpio to be relocatable, The adjusted path used to find
the macro files was being built into the binary and this path was valid
for the machine it was built on and some of our other build machines,
but invalid on some others, and was not being properly overridden at
runtime.

when we export the wrsdk and source the sdk, then execute rpm2cpio xxx.rpm|cpio -t.
we will get the following error :
"rpm-5.4.14/rpmdb/dbconfig.c:493:
db3New: Assertion `dbOpts != ((void *)0) && *dbOpts != '\0'' failed.

(From OE-Core rev: aea2bf5c8101ac0bb27776a5614be345835c4a03)

Signed-off-by: Zhixiong Chi <Zhixiong.Chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-06 10:24:04 +01:00
Ming Liu bba1b911c8 Use PYTHON_SITEPACKAGES_DIR insted of hard-coded *site-packages*
For thoese recipes that are inheriting python*-dir.bbclass, there is
already a PYTHON_SITEPACKAGES_DIR present, use that definition replacing
redundant "${libdir}/python*/site-packages".

(From OE-Core rev: e7d842673952aa4aaa141f64958bc1344dbe8210)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-17 10:35:42 +01:00
Ross Burton 43a3933624 meta: add more missing patch tags
(From OE-Core rev: 5e5a6145d844c2f6daa3258429a870c42475adff)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-04 15:22:22 +01:00
Robert Yang 51b08835b6 rpm: make --nosignature work
OE-core uses rpm's --nosignature, but it never worked:
self._invoke_smart('config --set rpm-check-signatures=false')

Now fix it with:
* Define SUPPORT_NOSIGNATURES to 1 in system.h
* !QVA_ISSET(qva->qva_flags, SIGNATURE) -> QVA_ISSET(qva->qva_flags, SIGNATURE),
  otherwise, when use --nosignature would read database and verify
  signature, this is not expected.

This can fix some race issues, for example, when more than one process
are querying rpm file with "rpm -qp --nosignature", they may hang up
because of race issues (the processes are trying to get RW/RD lock on
the database, but they shouldn't read the database at all since -qp and
--nosignature are used).

(From OE-Core rev: 038c09d6ab9581030efdc16aa1b96972970eeaab)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-26 08:56:28 +01:00
Ross Burton 3ad542a85a rpm: remove CVS-based recipe
This recipe doesn't really get used or maintained, and as the sole recipe in
oe-core that uses the CVS fetcher it's removal means we don't need to list CVS
as a host dependency.

(From OE-Core rev: 0cb5c06ea12c9070f19045cc82fc6276bfad3970)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-20 10:28:46 +01:00
Alexander Kanavin 1c83fcd38d default-versions.inc: drop python-related defaults
There is only one version of python 2.x provided, so no need
to set a preferred version.
PYTHON_BASEVERSION is now set explicitly in python-dir.bbclass and
python3-dir.bbclass, so fix up a few recipes that relied on it being
set in default-versions.inc without inheriting python-dir.

(From OE-Core rev: e0c75841078bf65905c1c9aa2946241b2474a7e2)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-06-01 12:38:41 +01:00
Khem Raj b8e70ce204 rpm: Fix build with gcc6
(From OE-Core rev: e9c86d85460f45011bd978e1495a2b802d733020)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-13 13:41:29 +01:00
Andreas Oberritter 71979b2ff7 rpm: explicitly disable tomcrypt
Configure autodetects libtomcrypt, but then it adds libtommath to
$LIBS and fails to link subsequent tests if it's unavailable.

| checking for pcre.h... yes
| checking for pcre_compile in -lpcre... no
| checking whether to build with PCRE library... no
| ++ executing failure action
| configure: error: unable to find usable PCRE library

(From OE-Core rev: 54665fb9e27ba1b0e4eddaf170303d4f2db66fae)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-29 07:41:43 +01:00
Marek Vasut d488d78db0 rpm: Disable __sync_add_and_fetch_8 on nios2
The NIOS2 softcore does not implement the __sync_add_and_fetch_8,
so disable it accordingly.

(From OE-Core rev: 9ef23b0273a87bd19dcc9c21cc1c53b1f8480668)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Ley Foon Tan <lftan@altera.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Thomas Chou <thomas@wytron.com.tw>
Cc: Walter Goossens <waltergoossens@home.nl>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-18 16:28:21 +01:00
Markus Lehtonen a460b04789 rpm: more verbose errors in rpmTempFile
This patch adds better error logging inside the rpm tempfile function in
order to be able to better analyze a rare and very hard-to-reproduce
failure in oe-selftest for rpm signing.

[YOCTO #9416]

(From OE-Core rev: aba432ea3ada509b24075c159081e8f0f942c308)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-14 10:58:33 +01:00
Ross Burton 50f5ca3c60 rpm: brace expansion is a bashism
The constuct rm *.{a,la} is a bashism and as tasks are run under /bin/sh this
may not work as expected.  Expand the {a,la} to two separate calls, and remove
the architecture-specific macro deletion as they are not installed in the first
place anymore.

(From OE-Core rev: 0edd06d15d2501ed0961681b56ecbb4ca5e75647)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-09 23:00:45 +01:00
Robert Yang 476eeeae0f rpm: remove two unused patch
They are already in the source:
rpm-CVE-2013-6435.patch
rpm-CVE-2014-8118.patch

(From OE-Core rev: 8bed58160316c84bb4c4e866058f695c4402b95e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-06 22:57:25 +01:00
Robert Yang 05d7e0db5d rpm: check _gpg_passphrase before ask for input
rpm always asked for pass phrasae when add signature, which made it
can't work non-interactively, this patch fix the problem. It will work
non-interactively if _gpg_passphrase is defined, and work as before if
not.

(From OE-Core rev: 3cd4f96e94d8756d332b13215ce3ac2e1eaddee7)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-25 10:29:14 +00:00
Joshua Lock 1e9de52ca0 rpm: remove RPM 4
RPM4 support is buggy and incomplete. As we don't have the
resources or interest to maintain it this patch removes it.

(From OE-Core rev: a6e7a86f1635be9a688c56c25e9d215ea4d2cc84)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-20 23:12:29 +00:00
Chen Qi 1969332422 rpm: fix error when 'lua' is enabled
Fix the following compilation error when 'lua' is enabled in PACKAGECONFIG.

  | gcc: error: lib21.c: No such file or directory
  | gcc: fatal error: no input files

Modify FILES for dev package to avoid installed-not-shipped error.

(From OE-Core rev: 6b43539e6624113acbcd06b11cfe8cfe6586244f)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-20 23:12:29 +00:00
Mark Hatle 815c36f417 rpm: Sync CVS to regular version
A previous fix for a python dep issue was not merged to the CVS version.

(From OE-Core rev: 1a9efb0be07c62b7780da68dc19c834ade1cb533)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-10 23:13:54 +00:00
Mark Hatle 775f22e36f rpm: Fix musl integration with RPM5
(From OE-Core rev: e4d6f4f48f83a5881351007aae66427e0b11fc8a)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-10 23:13:54 +00:00
Mark Hatle 5699c67079 rpmresolve: It is not necessary to manually specify -lpopt
Popt may be internal or external to rpm.  Either way the rpm libraries
will link properly with or without -lpopt.

(From OE-Core rev: b79a628d59382fdba812c67133c93e9f4ea365c2)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-09 17:00:28 +00:00
Mark Hatle 8ea55ba895 rpm: A number of the patches have been submitted upstream
Note the upstream submission in the patches.

(From OE-Core rev: 9672f7620a365d29afca81d357d1d4d5fcedb3ed)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-09 17:00:28 +00:00
Mark Hatle 6833c5d77b rpm: Enable specific crypto and digest settings via variables
Allow the user to set the specific digest and non-repudiable signature
algorithms.  This should be done on a distribution wide basis.

See recipe for exact instructions, but values are now set using:
RPM_FILE_DIGEST_ALGO (default 1 - md5)
RPM_SELF_SIGN_ALGO   (default DSA)

Also, change the PACKAGECONFIG to define the default crypto engine for
RPM5.  Not just the available crypto engines.  If a crypto engine is not
selected, the system will default to the internal beecrypt version.

(From OE-Core rev: 2f6529d9dc8aa82eb5bdcccec9c69d93dad63505)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-09 17:00:28 +00:00
Mark Hatle 007c284cb8 rpm: Uprev to rpm-5.4.16 (pre) and rpm-5.4+cvs to current CVS head
meta/lib/oe/package_manager.py was also updated.  This ensures that any
diagnostic messages are ignored from the output of rpmresolve.

The patches have been split into bug fixes (things that belong upstream)
and local changes that are OE specific.

The following patches are obsolete and have been removed:

rpm-remove-sykcparse-decl.patch
fstack-protector-configure-check.patch
rpm-disable-Wno-override-init.patch
rpm-lua-fix-print.patch
rpm-rpmpgp-fix.patch
verify-fix-broken-logic-for-ghost-avoidance-Mark-Hat.patch

(From OE-Core rev: ee97e53fcceabc6ef4ddc68f38c5fa0e05c5d9a8)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-09 17:00:27 +00:00
Joshua Lock afb954e2cb rpm: fix building rpm 5 with internal beecrypt
RPM 5 cannot be built without beecrypt, therefore the EXTRA_OECONF
arguments to pass when the beecrypt PACKAGECONFIG is disabled should
enable the internal/bundled beecrypt.

[YOCTO #9150]

(From OE-Core rev: ed1c47e7c621491b892fb82bd18644dba42212b9)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-22 20:42:47 +00:00
Khem Raj e8b0da157f rpm: Fix build with musl
(From OE-Core rev: d0fc6e8593b951163d48665f41d6ef1eb74b8926)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-15 16:28:45 +00:00
Richard Purdie c192bd60e8 Revert "xz: Allow to work with ASSUME_PROVIDED xz-native"
This reverts commit 5c69c561a76cb10d7896ae0a0399190f11b2e0ca.

The change was incomplete, not handling cases such as the fetcher
using xz, or linux-yocto, dpkg or apt or the lzma image type.

(From OE-Core rev: fc4209baa098caebf9c4cb75f9a6f2e85f43333c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-25 12:44:13 +00:00
Richard Purdie d47572d3dd xz: Allow to work with ASSUME_PROVIDED xz-native
At some point we may want to add xz-native to ASSUME_PROVIDED. This
allows that to work whilst still allowing access to liblzma for
those things which need it (e.g. pixz).

(From OE-Core rev: 5c69c561a76cb10d7896ae0a0399190f11b2e0ca)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-24 09:40:33 +00:00
Olof Johansson 0916235adf rpm: remove bashisms: [ x == x ] -> [ x = x ]
The postinst and postrm of rpm contained a bashism, that could in some
situations potentially cause ldconfig not be triggered when it should
be. If you use dash on host, test would fail because of syntax errors.
But on host, it should fail because of the comparison. On target, you
often use busybox ash, and it supports == as an alias for =. So in
practice, only if you use a shell like dash on target, you'll run into
issues with this.

(From OE-Core rev: 4fd33ca846ba9f61e72a176a6462443c9fb5ddc2)

Signed-off-by: Olof Johansson <olofjn@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-19 17:40:20 +00:00
Mariano Lopez e5c011b041 Add "CVE:" tag to current patches in OE-core
The currnet patches in OE-core doesn't have the "CVE:"
tag, now part of the policy of the patches.

This is patch add this tag to several patches. There might
be patches that I miss; the tag can be added in the future.

(From OE-Core rev: 065ebeb3e15311d0d45385e15bf557b1c95b1669)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-11 23:26:32 +00:00
Mariano Lopez eda3947cf0 rpmresolve.c: Fix unfreed pointers that keep DB opened
There are some unfreed rpmmi pointers in printDepList()
function; this happens when the package have null as
the requirement.

This patch fixes these unfreed pointers and add small
changes to keep consistency with some variables.

[YOCTO #8028]

(From OE-Core rev: da7aa183f94adc1d0fff5bb81e827c584f9938ec)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-11 23:26:30 +00:00
Mark Hatle 907b87dd11 rpm: Generate per distribution and multilib macro files
The distribution and multilib macro files are required for rpmbuild, on the
target, to work properly.  These override the default settings from the
upstream macro files with the proper values for the OE configuration.

(From OE-Core rev: 65e160ae521386d80cd21df72d23814afb9e445c)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-28 09:25:19 +00:00
Yuanjie Huang 95a79a5035 rpm: Fix support for db5 and db6
The previous attempt to let rpm configuration support both db5 and db6
has a flaw that when the building host provides db6 without its header
the db_create test will false pass. This new patch addresses this issue
by test against the DB_VERSION_MAJOR macro value, which is defined in
both db5 and db6's header.

(From OE-Core rev: 59934080f8311a810e7b5ce82a264d4b9de650ec)

Signed-off-by: Yuanjie Huang <Yuanjie.Huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-22 16:08:50 +00:00
Ross Burton 455ff32426 meta: more removals of redunant FILES_${PN}-dbg
In some recipes overly-split -dbg packages were merged into PN-dbg.  Unless
there's a very good reason, recipes should have a single -dev and -dbg package.

(From OE-Core rev: a3b000643898d7402b9e57c02e8d10e677cc9722)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-16 11:56:30 +00:00
Richard Purdie e0890b662e meta: Drop now pointless manual -dbg packaging
With the autodebug package generation logic, specifically setting FILES_${PN}-dbg
isn't needed in most cases, we can remove them.

(From OE-Core rev: 3ab59d49dd7c18e194b58d1248b4b87709b5a738)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-16 11:56:30 +00:00
Robert Yang bc26a7d34c rpm: fix file conflicts for MIPS64 N32
The following error can occur:
  smart install libc6-2.22-r0.1@lib32_mips32r2octeon3 libc6-dbg-2.22-r0.1@lib32_mips32r2octeon3
error: file /sbin/ldconfig conflicts between attempted installs of libc6-2.22-r0.1.lib32_mips32r2octeon3 and libc6-2.22-r0.1.octeon3_n32
error: file /sbin/.debug/ldconfig conflicts between attempted installs of libc6-dbg-2.22-r0.1.lib32_mips32r2octeon3 and libc6-dbg-2.22-r0.1.octeon3_n32

This was because:
transactions_color = 001 (ELF32) & 010 (ELF64) & 100 (ELF32 N32 MIPS64)
FColor = Current file color (001) & transaction_color (111)
oFcolor = Previous file color (100) & transaction_color (111)

There are two places where the conflict comparisons occur.  In both places
the 'else' clause was too restrictive (opposite of the 'positive' clause).
This caused the system to only permit a binary comparison - "new preferred" or
"old preferred".  It did not permissing "neither preferred".  By removing the
else comparison the system will now perform a 'last-in-wins' resolution when
"neither is preferred".

Note, if _transaction_color is 3, MIPS64 N32 will be skipped (pretend as
installed).

(From OE-Core rev: 36c225704daa58b98a4b7f2ef315eb944d8628b5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-12 23:42:53 +00:00
Mark Hatle 01c0285677 rpm: Enable MIPS64 N32 transactions
In a multilib install RPM will break a conflict using the transaction color.
However, by default MIPS64 N32 transactions are not enabled.

This change always enables them.  This is effectively a no-op on non-MIPS
systems, and required if we need to support N32 on MIPS.

(From OE-Core rev: dd86624034574484574d75adfcf68c2df4a7a6b7)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-12 23:42:53 +00:00