Gentoo Archives: gentoo-portage-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-portage-dev@l.g.o
Cc: "Michał Górny" <mgorny@g.o>
Subject: [gentoo-portage-dev] [PATCH] Stop crippling metadata for virtual/*
Date: Fri, 16 Mar 2018 08:12:31
Message-Id: 20180316081224.17453-1-mgorny@gentoo.org
1 There is no technical requirement that virtual/* packages will reliably
2 contain no executable code. Therefore, stop crippling the metadata
3 stored in vdb for them.
4 ---
5 bin/phase-functions.sh | 24 ++++++++++--------------
6 pym/portage/package/ebuild/doebuild.py | 11 ++++-------
7 2 files changed, 14 insertions(+), 21 deletions(-)
8
9 diff --git a/bin/phase-functions.sh b/bin/phase-functions.sh
10 index 0ceddb451..6ae61b2f0 100644
11 --- a/bin/phase-functions.sh
12 +++ b/bin/phase-functions.sh
13 @@ -662,23 +662,19 @@ __dyn_install() {
14 local f x
15 IFS=$' \t\n\r'
16 for f in CATEGORY DEFINED_PHASES FEATURES INHERITED IUSE \
17 - PF PKGUSE SLOT KEYWORDS HOMEPAGE DESCRIPTION ; do
18 + PF PKGUSE SLOT KEYWORDS HOMEPAGE DESCRIPTION \
19 + ASFLAGS CBUILD CC CFLAGS CHOST CTARGET CXX \
20 + CXXFLAGS EXTRA_ECONF EXTRA_EINSTALL EXTRA_MAKE \
21 + LDFLAGS LIBCFLAGS LIBCXXFLAGS QA_CONFIGURE_OPTIONS \
22 + QA_DESKTOP_FILE QA_PREBUILT PROVIDES_EXCLUDE REQUIRES_EXCLUDE ; do
23 +
24 x=$(echo -n ${!f})
25 [[ -n $x ]] && echo "$x" > $f
26 done
27 - if [[ $CATEGORY != virtual ]] ; then
28 - for f in ASFLAGS CBUILD CC CFLAGS CHOST CTARGET CXX \
29 - CXXFLAGS EXTRA_ECONF EXTRA_EINSTALL EXTRA_MAKE \
30 - LDFLAGS LIBCFLAGS LIBCXXFLAGS QA_CONFIGURE_OPTIONS \
31 - QA_DESKTOP_FILE QA_PREBUILT PROVIDES_EXCLUDE REQUIRES_EXCLUDE ; do
32 - x=$(echo -n ${!f})
33 - [[ -n $x ]] && echo "$x" > $f
34 - done
35 - # whitespace preserved
36 - for f in QA_AM_MAINTAINER_MODE ; do
37 - [[ -n ${!f} ]] && echo "${!f}" > $f
38 - done
39 - fi
40 + # whitespace preserved
41 + for f in QA_AM_MAINTAINER_MODE ; do
42 + [[ -n ${!f} ]] && echo "${!f}" > $f
43 + done
44 echo "${USE}" > USE
45 echo "${EAPI:-0}" > EAPI
46
47 diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py
48 index 8cec8e4da..8436c0b10 100644
49 --- a/pym/portage/package/ebuild/doebuild.py
50 +++ b/pym/portage/package/ebuild/doebuild.py
51 @@ -1930,13 +1930,10 @@ def _post_src_install_write_metadata(settings):
52 if v is not None:
53 write_atomic(os.path.join(build_info_dir, k), v + '\n')
54
55 - # The following variables are irrelevant for virtual packages.
56 - if settings.get('CATEGORY') != 'virtual':
57 -
58 - for k in ('CHOST',):
59 - v = settings.get(k)
60 - if v is not None:
61 - write_atomic(os.path.join(build_info_dir, k), v + '\n')
62 + for k in ('CHOST',):
63 + v = settings.get(k)
64 + if v is not None:
65 + write_atomic(os.path.join(build_info_dir, k), v + '\n')
66
67 with io.open(_unicode_encode(os.path.join(build_info_dir,
68 'BUILD_TIME'), encoding=_encodings['fs'], errors='strict'),
69 --
70 2.16.2