blob: b1f8d5946e1902f4fc7770d10a2ef1c2a53ef8cc [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 Williams776bcef2023-05-16 16:39:16 -05005DISTRO_CODENAME ?= "mickledore"
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
Brad Bishop7a83a122018-03-08 22:17:47 -050078VIRTUAL-RUNTIME_keymaps = ""
79
80# Phosphor OpenBMC uses systemd and udev
Brad Bishop7a83a122018-03-08 22:17:47 -050081VIRTUAL-RUNTIME_init_manager = "systemd"
Brad Bishop7a83a122018-03-08 22:17:47 -050082VIRTUAL-RUNTIME_initscripts = ""
83
Brad Bishopd3839342018-03-09 21:48:12 -050084DISTRO_FEATURES_BACKFILL_CONSIDERED = " \
85 bluez5 \
86 ldconfig \
87 gobject-introspection-data \
88 pulseaudio \
89 sysvinit \
90 "
91
92DISTRO_FEATURES_OBMC = " \
93 obmc-host-ctl \
Brad Bishop7a83a122018-03-08 22:17:47 -050094 obmc-host-ipmi \
Brad Bishopd3839342018-03-09 21:48:12 -050095 obmc-phosphor-chassis-mgmt \
96 obmc-phosphor-fan-mgmt \
97 obmc-phosphor-flash-mgmt \
Patrick Williams5a5f33c2021-11-03 10:35:37 -050098 obmc-phosphor-system-mgmt \
Brad Bishopd3839342018-03-09 21:48:12 -050099 "
100
101DISTRO_FEATURES_DEFAULT = " \
102 avahi \
Patrick Williams8f58bba2020-05-13 10:51:49 -0500103 ipv4 \
104 ipv6 \
Brad Bishopd3839342018-03-09 21:48:12 -0500105 pam \
Patrick Williamsada9e0f2021-08-24 08:12:58 -0500106 security \
Brad Bishopd3839342018-03-09 21:48:12 -0500107 slp \
108 systemd \
Andrew Geissler0540afd2021-08-30 20:37:00 -0500109 seccomp \
Brad Bishopd3839342018-03-09 21:48:12 -0500110 "
111
Andrew Geisslerfdcb2d92019-10-18 11:04:05 -0500112DISTRO_FEATURES += " \
Brad Bishopd3839342018-03-09 21:48:12 -0500113 ${DISTRO_FEATURES_DEFAULT} \
Brad Bishopd3839342018-03-09 21:48:12 -0500114 ${DISTRO_FEATURES_OBMC} \
Brad Bishop7a83a122018-03-08 22:17:47 -0500115 "
116
Patrick Williams12fc9392021-08-06 09:16:53 -0500117DISTRO_EXTRA_RDEPENDS:remove:qemuarm = "packagegroup-core-device-devel"
Brad Bishop7a83a122018-03-08 22:17:47 -0500118
Brad Bishop7a83a122018-03-08 22:17:47 -0500119include conf/distro/include/openbmc-phosphor/${MACHINE}.inc
120
Patrick Williams12fc9392021-08-06 09:16:53 -0500121IMAGE_CLASSES:append = " image_types_phosphor phosphor-rootfs-postcommands"
122IMAGE_CLASSES:append:npcm7xx = " image_types_phosphor_nuvoton"
Tim Leedd14a912022-07-29 16:42:15 +0800123IMAGE_CLASSES:append:npcm8xx = " image_types_phosphor_nuvoton_npcm8xx"
Brad Bishop7a83a122018-03-08 22:17:47 -0500124
Patrick Williams12fc9392021-08-06 09:16:53 -0500125IMAGE_INSTALL:append = " dbus-broker libnss-systemd"
William A. Kennington IIId73b9cd2019-09-16 17:49:53 -0700126
Brad Bishop0c523422018-06-25 16:53:45 -0400127# Skip the udev database by default. It adds around 2MB
128# compressed to the root filesystem, and probably doesn't
129# make sense on a BMC anyway.
William A. Kennington III79e49342019-09-16 17:50:53 -0700130BAD_RECOMMENDATIONS += "udev-hwdb"
131BAD_RECOMMENDATIONS += "shared-mime-info"
David Cobbley2a5e5712018-06-29 13:27:44 -0700132
William A. Kennington III97f05262021-12-20 02:06:07 -0800133# e2fsprogs isn't needed on a BMC without MMC, where it gets explicitly added
134BAD_RECOMMENDATIONS += "e2fsprogs-e2fsck"
135
Dave Cobbley0639c5b2018-08-24 11:31:04 -0700136LAYER_CONF_VERSION ?= "8"
Lei YUb5a2c262019-05-15 19:52:10 -0400137
Patrick Williams12fc9392021-08-06 09:16:53 -0500138KERNEL_CLASSES:append = " obmc-phosphor-kernel-version"
Patrick Williams891b1442020-06-12 06:04:25 -0500139
140# Some packages have directory trees of YAML files arranged based on
Patrick Williams0ea73d32023-01-12 11:37:14 -0600141# canonical organization names. 'org/freedesktop' and 'xyz/openbmc_project'
142# should be used everywhere in phosphor, but some layers may append this with
143# their own organization(s).
144OBMC_ORG_YAML_SUBDIRS += " org/freedesktop xyz/openbmc_project"
Patrick Williamsc8643402023-03-16 17:05:37 -0500145
146PREFERRED_VERSION_libgpiod = "1.6.4"
Andrew Jefferyccf5bb22023-05-03 08:41:39 +0930147
148# Enable SBOM: https://docs.yoctoproject.org/next/dev-manual/sbom.html
149INHERIT += "create-spdx"