From: "Thomas Sachau" <tommy@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/portage:multilib commit in: /
Date: Wed, 23 May 2018 12:23:21 +0000 (UTC) [thread overview]
Message-ID: <1527078147.b74e878839a2b1e8d6148776d5a44019d8fffbc1.tommy@gentoo> (raw)
commit: b74e878839a2b1e8d6148776d5a44019d8fffbc1
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Wed May 23 12:22:27 2018 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Wed May 23 12:22:27 2018 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=b74e8788
Merge portage-2.3.38
.travis.yml | 2 +
NEWS | 9 +
RELEASE-NOTES | 92 +++
bin/eapi.sh | 18 +-
bin/ebuild | 8 +-
bin/ebuild-helpers/ecompressdir | 4 +-
bin/ebuild-ipc.py | 55 +-
bin/ebuild.sh | 3 +
bin/egencache | 5 +-
bin/emaint | 3 +
bin/emerge | 5 +
bin/emirrordist | 6 +-
bin/estrip | 3 +-
bin/etc-update | 31 +-
bin/install-qa-check.d/10ignored-flags | 2 +-
bin/misc-functions.sh | 2 +-
bin/phase-functions.sh | 9 +
bin/phase-helpers.sh | 159 ++---
bin/portageq | 6 +-
bin/quickpkg | 14 +-
cnf/repos.conf | 3 +-
man/ebuild.5 | 6 +
man/emerge.1 | 38 +-
man/portage.5 | 10 +-
pym/_emerge/AbstractEbuildProcess.py | 97 ++-
pym/_emerge/AbstractPollTask.py | 87 +--
pym/_emerge/AsynchronousLock.py | 76 +--
pym/_emerge/AsynchronousTask.py | 60 +-
pym/_emerge/Binpkg.py | 78 ++-
pym/_emerge/BinpkgExtractorAsync.py | 16 +-
pym/_emerge/BinpkgFetcher.py | 104 ++-
pym/_emerge/CompositeTask.py | 46 +-
pym/_emerge/EbuildBuild.py | 99 ++-
pym/_emerge/EbuildBuildDir.py | 172 +++--
pym/_emerge/EbuildFetcher.py | 135 +++-
pym/_emerge/EbuildIpcDaemon.py | 28 +-
pym/_emerge/EbuildMerge.py | 26 +-
pym/_emerge/EbuildMetadataPhase.py | 55 +-
pym/_emerge/EbuildPhase.py | 22 +-
pym/_emerge/FifoIpcDaemon.py | 32 +-
pym/_emerge/MetadataRegen.py | 14 +-
pym/_emerge/Package.py | 54 +-
pym/_emerge/PackageUninstall.py | 37 +-
pym/_emerge/PipeReader.py | 42 +-
pym/_emerge/Scheduler.py | 106 ++--
pym/_emerge/SpawnProcess.py | 23 +-
pym/_emerge/SubProcess.py | 123 +---
pym/_emerge/actions.py | 53 +-
pym/_emerge/create_world_atom.py | 6 +-
pym/_emerge/depgraph.py | 33 +-
pym/_emerge/main.py | 13 +-
pym/_emerge/resolver/DbapiProvidesIndex.py | 3 +-
pym/portage/__init__.py | 8 +-
pym/portage/_emirrordist/FetchIterator.py | 323 ++++++----
pym/portage/_emirrordist/FetchTask.py | 2 +-
pym/portage/_emirrordist/MirrorDistTask.py | 27 +-
pym/portage/_legacy_globals.py | 3 +-
pym/portage/const.py | 2 +-
pym/portage/dbapi/IndexedVardb.py | 2 +-
pym/portage/dbapi/_MergeProcess.py | 47 +-
pym/portage/dbapi/__init__.py | 44 +-
pym/portage/dbapi/bintree.py | 89 ++-
pym/portage/dbapi/porttree.py | 153 ++++-
pym/portage/dbapi/vartree.py | 10 +-
pym/portage/dbapi/virtual.py | 4 +-
pym/portage/eapi.py | 16 +-
pym/portage/emaint/modules/binhost/binhost.py | 1 +
pym/portage/exception.py | 3 +
.../package/ebuild/_config/LocationsManager.py | 25 +-
.../package/ebuild/_config/special_env_vars.py | 8 +-
pym/portage/package/ebuild/_ipc/QueryCommand.py | 4 +-
.../ebuild/_parallel_manifest/ManifestScheduler.py | 25 +-
.../ebuild/_parallel_manifest/ManifestTask.py | 24 +-
pym/portage/package/ebuild/config.py | 44 +-
pym/portage/package/ebuild/doebuild.py | 30 +-
pym/portage/package/ebuild/profile_iuse.py | 32 +
pym/portage/process.py | 10 +
pym/portage/sync/modules/rsync/rsync.py | 42 +-
pym/portage/tests/__init__.py | 20 +-
pym/portage/tests/dbapi/test_portdb_cache.py | 3 +-
pym/portage/tests/ebuild/test_ipc_daemon.py | 6 +-
pym/portage/tests/emerge/test_simple.py | 51 +-
pym/portage/tests/locks/test_asynchronous_lock.py | 22 +-
pym/portage/tests/resolver/ResolverPlayground.py | 10 +
pym/portage/tests/resolver/test_autounmask.py | 48 +-
pym/portage/tests/resolver/test_eapi.py | 2 +-
pym/portage/tests/resolver/test_required_use.py | 6 +-
pym/portage/tests/resolver/test_slot_collisions.py | 20 +-
.../tests/resolver/test_slot_operator_rebuild.py | 45 +-
pym/portage/tests/runTests.py | 6 +-
.../util/futures/asyncio}/__init__.py | 0
.../{bin => util/futures/asyncio}/__test__.py | 0
.../util/futures/asyncio/test_child_watcher.py | 50 ++
.../futures/asyncio/test_event_loop_in_fork.py | 65 ++
.../tests/util/futures/asyncio/test_pipe_closed.py | 151 +++++
.../asyncio/test_policy_wrapper_recursion.py | 29 +
.../futures/asyncio/test_run_until_complete.py | 34 +
.../util/futures/asyncio/test_subprocess_exec.py | 236 +++++++
.../tests/util/futures/test_iter_completed.py | 40 +-
pym/portage/tests/util/futures/test_retry.py | 177 ++++--
pym/portage/util/SlotObject.py | 9 +-
pym/portage/util/_async/AsyncFunction.py | 7 +-
pym/portage/util/_async/AsyncScheduler.py | 49 +-
pym/portage/util/_async/AsyncTaskFuture.py | 4 +-
pym/portage/util/_async/FileDigester.py | 7 +-
pym/portage/util/_async/ForkProcess.py | 10 +
pym/portage/util/_async/PipeLogger.py | 32 +-
pym/portage/util/_async/PipeReaderBlockingIO.py | 16 +-
pym/portage/util/_async/PopenProcess.py | 17 +-
pym/portage/util/_async/SchedulerInterface.py | 34 +-
pym/portage/util/_eventloop/EventLoop.py | 374 +++++++++--
pym/portage/util/_eventloop/GlibEventLoop.py | 23 -
pym/portage/util/_eventloop/asyncio_event_loop.py | 85 +++
pym/portage/util/_eventloop/global_event_loop.py | 11 +-
pym/portage/util/elf/constants.py | 4 +-
pym/portage/util/futures/__init__.py | 8 +
pym/portage/util/futures/_asyncio/__init__.py | 185 ++++++
.../util/futures/{wait.py => _asyncio/tasks.py} | 19 +-
pym/portage/util/futures/events.py | 191 ++++++
pym/portage/util/futures/executor/fork.py | 6 +-
pym/portage/util/futures/futures.py | 9 +-
pym/portage/util/futures/iter_completed.py | 138 +++-
pym/portage/util/futures/retry.py | 13 +-
pym/portage/util/futures/transports.py | 90 +++
pym/portage/util/futures/unix_events.py | 705 +++++++++++++++++++++
pym/portage/versions.py | 6 +-
repoman/bin/repoman | 3 +
repoman/cnf/qa_data/qa_data.yaml | 2 +-
repoman/man/repoman.1 | 2 +-
.../modules/linechecks/assignment/assignment.py | 9 +-
.../modules/linechecks/deprecated/inherit.py | 3 +
.../repoman/modules/linechecks/quotes/quotes.py | 3 +-
repoman/pym/repoman/modules/scan/fetch/fetches.py | 2 +-
repoman/pym/repoman/modules/scan/module.py | 2 +-
repoman/pym/repoman/tests/__init__.py | 3 +
repoman/pym/repoman/tests/runTests.py | 6 +-
repoman/setup.py | 3 +-
setup.py | 5 +-
138 files changed, 4789 insertions(+), 1438 deletions(-)
diff --cc pym/_emerge/Package.py
index 5d86c9635,a7ce00bc9..2be526471
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@@ -82,24 -93,10 +93,16 @@@ class Package(Task)
# sync metadata with validated repo (may be UNKNOWN_REPO)
self._metadata['repository'] = self.cpv.repo
- if eapi_attrs.iuse_effective:
- implicit_match = self.root_config.settings._iuse_effective_match
- if self.built:
- implicit_match = functools.partial(
- self._built_iuse_effective_match,
- implicit_match, frozenset(self._metadata['USE'].split()))
- else:
- implicit_match = self.root_config.settings._iuse_implicit_match
- iuse = self._metadata["IUSE"]
+ implicit_match = db._iuse_implicit_cnstr(self.cpv, self._metadata)
+ if 'force-multilib' in self.root_config.settings.features:
+ if self.built is False:
+ for multilib_abis in self.root_config.settings.get("MULTILIB_ABIS", '').split():
+ iuse += " multilib_abi_" + multilib_abis
+ iuse += " abiwrapper"
+ self._metadata["IUSE"] = iuse
usealiases = self.root_config.settings._use_manager.getUseAliases(self)
- self.iuse = self._iuse(self, iuse.split(), implicit_match,
- usealiases, self.eapi)
+ self.iuse = self._iuse(self, self._metadata["IUSE"].split(),
+ implicit_match, usealiases, self.eapi)
if (self.iuse.enabled or self.iuse.disabled) and \
not eapi_attrs.iuse_defaults:
diff --cc pym/_emerge/actions.py
index 966b4421b,70fb8d3b4..f53c33b46
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@@ -2868,16 -2882,29 +2882,36 @@@ def run_action(emerge_config)
"--usepkg", "--usepkgonly"):
emerge_config.opts.pop(opt, None)
+ # Populate the bintree with current --getbinpkg setting.
+ # This needs to happen before:
+ # * expand_set_arguments, in case any sets use the bintree
+ # * adjust_configs and profile_check, in order to propagate settings
+ # implicit IUSE and USE_EXPAND settings from the binhost(s)
+ if (emerge_config.action in ('search', None) and
+ '--usepkg' in emerge_config.opts):
+ for mytrees in emerge_config.trees.values():
+ try:
+ mytrees['bintree'].populate(
+ getbinpkgs='--getbinpkg' in emerge_config.opts)
+ except ParseError as e:
+ writemsg('\n\n!!!%s.\nSee make.conf(5) for more info.\n'
+ % (e,), noiselevel=-1)
+ return 1
+
adjust_configs(emerge_config.opts, emerge_config.trees)
+
+ if profile_check(emerge_config.trees, emerge_config.action) != os.EX_OK:
+ return 1
+
apply_priorities(emerge_config.target_config.settings)
+ if 'force-multilib' in emerge_config.target_config.settings.features:
+ if emerge_config.target_config.settings.get("NO_AUTO_FLAG", "") is "":
+ writemsg_level(bad("!!! Failed to find vars from extra profile") + "\n",level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! Please make sure that you did follow the instructions and included the extra profile\n"),level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! http://git.overlays.gentoo.org/gitweb/?p=proj/multilib-portage.git;a=blob;f=doc/portage-multilib-instructions\n"),level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! has some basic instructions for the setup\n"),level=logging.ERROR, noiselevel=-1)
+ return 1
if ("--autounmask-continue" in emerge_config.opts and
emerge_config.opts.get("--autounmask") == "n"):
writemsg_level(
next reply other threads:[~2018-05-23 12:23 UTC|newest]
Thread overview: 192+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-23 12:23 Thomas Sachau [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-03-21 11:57 [gentoo-commits] proj/portage:multilib commit in: / Thomas Sachau
2022-03-21 11:43 Thomas Sachau
2022-03-21 11:34 Thomas Sachau
2022-03-21 11:33 Thomas Sachau
2022-03-21 11:27 Thomas Sachau
2022-03-21 11:26 Thomas Sachau
2022-03-21 10:01 Thomas Sachau
2021-10-30 9:44 Thomas Sachau
2021-10-30 9:44 Thomas Sachau
2021-07-25 11:43 Thomas Sachau
2021-07-25 11:43 Thomas Sachau
2021-07-25 11:43 Thomas Sachau
2021-04-03 8:28 Thomas Sachau
2021-04-03 8:28 Thomas Sachau
2021-04-03 8:28 Thomas Sachau
2021-04-03 8:28 Thomas Sachau
2021-01-23 9:52 Thomas Sachau
2021-01-15 16:20 Thomas Sachau
2021-01-15 16:20 Thomas Sachau
2021-01-15 16:20 Thomas Sachau
2021-01-15 16:20 Thomas Sachau
2021-01-15 16:20 Thomas Sachau
2020-10-30 10:29 Thomas Sachau
2020-08-23 12:22 Thomas Sachau
2020-07-05 17:57 Thomas Sachau
2019-12-26 11:56 Thomas Sachau
2019-03-17 11:35 Thomas Sachau
2019-03-09 9:56 Thomas Sachau
2018-09-01 11:03 Thomas Sachau
2018-04-14 12:16 Thomas Sachau
2018-03-03 15:18 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:43 Thomas Sachau
2018-01-07 10:38 Thomas Sachau
2018-01-07 10:33 Thomas Sachau
2018-01-07 10:33 Thomas Sachau
2018-01-07 10:33 Thomas Sachau
2018-01-07 10:33 Thomas Sachau
2018-01-07 10:33 Thomas Sachau
2018-01-07 10:30 Thomas Sachau
2018-01-07 10:09 Thomas Sachau
2018-01-07 9:50 Thomas Sachau
2018-01-07 9:39 Thomas Sachau
2016-02-28 12:37 Thomas Sachau
2016-02-28 12:37 Thomas Sachau
2016-02-28 12:37 Thomas Sachau
2016-02-28 12:37 Thomas Sachau
2016-02-28 12:37 Thomas Sachau
2016-02-28 12:37 Thomas Sachau
2015-10-04 11:38 Thomas Sachau
2015-10-04 11:38 Thomas Sachau
2015-10-04 11:38 Thomas Sachau
2015-10-04 11:38 Thomas Sachau
2015-10-04 11:38 Thomas Sachau
2015-05-05 11:29 Thomas Sachau
2014-12-12 20:23 Thomas Sachau
2014-12-12 20:23 Thomas Sachau
2014-12-12 20:23 Thomas Sachau
2014-12-12 20:23 Thomas Sachau
2014-12-12 20:23 Thomas Sachau
2014-06-02 20:00 Thomas Sachau
2013-09-15 20:54 Thomas Sachau
2013-09-15 11:39 Thomas Sachau
2013-09-15 11:06 Thomas Sachau
2013-09-10 16:53 Thomas Sachau
2013-08-25 19:50 Thomas Sachau
2013-08-18 20:55 Thomas Sachau
2013-08-04 11:19 Thomas Sachau
2013-08-04 11:19 Thomas Sachau
2013-05-31 12:16 Thomas Sachau
2013-05-20 10:41 Thomas Sachau
2013-05-10 8:01 Thomas Sachau
2013-04-14 13:20 Thomas Sachau
2013-04-03 11:51 Thomas Sachau
2013-03-28 19:31 Thomas Sachau
2013-03-23 16:24 Thomas Sachau
2013-03-08 17:46 Thomas Sachau
2013-03-03 13:44 Thomas Sachau
2013-02-16 18:47 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-26 17:19 Thomas Sachau
2013-01-12 11:21 Thomas Sachau
2012-12-16 10:49 Thomas Sachau
2012-12-14 20:16 Thomas Sachau
2012-12-14 20:14 Thomas Sachau
2012-12-09 10:54 Thomas Sachau
2012-12-07 22:24 Thomas Sachau
2012-11-30 16:44 Thomas Sachau
2012-10-29 12:23 Thomas Sachau
2012-10-22 8:57 Thomas Sachau
2012-10-14 9:35 Thomas Sachau
2012-10-06 11:34 Thomas Sachau
2012-09-29 12:51 Thomas Sachau
2012-09-24 20:38 Thomas Sachau
2012-09-22 15:33 Thomas Sachau
2012-09-22 15:23 Thomas Sachau
2012-09-17 17:07 Thomas Sachau
2012-09-08 12:55 Thomas Sachau
2012-09-08 12:55 Thomas Sachau
2012-09-08 12:55 Thomas Sachau
2012-09-08 12:55 Thomas Sachau
2012-09-08 12:55 Thomas Sachau
2012-09-08 12:55 Thomas Sachau
2012-09-08 12:55 Thomas Sachau
2012-09-08 12:55 Thomas Sachau
2012-07-08 10:03 Thomas Sachau
2012-07-01 12:01 Thomas Sachau
2012-06-10 12:42 Thomas Sachau
2012-06-03 12:33 Thomas Sachau
2012-05-28 10:19 Thomas Sachau
2012-05-17 10:00 Thomas Sachau
2012-05-12 7:57 Thomas Sachau
2012-05-11 20:38 Thomas Sachau
2012-04-24 21:26 Thomas Sachau
2012-04-06 11:50 Thomas Sachau
2012-04-04 12:42 Thomas Sachau
2012-04-01 22:00 Thomas Sachau
2012-03-30 18:55 Thomas Sachau
2012-03-24 10:51 Thomas Sachau
2012-03-23 14:42 Thomas Sachau
2012-03-21 18:50 Thomas Sachau
2012-03-18 15:29 Thomas Sachau
2012-03-06 18:21 Thomas Sachau
2012-02-26 16:27 Thomas Sachau
2012-02-25 12:04 Thomas Sachau
2012-02-23 19:08 Thomas Sachau
2012-02-18 15:52 Thomas Sachau
2012-02-06 19:38 Thomas Sachau
2011-12-28 13:33 Thomas Sachau
2011-12-24 14:16 Thomas Sachau
2011-12-16 16:30 Thomas Sachau
2011-12-07 21:31 Thomas Sachau
2011-11-26 14:03 Thomas Sachau
2011-11-19 14:25 Thomas Sachau
2011-11-18 23:27 Thomas Sachau
2011-11-11 22:52 Thomas Sachau
2011-10-31 19:53 Thomas Sachau
2011-10-24 18:54 Thomas Sachau
2011-10-23 11:05 Thomas Sachau
2011-10-23 11:05 Thomas Sachau
2011-10-21 13:57 Thomas Sachau
2011-10-12 16:28 Thomas Sachau
2011-10-09 10:33 Thomas Sachau
2011-10-08 8:34 Thomas Sachau
2011-10-07 12:41 Thomas Sachau
2011-10-01 13:56 Thomas Sachau
2011-10-01 13:56 Thomas Sachau
2011-09-11 14:33 Thomas Sachau
2011-09-09 13:03 Thomas Sachau
2011-08-16 12:20 Thomas Sachau
2011-08-05 12:29 Thomas Sachau
2011-08-01 16:53 Thomas Sachau
2011-07-28 17:07 Thomas Sachau
2011-07-21 19:18 Thomas Sachau
2011-07-15 13:24 Thomas Sachau
2011-07-05 17:34 Thomas Sachau
2011-06-16 16:54 Thomas Sachau
2011-06-07 15:44 Thomas Sachau
2011-05-28 13:14 Thomas Sachau
2011-05-26 17:55 Thomas Sachau
2011-05-22 9:42 Thomas Sachau
2011-05-14 9:59 Thomas Sachau
2011-05-07 18:38 Thomas Sachau
2011-04-16 10:17 Thomas Sachau
2011-04-16 10:17 Thomas Sachau
2011-03-28 17:24 Thomas Sachau
2011-03-19 19:39 Thomas Sachau
2011-03-17 17:58 Thomas Sachau
2011-03-03 19:53 Thomas Sachau
2011-02-25 13:45 Thomas Sachau
2011-02-16 20:15 Thomas Sachau
2011-02-10 18:12 Thomas Sachau
2011-02-08 18:12 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1527078147.b74e878839a2b1e8d6148776d5a44019d8fffbc1.tommy@gentoo \
--to=tommy@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox