From ab6de74f7df8de02fbc3cd92cbfa241d9b70dd1c Mon Sep 17 00:00:00 2001 From: Mike Garrett Date: Tue, 24 Aug 2021 17:56:32 -0500 Subject: meta-hpe: Changes to support Yocto syntax Changes to support Yocto syntax changes and latest 'honister' release Signed-off-by: Mike Garrett Change-Id: I9cc4eb78b90d9b73bcd0440e6f6f6334fe459481 --- meta-hpe/conf/layer.conf | 2 +- meta-hpe/conf/machine/include/hpe.inc | 2 +- .../image/obmc-phosphor-image.bbappend | 8 +- .../initrdscripts/obmc-phosphor-initfs.bbappend | 8 +- .../packagegroups/packagegroup-hpe-apps.bb | 24 ++-- .../packagegroups/packagegroup-obmc-apps.bbappend | 6 +- meta-hpe/meta-dl360poc/conf/layer.conf | 2 +- meta-hpe/meta-dl360poc/conf/local.conf.sample | 137 ++++++++++++--------- .../recipes-kernel/linux/linux-obmc_%.bbappend | 4 +- meta-hpe/meta-gxp/conf/layer.conf | 2 +- .../recipes-core/udev/udev-gxp-mtd-partitions.bb | 2 +- .../meta-gxp/recipes-kernel/linux/linux-obmc.inc | 2 +- 12 files changed, 107 insertions(+), 92 deletions(-) (limited to 'meta-hpe') diff --git a/meta-hpe/conf/layer.conf b/meta-hpe/conf/layer.conf index 2b8f43b06..da14cfc28 100644 --- a/meta-hpe/conf/layer.conf +++ b/meta-hpe/conf/layer.conf @@ -7,7 +7,7 @@ BBFILES += "${LAYERDIR}/meta-common/recipes-*/*/*.bb \ BBFILE_COLLECTIONS += "hpe-layer" BBFILE_PATTERN_hpe-layer := "^${LAYERDIR}/" -LAYERSERIES_COMPAT_hpe-layer = "hardknott" +LAYERSERIES_COMPAT_hpe-layer = "hardknott honister" # Provide a variable that points the base of the hpe layer. HPEBASE = '${@os.path.normpath("${LAYERDIR}/")}' diff --git a/meta-hpe/conf/machine/include/hpe.inc b/meta-hpe/conf/machine/include/hpe.inc index 1e928beeb..fbd360cf3 100644 --- a/meta-hpe/conf/machine/include/hpe.inc +++ b/meta-hpe/conf/machine/include/hpe.inc @@ -16,4 +16,4 @@ PREFERRED_PROVIDER_virtual/obmc-system-mgmt = "packagegroup-hpe-apps" PREFERRED_PROVIDER_virtual/obmc-host-ctl ?= "" #PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-hostfw-config ?= "hostboot-inventory-config-native" -IMAGE_FEATURES_remove = "obmc-fan-control" +IMAGE_FEATURES:remove = "obmc-fan-control" diff --git a/meta-hpe/meta-common/recipes-phosphor/image/obmc-phosphor-image.bbappend b/meta-hpe/meta-common/recipes-phosphor/image/obmc-phosphor-image.bbappend index 7c21fb4d2..721ad10ad 100644 --- a/meta-hpe/meta-common/recipes-phosphor/image/obmc-phosphor-image.bbappend +++ b/meta-hpe/meta-common/recipes-phosphor/image/obmc-phosphor-image.bbappend @@ -47,19 +47,19 @@ do_generate_static[depends] += " \ " -make_image_links_append() { +make_image_links:append() { ln -sf ${DEPLOY_DIR_IMAGE}/hpe-section image-section } -do_mk_static_symlinks_append() { +do_mk_static_symlinks:append() { ln -sf hpe-section image-section } -do_generate_static_prepend() { +do_generate_static:prepend() { bb.build.exec_func("do_generate_hpe_image", d) } -do_generate_static_append() { +do_generate_static:append() { _append_image(os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), 'hpe-section'), int(d.getVar('FLASH_SECTION_OFFSET', True)), diff --git a/meta-hpe/meta-common/recipes-phosphor/initrdscripts/obmc-phosphor-initfs.bbappend b/meta-hpe/meta-common/recipes-phosphor/initrdscripts/obmc-phosphor-initfs.bbappend index cdf163cea..ab76653ff 100644 --- a/meta-hpe/meta-common/recipes-phosphor/initrdscripts/obmc-phosphor-initfs.bbappend +++ b/meta-hpe/meta-common/recipes-phosphor/initrdscripts/obmc-phosphor-initfs.bbappend @@ -1,11 +1,11 @@ -FILESEXTRAPATHS_prepend :="${THISDIR}/files:" +FILESEXTRAPATHS:prepend :="${THISDIR}/files:" SRC_URI += "file://gxp-obmc-init.sh \ " -do_install_append() { +do_install:append() { install -m 0755 ${WORKDIR}/gxp-obmc-init.sh ${D}/init } -FILES_${PN} += " /init /shutdown /update /whitelist /dev " -FILES_${PN} += " /init-options /init-download-url " +FILES:${PN} += " /init /shutdown /update /whitelist /dev " +FILES:${PN} += " /init-options /init-download-url " diff --git a/meta-hpe/meta-common/recipes-phosphor/packagegroups/packagegroup-hpe-apps.bb b/meta-hpe/meta-common/recipes-phosphor/packagegroups/packagegroup-hpe-apps.bb index 82a748b91..3f16d41e7 100644 --- a/meta-hpe/meta-common/recipes-phosphor/packagegroups/packagegroup-hpe-apps.bb +++ b/meta-hpe/meta-common/recipes-phosphor/packagegroups/packagegroup-hpe-apps.bb @@ -16,31 +16,31 @@ PROVIDES += "virtual/obmc-fan-mgmt" PROVIDES += "virtual/obmc-flash-mgmt" PROVIDES += "virtual/obmc-system-mgmt" -RPROVIDES_${PN}-chassis += "virtual-obmc-chassis-mgmt" -RPROVIDES_${PN}-fans += "virtual-obmc-fan-mgmt" -RPROVIDES_${PN}-flash += "virtual-obmc-flash-mgmt" -RPROVIDES_${PN}-system += "virtual-obmc-system-mgmt" +RPROVIDES:${PN}-chassis += "virtual-obmc-chassis-mgmt" +RPROVIDES:${PN}-fans += "virtual-obmc-fan-mgmt" +RPROVIDES:${PN}-flash += "virtual-obmc-flash-mgmt" +RPROVIDES:${PN}-system += "virtual-obmc-system-mgmt" -SUMMARY_${PN}-chassis = "HPE Chassis" -RDEPENDS_${PN}-chassis = " \ +SUMMARY:${PN}-chassis = "HPE Chassis" +RDEPENDS:${PN}-chassis = " \ obmc-phosphor-buttons-signals \ obmc-phosphor-buttons-handler \ obmc-op-control-power \ obmc-host-failure-reboots \ " -SUMMARY_${PN}-fans = "HPE Fans" -RDEPENDS_${PN}-fans = " \ +SUMMARY:${PN}-fans = "HPE Fans" +RDEPENDS:${PN}-fans = " \ phosphor-pid-control \ " -SUMMARY_${PN}-flash = "HPE Flash" -RDEPENDS_${PN}-flash = " \ +SUMMARY:${PN}-flash = "HPE Flash" +RDEPENDS:${PN}-flash = " \ obmc-control-bmc \ " -SUMMARY_${PN}-system = "HPE System" -RDEPENDS_${PN}-system = " \ +SUMMARY:${PN}-system = "HPE System" +RDEPENDS:${PN}-system = " \ bmcweb \ phosphor-webui \ phosphor-ipmi-ipmb \ diff --git a/meta-hpe/meta-common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend b/meta-hpe/meta-common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend index fc6a05510..101e9c1c0 100644 --- a/meta-hpe/meta-common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend +++ b/meta-hpe/meta-common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend @@ -1,10 +1,10 @@ -RDEPENDS_${PN}-logging += "phosphor-logging" -RDEPENDS_${PN}-extras += " bmcweb \ +RDEPENDS:${PN}-logging += "phosphor-logging" +RDEPENDS:${PN}-extras += " bmcweb \ phosphor-webui \ phosphor-image-signing \ phosphor-pid-control \ " -RDEPENDS_${PN}-fan-control = " \ +RDEPENDS:${PN}-fan-control = " \ ${VIRTUAL-RUNTIME_obmc-fan-control} \ " diff --git a/meta-hpe/meta-dl360poc/conf/layer.conf b/meta-hpe/meta-dl360poc/conf/layer.conf index 6e3d5c4f9..999ad04fc 100644 --- a/meta-hpe/meta-dl360poc/conf/layer.conf +++ b/meta-hpe/meta-dl360poc/conf/layer.conf @@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ BBFILE_COLLECTIONS += "dl360poc-layer" BBFILE_PATTERN_dl360poc-layer := "^${LAYERDIR}/" -LAYERSERIES_COMPAT_dl360poc-layer = "hardknott" +LAYERSERIES_COMPAT_dl360poc-layer = "hardknott honister" diff --git a/meta-hpe/meta-dl360poc/conf/local.conf.sample b/meta-hpe/meta-dl360poc/conf/local.conf.sample index 586cbd78e..41698669b 100644 --- a/meta-hpe/meta-dl360poc/conf/local.conf.sample +++ b/meta-hpe/meta-dl360poc/conf/local.conf.sample @@ -2,11 +2,11 @@ # This file is your local configuration file and is where all local user settings # are placed. The comments in this file give some guide to the options a new user # to the system might want to change but pretty much any configuration option can -# be set in this file. More adventurous users can look at local.conf.extended +# be set in this file. More adventurous users can look at local.conf.extended # which contains other examples of configuration which can be placed in this file # but new users likely won't need any of them initially. # -# Lines starting with the '#' character are commented out and in some cases the +# Lines starting with the '#' character are commented out and in some cases the # default values are provided as comments to show people example syntax. Enabling # the option is a question of removing the # character and making any change to the # variable as required. @@ -14,26 +14,6 @@ # # Machine Selection # -# You need to select a specific machine to target the build with. There are a selection -# of emulated machines available which can boot and run in the QEMU emulator: -# -#MACHINE ?= "qemuarm" -#MACHINE ?= "qemuarm64" -#MACHINE ?= "qemumips" -#MACHINE ?= "qemuppc" -#MACHINE ?= "qemux86" -#MACHINE ?= "qemux86-64" -# -# There are also the following hardware board target machines included for -# demonstration purposes: -# -#MACHINE ?= "beaglebone" -#MACHINE ?= "genericx86" -#MACHINE ?= "genericx86-64" -#MACHINE ?= "mpc8315e-rdb" -#MACHINE ?= "edgerouter" -# -# This sets the default machine to be qemux86 if no other machine is selected: MACHINE ??= "dl360poc" # @@ -82,12 +62,12 @@ MACHINE ??= "dl360poc" # # The distribution setting controls which policy settings are used as defaults. # The default value is fine for general Yocto project use, at least initially. -# Ultimately when creating custom policy, people will likely end up subclassing +# Ultimately when creating custom policy, people will likely end up subclassing # these defaults. # DISTRO ?= "openbmc-phosphor" # As an example of a subclass there is a "bleeding" edge policy configuration -# where many versions are set to the absolute latest code from the upstream +# where many versions are set to the absolute latest code from the upstream # source control systems. This is just mentioned here as an example, its not # useful to most new users. # DISTRO ?= "poky-bleeding" @@ -95,8 +75,8 @@ DISTRO ?= "openbmc-phosphor" # # Package Management configuration # -# This variable lists which packaging formats to enable. Multiple package backends -# can be enabled at once and the first item listed in the variable will be used +# This variable lists which packaging formats to enable. Multiple package backends +# can be enabled at once and the first item listed in the variable will be used # to generate the root filesystems. # Options are: # - 'package_deb' for debian style deb files @@ -107,24 +87,26 @@ DISTRO ?= "openbmc-phosphor" PACKAGE_CLASSES ?= "package_rpm" # -# SDK/ADT target architecture +# SDK target architecture # -# This variable specifies the architecture to build SDK/ADT items for and means -# you can build the SDK packages for architectures other than the machine you are +# This variable specifies the architecture to build SDK items for and means +# you can build the SDK packages for architectures other than the machine you are # running the build on (i.e. building i686 packages on an x86_64 host). -# Supported values are i686 and x86_64 +# Supported values are i686, x86_64, aarch64 #SDKMACHINE ?= "i686" -SANITY_TESTED_DISTROS_append ?= " RedHatEnterpriseWorkstation-6.*" +SANITY_TESTED_DISTROS:append ?= " *" # # Extra image configuration defaults # -# The EXTRA_IMAGE_FEATURES variable allows extra packages to be added to the generated +# The EXTRA_IMAGE_FEATURES variable allows extra packages to be added to the generated # images. Some of these options are added to certain image types automatically. The # variable can contain the following options: # "dbg-pkgs" - add -dbg packages for all installed packages # (adds symbol information for debugging/profiling) +# "src-pkgs" - add -src packages for all installed packages +# (adds source code for debugging) # "dev-pkgs" - add -dev packages for all installed packages # (useful if you want to develop against libs in the image) # "ptest-pkgs" - add -ptest packages for all ptest-enabled packages @@ -132,41 +114,39 @@ SANITY_TESTED_DISTROS_append ?= " RedHatEnterpriseWorkstation-6.*" # "tools-sdk" - add development tools (gcc, make, pkgconfig etc.) # "tools-debug" - add debugging tools (gdb, strace) # "eclipse-debug" - add Eclipse remote debugging support -# "tools-profile" - add profiling tools (oprofile, exmap, lttng, valgrind) +# "tools-profile" - add profiling tools (oprofile, lttng, valgrind) # "tools-testapps" - add useful testing tools (ts_print, aplay, arecord etc.) # "debug-tweaks" - make an image suitable for development # e.g. ssh root access has a blank password # There are other application targets that can be used here too, see # meta/classes/image.bbclass and meta/classes/core-image.bbclass for more details. # We default to enabling the debugging tweaks. -EXTRA_IMAGE_FEATURES = "debug-tweaks" +EXTRA_IMAGE_FEATURES ?= "debug-tweaks" # # Additional image features # # The following is a list of additional classes to use when building images which -# enable extra features. Some available options which can be included in this variable +# enable extra features. Some available options which can be included in this variable # are: # - 'buildstats' collect build statistics -# - 'image-prelink' in order to prelink the filesystem image -# - 'image-swab' to perform host system intrusion detection -# NOTE: if listing mklibs & prelink both, then make sure mklibs is before prelink -# NOTE: mklibs also needs to be explicitly enabled for a given image, see local.conf.extended -USER_CLASSES ?= "buildstats image-prelink" +USER_CLASSES ?= "buildstats" # # Runtime testing of images # # The build system can test booting virtual machine images under qemu (an emulator) -# after any root filesystems are created and run tests against those images. To -# enable this uncomment this line. See classes/testimage(-auto).bbclass for -# further details. -#TEST_IMAGE = "1" +# after any root filesystems are created and run tests against those images. It can also +# run tests against any SDK that are built. To enable this uncomment these lines. +# See classes/test{image,sdk}.bbclass for further details. +#IMAGE_CLASSES += "testimage testsdk" +#TESTIMAGE_AUTO:qemuall = "1" + # # Interactive shell configuration # -# Under certain circumstances the system may need input from you and to do this it -# can launch an interactive shell. It needs to do this since the build is +# Under certain circumstances the system may need input from you and to do this it +# can launch an interactive shell. It needs to do this since the build is # multithreaded and needs to be able to handle the case where more than one parallel # process may require the user's attention. The default is iterate over the available # terminal types to find one that works. @@ -186,12 +166,12 @@ PATCHRESOLVE = "noop" # # Monitor the disk space during the build. If there is less that 1GB of space or less # than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully -# shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort +# shutdown the build. If there is less than 100MB or 1K inodes, perform a hard abort # of the build. The reason for this is that running completely out of space can corrupt # files and damages the build in ways which may not be easily recoverable. # It's necessary to monitor /tmp, if there is no space left the build will fail # with very exotic errors. -BB_DISKMON_DIRS = "\ +BB_DISKMON_DIRS ??= "\ STOPTASKS,${TMPDIR},1G,100K \ STOPTASKS,${DL_DIR},1G,100K \ STOPTASKS,${SSTATE_DIR},1G,100K \ @@ -204,13 +184,13 @@ BB_DISKMON_DIRS = "\ # # Shared-state files from other locations # -# As mentioned above, shared state files are prebuilt cache data objects which can +# As mentioned above, shared state files are prebuilt cache data objects which can be # used to accelerate build time. This variable can be used to configure the system # to search other mirror locations for these objects before it builds the data itself. # # This can be a filesystem directory, or a remote url such as http or ftp. These -# would contain the sstate-cache results from previous builds (possibly from other -# machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the +# would contain the sstate-cache results from previous builds (possibly from other +# machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the # cache locations to check for the shared objects. # NOTE: if the mirror uses the same structure as SSTATE_DIR, you need to add PATH # at the end as shown in the examples below. This will be substituted with the @@ -219,22 +199,57 @@ BB_DISKMON_DIRS = "\ #file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ #file://.* file:///some/local/dir/sstate/PATH" +# +# Yocto Project SState Mirror +# +# The Yocto Project has prebuilt artefacts available for its releases, you can enable +# use of these by uncommenting the following line. This will mean the build uses +# the network to check for artefacts at the start of builds, which does slow it down +# equally, it will also speed up the builds by not having to build things if they are +# present in the cache. It assumes you can download something faster than you can build it +# which will depend on your network. +# +#SSTATE_MIRRORS ?= "file://.* http://sstate.yoctoproject.org/2.5/PATH;downloadfilename=PATH" # # Qemu configuration # -# By default qemu will build with a builtin VNC server where graphical output can be -# seen. The two lines below enable the SDL backend too. This assumes there is a -# libsdl library available on your build system. -PACKAGECONFIG_append_pn-qemu-native = " sdl" -PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl" -#ASSUME_PROVIDED += "libsdl-native" +# By default native qemu will build with a builtin VNC server where graphical output can be +# seen. The line below enables the SDL UI frontend too. +#PACKAGECONFIG:append:pn-qemu-system-native = " sdl" +# By default libsdl2-native will be built, if you want to use your host's libSDL instead of +# the minimal libsdl built by libsdl2-native then uncomment the ASSUME_PROVIDED line below. +#ASSUME_PROVIDED += "libsdl2-native" + +# You can also enable the Gtk UI frontend, which takes somewhat longer to build, but adds +# a handy set of menus for controlling the emulator. +#PACKAGECONFIG:append:pn-qemu-system-native = " gtk+" + +# +# Hash Equivalence +# +# Enable support for automatically running a local hash equivalence server and +# instruct bitbake to use a hash equivalence aware signature generator. Hash +# equivalence improves reuse of sstate by detecting when a given sstate +# artifact can be reused as equivalent, even if the current task hash doesn't +# match the one that generated the artifact. +# +# A shared hash equivalent server can be set with ":" format +# +#BB_HASHSERVE = "auto" +#BB_SIGNATURE_HANDLER = "OEEquivHash" +# +# Memory Resident Bitbake +# +# Bitbake's server component can stay in memory after the UI for the current command +# has completed. This means subsequent commands can run faster since there is no need +# for bitbake to reload cache files and so on. Number is in seconds, after which the +# server will shut down. +# +#BB_SERVER_TIMEOUT = "60" # CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to # track the version of this file when it was generated. This can safely be ignored if # this doesn't mean anything to you. -CONF_VERSION = "1" - -# Set the root password to '0penBmc' -# Defaults from meta-phosphor/conf/distro/include/phosphor-defaults.inc +CONF_VERSION = "2" diff --git a/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc_%.bbappend b/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc_%.bbappend index 57be249c9..4a6250ecb 100644 --- a/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc_%.bbappend +++ b/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc_%.bbappend @@ -1,8 +1,8 @@ -FILESEXTRAPATHS_prepend := "${THISDIR}/linux-obmc:" +FILESEXTRAPATHS:prepend := "${THISDIR}/linux-obmc:" SRC_URI += "file://gxp.dts \ " -do_patch_append() { +do_patch:append() { for DTB in "${KERNEL_DEVICETREE}"; do DT=`basename ${DTB} .dtb` if [ -r "${WORKDIR}/${DT}.dts" ]; then diff --git a/meta-hpe/meta-gxp/conf/layer.conf b/meta-hpe/meta-gxp/conf/layer.conf index 4612c22b0..7a9a11085 100644 --- a/meta-hpe/meta-gxp/conf/layer.conf +++ b/meta-hpe/meta-gxp/conf/layer.conf @@ -7,6 +7,6 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ BBFILE_COLLECTIONS += "gxp-layer" BBFILE_PATTERN_gxp-layer = "^${LAYERDIR}/" LAYERVERSION_gxp-layer = "1" -LAYERSERIES_COMPAT_gxp-layer = "hardknott" +LAYERSERIES_COMPAT_gxp-layer = "hardknott honister" GXPBASE = '${@os.path.normpath("${LAYERDIR}/")}' diff --git a/meta-hpe/meta-gxp/recipes-core/udev/udev-gxp-mtd-partitions.bb b/meta-hpe/meta-gxp/recipes-core/udev/udev-gxp-mtd-partitions.bb index 9954b6397..4321a39de 100644 --- a/meta-hpe/meta-gxp/recipes-core/udev/udev-gxp-mtd-partitions.bb +++ b/meta-hpe/meta-gxp/recipes-core/udev/udev-gxp-mtd-partitions.bb @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5 S = "${WORKDIR}" SRC_URI += "file://76-gxp-mtd-partitions.rules" -RDEPENDS_${PN} += "udev" +RDEPENDS:${PN} += "udev" do_install() { install -d ${D}/${nonarch_base_libdir}/udev/rules.d diff --git a/meta-hpe/meta-gxp/recipes-kernel/linux/linux-obmc.inc b/meta-hpe/meta-gxp/recipes-kernel/linux/linux-obmc.inc index 40de352f3..5c172b1c4 100644 --- a/meta-hpe/meta-gxp/recipes-kernel/linux/linux-obmc.inc +++ b/meta-hpe/meta-gxp/recipes-kernel/linux/linux-obmc.inc @@ -10,7 +10,7 @@ KSRC ?= "git://github.com/HewlettPackard/gxp-linux.git;branch=${KBRANCH}" SRC_URI = "${KSRC}" SRC_URI += " file://defconfig" -FILESEXTRAPATHS_prepend_linux-obmc := "${THISDIR}/linux-obmc:" +FILESEXTRAPATHS:prepend_linux-obmc := "${THISDIR}/linux-obmc:" LINUX_VERSION_EXTENSION ?= "-${SRCREV}" -- cgit v1.2.3