blob: e312cafc33a8e7a860993b82ec9fb3de315b0b22 [file] [log] [blame]
Brad Bishop7a83a122018-03-08 22:17:47 -05001require conf/distro/include/phosphor-defaults.inc
Patrick Williams200c2d32023-05-17 15:00:27 -05002require conf/distro/include/phosphor-pkg-tweaks.inc
Brad Bishop7a83a122018-03-08 22:17:47 -05003
Patrick Williams7e6220e2022-12-16 08:22:11 -06004# Match the distro codename from upstream poky.
Patrick Williams023e65f2023-12-06 10:33:09 -06005DISTRO_CODENAME ?= "scarthgap"
Patrick Williams7e6220e2022-12-16 08:22:11 -06006
David Cobbley2a5e5712018-06-29 13:27:44 -07007# Override these in poky based distros
Patrick Williams64d812c2023-05-17 21:50:19 -05008POKY_DEFAULT_DISTRO_FEATURES = "opengl ptest multiarch wayland vulkan"
David Cobbley2a5e5712018-06-29 13:27:44 -07009POKY_DEFAULT_EXTRA_RDEPENDS = "packagegroup-core-boot"
10POKY_DEFAULT_EXTRA_RRECOMMENDS = "kernel-module-af-packet"
11
12DISTRO_EXTRA_RDEPENDS += " ${POKY_DEFAULT_EXTRA_RDEPENDS}"
13DISTRO_EXTRA_RRECOMMENDS += " ${POKY_DEFAULT_EXTRA_RRECOMMENDS}"
14
Brad Bishopf14643d2020-08-12 06:31:39 -040015DISTROOVERRIDES .= ":openbmc-phosphor"
16
David Cobbley2a5e5712018-06-29 13:27:44 -070017TCLIBCAPPEND = ""
18
Anton Blanchard4d1faa82021-08-16 23:32:08 -060019QEMU_TARGETS ?= "arm aarch64 i386 riscv32 riscv64 ppc64le x86_64"
David Cobbley2a5e5712018-06-29 13:27:44 -070020
21PREMIRRORS ??= "\
22bzr://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
23cvs://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
24git://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
25gitsm://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
26hg://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
27osc://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
28p4://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
29svn://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n"
30
31MIRRORS =+ "\
32ftp://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
33http://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
34https://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n"
35
Gunnar Millse5b38602018-08-31 12:39:15 -050036# The CONNECTIVITY_CHECK_URI's are used to test whether we can successfully
David Cobbley2a5e5712018-06-29 13:27:44 -070037# fetch from the network (and warn you if not). To disable the test set
38# the variable to be empty.
Patrick Williamsb389cd92021-12-15 21:34:22 -060039# Git example url: git://git.yoctoproject.org/yocto-firewall-test;protocol=https;rev=master
Andrew Geissler05164d02022-02-10 10:36:05 -060040CONNECTIVITY_CHECK_URIS ?= "https://yoctoproject.org/connectivity.html"
David Cobbley2a5e5712018-06-29 13:27:44 -070041
42SANITY_TESTED_DISTROS ?= " \
43 poky-2.4 \n \
44 poky-2.5 \n \
45 ubuntu-15.04 \n \
46 ubuntu-16.04 \n \
47 ubuntu-16.10 \n \
48 ubuntu-17.04 \n \
49 fedora-26 \n \
50 centos-7 \n \
51 debian-8 \n \
52 debian-9 \n \
53 opensuse-42.1 \n \
54 opensuse-42.2 \n \
55 "
56#
57# OELAYOUT_ABI allows us to notify users when the format of TMPDIR changes in
58# an incompatible way. Such changes should usually be detailed in the commit
59# that breaks the format and have been previously discussed on the mailing list
60# with general agreement from the core team.
61#
62
63OELAYOUT_ABI = "12"
64
David Cobbley2a5e5712018-06-29 13:27:44 -070065# QA check settings - a little stricter than the OE-Core defaults
66WARN_TO_ERROR_QA = "already-stripped compile-host-path install-host-path \
67 installed-vs-shipped ldflags pn-overrides rpaths staticdev \
68 useless-rpaths"
Patrick Williams12fc9392021-08-06 09:16:53 -050069WARN_QA:remove = "${WARN_TO_ERROR_QA}"
70ERROR_QA:append = " ${WARN_TO_ERROR_QA}"
David Cobbley2a5e5712018-06-29 13:27:44 -070071
David Cobbley2a5e5712018-06-29 13:27:44 -070072require conf/distro/include/no-static-libs.inc
Patrick Williams5e3ca932020-01-18 14:14:31 -060073require conf/distro/include/yocto-uninative.inc
David Cobbley2a5e5712018-06-29 13:27:44 -070074
Joel Stanley70d6c5e2022-05-02 11:59:53 +093075DISTRO_NAME ?= "Phosphor OpenBMC (Phosphor OpenBMC Project Reference Distro)"
Brad Bishop7a83a122018-03-08 22:17:47 -050076TARGET_VENDOR="-openbmc"
77
Patrick Williams677bc382024-02-06 11:47:22 -060078
Brad Bishop7a83a122018-03-08 22:17:47 -050079VIRTUAL-RUNTIME_keymaps = ""
80
81# Phosphor OpenBMC uses systemd and udev
Patrick Williams677bc382024-02-06 11:47:22 -060082INIT_MANAGER = "systemd"
83# systemd doesn't like us using /home/root instead of /root but we've been
84# doing it a long time. The `INIT_MANAGER = systemd` switches the default to
85# /root, but we should switch it back (and maybe adjust in another commit).
86ROOT_HOME = "/home/root"
Brad Bishop7a83a122018-03-08 22:17:47 -050087
Brad Bishopd3839342018-03-09 21:48:12 -050088DISTRO_FEATURES_BACKFILL_CONSIDERED = " \
89 bluez5 \
90 ldconfig \
91 gobject-introspection-data \
92 pulseaudio \
Brad Bishopd3839342018-03-09 21:48:12 -050093 "
94
95DISTRO_FEATURES_OBMC = " \
96 obmc-host-ctl \
Brad Bishop7a83a122018-03-08 22:17:47 -050097 obmc-host-ipmi \
Brad Bishopd3839342018-03-09 21:48:12 -050098 obmc-phosphor-chassis-mgmt \
99 obmc-phosphor-fan-mgmt \
100 obmc-phosphor-flash-mgmt \
Patrick Williams5a5f33c2021-11-03 10:35:37 -0500101 obmc-phosphor-system-mgmt \
Brad Bishopd3839342018-03-09 21:48:12 -0500102 "
103
104DISTRO_FEATURES_DEFAULT = " \
105 avahi \
Patrick Williams8f58bba2020-05-13 10:51:49 -0500106 ipv4 \
107 ipv6 \
Brad Bishopd3839342018-03-09 21:48:12 -0500108 pam \
Patrick Williamsada9e0f2021-08-24 08:12:58 -0500109 security \
Brad Bishopd3839342018-03-09 21:48:12 -0500110 slp \
Andrew Geissler0540afd2021-08-30 20:37:00 -0500111 seccomp \
Brad Bishopd3839342018-03-09 21:48:12 -0500112 "
113
Andrew Geisslerfdcb2d92019-10-18 11:04:05 -0500114DISTRO_FEATURES += " \
Brad Bishopd3839342018-03-09 21:48:12 -0500115 ${DISTRO_FEATURES_DEFAULT} \
Brad Bishopd3839342018-03-09 21:48:12 -0500116 ${DISTRO_FEATURES_OBMC} \
Brad Bishop7a83a122018-03-08 22:17:47 -0500117 "
118
Patrick Williams12fc9392021-08-06 09:16:53 -0500119DISTRO_EXTRA_RDEPENDS:remove:qemuarm = "packagegroup-core-device-devel"
Brad Bishop7a83a122018-03-08 22:17:47 -0500120
Brad Bishop7a83a122018-03-08 22:17:47 -0500121include conf/distro/include/openbmc-phosphor/${MACHINE}.inc
122
Patrick Williams12fc9392021-08-06 09:16:53 -0500123IMAGE_CLASSES:append = " image_types_phosphor phosphor-rootfs-postcommands"
124IMAGE_CLASSES:append:npcm7xx = " image_types_phosphor_nuvoton"
Tim Leedd14a912022-07-29 16:42:15 +0800125IMAGE_CLASSES:append:npcm8xx = " image_types_phosphor_nuvoton_npcm8xx"
Brad Bishop7a83a122018-03-08 22:17:47 -0500126
Patrick Williams12fc9392021-08-06 09:16:53 -0500127IMAGE_INSTALL:append = " dbus-broker libnss-systemd"
William A. Kennington IIId73b9cd2019-09-16 17:49:53 -0700128
Brad Bishop0c523422018-06-25 16:53:45 -0400129# Skip the udev database by default. It adds around 2MB
130# compressed to the root filesystem, and probably doesn't
131# make sense on a BMC anyway.
William A. Kennington III79e49342019-09-16 17:50:53 -0700132BAD_RECOMMENDATIONS += "udev-hwdb"
133BAD_RECOMMENDATIONS += "shared-mime-info"
David Cobbley2a5e5712018-06-29 13:27:44 -0700134
William A. Kennington III97f05262021-12-20 02:06:07 -0800135# e2fsprogs isn't needed on a BMC without MMC, where it gets explicitly added
136BAD_RECOMMENDATIONS += "e2fsprogs-e2fsck"
137
Dave Cobbley0639c5b2018-08-24 11:31:04 -0700138LAYER_CONF_VERSION ?= "8"
Lei YUb5a2c262019-05-15 19:52:10 -0400139
Patrick Williams12fc9392021-08-06 09:16:53 -0500140KERNEL_CLASSES:append = " obmc-phosphor-kernel-version"
Patrick Williams891b1442020-06-12 06:04:25 -0500141
142# Some packages have directory trees of YAML files arranged based on
Patrick Williams0ea73d32023-01-12 11:37:14 -0600143# canonical organization names. 'org/freedesktop' and 'xyz/openbmc_project'
144# should be used everywhere in phosphor, but some layers may append this with
145# their own organization(s).
146OBMC_ORG_YAML_SUBDIRS += " org/freedesktop xyz/openbmc_project"
Patrick Williamsc8643402023-03-16 17:05:37 -0500147
148PREFERRED_VERSION_libgpiod = "1.6.4"
Andrew Jefferyccf5bb22023-05-03 08:41:39 +0930149
150# Enable SBOM: https://docs.yoctoproject.org/next/dev-manual/sbom.html
151INHERIT += "create-spdx"