aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/rpm
AgeCommit message (Collapse)Author
2016-02-15rpm: Fix build with muslKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-25Revert "xz: Allow to work with ASSUME_PROVIDED xz-native"Richard Purdie
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. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-23xz: Allow to work with ASSUME_PROVIDED xz-nativeRichard Purdie
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). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-19rpm: remove bashisms: [ x == x ] -> [ x = x ]Olof Johansson
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. Signed-off-by: Olof Johansson <olofjn@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-11Add "CVE:" tag to current patches in OE-coreMariano Lopez
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. Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-01-11rpmresolve.c: Fix unfreed pointers that keep DB openedMariano Lopez
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] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-27rpm: Generate per distribution and multilib macro filesMark Hatle
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. 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>
2015-12-22rpm: Fix support for db5 and db6Yuanjie Huang
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. Signed-off-by: Yuanjie Huang <Yuanjie.Huang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-16meta: more removals of redunant FILES_${PN}-dbgRoss Burton
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. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-16meta: Drop now pointless manual -dbg packagingRichard Purdie
With the autodebug package generation logic, specifically setting FILES_${PN}-dbg isn't needed in most cases, we can remove them. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-12rpm: fix file conflicts for MIPS64 N32Robert Yang
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). 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>
2015-12-12rpm: Enable MIPS64 N32 transactionsMark Hatle
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. 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>
2015-12-08package_regex.inc: split the rest of the entries to their recipesAlexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01rpm: fix for N32 MIPS64Robert Yang
It is 'N32 MIPS64', not 'N32 MIPS32' as command file shows: $ file image/usr/bin/getent getent: ELF 32-bit MSB executable, MIPS, N32 MIPS64 [snip] And "rpm -qp --filecolor" was wrong (it was 1, but should be 4), which caused multilib installation error. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-11-16rpm: define EM_AARCH64 for debugeditRoy Li
EM_AARCH64 maybe not be defined due to old version elf.h when compile rpm-native, and lead to that debugedit can not work on aarch64 elf object files, since there is no other dependence, except these two macro, define them to make debugedit work on aarch64 elf files. debugedit: /bitbake_build/tmp/work/aarch64-wrs-linux/libvirt/1.2.19-r0/ package/usr/lib64/libvirt/ptest/daemon/libvirtd_admin_la-admin_server.o: Unhandled relocation 258 in .debug_info section Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-24rpm: add explicit dependency on file-replacement-native for native buildsRoss Burton
2015-10-21rpm: remove spurious build dependenciesRoss Burton
make, patch and binutils are assumed to exist on the host, so there's no need to have them in DEPENDS and can result in the building of make-native for no good reason. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-07rpm: fix return without value in patchRoss Burton
The error patch in rpm-check-rootpath-reasonableness.patch did a bare return from a function that should be returning an int. As this is the error path, return -1 instead. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-28rpm: search for gpg if gpg2 is not foundMarkus Lehtonen
Some (host) systems only have a binary named 'gpg' (e.g. Fedora) while some only have 'gpg2' (Ubuntu) and others have both of them (openSUSE). Currently the behavior of rpm-native with regards to GnuPG depends on the host platform: rpm(-native) is configured to use GnuPG binary of the host system if 'gpg2' is found in $PATH. Otherwise, rpm(-native) will default to using '%{_bindir}/gpg2' which will be pointing to a sysroot binary which usually does not exist. This patch changes rpm to look for both 'gpg' and 'gpg2' when searching for the GnuPG binary in PATH. This makes possible to create signed RPM packages on different host platforms, using the GnuPG binary of the host, without the need to explicitly define the gpg binary in bitbake configuration (via GPG_BIN variable). [YOCTO #8134] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-12meta: Fix Upstream-Status statementsRoss Burton
Fix a variety of problems such as typos, bad punctuations, or incorrect Upstream-Status values. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-31upstream_tracking.inc: deprecate and move contents to recipesAlexander Kanavin
No-update reasons and manual version checks should be in the recipes themselves because otherwise they're prone to getting out of date. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19rpm: opendb before rpmverifyscript to avoid null point inputZhixiong Chi
If the command is "rpm -V" and the return value of (headerIsEntry(h, RPMTAG_VERIFYSCRIPT) || headerIsEntry(h, RPMTAG_SANITYCHECK)) located in /lib/verify.c is true, it will call rpmpsmStage function(rpmVerifyScript->rpmpsmScriptStage->rpmpsmStage) and occur segment fault because of null point(rpmtsGetRdb(ts) == NULL and rpmtsGetRdb(ts)->db_txn). So we open rpmdb to avoid bad input when find headerIsEntry true. workflow: main()->rpmcliVerify()->rpmcliArgIter()->rpmQueryVerify()->rpmgiShowMatches()->showVerifyPackage()-> rpmqv.c verify.c query.c query.c verify.c(headerIsEntry) rpmVerifyScript()->rpmpsmScriptStage()->rpmpsmStage()-> rpmtxnCommit(rpmtsGetRdb(ts)->db_txn); verify.c psm.c psm.c psm.c Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-07-22rpm4: Drop native RDEPENDSRichard Purdie
Native recipes should *never* depend on target recipes since this would cause them to rebuild every time the target changes. Before the recent datastore changes, this happened to work. Now, this makes rpm-native unbuildable since base-files-native doesn't exist and the code remaps the variable. Dropping these dependencies here is the correct way to resolve this issue and fix an autobuilder selftest failure. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-12rpm: remove invalid sed commandRobert Yang
There is no __check_files in rpm/macros any more, so remove the sed command. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08rpm: disable external key serveryzhu1
When RPM experiences a signed package, with a signature that it does NOT know. By default it will send the -fingerprint- (and only the 16 digit fingerprint) to an external HKP server, trying to get the key down. This is probably not a reasonable default behavior for the system to do, instead it should simply fail the key lookup. If someone wants to enable the HKP server it's easy enough to do by enabling the necessary macros. Signed-off-by: yzhu1 <yanjun.zhu@windriver.com> Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-07rpm: check if the argument(rootpath) exists or be writableZhixiong Chi
When user execute the command "rpm -qai --root=$dir",if $dir doesn't exist or is unwritable as result of making a typo in rootpath,then it will create dirent $dir and subdirectory. So we should add the check function to fix it before creating relational subdirectory,and warn the incorrect rootpath to user. It just checks the rootpath reasonableness when the user input the argument(--root=/-r=). Signed-off-by: Zhixiong Chi <zchi@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-07-07rpm: fix typo in rpm-reloc-macros.patchAndre McCurdy
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-07rpm: fix typo in rpm-realpath.patchAndre McCurdy
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23rpm: Rebrand rpm custom macro paths to be distro specificMark Hatle
RPM was previously hard coded to use the 'poky' directory. We really want the directory name to be distribution specific. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-06-23rpm: Fix lua 'print' statement captureMark Hatle
The print statement should capture the output and send it to the script processing engine, and not display it directly to the screen. Note, this is only a bug if 'lua' support has been enabled in the RPM recipe's PACKAGECONFIG. This patch is from: http://rpm5.org/cvs/patchset?cn=17671 Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-06-23rpm: Fix CVE-2013-6435Leonardo Sandoval
Backport to fix CVE-2013-6435. Description on [1] and original patch taken from [2]. [1] https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2013-6435 [2] https://bugzilla.redhat.com/attachment.cgi?id=956207 [YOCTO #7181] Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
2015-06-23rpm: Fix CVE-2014-8118Leonardo Sandoval
Backport patch to fix CVE-2014-8118. Description is on [1] and original patch taken from [2]. [1] https://bugzilla.redhat.com/show_bug.cgi?id=1168715 [2] https://bugzilla.redhat.com/attachment.cgi?id=962159 [YOCTO #7181] Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
2015-06-08rpm: remove extra dev and dbg packagesRobert Yang
There should be only one dev and dbg package. [YOCTO #7481] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-09rpm: don't put LDFLAGS into the .pc fileRoss Burton
The LDFLAGS are not generally useful with pkg-config and mean that the .pc file contains references to the sysroot directory, so remove it. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-16rpm: separate B and SRobert Yang
It works well now, and bump the PR to avoid: configure: error: source directory already configured; run "make distclean" there first Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2014-11-20rpm: fix the rpm addsign functionRoy.Li
Signed-off-by: Roy.Li <rongqing.li@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-10-24rpm: realpath is required before expanding _dbpath in chrootMing Liu
A regression is introduced by commit 66573093: [ rpm: Fix rpm relocation macro usage ] _usr turned out to be a relative path to support dyanmic config after that, but it's being used somewhere as a indicator to locate substrings, so we must get the real path of it in advance. Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-09-30rpm: add version 4.11.2Saul Wold
add patch to remove db3 from configure.ac add inherit pkgconfig Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-30rpm5: add python-rpm PROVIDESSaul Wold
Since python-smartpm depends on python-rpm, we should provide here as appropriate. Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-03rpmresolve: ignore null requiresRobert Yang
It is not a problem if a package requires nothing (similar to RDEPENDS is null), for example, these packages depends on nothing: [snip] alsa-conf-base base-files eglibc-binary-localedata-en-us xserver-xf86-config [snip] The rpmresolve-native's algorithm is: ===fake code for pkg in pkg1, pkg2, pkg3: rc = get_req(pkg) return rc ===fake code Suppose of the 3 pkgs requires null: - We are lukcy if pkg1 or pkg2 is null, nothing happend. - We are *not* lukcy if pkg3 is null, and will get the error when "INHERIT += 'buildhistory'": ERROR: Cannot get the package dependencies. Command '/path/to/x86_64-linux/usr/bin/rpmresolve -t /path/to/var/lib/rpm' returned 1: This patch fixes the problem. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-23rpm: add perl to RDEPENDS_rpm-buildRobert Yang
Perl scripts: rpm-build/usr/lib64/rpm/http.req rpm-build/usr/lib64/rpm/php.prov rpm-build/usr/lib64/rpm/osgideps.pl rpm-build/usr/lib64/rpm/perl.prov rpm-build/usr/lib64/rpm/bin/api-sanity-autotest.pl rpm-build/usr/lib64/rpm/php.req rpm-build/usr/lib64/rpm/perldeps.pl rpm-build/usr/lib64/rpm/perl.req Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-19rpm: compile rpmqv.c instead of rpmqv.ccJoe Slater
Some versions of gcc will put a reference to __gxx_personality_v0 into rpm.o and rpmbuild.o. This means we must link using g++, and Makefile does not. Go back to using rpmqv.c (which is currently identical to rpmqv.cc). Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-10rpm: disable -Wno-override-initRobert Yang
Fixed rpm-native.do_configure error on CentOS 5.x: cc1: error: unrecognized command line option "-Wno-override-init" The -Wno-override-init was commented in rpm-5.4.9, but commented out in rpm-5.4.14 thus it is failed to build on CentOS 5.x, comment it again to fix the problem. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-07-08rpm_5.4+cvs: Add RPM community tree for future developmentMark Hatle
Enable the rpm-5_4 branch via a specific recipe to help track the latest community development. This should allow us to more quickly move to the next release when it is available. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-08rpm: Replace patch with backport from SCM version of RPM5Mark Hatle
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-08rpm: Upgrade to 5.4.14Mark Hatle
Update various patches. A few corrections to the patch descriptions, otherwise simple quilt refresh or conflict resolution. Remove rpm-solvedb.patch and rpm-respect-arch.patch. These are both related to the old solvedb package dependency solver. This is no longer used since we moved to smartpm. rpm-stub-out-git_strerror was a backport and is no longer needed. RPM 5.4.12 and newer normally requires Berkley DB 6.0 or newer. A small patch to configure allows RPM to dynamically select DB 5.3 or DB 6.0 based on what is available at configure time. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-12rpm: Fix cpio 32 bit overflow issues on 64 bit inode filesystemsRichard Purdie
When building on XFS filesystems, the resulting rpms can be corrupted with the same inode number being used for multiple hardlinked files. There are two fixes, one to stop rpm crashing when accessing a broken binary rpm, the other to stop generating them in the first places. Full descriptions in the patch headers. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-05-13rpm: Fix rpm -V usageMark Hatle
[YOCTO #6309] It appears a logic issue has caused rpm -V to no longer verify the files on the filesystem match what was installed. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-20recipes: convert remaining SUMMARY/DESCRIPTION cosmetic issues (part 2)Matthieu Crapet
Completes previous commit b5292d4115a4555a66b5e35acdc67dd71fb8577f. Updates SUMMARY[doc] (meta/conf/documentation.conf). Changes: - rename DESCRIPTION with length < 80 to (non present tag) SUMMARY - drop final point character at the end of SUMMARY string - remove trailing whitespace of SUMMARY line Note: don't bump PR Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-02-17rpm: fix a endian incompatible error in generating tagMing Liu
A flaw was found in the way rpm generating arbitrary tags, which leads to a incorrect query result, this issue is introduced by a incompatible endianess when the generating process is executed on different architectures. This patch resolves it by taking the byte order that host uses. Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>