# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb"

BBFILE_COLLECTIONS += "core"
BBFILE_PATTERN_core = "^${LAYERDIR}/"
BBFILE_PRIORITY_core = "5"

LAYERSERIES_CORENAMES = "warrior"

# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_core = "11"
LAYERSERIES_COMPAT_core = "warrior"

BBLAYERS_LAYERINDEX_NAME_core = "openembedded-core"

# Set a variable to get to the top of the metadata location
COREBASE = '${@os.path.normpath("${LAYERDIR}/../")}'

# opkg-utils is for update-alternatives :(
SIGGEN_EXCLUDERECIPES_ABISAFE += " \
  sysvinit-inittab \
  busybox-inittab \
  shadow-securetty \
  opkg-arch-config \
  netbase \
  init-ifupdown \
  connman-conf \
  formfactor \
  xserver-xf86-config \
  pointercal-xinput \
  base-files \
  keymaps \
  udev-extraconf \
  packagegroup-x11-xserver \
  systemd-serialgetty \
  initscripts \
  shadow \
  shadow-sysroot \
  base-passwd \
  opkg-utils \
  gstreamer1.0-meta-base \
  ca-certificates \
"

SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
  *->quilt-native \
  *->subversion-native \
  *->git-native \
  *->icecc-create-env-native \
  gcc-cross-${TARGET_ARCH}->linux-libc-headers \
  ppp-dialin->ppp \
  resolvconf->bash \
  docbook-xsl-stylesheets->perl \
  ca-certificates->openssl \
  initramfs-framework->${VIRTUAL-RUNTIME_base-utils} \
  initramfs-framework->eudev \
  initramfs-framework->systemd \
  initramfs-module-install-efi->dosfstools \
  initramfs-module-install-efi->e2fsprogs \
  initramfs-module-install-efi->parted \
  initramfs-module-install-efi->util-linux \
  initramfs-module-install->e2fsprogs \
  initramfs-module-install->grub \
  initramfs-module-install->parted \
  initramfs-module-install->util-linux \
  grub-efi->grub-bootconf \
  liberation-fonts->fontconfig \
  cantarell-fonts->fontconfig \
  gnome-icon-theme->librsvg \
  font-alias->font-util \
  systemd-boot->systemd-bootconf \
  systemd->systemd-conf \
  weston->weston-conf \
  weston-init->weston \
  weston-init->kbd \
  connman->xl2tpd \
  lttng-tools->lttng-modules \
"

# Avoid adding bison-native to the sysroot without a specific
# dependency in the recipe. This means indirect dependencies
# (e.g. X -> Y -> binutils-cross -> bison-native) no longer meet the
# dependency incidentally. This improves determinism and avoids build
# failures when people switch to external toolchains.
SSTATE_EXCLUDEDEPS_SYSROOT += ".*->bison-native"
# Nothing needs to depend on libc-initial/gcc-cross-initial
# base-passwd/shadow-sysroot don't need their dependencies
SSTATE_EXCLUDEDEPS_SYSROOT += "\
    .*->.*-initial.* \
    .*(base-passwd|shadow-sysroot)->.* \
"
# Avoid adding autoconf-archive-native to sysroot without a specific
# dependency in the recipe.
SSTATE_EXCLUDEDEPS_SYSROOT += ".*->autoconf-archive-native"

# We need to keep bitbake tools in PATH
PATH := "${@os.path.dirname(bb.utils.which(d.getVar('PATH'),'bitbake'))}:${HOSTTOOLS_DIR}"
