summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* depgraph: queue ignored deps for later traversalZac Medico2011-05-011-13/+28
| | | | | | This will fix an issue with some build-time deps being ignored by --complete-graph in cases when --with-bdeps is not enabled. It should help --rebuild to find more rebuilds in this case.
* depgraph: account for new-style virtual/libcZac Medico2011-05-011-71/+93
| | | | This will fix bug #364681.
* trigger_rebuilds: handle circular depsZac Medico2011-05-011-1/+27
|
* depgraph: traverse bdeps in complete modeZac Medico2011-05-012-2/+9
| | | | | This makes the graph as complete as possible, and can help --rebuild to find more rebuilds.
* depgraph: ignore unwanted virtualsZac Medico2011-05-011-2/+3
| | | | | This fixes an unwanted side-effect from commit 470871eeafa89a05486d4eb6f3f7626c1f813e4d.
* emerge: add --rebuild and --norebuild-atoms optsDavid James2011-05-0113-26/+325
| | | | | | | | | | | | | | | | | | | | | | | Rebuild when build-time/run-time deps are upgraded. If pkgA has been updated, and pkgB depends on pkgA at both build-time and run-time, pkgB needs to be rebuilt. This feature ensures that all packages are consistent when dependencies that are used at both runtime and build time are changed. This feature only rebuilds packages one layer deep. That means that if you upgrade libcros, for example, packages that depend directly on libcros will be rebuilt and reinstalled, but indirect dependencies will not be rebuilt. BUG=chromium-os:14296 TEST=Test whether packages rebuilding a bunch of packages. Change-Id: Idbc0532b4b1de28fd9e5a0abe3b7dbe1a3abd2c8 Review URL: http://codereview.chromium.org/6905107
* repoman: remove most old-style virtual checksZac Medico2011-05-013-55/+2
| | | | | | | | | 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.
* repoman: Check for PROVIDE.Ulrich Mueller2011-05-012-0/+8
| | | | This will fix bug #365505.
* Support multiple arguments in set_unless_changed() and unset_unless_changed().Arfrever Frehtes Taifersar Arahesis2011-05-012-20/+27
| | | | Use VARIABLE=VALUE syntax for arguments of set_unless_changed().
* runtests.sh: propagate arguments to runTestsZac Medico2011-05-011-1/+1
|
* Bug #365439: Add set_unless_changed() and unset_unless_changed().Arfrever Frehtes Taifersar Arahesis2011-05-013-5/+47
|
* depgraph: migrate implicit libc deps from SchedZac Medico2011-04-302-65/+65
| | | | | Now all the virtual/libc handling is done by the depgraph, which will be helpful when fixing bug #364681.
* install_qa_check(): Simplify code and make 'l' a local variable.Arfrever Frehtes Taifersar Arahesis2011-04-301-3/+3
|
* Check for references to ${ROOT} in install_qa_checks.David James2011-04-291-8/+26
| | | | | | | | | | | | | | | | | | | | | | | | 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
* emergelog: only set permission on creationZac Medico2011-04-291-3/+5
| | | | This will fix bug #365319.
* action_info: eliminate duplicate info_pkgs matchZac Medico2011-04-291-10/+21
| | | | | | | | | | Currently, sys-kernel/linux-headers is matched by both a plain sys-kernel/linux-headers atom and by the virtual/os-headers new-style virtual. For backward compatibility, we're going to have duplicates like this for at least a few months (see bug #364673, comment #5). Therefore, automatically eliminate duplicates in the display. Entries that include virtual provider info are preferred over those that do not.
* _postinst_bsdflags: apply to $ROOT, not $DZac Medico2011-04-281-1/+1
|
* Move preinst/postinst_bsdflags from bash to pyDavid James2011-04-283-31/+29
| | | | | | | | | | | | | 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
* display_preserved_libs: load plib_registryZac Medico2011-04-281-1/+3
| | | | | | | Since commit 7535cabdf2fab76fc55df83643157613dfd66be9, the plib_registry is modified in a subprocess, and the parent process' copy can become stale because of this. Therefore, explicitly load it.
* emerge: add --misspell-suggestions=n optionZac Medico2011-04-284-2/+25
| | | | This will fix bug #363137.
* emerge: fix indent for --binpkg-respect-use helpZac Medico2011-04-281-1/+1
|
* emerge: add --help for 3 new optionsZac Medico2011-04-271-0/+20
|
* emerge: add 3 new options similar to --excludeDavid James2011-04-273-40/+129
| | | | | | | | | | | | | | | | | | | | | | | Add --nousepkg-atoms, --useoldpkg-atoms, and --reinstall-atoms flag to Portage reinstall-atoms accepts a space separated list of package names or slot atoms. Emerge will treat matching packages as if they are not installed, and reinstall them if necessary. useoldpkg-atoms accepts a space separated list of package names or slot atoms. Emerge will prefer matching binary packages over newer unbuilt packages. This is useful in case you want to request that a particular package won't be rebuilt from source. nousepkg-atoms accepts a space separated list of package names or slot atoms. Emerge will ignore matching binary packages. Change-Id: I0d73039c6a4cd63695b28ffc80215628e0e05c95 BUG=chromium-os:12507 TEST=Try out the flag Review URL: http://codereview.chromium.org/6577024
* --autounmask: Don't change masked/forced flagsSebastian Luther2011-04-273-2/+35
| | | | This will fix bug #364701.
* expand_new_virt: don't traverse blockersZac Medico2011-04-271-0/+6
|
* expand_new_virt: validate EAPI, IUSE and USEZac Medico2011-04-271-4/+25
|
* expand_new_virt: eliminate cpv_getkeyZac Medico2011-04-271-2/+1
|
* expand_new_virt: use stack for recursionZac Medico2011-04-261-24/+25
|
* Bug #364467 - handle gcc-4.6-style QA warningsRyan Hill2011-04-261-18/+18
|
* Fix a typo.Arfrever Frehtes Taifersar Arahesis2011-04-261-1/+1
|
* emerge --info: support new-style virtualsZac Medico2011-04-261-23/+62
| | | | This will fix bug #364673.
* ebuild(1): fix env FEATURES overrides bug #364035Zac Medico2011-04-231-4/+2
|
* repoman: deprecate more eclassesTomas Chvatal2011-04-201-0/+5
|
* repoman: cleanup gpgsignv2.2.0_alpha30Zac Medico2011-04-131-12/+23
|
* Update timestamps in headers of modified files.Zac Medico2011-04-135-5/+5
|
* doins: tweak $DISTDIR symlink handlingZac Medico2011-04-112-3/+4
| | | | | Only match stuff inside $PORTAGE_ACTUAL_DISTDIR/ so that we don't stray from PMS.
* doins: dereference abs symlinks to filesZac Medico2011-04-111-1/+7
| | | | | | | | | 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.
* extract_affecting_use: test bug #363073Zac Medico2011-04-111-0/+3
|
* extract_affecting_use: allow parens in atomsZac Medico2011-04-111-3/+5
| | | | | | | This fixes bug #363073 in which an InvalidDependString exception is erroneously triggered by atoms containing EAPI 4 USE dependency defaults. This case is very similar to bug #354003 which was fixed in commit 8735222b77e66850213e2aa6a7ea48e744ba0d4f.
* Remove unnecessary sync in Scheduler.py.David James2011-04-111-1/+1
| | | | | | | | | | | | | | If we are passed a fakevartree object, it should already be sync'd, so there is no need to sync it again here. This sync is only needed when we create a new FakeVartree, so I moved the sync to the right place to fix this. BUG=chromium-os:14035 TEST=Build a bunch of packages with this patch. Change-Id: I89d79cf946f4c0c27ad585ad7c88a41985260342 Review URL: http://codereview.chromium.org/6813084
* Fix a typo in a comment.Zac Medico2011-04-101-1/+1
|
* Scheduler: add more info in docstring commentsZac Medico2011-04-101-1/+7
| | | | This clarifies the purposes of _system_merge_started and _choose_pkg.
* Add force-mirror FEATURE.David James2011-04-073-7/+11
| | | | | | | | | | | | | force-mirror: Only fetch files from configured mirrors, ignoring SRC_URI, except when mirror is in the ebuild(5) RESTRICT variable. BUG=chromium-os:13221 TEST=Test that ebuilds now fail with FEATURES=force-mirror if files are not in the configured mirror. Change-Id: I8484d5af8dff97b431398030b33c024ff1295ba0 Review URL: http://codereview.chromium.org/6677171
* filter PORTAGE_GPG_SIGNING_COMMAND for ebuild envZac Medico2011-04-041-1/+2
|
* Merge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portageArfrever Frehtes Taifersar Arahesis2011-04-031-1/+1
|\
| * repoman: fix profiles.desc overlay pathZac Medico2011-04-031-1/+1
| | | | | | | | | | Thanks to Alexey Shvetsov <alexxy@gentoo.org> for reporting this issue and testing the fix.
* | Support PORTAGE_GPG_SIGNING_COMMAND variable.Arfrever Frehtes Taifersar Arahesis2011-04-033-12/+22
|/
* Display: fix fetch restrict msg for RO_DISTDIRSZac Medico2011-03-312-2/+5
| | | | This will fix bug #361463.
* Minor improvements in gpgsign().Arfrever Frehtes Taifersar Arahesis2011-03-311-5/+4
| | | | repoman_settings["PORTAGE_GPG_DIR"] is always set.
* Simplify calculation of repoman_settings["PORTAGE_GPG_DIR"] in gpgsign().Arfrever Frehtes Taifersar Arahesis2011-03-301-5/+2
| | | | os.path.expanduser() works even when HOME environment variable is not set.