blob: 35bd8deb922c716ff703f988d7d3f596b33d0c3f [file] [log] [blame]
Brad Bishop7a83a122018-03-08 22:17:47 -05001require conf/distro/include/phosphor-defaults.inc
2
Patrick Williams7e6220e2022-12-16 08:22:11 -06003# Match the distro codename from upstream poky.
Patrick Williams023e65f2023-12-06 10:33:09 -06004DISTRO_CODENAME ?= "scarthgap"
Patrick Williams7e6220e2022-12-16 08:22:11 -06005
Brad Bishopf14643d2020-08-12 06:31:39 -04006DISTROOVERRIDES .= ":openbmc-phosphor"
7
David Cobbley2a5e5712018-06-29 13:27:44 -07008TCLIBCAPPEND = ""
9
Anton Blanchard4d1faa82021-08-16 23:32:08 -060010QEMU_TARGETS ?= "arm aarch64 i386 riscv32 riscv64 ppc64le x86_64"
David Cobbley2a5e5712018-06-29 13:27:44 -070011
12PREMIRRORS ??= "\
13bzr://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
14cvs://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
15git://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
16gitsm://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
17hg://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
18osc://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
19p4://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
20svn://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n"
21
22MIRRORS =+ "\
23ftp://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
24http://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
25https://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n"
26
Gunnar Millse5b38602018-08-31 12:39:15 -050027# The CONNECTIVITY_CHECK_URI's are used to test whether we can successfully
David Cobbley2a5e5712018-06-29 13:27:44 -070028# fetch from the network (and warn you if not). To disable the test set
29# the variable to be empty.
Patrick Williamsb389cd92021-12-15 21:34:22 -060030# Git example url: git://git.yoctoproject.org/yocto-firewall-test;protocol=https;rev=master
Andrew Geissler05164d02022-02-10 10:36:05 -060031CONNECTIVITY_CHECK_URIS ?= "https://yoctoproject.org/connectivity.html"
David Cobbley2a5e5712018-06-29 13:27:44 -070032
33SANITY_TESTED_DISTROS ?= " \
Patrick Williams6a6e44b2024-03-21 10:26:10 -050034 poky-4.2 \n \
35 poky-4.3 \n \
36 ubuntu-18.04 \n \
37 ubuntu-20.04 \n \
38 ubuntu-22.04 \n \
39 ubuntu-23.04 \n \
40 fedora-38 \n \
41 centosstream-8 \n \
42 debian-11 \n \
43 debian-12 \n \
44 opensuseleap-15.4 \n \
45 almalinux-8.8 \n \
46 almalinux-9.2 \n \
47 rocky-9 \n \
David Cobbley2a5e5712018-06-29 13:27:44 -070048 "
49#
50# OELAYOUT_ABI allows us to notify users when the format of TMPDIR changes in
51# an incompatible way. Such changes should usually be detailed in the commit
52# that breaks the format and have been previously discussed on the mailing list
53# with general agreement from the core team.
54#
Patrick Williamsfdc74032024-03-21 10:23:36 -050055OELAYOUT_ABI = "15"
David Cobbley2a5e5712018-06-29 13:27:44 -070056
David Cobbley2a5e5712018-06-29 13:27:44 -070057# QA check settings - a little stricter than the OE-Core defaults
58WARN_TO_ERROR_QA = "already-stripped compile-host-path install-host-path \
59 installed-vs-shipped ldflags pn-overrides rpaths staticdev \
60 useless-rpaths"
Patrick Williams12fc9392021-08-06 09:16:53 -050061WARN_QA:remove = "${WARN_TO_ERROR_QA}"
62ERROR_QA:append = " ${WARN_TO_ERROR_QA}"
David Cobbley2a5e5712018-06-29 13:27:44 -070063
David Cobbley2a5e5712018-06-29 13:27:44 -070064require conf/distro/include/no-static-libs.inc
Patrick Williams5e3ca932020-01-18 14:14:31 -060065require conf/distro/include/yocto-uninative.inc
David Cobbley2a5e5712018-06-29 13:27:44 -070066
Joel Stanley70d6c5e2022-05-02 11:59:53 +093067DISTRO_NAME ?= "Phosphor OpenBMC (Phosphor OpenBMC Project Reference Distro)"
Brad Bishop7a83a122018-03-08 22:17:47 -050068TARGET_VENDOR="-openbmc"
69
Patrick Williams677bc382024-02-06 11:47:22 -060070
Brad Bishop7a83a122018-03-08 22:17:47 -050071VIRTUAL-RUNTIME_keymaps = ""
72
73# Phosphor OpenBMC uses systemd and udev
Patrick Williams677bc382024-02-06 11:47:22 -060074INIT_MANAGER = "systemd"
75# systemd doesn't like us using /home/root instead of /root but we've been
76# doing it a long time. The `INIT_MANAGER = systemd` switches the default to
77# /root, but we should switch it back (and maybe adjust in another commit).
78ROOT_HOME = "/home/root"
Brad Bishop7a83a122018-03-08 22:17:47 -050079
Patrick Williams828c1302024-03-08 19:50:48 -060080# We want to persist /var/log, which is likely to be used for
81# obmc-console and/or journald.
82VOLATILE_LOG_DIR = "no"
83
Brad Bishopd3839342018-03-09 21:48:12 -050084DISTRO_FEATURES_BACKFILL_CONSIDERED = " \
85 bluez5 \
86 ldconfig \
87 gobject-introspection-data \
88 pulseaudio \
Brad Bishopd3839342018-03-09 21:48:12 -050089 "
90
91DISTRO_FEATURES_OBMC = " \
92 obmc-host-ctl \
Brad Bishop7a83a122018-03-08 22:17:47 -050093 obmc-host-ipmi \
Brad Bishopd3839342018-03-09 21:48:12 -050094 obmc-phosphor-chassis-mgmt \
95 obmc-phosphor-fan-mgmt \
96 obmc-phosphor-flash-mgmt \
Patrick Williams5a5f33c2021-11-03 10:35:37 -050097 obmc-phosphor-system-mgmt \
Brad Bishopd3839342018-03-09 21:48:12 -050098 "
99
100DISTRO_FEATURES_DEFAULT = " \
101 avahi \
Patrick Williams8f58bba2020-05-13 10:51:49 -0500102 ipv4 \
103 ipv6 \
Brad Bishopd3839342018-03-09 21:48:12 -0500104 pam \
Patrick Williamsada9e0f2021-08-24 08:12:58 -0500105 security \
Brad Bishopd3839342018-03-09 21:48:12 -0500106 slp \
Andrew Geissler0540afd2021-08-30 20:37:00 -0500107 seccomp \
Brad Bishopd3839342018-03-09 21:48:12 -0500108 "
109
Andrew Geisslerfdcb2d92019-10-18 11:04:05 -0500110DISTRO_FEATURES += " \
Brad Bishopd3839342018-03-09 21:48:12 -0500111 ${DISTRO_FEATURES_DEFAULT} \
Brad Bishopd3839342018-03-09 21:48:12 -0500112 ${DISTRO_FEATURES_OBMC} \
Brad Bishop7a83a122018-03-08 22:17:47 -0500113 "
114
Patrick Williams12fc9392021-08-06 09:16:53 -0500115DISTRO_EXTRA_RDEPENDS:remove:qemuarm = "packagegroup-core-device-devel"
Brad Bishop7a83a122018-03-08 22:17:47 -0500116
Brad Bishop7a83a122018-03-08 22:17:47 -0500117include conf/distro/include/openbmc-phosphor/${MACHINE}.inc
118
Patrick Williams12fc9392021-08-06 09:16:53 -0500119IMAGE_CLASSES:append = " image_types_phosphor phosphor-rootfs-postcommands"
120IMAGE_CLASSES:append:npcm7xx = " image_types_phosphor_nuvoton"
Tim Leedd14a912022-07-29 16:42:15 +0800121IMAGE_CLASSES:append:npcm8xx = " image_types_phosphor_nuvoton_npcm8xx"
Brad Bishop7a83a122018-03-08 22:17:47 -0500122
Patrick Williams12fc9392021-08-06 09:16:53 -0500123IMAGE_INSTALL:append = " dbus-broker libnss-systemd"
William A. Kennington IIId73b9cd2019-09-16 17:49:53 -0700124
Brad Bishop0c523422018-06-25 16:53:45 -0400125# Skip the udev database by default. It adds around 2MB
126# compressed to the root filesystem, and probably doesn't
127# make sense on a BMC anyway.
William A. Kennington III79e49342019-09-16 17:50:53 -0700128BAD_RECOMMENDATIONS += "udev-hwdb"
129BAD_RECOMMENDATIONS += "shared-mime-info"
David Cobbley2a5e5712018-06-29 13:27:44 -0700130
William A. Kennington III97f05262021-12-20 02:06:07 -0800131# e2fsprogs isn't needed on a BMC without MMC, where it gets explicitly added
132BAD_RECOMMENDATIONS += "e2fsprogs-e2fsck"
133
Dave Cobbley0639c5b2018-08-24 11:31:04 -0700134LAYER_CONF_VERSION ?= "8"
Lei YUb5a2c262019-05-15 19:52:10 -0400135
Patrick Williams12fc9392021-08-06 09:16:53 -0500136KERNEL_CLASSES:append = " obmc-phosphor-kernel-version"
Patrick Williams891b1442020-06-12 06:04:25 -0500137
138# Some packages have directory trees of YAML files arranged based on
Patrick Williams0ea73d32023-01-12 11:37:14 -0600139# canonical organization names. 'org/freedesktop' and 'xyz/openbmc_project'
140# should be used everywhere in phosphor, but some layers may append this with
141# their own organization(s).
142OBMC_ORG_YAML_SUBDIRS += " org/freedesktop xyz/openbmc_project"
Patrick Williamsc8643402023-03-16 17:05:37 -0500143
144PREFERRED_VERSION_libgpiod = "1.6.4"
Andrew Jefferyccf5bb22023-05-03 08:41:39 +0930145
146# Enable SBOM: https://docs.yoctoproject.org/next/dev-manual/sbom.html
147INHERIT += "create-spdx"