summaryrefslogtreecommitdiff
path: root/meta/recipes-devtools/pseudo
AgeCommit message (Collapse)AuthorFiles
2013-10-30recipes: Remove PR = r0 from all recipesRichard Purdie1
Remove all PR = "r0" from all .bb files in oe-core. This was done with the command sed -e '/^PR.*=.*r0\"/d' recipes*/*/*.bb -i We've switching to the PR server, PR bumps are no longer needed and this saves people either accidentally bumping them or forgetting to remove the lines (r0 is the default anyway). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-29pseudo: fix library path in FILES_${PN}Roy Li1
libpseudo.so is always installed into ${prefix}/lib/, not ${libdir}, so fix these paths; and skip libdir WARN_QA checking to ignore the warning in 64bit and multilib enabled system Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-30pseudo: Fix race problemsRichard Purdie2
There is a potential issue with the fastop code in pseudo since a process may exit and allow some other function to run before the server has processed the commands run by the process. Issues have been see with unpredictable file permissions. To avoid this, we ping the server before exitting which guarantees it has processed the current command queue. The patch was written by peter.seebach@windriver.com [YOCTO #5132] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26pseudo: warn twice if the 32-bit toolchain appears brokenRoss Burton1
Putting a warning at the top of do_compile is useful but not everyone reads the file from beginning to end, so use a trap to put the message at the bottom too. [ YOCTO #4919 ] Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26pseudo: use bbnote/bbwarn instead of echoRoss Burton1
In the future bbnote/bbwarn will be integrated into bitbake's logging, so use those functions instead of echo directly. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-20pseudo: force NO32LIB to true for nativesdkRandy MacLeod1
The exported SDK only needs simulated root privileges for specific tasks, such as the user-mode NFS server or rootfs extraction, and oe-core does not support multilib builds in the generated SDK, so it is neither necessary nor possible to build a 32-bit libpseudo.so for a 64-bit SDK. [YOCTO #5135] Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-06pseudo: fix memory leak and missed privilege dropPeter A. Bigot2
qemu.bbclass adds PSEUDO_UNLOAD=1 in qemu_run_binary to avoid reference to pseudo functions that may not exist in the target environment. This patch detects the addition of that variable within the environment to which the call applies, even if not present in the parent environment. As a side effect it fixes a memory leak. [YOCTO #4843] Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-30remove the unnecessary protocol parametersJackie Huang1
It's not necessary to specify the protocol parameter when it's the default protocol for the fetcher, e.g. the default protocol for git fetcher it git, "protocol=git" isn't needed. Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-07-30pseudo: Always try to build 32-bit libpseudo when NO32LIBS is set to 0Peter Seebach1
This is for Yocto bug #4920. The NO32LIBS variable is intended to allow the user to force the creation of a 32-bit libpseudo, for use with things like prebuilt binary toolchains. Unfortunately, the tests for likely compilability (stubs-32.h) were still present, so you would get silent failures. And if you did cause it to try to build, the failures were not particularly clearly explained. So, we: 1. Emit at least a message during configuration saying we're only building 64-bit, if we are. 2. Warn the user for at least one common case where we know builds are likely to fail. 3. If NO32LIBS is 0, we try the compile for sure, and if it fails, we've emitted at least some sort of message up near the top of the compile output that tells you what might be wrong. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-06-17pseudo: drop version 1.4.5 recipePaul Eggleton1
We've been using 1.5.1 for a while now with success, so in line with the OE-Core policy of avoiding multiple versions of the same recipe let's drop this version. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-01Update pseudo to 1.5.1Peter Seebach2
pseudo 1.5's enable-force-async works great, unless you use a host where, inexplicably, stat(2) reports inconsistent and changing values for a file's size or times for some time unless a file has been fsynced, in which case you might want a way to cause an fsync to work. Also noticed that some recent changes never made it into the docs, so I did a little cleanup there. And changed the way NDEBUG suppresses pseudo's debug messages, so arguments to them with possible side effects (like calls into functions in another translation unit) can be omitted, which should drastically reduce computational time if anyone ever uses NDEBUG. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-02-19pseudo.inc: pseudo 1.5 uprev, support extra config flagsPeter Seebach3
The pseudo 1.5 update is a moderately experimental set of changes which ought to improve performance. With these changes, pseudo uses an in-memory sqlite database which is lushed on exit, the protocol is changed to reduce waiting for server responses, and pseudo can suppress any and all fsync/fdatasync type operations. This last feature is optional, and not on by default, so we need to pass in an extra configure argument, but that argument wouldn't be known to an older configure, so... Enter PSEUDO_EXTRA_OPTS which is passed to configure, and which pseudo_1.5.bb sets by default to "--enable-force-async". (I haven't added it in pseudo_git.bb, but maybe it should be changed; I'm not quite as sure there.) The justification for these changes is that, for most of the real-world build cases I deal with, they produce a 25% or more reduction in the build time of a project. This increases when a system is heavily loaded. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-02-13pseudo_1.4.5.bb: Finish fixing linkat()Peter Seebach3
The 1.4.4 fix replaced possible double-prepending of chroot paths with possible non-prepending of chroot paths. After significant evaluation, have settled on a single prepending of the chroot path as a workable compromise. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-02-13pseudo_git.bb: Bump to pseudo 1.4.4.Peter Seebach3
The pseudo 1.4.2 linkat() implementation had a broken edge case in which you could end up with chroot paths being doubled when using plain link() calls instead of linkat() calls. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-02-08pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3Peter Seebach4
This updates to pseudo 1.4.3. Changes: 1. A couple of minor tweaks to reduce difficulties using SDKs built on slightly more recent machines on older machines; specifically, avoiding getting @GLIBC_2.7 symbol references for sscanf(), fscanf(), and open2(). 2. Revision of the logic determining the library directory to use for sqlite's library files. The latter is a source of difficulty because it's come up a few times that we may want pseudo to use lib64 for libpseudo.so, but bitbake's usual setup would have libsqlite3.a in lib regardless of bit width. Cleaned up previous design a bit by providing a distinct setting for sqlite-lib, which defaults to the same library directory used for other things. Adjusted build to use this new setting. (This ends up being ${baselib}; on targets, that might not be lib, but for native builds it generally is, and for SDK builds it appears to do the right thing.) Testing: Successful build of meta-toolchain for both 64-bit and 32-bit SDKMACHINE, and builds with NO32LIBS = "0" also succeeded. Also builds for multilib targets. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-11-02recipes-devtools: replace virtclass-native(sdk) with class-native(sdk)Robert Yang1
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-14pseudo_1.4.1.bb: update to pseudo 1.4.1, fixing 32-bit host problemsPeter Seebach3
There were a number of cases where pseudo used plain old stat() to get dev/inode data for files; on 32-bit hosts, this could fail if the files were over 2GB, causing pseudo to prevent removing of large files. This is fixed in 1.4.1. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-19pseudo: Fix pseudo-native rebuild when triggered by dep changeMark Hatle1
When NO32LIBS = 0, building 32-bit version of pseudo-native and building on a 64-bit host -- if the build was triggered by a dependency change on something pseudo uses, the build could fail due to left over files from the previous build. Fix this by ensuring we run make distclean (and ignoring any failure codes) to ensure we start over. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-28pseudo.inc/pseudo_1.4.bb: update pseudo to 1.4Peter Seebach4
This update replaces the half-baked --arch logic with the use of $CFLAGS to pick compiler flags, on the grounds that it makes a lot more sense for the build system to pick flags than for pseudo to try to guess what they should be; this should allow pseudo to at least compile for targets, and possibly run on them. This doesn't solve the problem of guessing how to forcibly build the 32-bit variant on hosts, because we really don't have a general solution for that. There's no idiom for "given this set of compiler flags and this architecture, what flags would you use to request a 32-bit compile instead?" So we basically ignore that for now. If someone comes along trying to use the build system to build pseudo-native on a 64-bit host that also supports 32-bit binaries and isn't x86, we will revisit this. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09pseudo: Update to 1.3.1 (fixing chroot crash)Peter Seebach3
Yocto bug #2639. If a chroot path was long, expanding absolute paths within the chroot path could overrun a buffer. Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
2012-04-23pseudo: PR bump.Lianhao Lu2
Bump PR value due to the commit c6c701f424aeb502d20ff02d02712e56f4e259a5. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-22pseudo: Drop nativesdk wrapper and link against old memcpy symbolRichard Purdie2
The -nativesdk pseudo wrapper setting LD_LIBRARY_PATH turned out to be a bad idea since it can mix up different libc and lib-dl verisons which may or may not work depending on the phase of the moon. As an alternative to solving the original problem, this patch drops the symbol version requirement on memcpy which allows pseudo to work with libc's back to 2.7 which should be sufficient for our supported targets using nativesdk. [YOCTO #2299] [YOCTO #2351] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-22pseudo: Fix bashismsRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-15pseudo: Ensure the correct libraries are used at runtimeRichard Purdie3
There can be a conflict between the nativesdk libc and the host system's libc. It is assumed the nativesdk version is of an equal or higher version. This is a particular issue for pseudo if its loading a system binary since the system's libc might be used of an older verison which would then confuse libpseudo.so when loaded as a preload. To avoid this, set LD_LIBRARY_PATH so the nativesdk libc is always used. Since we now use --without-rpath, we can remove the MAKEOPTS RPATH workaround. [YOCTO #2299] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-13pseudo: default NO32LIBS to 1Paul Eggleton1
If this value is not set to 1, then systems with some 32-bit libraries but no 32-bit version of libgcc installed will have pseudo-native fail at do_compile. It should only really be set to 0 by those who know what they are doing. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-13pseudo: Tell pseudo to avoid specifying an RPATHMark Hatle3
[Yocto #2251] Add --without-rpath to avoid embedding rpaths into the pseudo components. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-28Pseudo: Update to 1.3Peter Seebach8
The various local patches have made it into upstream, so we update the build files and jump to pseudo 1.3. This also includes a popen() fix which fixes some edge cases that caused failures trying to check git branches and the like. [Yocto bug #2181] Signed-off-by: Seebs <peter.seebach@windriver.com> Updated the pseudo_git.bb to match. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-23pseudo: package the var/pseudo directory.Lianhao Lu3
Fixed the "not shipped" packaging warnings. WARNING: For recipe pseudo-nativesdk, the following files/directories were installed but not shipped in any package: WARNING: /opt/poky/1.1+snapshot/sysroots/x86_64-pokysdk-linux/usr/var WARNING: /opt/poky/1.1+snapshot/sysroots/x86_64-pokysdk-linux/usr/var/pseudo Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-07pseudo: Wrap renameat and opendirKhem Raj3
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-01-03pseudo: ensure libs are included in packageSaul Wold2
[YOCTO #1868] Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-01-03Add Upstream-Status to patchesSaul Wold1
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-11-08pseudo: Uprev pseudo to version 1.2Mark Hatle4
This adds a new feature, PSEUDO_UNLOAD, which can be used to eliminate overhead of LD_PRELOAD when no longer necessary. Also the, clone(2), support on Linux has been updated to resolve some potential defects in the previous implementation. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-09-27pseudo: Fix QA warningsRichard Purdie1
This fixes two QA warnings: a) Debug files being contained in the main package (by adding an appropriate FILES expression) b) Stop hardcoding the RPATH in the nativesdk case since our path is on the loaders default search path Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-20pseudo: fix uninitialised variable in realpath_fix.patchJoshua Lock2
Several users reported issues with pseudo on CentOS 5.x hosts, Matthew McClintock tracked the issue to the realpath_fix.patch and Mark Hatle supplied the included fix. CC: Matthew McClintock <msm@freescale.com> CC: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-06-09pseudo: Fix problem related to realpathMark Hatle3
When pseudo is disabled, certain programs that call realpath may not work properly. This was discovered when using the Qt MOC tool when certain qmake project features are used. [YOCTO #1150] Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-06-09pseudo: Update pseudo to 1.1.1 versionMark Hatle5
Update both the core and pseudo_git packages to the latest 1.1.1 verison. This fixes an issues where the call system() was not wrapped. This could lead to issues where certain spawned commands broke out of a pseudo-chroot and created files in the wrong place. Also the update the 1.0 -> 1.1.1 adds additional capabilities such as beginning support for MacOS X. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-05-11matchbox-theme-sato/pseudo: Add DEFAULT_PREFERENCE = -1 for SCM recipesRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-04poky-default-revisions: move the SRCREV to recipe fileYu Ke1
in this case, those non poky distro can also use these recipe normally Signed-off-by: Yu Ke <ke.yu@intel.com>
2011-02-10pseudo: Add and use the 1.0 release versionRichard Purdie3
Not using the git version has the advantage of removing several early bootstrap dependencies such as git-native (which pulls in perl and openssl). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-07pseudo: Uprev pseudo and fix a few minor bugsMark Hatle2
Uprev pseudo to the latest version. This corrects a linking problem on some newer host systems. In addition, we add more detail to the local.conf.sample file to explain the NO32LIBS and why someone would set it to 0. Also fix a minor bug in pseudo that prevented it from building for the target. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-01-25pseudo: Revert msg cache changesMark Hatle2
The message cache code in pseudo seems to be causing problems. So we have finally decided to revert that optimization. (The revert is in the upstream pseudo.) Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-01-18Workaround issue with latest version of pseudo.Mark Hatle2
The latest version of pseudo occasionally caches on an execvp. This should resolve the issue. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-01-18pseudo: Update to the latest upstream versionMark Hatle2
Update pseudo to the latest version to resolve a number of optimization defects. The problems were present on both 64-bit and 32-bit systems, but generally only caused issues on 32-bit hosts. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2010-12-17pseudo: Fixup for cache problemRichard Purdie2
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-09-07pseudo: Honour the NO32LIBS variableRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-27Major layout change to the packages directoryRichard Purdie2
Having one monolithic packages directory makes it hard to find things and is generally overwhelming. This commit splits it into several logical sections roughly based on function, recipes.txt gives more information about the classifications used. The opportunity is also used to switch from "packages" to "recipes" as used in OpenEmbedded as the term "packages" can be confusing to people and has many different meanings. Not all recipes have been classified yet, this is just a first pass at separating things out. Some packages are moved to meta-extras as they're no longer actively used or maintained. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>