[gentoo-dev] [PATCH] toolchain-funcs.eclass: Set CHOST within econf_build to fix config.site
We were setting CBUILD within econf_build but not CHOST. crossdev's /usr/share/config.site relies on both of these to decide whether to load configure overrides needed when cross-compiling. Using the wrong overrides leads to packages such as Python failing. Doing this also avoids the need to duplicate the --build and --host configure arguments. Signed-off-by: James Le Cuirot --- eclass/toolchain-funcs.eclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass index a184887ad3b9..61a29d1b6ea6 100644 --- a/eclass/toolchain-funcs.eclass +++ b/eclass/toolchain-funcs.eclass @@ -442,7 +442,8 @@ tc-env_build() { # @CODE econf_build() { local CBUILD=${CBUILD:-${CHOST}} - tc-env_build econf --build=${CBUILD} --host=${CBUILD} "$@" + econf_env() { CHOST=${CBUILD} econf "$@"; } + tc-env_build econf_env "$@" } # @FUNCTION: tc-ld-is-gold -- 2.38.1
Re: [gentoo-dev] [PATCH] toolchain-funcs.eclass: Set CHOST within econf_build to fix config.site
> On 6 Dec 2022, at 09:03, James Le Cuirot wrote: > > We were setting CBUILD within econf_build but not CHOST. crossdev's > /usr/share/config.site relies on both of these to decide whether to load > configure overrides needed when cross-compiling. Using the wrong > overrides leads to packages such as Python failing. > > Doing this also avoids the need to duplicate the --build and --host > configure arguments. > > Signed-off-by: James Le Cuirot > --- > eclass/toolchain-funcs.eclass | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass > index a184887ad3b9..61a29d1b6ea6 100644 > --- a/eclass/toolchain-funcs.eclass > +++ b/eclass/toolchain-funcs.eclass > @@ -442,7 +442,8 @@ tc-env_build() { > # @CODE > econf_build() { > local CBUILD=${CBUILD:-${CHOST}} > - tc-env_build econf --build=${CBUILD} --host=${CBUILD} "$@" > + econf_env() { CHOST=${CBUILD} econf "$@"; } > + tc-env_build econf_env "$@" > } > > # @FUNCTION: tc-ld-is-gold > -- Lgtm provided you've tested it in the relevant envs (which I'm sure you have). Curious how this didn't come up as a problem before, but it seems fine! Thanks! Best, sam signature.asc Description: Message signed with OpenPGP
[gentoo-dev] [PATCH 1/4] linux-mod.eclass: remove unnecessary DEPEND on sys-apps/sed
Signed-off-by: David Seifert --- eclass/linux-mod.eclass | 1 - 1 file changed, 1 deletion(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index 7e999389284..34151c6f27c 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -186,7 +186,6 @@ RDEPEND=" ${MODULES_OPTIONAL_USE:+)}" DEPEND="${RDEPEND} ${MODULES_OPTIONAL_USE}${MODULES_OPTIONAL_USE:+? (} - sys-apps/sed kernel_linux? ( virtual/linux-sources virtual/libelf ) ${MODULES_OPTIONAL_USE:+)}" -- 2.38.1
[gentoo-dev] [PATCH 2/4] gstreamer-meson.eclass: remove unnecessary BDEPEND on sys-apps/sed
Signed-off-by: David Seifert --- eclass/gstreamer-meson.eclass | 1 - 1 file changed, 1 deletion(-) diff --git a/eclass/gstreamer-meson.eclass b/eclass/gstreamer-meson.eclass index 28afaa1e6a6..aa54d05fdb8 100644 --- a/eclass/gstreamer-meson.eclass +++ b/eclass/gstreamer-meson.eclass @@ -184,7 +184,6 @@ RDEPEND=" >=dev-libs/glib-2.40.0:2[${MULTILIB_USEDEP}] " BDEPEND=" - >=sys-apps/sed-4 virtual/pkgconfig virtual/perl-JSON-PP " -- 2.38.1
[gentoo-dev] [PATCH 3/4] gstreamer.eclass: remove unnecessary DEPEND on sys-apps/sed
Signed-off-by: David Seifert --- eclass/gstreamer.eclass | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/eclass/gstreamer.eclass b/eclass/gstreamer.eclass index 28db8b1e035..fad4919ac02 100644 --- a/eclass/gstreamer.eclass +++ b/eclass/gstreamer.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: gstreamer.eclass @@ -95,7 +95,6 @@ RDEPEND=" >=media-libs/gstreamer-${GST_MIN_PV}:${SLOT}[${MULTILIB_USEDEP}] " DEPEND=" - >=sys-apps/sed-4 virtual/pkgconfig " -- 2.38.1
[gentoo-dev] [PATCH 4/4] kernel-2.eclass: remove unnecessary BDEPEND on sys-apps/sed
Signed-off-by: David Seifert --- eclass/kernel-2.eclass | 1 - 1 file changed, 1 deletion(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 4942c931f92..2cf88f0ff23 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -656,7 +656,6 @@ kernel_is() { # Capture the sources type and set DEPENDs if [[ ${ETYPE} == sources ]]; then - BDEPEND="!build? ( sys-apps/sed )" RDEPEND="!build? ( app-arch/cpio dev-lang/perl -- 2.38.1
[gentoo-dev] Last rites: media-video/nvidia-video-codec
# David Seifert (2022-12-06) # EAPI 6, untouched for years, no revdeps. Removal on 2023-01-05. media-video/nvidia-video-codec signature.asc Description: This is a digitally signed message part
Re: [gentoo-dev] [PATCH] toolchain-funcs.eclass: Set CHOST within econf_build to fix config.site
On Tue, 2022-12-06 at 10:12 +, Sam James wrote: > > > On 6 Dec 2022, at 09:03, James Le Cuirot wrote: > > > > We were setting CBUILD within econf_build but not CHOST. crossdev's > > /usr/share/config.site relies on both of these to decide whether to load > > configure overrides needed when cross-compiling. Using the wrong > > overrides leads to packages such as Python failing. > > > > Doing this also avoids the need to duplicate the --build and --host > > configure arguments. > > > > Signed-off-by: James Le Cuirot > > --- > > eclass/toolchain-funcs.eclass | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass > > index a184887ad3b9..61a29d1b6ea6 100644 > > --- a/eclass/toolchain-funcs.eclass > > +++ b/eclass/toolchain-funcs.eclass > > @@ -442,7 +442,8 @@ tc-env_build() { > > # @CODE > > econf_build() { > > local CBUILD=${CBUILD:-${CHOST}} > > - tc-env_build econf --build=${CBUILD} --host=${CBUILD} "$@" > > + econf_env() { CHOST=${CBUILD} econf "$@"; } > > + tc-env_build econf_env "$@" > > } > > > > # @FUNCTION: tc-ld-is-gold > > -- > > Lgtm provided you've tested it in the relevant envs (which I'm sure you have). > > Curious how this didn't come up as a problem before, but it > seems fine! econf_build is not widely used, and you only added it to Python in June. It's been used in other packages for much longer, but Python explicitly checks that the size of a long is what it expects. I didn't see it with m68k because we don't have any overrides for that. You also might not see it going from amd64 to arm64 either with them both being 64-bit. The lack of m68k overrides makes me wonder if some of these are even needed any more. ac_cv_sizeof_* can seemingly be determined when cross-compiling now. Since we've already had some reports of success, I'm merging this now. signature.asc Description: This is a digitally signed message part
[gentoo-dev] [PATCH 1/4] acct-group.eclass: Fix for when building in a rooted prefix (EROOT)
Groups are largely irrelevant for prefix, but we still don't want the build to break. Signed-off-by: James Le Cuirot --- eclass/acct-group.eclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eclass/acct-group.eclass b/eclass/acct-group.eclass index 590a2f20ed8e..ada5fe386693 100644 --- a/eclass/acct-group.eclass +++ b/eclass/acct-group.eclass @@ -176,7 +176,7 @@ acct-group_pkg_preinst() { fi if [[ -n ${ROOT} ]]; then - opts+=( --prefix "${ROOT}" ) + opts+=( --prefix "${EROOT}" ) fi elog "Adding group ${ACCT_GROUP_NAME}" -- 2.38.1
[gentoo-dev] [PATCH 2/4] acct-user.eclass: Fix for when building in a rooted prefix (EROOT)
Users are largely irrelevant for prefix, but we still don't want the build to break. Signed-off-by: James Le Cuirot --- eclass/acct-user.eclass | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eclass/acct-user.eclass b/eclass/acct-user.eclass index b15599c5dd6f..538cc6ae8ec3 100644 --- a/eclass/acct-user.eclass +++ b/eclass/acct-user.eclass @@ -200,7 +200,7 @@ eislocked() { # but we also expire the account which is more clear local shadow if [[ -n "${ROOT}" ]]; then - shadow=$(grep "^$1:" "${ROOT}/etc/shadow") + shadow=$(grep "^$1:" "${EROOT}/etc/shadow") else shadow=$(getent shadow "$1") fi @@ -362,7 +362,7 @@ acct-user_pkg_preinst() { fi if [[ -n ${ROOT} ]]; then - opts+=( --prefix "${ROOT}" ) + opts+=( --prefix "${EROOT}" ) fi elog "Adding user ${ACCT_USER_NAME}" @@ -431,7 +431,7 @@ acct-user_pkg_postinst() { fi if [[ -n ${ROOT} ]]; then - opts+=( --prefix "${ROOT}" ) + opts+=( --prefix "${EROOT}" ) fi elog "Updating user ${ACCT_USER_NAME}" @@ -483,7 +483,7 @@ acct-user_pkg_prerm() { ) if [[ -n ${ROOT} ]]; then - opts+=( --prefix "${ROOT}" ) + opts+=( --prefix "${EROOT}" ) fi elog "Locking user ${ACCT_USER_NAME}" -- 2.38.1
[gentoo-dev] [PATCH 3/4] user-info.eclass: Fix for when building in a rooted prefix (EROOT)
Users are largely irrelevant for prefix, but we still don't want the build to break. Signed-off-by: James Le Cuirot --- eclass/user-info.eclass | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eclass/user-info.eclass b/eclass/user-info.eclass index 5550e4f08eeb..1339e36634a8 100644 --- a/eclass/user-info.eclass +++ b/eclass/user-info.eclass @@ -48,7 +48,7 @@ egetent() { fi # Handle different ROOT - [[ -n ${ROOT} ]] && opts+=( -R "${ROOT}" ) + [[ -n ${ROOT} ]] && opts+=( -R "${EROOT}" ) pw show ${db} ${opts} "${key}" -q ;; @@ -64,9 +64,9 @@ egetent() { getent "${db}" "${key}" else if [[ ${key} =~ ^[[:digit:]]+$ ]]; then - grep -E "^([^:]*:){2}${key}" "${ROOT}/etc/${db}" + grep -E "^([^:]*:){2}${key}" "${EROOT}/etc/${db}" else - grep "^${key}:" "${ROOT}/etc/${db}" + grep "^${key}:" "${EROOT}/etc/${db}" fi fi ;; @@ -167,7 +167,7 @@ egetgroups() { local egroups_arr if [[ -n "${ROOT}" ]]; then local pgroup=$(egetent passwd "$1" | cut -d: -f1) - local sgroups=( $(grep -E ":([^:]*,)?$1(,[^:]*)?$" "${ROOT}/etc/group" | cut -d: -f1) ) + local sgroups=( $(grep -E ":([^:]*,)?$1(,[^:]*)?$" "${EROOT}/etc/group" | cut -d: -f1) ) # Remove primary group from list sgroups=${sgroups#${pgroup}} -- 2.38.1
[gentoo-dev] [PATCH 4/4] user.eclass: Fix for when building in a rooted prefix (EROOT)
Users are largely irrelevant for prefix, but we still don't want the build to break. I left the home and shell related bits alone, as it's less clear whether these should be prefixed or not. Obviously /dev/null should not be. It's slightly academic anyway, as nothing in the main repo uses this eclass any more. Signed-off-by: James Le Cuirot --- eclass/user.eclass | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/eclass/user.eclass b/eclass/user.eclass index 02e1074fe4d6..9daa1f807e07 100644 --- a/eclass/user.eclass +++ b/eclass/user.eclass @@ -119,7 +119,7 @@ enewuser() { local opts=() # handle for ROOT != / - [[ -n ${ROOT} ]] && opts+=( --prefix "${ROOT}" ) + [[ -n ${ROOT} ]] && opts+=( --prefix "${EROOT}" ) # handle uid local euid=${1}; shift @@ -307,7 +307,7 @@ enewgroup() { # handle different ROOT local opts - [[ -n ${ROOT} ]] && opts=( --prefix "${ROOT}" ) + [[ -n ${ROOT} ]] && opts=( --prefix "${EROOT}" ) # handle extra if [[ $# -gt 0 ]] ; then @@ -383,7 +383,7 @@ esethome() { # Handle different ROOT local opts - [[ -n ${ROOT} ]] && opts=( --prefix "${ROOT}" ) + [[ -n ${ROOT} ]] && opts=( --prefix "${EROOT}" ) # handle homedir local ehome=${1}; shift @@ -469,7 +469,7 @@ esetshell() { # Handle different ROOT local opts - [[ -n ${ROOT} ]] && opts=( --prefix "${ROOT}" ) + [[ -n ${ROOT} ]] && opts=( --prefix "${EROOT}" ) # handle shell local eshell=${1}; shift @@ -546,7 +546,7 @@ esetcomment() { # Handle different ROOT local opts - [[ -n ${ROOT} ]] && opts=( --prefix "${ROOT}" ) + [[ -n ${ROOT} ]] && opts=( --prefix "${EROOT}" ) # handle comment local ecomment=${1}; shift @@ -647,7 +647,7 @@ esetgroups() { elog " - Groups: ${egroups}" # Handle different ROOT - [[ -n ${ROOT} ]] && opts+=( --prefix "${ROOT}" ) + [[ -n ${ROOT} ]] && opts+=( --prefix "${EROOT}" ) # update the group case ${CHOST} in -- 2.38.1
Re: [gentoo-dev] [PATCH 1/4] acct-group.eclass: Fix for when building in a rooted prefix (EROOT)
On Tue, Dec 6, 2022 at 5:24 PM James Le Cuirot wrote: > > Groups are largely irrelevant for prefix, but we still don't want the > build to break. > > Signed-off-by: James Le Cuirot > --- > eclass/acct-group.eclass | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/eclass/acct-group.eclass b/eclass/acct-group.eclass > index 590a2f20ed8e..ada5fe386693 100644 > --- a/eclass/acct-group.eclass > +++ b/eclass/acct-group.eclass > @@ -176,7 +176,7 @@ acct-group_pkg_preinst() { > fi > > if [[ -n ${ROOT} ]]; then You should probably change this to [[ -n ${EROOT} ]]. Same goes for acct-user.eclass. Also see bug 779181; I'm not sure updating ${EROOT}/etc/group and ${EROOT}/etc/passwd makes any sense at all.
Re: [gentoo-dev] [PATCH 4/4] user.eclass: Fix for when building in a rooted prefix (EROOT)
On Tue, Dec 6, 2022 at 5:24 PM James Le Cuirot wrote: > > Users are largely irrelevant for prefix, but we still don't want the > build to break. > > I left the home and shell related bits alone, as it's less clear whether > these should be prefixed or not. Obviously /dev/null should not be. It's > slightly academic anyway, as nothing in the main repo uses this eclass > any more. I just deleted user.eclass, so you can probably drop this patch. :-)
Re: [gentoo-dev] [PATCH 3/4] user-info.eclass: Fix for when building in a rooted prefix (EROOT)
On Tue, Dec 6, 2022 at 5:24 PM James Le Cuirot wrote: > > Users are largely irrelevant for prefix, but we still don't want the > build to break. > > Signed-off-by: James Le Cuirot > --- > eclass/user-info.eclass | 8 > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/eclass/user-info.eclass b/eclass/user-info.eclass > index 5550e4f08eeb..1339e36634a8 100644 > --- a/eclass/user-info.eclass > +++ b/eclass/user-info.eclass > @@ -48,7 +48,7 @@ egetent() { > fi > > # Handle different ROOT > - [[ -n ${ROOT} ]] && opts+=( -R "${ROOT}" ) > + [[ -n ${ROOT} ]] && opts+=( -R "${EROOT}" ) Another case where the [[ -n ${ROOT} ]] should probably be changed to [[ -n ${EROOT} ]] if you actually want this to be prefix-aware.
[gentoo-dev] Last rite: sys-apps/gpet
Depends on gnome-base/gconf. Last release in 2011. See https://bugs.gentoo.org/873880