aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/dpkg/dpkg.inc
AgeCommit message (Collapse)Author
2017-12-11dpkg: Add missing RDEPENDS for dpkg-perlTom Rini
In order to be able to use dpkg-perl on a system various stock perl modules must also be installed on the system. Create the list of required modules based on a read of the code and testing with additional utilities and list them in RDEPENDS_${PN}-perl. Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
2017-12-11dpkg: Fix perl modules by moving them to the versioned perl directoryTom Rini
In order for the dpkg perl modules to be used the must reside in the versioned perl library directory (as to be in the default include path). Be explicit about this location in our FILES_${PN}-perl directive, so that if this breaks in the future, the recipe will fail). We can now drop the custom do_configure as it wasn't fixing this problem. Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com>
2017-03-31dpkg: Add PACKAGECONFIG for liblzma and enable itRichard Purdie
liblzma is part of xz and we already build it but configure it out. This makes no sense. Enabling it means we gain multithreaded compression and it speeds dpkg-deb up massively. It also removes the fork overhead of separate xz processes. Turning the existing config into a PACKAGECONFIG and turning it on by default therefore makes best use of what we have available. The manual RDEPENDS are no longer needed since it uses liblzma which is picked up by the shlibs code magically. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-13run-postinsts: simplify the logic of whether to install it to imagesAlexander Kanavin
The logic is scattered all over the place, but amounts to "install, unless the rootfs is read only". Let's express that directly. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
2017-03-01dpkg: Upgrade to 1.18.10Aníbal Limón
Add a patch to don't use --clamp-time when call tar because isn't supported in tar hosts versions. See 0007-dpkg-deb-build.c-Remove-usage-of-clamp-mtime-in-tar.patch patch for details. Rebased patch: - 0003-Our-pre-postinsts-expect-D-to-be-set-when-running-in.patch Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-12-16meta: remove True option to getVar callsJoshua Lock
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\) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-09-28dpkg: Only set DEB_HOST_ARCH in target caseRichard Purdie
If we don't do this, the sstate checksums vary for dpkg-native depending on which MACHINE is set and this is clearly incorrect. It leads to dpkg-native rebuilding far too often. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-10dpkg: Avoid automatic target architecture detectionAlexandre Belloni
dpkg is using a script (dpkg-architecture.pl) to detect the target architecture automatically. Unfortunately, it is using the cross compiler prefix to do the detection and for ARM, oe-core is using <vendor>-linux-gnueabi for toolchains with and without call-convention hard. The script then always detects 'armel' and never gets 'armhf' for call-convention hard. This solves: dpkg: error processing archive evtest_1.32+0+b8343ec112-r0_armhf.deb (--install): package architecture (armhf) does not match system (armel) Errors were encountered while processing: evtest_1.32+0+b8343ec112-r0_armhf.deb Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-04dpkg: put start-stop-daemon into a separate packageJoe Slater
This is useful for supplying start-stop-daemon to images that do not include busybox. Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-07-26dpkg: use snapshot.debian.org for SRC_URIRoss Burton
Using ${DEBIAN_MIRROR} for SRC_URI doesn't work very well as that will only contain releases that are currently in Debian, so currently doesn't contain 1.18.7 as unstable has moved on to 1.18.9. So, move all of SRC_URI to the .bb so it can use snapshot.debian.org instead, and set UPSTREAM_CHECK_URI to ${DEBIAN_MIRROR} so upstream release checking continues to work. Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-06-03dpkg: Upgrade to 1.18.7Aníbal Limón
Rebased patches: 0003-Our-pre-postinsts-expect-D-to-be-set-when-running-in.patch add_armeb_triplet_entry.patchadd_armeb_triplet_entry.patch Patches removed already in upstream: [1] 0001-When-running-do_package_write_deb-we-have-trees-of-h.patch [2] fix-abs-redefine.patch Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> [1] https://anonscm.debian.org/cgit/dpkg/dpkg.git/commit/dpkg-deb/build.c?id=7a91341446851cd3594a8b752823b8c1f26d652a [2] https://anonscm.debian.org/cgit/dpkg/dpkg.git/commit/lib/dpkg/i18n.h?id=ecd4baa091619cbbdd70043129dd992573580371 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-07dkpg: Use tar everywhere (not gtar)Richard Purdie
All our systems usually have tar, if we want the native sstate to work universally, we need to prefer this. This avoids a system with gtar causing dpkg-native to use it and it not being present on some systems. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01dpkg: update to 1.18.2Alexander Kanavin
check_snprintf.patch has been dropped, because it seems to fix a problem that doesn't anymore exist, and doesn't have any description of what the problem was and how was it fixed. tarfix.patch has been merged upstream. The rest of the patches have been rebased to the new upstream release Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31dpkg-native: Avoid 'file changed' errors from tarRichard Purdie
Hardlink count duing do_package_write_deb can change causing dpkg-deb failures. We don't care about this error case so avoid it by checking the tar exit code. [YOCTO #7529] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-24dpkg: Don't move update-alternatives to sbindirAndreas Oberritter
Debian, Ubuntu and opkg all have it in bindir. Signed-off-by: Andreas Oberritter <obi@opendreambox.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23recipes: Delete superfluous assignments, S = ${WORKDIR}/${BP}Robert P. J. Day
Given that bitbake.conf sets the default values: BP = "${BPN}-${PV}" S = "${WORKDIR}/${BP}" there are a number of recipes that set the variable S completely superfluously, so get rid of them. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-14meta: enable parallel build for several recipesRobert Yang
I used a for loop to build these packages more than 520 times, these recipes never failed. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2015-02-03dpkg: add perl to RDEPENDSRobert Yang
perl scripts: packages-split/dpkg/usr/bin/dpkg-parsechangelog:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-mergechangelogs:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-architecture:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-vendor:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-shlibdeps:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-scanpackages:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-buildpackage:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-genchanges:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-gensymbols:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-distaddfile:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-buildflags:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-checkbuilddeps:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-gencontrol:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-scansources:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-source:#!/usr/bin/perl packages-split/dpkg/usr/bin/dpkg-name:#!/usr/bin/perl packages-split/dpkg/usr/lib/dpkg/parsechangelog/debian:#!/usr/bin/perl Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2015-01-29dpkg: fix host contaminationDan McGregor
Force dpkg to use "tar" on the target. The dpkg configure script looks for gnutar, gtar, and tar in order. If it finds gnutar or gtar on the host it expects to use that as its tar program on the target. Without this, if gtar exists (as it does on my system) then dpkg will consistently fail on the target with an error about gtar not being found. Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-12-25dpkg: Upgrade to 1.17.21Aníbal Limón
Remove dpkg-1.17.4-CVE-2014-0471, dpkg-1.17.4-CVE-2014-0471-CVE-2014-3127 and ignore_extra_fields patches that are already in upstream. Rebase no-vla-warning patch. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-25Globally replace 'base_contains' calls with 'bb.utils.contains'Otavio Salvador
The base_contains is kept as a compatibility method and we ought to not use it in OE-Core so we can remove it from base metadata in future. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-25Globally replace oe.utils.contains to bb.utils.containsOtavio Salvador
BitBake has the exact same code as oe.utils.contains so there's no reason to duplicate it. We now rely on the bb.utils.contains code for metadata. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-07opkg/dpkg: remove the postinstallsLaurentiu Palcu
Just use the run-postinsts recipe for running first boot postinstalls. [YOCTO #5666] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28dpkg: Use bzip2-replacement-nativeRichard Purdie
bzip2-native is in ASSUME_PROVIDED so the dependency that dpkg has doesn't correctly trigger the build dependency. This shows up if you don't have bzip2 development headers on your build machine and you: bitbake dpkg-native bitbake dpkg-native -c cleansstate rm tmp -rf bitbake dpkg-native This patch uses the bzip2-replacement-native dependency as a handful of other recipes do to make sure libbz2 is available. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28dpkg: Fix dpkg-native dependency on target xzRichard Purdie
dpkg-native should not depend on the target xz. Fix this. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-01-28dpkg: use systemd service for first boot configurationChen Qi
Use a systemd service file for first boot configuration for dpkg based images which has 'package-management' in its IMAGE_FEATURES. [YOCTO #5719] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-01-02Replace one-line DESCRIPTION with SUMMARYPaul Eggleton
A lot of our recipes had short one-line DESCRIPTION values and no SUMMARY value set. In this case it's much better to just set SUMMARY since DESCRIPTION is defaulted from SUMMARY anyway and then the SUMMARY is at least useful. I also took the opportunity to fix up a lot of the new SUMMARY values, making them concisely explain the function of the recipe / package where possible. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-01-02dpkg: fix/remove unrecognised optionsRobert Yang
Fix/remove the following unrecognised options: * --without-static-progs: can't find anything about this in the history, so remove it. * --without-dselect -> --disable-dselect * --with-start-stop-daemon -> --enable-start-stop-daemon * --with-bz2lib, typo, should be --with-bz2 * --without-sgml-doc: the sgml doc had been removed from dpkg, so remove it. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2013-10-01dpkg: Add xz to RDEPENDSSaul Wold
dpkg uses xz as a compressor and the binary image is needed on the system for dpkg to work correctly. [YOCTO #1881] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-02dpkg: Drop INC_PR as it's unusedSaul Wold
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-06-13dpkg: drop the usage of create_wrapperRoss Burton
create_wrapper was previously abused to invoke the Perl interpretter directly instead of relying on #! parsing, which is read into a 128 byte buffer so breaks with deep build directories. However we already install a "nativeperl" binary into the native sysroot, so use sed to change the #! line to /usr/bin/env nativeperl. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-05-31dpkg: Be deterministic about lzma dependencyRichard Purdie
dpkg has no DEPENDS on lzma so turn it off explicitly. [YOCTO #4518] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-05-29dpkg-native: Fix native perl pathMing Liu
The path to the native perl was incorrect leading to rootfs failures. This patch corrects that problem, it's a complementary fix for commit:04432446. Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-05-23dpkg: modify the run-postinst script to enable postinst loggingChen Qi
Enable postinst logging by checking the configuration in ${sysconfdir} /default/postinst. In this way, the postinst logging is enabled if 'debug-tweaks' is in IMAGE_FEATURES, and at the same time, we avoid unnecessary rebuilt if IMAGE_FEATURES is changed. [YOCTO #4262] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-05-02dpkg: Ensure target packages don't reference perlnativeRichard Purdie
Currently a load of scripts in ${bindir} start with: which is undesireable, this patch fixes that. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-04-18dpkg: Correct paths in postinstRichard Purdie
The postinstall needs to reference $D, not ${D} which would get expanded by bitbake. This allows postinsts to run correctly on the target system. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-04-11dpkg, opkg, rpm-postinsts: avoid repackaging when changing IMAGE_FEATURESPaul Eggleton
Recipes cannot depend on the value of IMAGE_FEATURES; in this case the result is do_package task signatures changing every time IMAGE_FEATURES changes, causing a large number of task re-executions. The implementation of the log capturing really needs to be changed to capture these in a different place and possibly not even conditional upon IMAGE_FEATURES at all, but this will be invasive at this point in the development cycle. For now, remove the variable dependencies to fix the immediate problem. Fixes [YOCTO #4246]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-04-11dpkg, opkg, rpm-postinst: fix overwriting the run-postinstall scriptLaurentiu Palcu
If multiple package managers are installed in the image, they will overwrite each other's run-postinsts script, resulting in postinstalls not beeing run at all at first boot. What this patch does: * checks whether opkg/dpks/rpm is actually used to install the packages and, only after, creates the run-postinsts script; * brings dpkg recipe in sync with opkg: moves the script creation from do_install to postinstall; * move creation of run-postinsts script (rpm-postinsts recipe) to the postinstall scriptlet in order to better control the creation of the script according to the package manager used; [YOCTO #4231] [YOCTO #4179] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-21dpkg: Fix case where ${B} != ${S}Richard Purdie
Add missing path component to make out of tree builds work. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-12dpkg depends on ncursesAlexandru DAMIAN
Dpkg compilation depends on the ncurses, so add this dependency. Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-03-07dpkg: save output of postinstall scripts when image firstbootKang Kai
When image feature "debug-tweaks" enabled, save output of postinstall scripts to log file /var/log/postinstall.log when image first boot. And the log file can be configured. It also needs image feature "package-management" enabled. If not, package run-postinsts will be installed and then all packages will be configured by it. Command 'dpkg --configure' outputs nothing. [YOCTO #3223] Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-02-04dpkg: Add missing pkgconfig dependencyRichard Purdie
configure touches pkg-config for various tests so we need the DEPENDS which we can gain from the class inherit Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-02-01dpkg-native:fix dpkg-scanpackages error at deb image creation time on Fedora 17Hongxu Jia
Invoking dpkg-scanpackages on Fedora 17 to build deb image meets such an error: Can't locate Dpkg.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/loc al/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr /lib64/perl5 /usr/share/perl5.) at tmp/sysroots/x86_64-linux/usr/bin/dpkg-sca npackages line 27. 1. The dpkg-scanpackages is invoked at deb image creation time and it is built by dpkg-native. The dpkg-scanpackages is a perl script and import module `Dpkg'. 2. The Dpkg.pm has been installed in perl's staging dir at dpkg-native compiling time. Such as `tmp/sysroots/x86_64-linux/usr/lib/perl-native/perl/Dpkg.pm' 3. The dpkg-native uses create_wrapper to relocate to perl-native if perl-native has been built. If perl-native isn't built, it will use the host Dpkg as default. 4. If dpkg-native is built on a new build envionment which means perl-native doesn't exist before, and the build system doesn't install dpkg (such as Fedora 17), the dpkg-scanpackages could not work correctly. 5. Modify dpkg-native's depends, change `perl-native-runtime' to `perl-native', Let perl-native automatically be built before building dpkg-native. [YOCTO #3817] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02recipes-devtools: replace virtclass-native(sdk) with class-native(sdk)Robert Yang
The overrides virtclass-native and virtclass-nativesdk are deprecated, which should be replaced by class-native and class-nativesdk. [YOCTO #3297] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-02dpkg: upgrade to 1.16.8Constantin Musca
autofoo.patch: removed - the patch is not used check_version: adapted to the new version - adapt the linux-wrs kernel version, which has character '_' - remove the first-char-digit-check (as the 1.15.8.5 version does) dpkg-deb-avoid-fflush.patch: removed - the patch is included in the new version fix-timestamps.patch: added - the lutimes function doesn't work properly for all systems ignore_extra_fields.patch: adapted to the new version nochroot.patch: removed - the patch is not used noman.patch: adapted to the new version noupdalt.patch: removed - the patch is not used perllibdir.patch: removed - in the new version PERL_LIBDIR will be set only if empty preinst.patch: adapted to new version removed-tar-no-timestamp.patch: added - the busybox-1.19.4 tar utility doesn't support --warning=no-timestamp Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
2012-07-05dpkg 1.15.8.7: bad interpreter when long tmpdirRobert Yang
When use PACKAGE_CLASSES = "package_deb", and the length of tmpdir is longer than 177, the error occurs during the image generation: /very/long/path/totmp/sysroots/x86_64-linux/usr/bin/dpkg-scanpackages: bad interpreter: No such file or directory The interpreter is perl, and it does exist, this is because the first line: #!/very/long/path/to/perl in the script can't be very long. Create a wrapper for it would fix the problem. [YOCTO #2640] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-13dpkg: rename postinst trigger scriptOtavio Salvador
Use 'run-postinsts' as trigger script name as it describes better the intent of it. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2012-03-08bzip2: split into binary and library packagesAndreas Oberritter
* Create libbz2 (and -dev, -staticdev), which can be installed without the bzip2 executables. Signed-off-by: Andreas Oberritter <obi@opendreambox.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-21dpkg: clarify LICENSE as GPLv2.0Joshua Lock
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-12-02dpkg-native: Fix perl pathRichard Purdie
The path to the native perl was incorrect leading to rootfs failures. This patch corrects that problem. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>