[gentoo-dev] [PATCH] linux-info.eclass: account for lack of trailing slash
In EAPI 7, D, ED, ROOT, EROOT no longer have a trailing slash[1]. This makes finding /usr/src/linux not work properly as it currently stands. Use the form "${ROOT%/}/" where apropos in order to unify behavior across EAPIs. 1: https://dev.gentoo.org/~ulm/pms/head/pms.html#x1-113001r7 --- eclass/linux-info.eclass | 18 +- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 96f94e4072a..31464766038 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -115,7 +115,7 @@ IUSE="kernel_linux" # Overwritable environment Var's # --- -KERNEL_DIR="${KERNEL_DIR:-${ROOT}usr/src/linux}" +KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}" # Bug fixes @@ -554,7 +554,7 @@ get_version() { # caught before this if they are. if [[ -z ${OUTPUT_DIR} ]] ; then # Try to locate a kernel that is most relevant for us. - for OUTPUT_DIR in "${SYSROOT}" "${ROOT}" "" ; do + for OUTPUT_DIR in "${SYSROOT}" "${ROOT%/}/" "" ; do OUTPUT_DIR+="/lib/modules/${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}/build" if [[ -e ${OUTPUT_DIR} ]] ; then break @@ -615,19 +615,19 @@ get_running_version() { KV_FULL=$(uname -r) - if [[ -f ${ROOT}/lib/modules/${KV_FULL}/source/Makefile && -f ${ROOT}/lib/modules/${KV_FULL}/build/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/source) - KBUILD_OUTPUT=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/build) + if [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/source/Makefile && -f ${ROOT%/}/lib/modules/${KV_FULL}/build/Makefile ]]; then + KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/source) + KBUILD_OUTPUT=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/build) unset KV_FULL get_version return $? - elif [[ -f ${ROOT}/lib/modules/${KV_FULL}/source/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/source) + elif [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/source/Makefile ]]; then + KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/source) unset KV_FULL get_version return $? - elif [[ -f ${ROOT}/lib/modules/${KV_FULL}/build/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/build) + elif [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/build/Makefile ]]; then + KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/build) unset KV_FULL get_version return $? -- 2.18.0
[gentoo-dev] [PATCH] linux-info.eclass: account for lack of trailing slash
In EAPI 7, D, ED, ROOT, EROOT no longer have a trailing slash[1]. This makes finding /usr/src/linux not work properly as it currently stands. Use the form "${ROOT%}/" where apropos in order to unify behavior across EAPIs. --- eclass/linux-info.eclass | 18 +- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 96f94e4072a..31464766038 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -115,7 +115,7 @@ IUSE="kernel_linux" # Overwritable environment Var's # --- -KERNEL_DIR="${KERNEL_DIR:-${ROOT}usr/src/linux}" +KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}" # Bug fixes @@ -554,7 +554,7 @@ get_version() { # caught before this if they are. if [[ -z ${OUTPUT_DIR} ]] ; then # Try to locate a kernel that is most relevant for us. - for OUTPUT_DIR in "${SYSROOT}" "${ROOT}" "" ; do + for OUTPUT_DIR in "${SYSROOT}" "${ROOT%/}/" "" ; do OUTPUT_DIR+="/lib/modules/${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}/build" if [[ -e ${OUTPUT_DIR} ]] ; then break @@ -615,19 +615,19 @@ get_running_version() { KV_FULL=$(uname -r) - if [[ -f ${ROOT}/lib/modules/${KV_FULL}/source/Makefile && -f ${ROOT}/lib/modules/${KV_FULL}/build/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/source) - KBUILD_OUTPUT=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/build) + if [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/source/Makefile && -f ${ROOT%/}/lib/modules/${KV_FULL}/build/Makefile ]]; then + KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/source) + KBUILD_OUTPUT=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/build) unset KV_FULL get_version return $? - elif [[ -f ${ROOT}/lib/modules/${KV_FULL}/source/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/source) + elif [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/source/Makefile ]]; then + KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/source) unset KV_FULL get_version return $? - elif [[ -f ${ROOT}/lib/modules/${KV_FULL}/build/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT}/lib/modules/${KV_FULL}/build) + elif [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/build/Makefile ]]; then + KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/build) unset KV_FULL get_version return $? -- 2.18.0
[gentoo-dev] [PATCH] vdr-plugin-2.eclass: add EAPI 7 support
Please review, changes makes the vdr-plugin-2.eclass to be able handle EAPI 7 support. Its just 1 line for this, The rest is clean up, or better i should say, i removed the internal vdr_dev_check function and replaced it by the eqawarn function. I know, in the eclass is still EAPI 4,5 support, but we have a lot of ebuilds, untached thins years, they use the EAPI 4,5. This needs fixed at first in the tree, than we can safely remove the EAPI 4,5 support. Thanks --- vdr-plugin-2.eclass.old 2018-07-13 14:16:24.134895457 +0200 +++ vdr-plugin-2.eclass 2018-07-13 23:56:14.924419576 +0200 @@ -53,19 +53,6 @@ # PO_SUBDIR="bla foo/bla" # @CODE -# @ECLASS-VARIABLE: VDR_MAINTAINER_MODE -# @DEFAULT_UNSET -# @DESCRIPTION: -# Output from function vdr_dev_check if it is defined in ebuild or eclass, -# helpfull for gentoo ebuild developer -# -# This will also install any debug files in /usr/share/vdr/maintainer-data -# -# This is intended to be set by user in make.conf. Ebuilds must not set -# it. -# -# VDR_MAINTAINER_MODE=1 - # @FUNCTION: fix_vdr_libsi_include # @DESCRIPTION: # Plugins failed on compile with wrong path of libsi includes, @@ -91,7 +78,7 @@ # Applying your own local/user patches: # This is done by using the # (EAPI = 4,5) epatch_user() function of the eutils.eclass, -# (EAPI = 6) eapply_user function integrated in EAPI = 6. +# (EAPI = 6,7) eapply_user function integrated in EAPI = 6. # Simply add your patches into one of these directories: # /etc/portage/patches/// # Quote: where the first of these three directories to exist will be the one to @@ -103,7 +90,7 @@ inherit flag-o-matic toolchain-funcs unpacker case ${EAPI:-0} in - 4|5|6) + 4|5|6|7) ;; *) die "EAPI ${EAPI} unsupported." ;; @@ -187,7 +174,7 @@ } fix_vdr_libsi_include() { - vdr_dev_check "Fixing include of libsi-headers" + eqawarn "Fixing include of libsi-headers" local f for f; do sed -i "${f}" \ @@ -270,7 +257,7 @@ local GETTEXT_MISSING=$( grep xgettext Makefile ) if [[ -z ${GETTEXT_MISSING} ]]; then - vdr_dev_check "Plugin isn't converted to gettext handling \n" + eqawarn "Plugin isn't converted to gettext handling!" fi } @@ -319,26 +306,26 @@ if [[ -n ${I18N_OBJECT} ]]; then if [[ "${KEEP_I18NOBJECT:-no}" = "yes" ]]; then - vdr_dev_check "Forced to keep i18n.o" + eqawarn "Forced to keep i18n.o" else sed -i "s:i18n.o::g" Makefile - vdr_dev_check "OBJECT i18n.o found" - vdr_dev_check "removed per sed \n" + eqawarn "OBJECT i18n.o found" + eqawarn "removed per sed" fi else - vdr_dev_check "OBJECT i18n.o not found in Makefile" - vdr_dev_check "all fine or manual review needed? \n" + eqawarn "OBJECT i18n.o not found in MAKEFILE" + eqawarn "all fine or manual review needed?" fi local I18N_STRING=$( [[ -e i18n.h ]] && grep tI18nPhrase i18n.h ) if [[ -n ${I18N_STRING} ]]; then sed -i "s:^extern[[:space:]]*const[[:space:]]*tI18nPhrase://static const tI18nPhrase:" i18n.h - vdr_dev_check "obsolete tI18nPhrase found" - vdr_dev_check "disabled per sed, please recheck \n" + eqawarn "obsolete tI18nPhrase found" + eqawarn "disabled per sed, please recheck \n" else - vdr_dev_check "obsolete tI18nPhrase not found, fine..." - vdr_dev_check "please review, may be in subdir... \n" + eqawarn "obsolete tI18nPhrase not found, fine..." + eqawarn "please review, may be in subdir..." fi } @@ -351,7 +338,7 @@ -e "s:^#include[[:space:]]*\"i18n.h\"://:" done - vdr_dev_check "removed i18n.h include in ${@}" + eqawarn "removed i18n.h include in ${@}" } vdr-plugin-2_print_enable_command() { @@ -572,7 +559,7 @@ DESTDIR="${D}" \ || die "emake install (makefile target) failed" else - vdr_dev_check "Plugin use still the old Makefile handling" + eqawarn "Plugin use still the old Makefile handling" insinto "${VDR_PLUGIN_DIR}" doins libvdr-*.so.* fi -- Joerg Bornkessel GnuPG Key: 0x93EB5F4DAA5832A1 Fingerprint: 0E0A A1EE 1DF4 41D7 A3F5 21C2 93EB 5F4D AA58 32A1 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH] linux-info.eclass: enable EAPI 7
On 2018-07-11 04:02, Marty E. Plummer wrote: > versionator is banned in EAPI 7, so switch to either native EAPI 7 > version functions or inherit eapi7-ver on EAPI 0-6 > --- > [...] Thanks, this is now merged [1]. [1]: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c6b150836dfef848e51ec2cce801b12daf2c77b1 -- Regards, Thomas Deutschmann / Gentoo Linux Developer C4DD 695F A713 8F24 2AA1 5638 5849 7EE5 1D5D 74A5 signature.asc Description: OpenPGP digital signature
[gentoo-dev] Packages up for grabs
Hello, all These packages are now up for grabs. I no longer have interest/hardware for them. - app-laptop/batti - app-laptop/pommed/metadata.xml - media-video/v4l2loopback - sys-libs/mtdev
Re: [gentoo-dev] rfc: moving default location of portage tree
On Fri, Jul 13, 2018 at 5:15 PM, Ulrich Mueller wrote: >> On Fri, 13 Jul 2018, konsolebox wrote: > >> I don't mind calling ::gentoo as Gentoo's official ebuild repository, >> but it also has been "a portage tree", and "the portage tree" by >> default context. If you imply that people should change convention to >> something more PMS friendly, be explicit, and perhaps make it >> official, and the let them decide for themselves. Be fair at reminding >> that it has been there, but it's better be changed for PMS's sake. >> Don't make it look like the usage has always been wrong. > > You may be surprised, but the word "Gentoo" doesn't even occur in the > main part (chapters 2 to 15) of the PMS document, except for one place > referring to "Gentoo's Catalyst tool". > > Calling it "Gentoo repository" instead of "Portage tree" is purely a > matter of distro policy and has nothing to do with PMS. PMS mentions "ebuild repository", hence "Gentoo's official ebuild repository" vs. "Gentoo Portage Tree"; vs. "Which Portage tree do you use?". -- konsolebox
Re: [gentoo-dev] rfc: moving default location of portage tree
> On Fri, 13 Jul 2018, konsolebox wrote: > I don't mind calling ::gentoo as Gentoo's official ebuild repository, > but it also has been "a portage tree", and "the portage tree" by > default context. If you imply that people should change convention to > something more PMS friendly, be explicit, and perhaps make it > official, and the let them decide for themselves. Be fair at reminding > that it has been there, but it's better be changed for PMS's sake. > Don't make it look like the usage has always been wrong. You may be surprised, but the word "Gentoo" doesn't even occur in the main part (chapters 2 to 15) of the PMS document, except for one place referring to "Gentoo's Catalyst tool". Calling it "Gentoo repository" instead of "Portage tree" is purely a matter of distro policy and has nothing to do with PMS. Ulrich pgpem_gzhZ8LK.pgp Description: PGP signature
Re: [gentoo-dev] rfc: moving default location of portage tree
On Fri, Jul 13, 2018 at 3:47 AM, Brian Dolbec wrote: > On Thu, 12 Jul 2018 11:49:37 -0700 > Raymond Jennings wrote: > >> In that case, I vote for /var/cache/portage, since that's literally >> what purpose it serves. Namely, the cache of the gentoo infra's >> current copy of teh portage tree. >> >> On Thu, Jul 12, 2018 at 11:00 AM Alec Warner >> wrote: >> > >> > On Thu, Jul 12, 2018 at 1:43 PM, Raymond Jennings >> > wrote: >> >> >> >> Just for the record, but would putting a setting inside >> >> /etc/portage/make.conf be the appropriate way to handle this? >> >> >> > >> > The settings already exist (and have existed for 10 years.) This >> > bikeshed discussion is literally trying to decide what the default >> > should be. >> > >> > -A >> > >> > > This is not a personal attack against you. Just picked this one to say > something again... > > > PLEASE, PLEASE stop calling it the "portage" tree. The repo name is > "gentoo". "portage is the default package manager, but not the only > choice. Far too often, it takes awhile to figure out what someone is > trying to say because of that confusion between the tree and the > package manager. > > PLUS, it has been decided already long ago that the directory name > should reflect the repository name. We have been enforcing that rule > for overlays for a long time. It has just been taking a long time to > get our tooling in order so that we can change our own to follow that > rule. > > So, "portage" should not be a directory name in the new default path. > > -- > Brian Dolbec I don't mind calling ::gentoo as Gentoo's official ebuild repository, but it also has been "a portage tree", and "the portage tree" by default context. If you imply that people should change convention to something more PMS friendly, be explicit, and perhaps make it official, and the let them decide for themselves. Be fair at reminding that it has been there, but it's better be changed for PMS's sake. Don't make it look like the usage has always been wrong. -- konsolebox
Re: [gentoo-dev] rfc: moving default location of portage tree
On Fri, Jul 13, 2018 at 5:12 AM, William Hubbs wrote: > On Thu, Jul 12, 2018 at 10:13:57PM +0200, Michał Górny wrote: >> W dniu czw, 12.07.2018 o godzinie 15∶51 -0400, użytkownik Rich Freeman >> napisał: >> > On Thu, Jul 12, 2018 at 3:47 PM Brian Dolbec wrote: >> > > >> > > So, "portage" should not be a directory name in the new default path. >> > > >> > >> > Well, in my examples I proposed it as that is the software that >> > created the path, but then again in the spirit of PMS portage isn't >> > the only PM. >> > >> > So: >> > /var/lib/repos/gentoo ? >> > >> >> Subdirectories of /var/lib should be named after the tool/package name. >> There's no tool or package called 'repos'. > > Technically mgorny is correct here. FHS requires that everything under > /var/lib be under a directory for the package or for the distro [1]. > Note the comment about packaging support in 5.8.1. > > Based on that this is my thought: > > * /var/lib/portage is for portage specific stuff -- maybe even /var/db/pkg > in the future should go to /var/lib/portage/pkg. > > * /var/lib/gentoo, on the other hand, could be where repos, distfiles > and binpkgs go. > William > > [1] > http://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html#varlibVariableStateInformation /var/lib/gentoo/portage then. (Or /var/lib/gentoo/repos/gentoo if you care about PMS diplomacy.) People can just move it somewhere and/or use symbolic links if they want to use a different path. Besides having /var/lib/gentoo/portage being set as "PORTDIR", I also have DISTDIR=/var/lib/gentoo/distfiles and PKGDIR=/var/lib/gentoo/packages. -- konsolebox