# Layer configuration for meta-webserver layer
# Copyright 2012 Intel Corporation

# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"

# We have various recipe-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"

BBFILE_COLLECTIONS += "webserver"
BBFILE_PATTERN_webserver := "^${LAYERDIR}/"
BBFILE_PRIORITY_webserver = "6"

# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_webserver = "1"

LAYERDEPENDS_webserver = "core openembedded-layer"

LAYERSERIES_COMPAT_webserver = "thud warrior zeus"

LICENSE_PATH += "${LAYERDIR}/licenses"

SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
  phpmyadmin->bash \
  phpmyadmin->php \
"
