| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
|
|
|
|
|
|
| |
This prevents memory leaks via portdbapi.portdbapi_instances when the
module is reloaded. Also, there's no need for ebuild(1) to call
close_portdbapi_caches() since it's now handled automatically during
the reload.
|
|
|
|
|
|
| |
This is necessary since portage probes functions in globals() and
treats functions it finds as commands. Also, use lazy import to
minimize global scope imports.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Something like this was requested in bug #157357. Now that Gentoo has
migrated all virtuals to GLEP 37 new-style virtuals, this kind of
function may be helpful in order to resolve the currently installed
provider of a particular virtual in scripts like bootstrap.sh.
Usage:
portageq expand_virtual <root> <atom>
Returns a \n separated list of atoms expanded from a
given virtual atom, excluding blocker atoms. Satisfied
virtual atoms are not included in the output, since
they are expanded to real atoms which are displayed.
Unsatisfied virtual atoms are displayed without
any expansion. The "match" command can be used to
resolve the returned atoms to specific installed
packages.
Example input/output:
$ portageq expand_virtual / virtual/jre
=dev-java/sun-jdk-1.6.0*
$ portageq expand_virtual / virtual/jre:1.5
dev-java/gcj-jdk
$ portageq expand_virtual / virtual/package-manager
sys-apps/portage
$ portageq expand_virtual / virtual/libc
sys-libs/glibc:2.2
$ portageq expand_virtual / virtual/os-headers
sys-kernel/linux-headers:0
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This will fix bug #288597.
|
|
|
|
|
|
|
| |
This solves an issue like bug #142508, but involving etc-update instead
of dispatch-conf. This is also relevant to bug #70668, which is the
same issue, though the reporter suggested to use colors to delimit the
output instead of using clear.
|
| |
|
|
|
|
|
|
|
|
| |
EbuildBuildDir also performs safe removal of the category when it is
empty, so ebuild.sh/dyn_clean doesn't need to do it anymore. This
fixes a race condition if one process is trying to remove the category
directory while another one is trying to create it for
PORTAGE_BUILDDIR.
|
|
|
|
|
| |
This will give third-party repoman users some time to migrate their
repos away old-style virtuals.
|
|
|
|
|
|
| |
The reasoning for the code from commit
55b3150af635a418ba3f1424132359c894db7ec4 is not really obvious, so
it's helpful to reference the corresponding bug report.
|
| |
|
|
|
|
|
|
|
| |
When EBUILD_PHASE != depend, INHERITED comes pre-initialized
from cache. In order to make INHERITED content independent of
EBUILD_PHASE during inherit() calls, we unset INHERITED after
we make a backup copy for QA checks.
|
|
|
|
|
|
|
|
|
| |
PROVIDE virtuals have been banned from Gentoo's tree (see bug #365505),
so these checks aren't needed anymore. The PROVIDE.syntax check is kept
in the Package class since PROVIDE is still supported for backward
compatibility, and therefore invalid syntax can still have negative
effects. This check can be removed if/when backward compatibilty is
completely dropped.
|
|
|
|
| |
This will fix bug #365505.
|
|
|
|
| |
Use VARIABLE=VALUE syntax for arguments of set_unless_changed().
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When ROOT != /, binaries that reference ROOT will load their
dependencies from ROOT first rather than from the system-configured
path. This is a problem because the ROOT will be / on the target
system.
Besides the above, this patch also fixes incorrect parsing of scanelf
output, where we would treat the RPATHs returned by scanelf as the
names of binaries.
TEST=When "stricter" FEATURE is enabled, verify that emerge
fails when an ebuild references broken rpaths referencing
ROOT. When "stricter" FEATURE is not enabled, verify that such
references are automatically fixed. Also verify that ebuilds
with non-broken RPATHs (e.g. RPATHs referencing $ORIGIN/../lib)
are not touched by the change.
BUG=chromium-os:14271
Change-Id: I4f29cc4ea9195a1255f080284da1f676e4a2c26b
Review URL: http://codereview.chromium.org/6903153
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Moving these commands from shell to Python helps avoid an unnecessary
call to misc-functions.sh for the postinst_bsdflags. This improves
performance.
BUG=none
TEST=Run emerge-x86-generic -eg --jobs=16 libchrome
Change-Id: I0c2af50b4d2f7644cabac84fde7fe4d682010c69
Review URL: http://codereview.chromium.org/6676107
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Only match stuff inside $PORTAGE_ACTUAL_DISTDIR/ so that we don't
stray from PMS.
|
|
|
|
|
|
|
|
|
| |
Our fake $DISTDIR contains symlinks that should not be reproduced
inside $D. In order to ensure that things like dodoc
"$DISTDIR"/foo.pdf work as expected, we dereference symlinked files
that are referenced by absolute paths. Thanks to James Cloos
<cloos@jhcloos.com> for reporting this issue which he observed with
the sci-mathematics/minisat ebuild.
|
|\ |
|
| |
| |
| |
| |
| | |
Thanks to Alexey Shvetsov <alexxy@gentoo.org> for reporting this issue
and testing the fix.
|
|/ |
|
|
|
|
| |
repoman_settings["PORTAGE_GPG_DIR"] is always set.
|
|
|
|
| |
os.path.expanduser() works even when HOME environment variable is not set.
|
| |
|
|
|
|
|
|
|
|
| |
The lzma snapshots have been replaced by xz snapshots, as discussed in
the "RFC: Remove .lzma in favor of .xz portage snapshots" thread on the
gentoo-dev ml:
http://archives.gentoo.org/gentoo-dev/msg_7de1b57ce531fdf33d33b5b070006436.xml
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Right now ebuild.sh runs preprocessing steps multiple times during the
same build. It processes the same environment and produces the same
output every time. This slows down the build unnecessarily.
This optimization cuts build time for 50 binary packages with 16 jobs
from 3m22 to 2m33 (33%).
Change-Id: I72ac84cce2eb60d17736cc5f5343d4a858ec86f4
Review URL: http://codereview.chromium.org/6733008
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes it possible for the daemon to send a reply without blocking,
thereby improving performance and also making it possible for the
daemon to do a non-blocking write without a race condition.
This reverts part of commit 81fc303212b8379219cf5d463c8717359b972dba,
which probably didn't help portability anyway. Now, ebuild-ipc is using
non-blocking read with os.read and EAGAIN handling, just like
EbuildIpcDaemon since commit 7e5b81da12dd7bd59f6620840dc0d824e3f4d69a
(known compatible with FreeBSD).
|
|
|
|
|
| |
Array.fromfile() seems to be more error prone. For example, see
bug 337465.
|
| |
|
|
|
|
|
|
| |
This has been broken since the setcpv call (triggering metadata
generation) was added before it in commit
0b39d24bb8270e5c89eaddfd1f5a4181cf9e31d3.
|
|
|
|
| |
This makes it possible to override PORTAGE_TMPDIR.
|
|
|
|
|
|
| |
This check got removed for bug #262365, but now that EAPI 4 is released
we can add it back. Now it checks for ecompress/ecompressdir too (for
bug #218347).
|
| |
|
| |
|
|
|
|
| |
This will fix broken recursion logic for bug #356461.
|
| |
|
| |
|