#@TYPE: Distribution#@NAME: Poky
#@DESCRIPTION: Distribution configuration for the Yocto Project build by Poky

DISTRO = "poky"
DISTRO_NAME = "Yocto (Built by Poky 4.0)"
DISTRO_VERSION = "0.9+snapshot-${DATE}"
SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}"

MAINTAINER = "Poky <poky@yoctoproject.org>"

USER_CLASSES ?= ""

PACKAGE_CLASSES ?= "package_ipk"
INHERIT_INSANE ?= "insane"
INHERIT += "${PACKAGE_CLASSES} ${USER_CLASSES} debian devshell ${INHERIT_INSANE} sstate license"
# For some reason, this doesn't work
# TARGET_OS ?= "linux"
# TARGET_VENDOR ?= "-poky"
# Set by POKYMODE instead
TARGET_OS = "linux"
TARGET_FPU_arm ?= "soft"
TARGET_FPU_armeb ?= "soft"
TARGET_FPU_nokia800 = "hard"

TARGET_LINK_HASH_STYLE ?= "${@['-Wl,--hash-style=gnu',''][bb.data.getVar('TARGET_ARCH', d, True) in ['mips', 'mipsel', 'mips64', 'mips64el']]}"

QA_LOGFILE = "${TMPDIR}/qa.log"

IMAGE_ROOTFS_SIZE_ext2 ?= "131072"

#IPK_FEED_URIS += " \
#           upgrades##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/upgrades/ \
#upgrades-${MACHINE}##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/upgrades/${MACHINE} \
#            machine##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/machine/${MACHINE} \
#               base##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/base/ \
#               libs##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/libs/ \
#            console##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/console \
#              devel##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/devel"

#RPM_FEED_URIS += " \
#           upgrades##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/upgrades/ \
#upgrades-${MACHINE}##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/upgrades/${MACHINE} \
#            machine##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/machine/${MACHINE} \
#               base##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/base/ \
#               libs##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/libs/ \
#            console##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/console \
#              devel##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/devel"

OEINCLUDELOGS = "yes"
KERNEL_CONSOLE = "ttyS0"
#DEBUG_OPTIMIZATION = "-O -g3"
#DEBUG_BUILD = "1"
#INHIBIT_PACKAGE_STRIP = "1"

# Default to TARGETOS values for EABI on arm
GLIBCTARGETOS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb']]}"
UCLIBCTARGETOS = "linux${@['-uclibc','-uclibcgnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb']]}"

POKYMODE ?= "default"
require conf/distro/include/poky-${POKYMODE}.inc

POKYLIBC ?= "eglibc"
require conf/distro/include/poky-${POKYLIBC}.inc

SDK_NAME = "${DISTRO}-${POKYLIBC}-${SDK_ARCH}-${TARGET_ARCH}"
SDKPATH = "/opt/${DISTRO}/${SDK_VERSION}"

CACHE = "${TMPDIR}/cache/${POKYMODE}-${POKYLIBC}${@['', '/' + str(bb.data.getVar('MACHINE', d, 1))][bool(bb.data.getVar('MACHINE', d, 1))]}${@['', '/' + str(bb.data.getVar('SDKMACHINE', d, 1))][bool(bb.data.getVar('SDKMACHINE', d, 1))]}"

#
# Preferred providers:
#

# Virtuals:
PREFERRED_PROVIDER_virtual/db ?= "db"
PREFERRED_PROVIDER_virtual/db-native ?= "db-native"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xf86"
PREFERRED_PROVIDER_virtual/xserver-xf86 ?= "xserver-xf86-dri-lite"
PREFERRED_PROVIDER_virtual/libgl ?= "mesa-xlib"
PREFERRED_PROVIDER_virtual/update-alternatives ?= "update-alternatives-cworth"
PREFERRED_PROVIDER_virtual/update-alternatives-native ?= "opkg-native"
PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-trim"
PREFERRED_PROVIDER_xf86-video-intel ?= "xf86-video-intel"

VIRTUAL-RUNTIME_update-alternatives ?= "update-alternatives-cworth"

# Others:
PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers"
PREFERRED_PROVIDER_linux-libc-headers-nativesdk ?= "linux-libc-headers-nativesdk"
PREFERRED_PROVIDER_libgcc ?= "libgcc"
PREFERRED_PROVIDER_libgcc-nativesdk ?= "libgcc-nativesdk"
PREFERRED_PROVIDER_dbus-glib ?= "dbus-glib"
PREFERRED_PROVIDER_dbus-glib-native ?= "dbus-glib-native"
PREFERRED_PROVIDER_gconf ?= "gconf-dbus"
PREFERRED_PROVIDER_matchbox-panel ?= "matchbox-panel-2"
PREFERRED_PROVIDER_opkg ?= "opkg"
PREFERRED_PROVIDER_opkg-native ?= "opkg-native"
PREFERRED_PROVIDER_opkg-nativesdk ?= "opkg-nativesdk"

PREFERRED_PROVIDER_gdk-pixbuf ?= "gdk-pixbuf"

require conf/distro/include/poky-fixed-revisions.inc
require conf/distro/include/preferred-xorg-versions.inc

PCMCIA_MANAGER ?= "pcmciautils"

#IMAGE_LINGUAS ?= "en-gb en-us"
#LIMIT_BUILT_LOCALES ?= "en_GB en_US"
IMAGE_LINGUAS ?= "en-us en-gb"
LIMIT_BUILT_LOCALES ?= "POSIX en_US en_GB"
ENABLE_BINARY_LOCALE_GENERATION ?= "1"
LOCALE_UTF8_ONLY = "0"

DISTRO_FEATURES = "alsa bluetooth ext2 irda pcmcia usbgadget usbhost wifi nfs zeroconf pci"

POKY_EXTRA_RDEPENDS = "task-poky-boot"
POKY_EXTRA_RDEPENDS_qemuarm = "qemu-config"
POKY_EXTRA_RDEPENDS_qemuarmv6 = "qemu-config"
POKY_EXTRA_RDEPENDS_qemuarmv7 = "qemu-config"
POKY_EXTRA_RDEPENDS_qemux86 = "qemu-config"
POKY_EXTRA_RDEPENDS_qemux86-64 = "qemu-config"

DISTRO_EXTRA_RDEPENDS += "${POKY_EXTRA_RDEPENDS}"
DISTRO_EXTRA_RRECOMMENDS += "kernel-module-af-packet"

IMAGE_FEATURES ?= ""

EXTRAOPKGCONFIG = "poky-feed-config-opkg"

# This is a list of packages that are used by poky to build the distribution, they are not
# directly part of the distribution. 
HOSTTOOLS_WHITELIST_GPLv3 = ""
WHITELIST_GPLv3 = "less gnome-common"
LGPLv2_WHITELIST_GPLv3 = "libassuan gnutls libtasn1 libidn" 

# This is a list of packages that require a commercial license to ship
# product. If shipped as part of an image these packages may have 
# implications so they are disabled by default
COMMERCIAL_LICENSE ?= "lame gst-fluendo-mp3 libmad mpeg2dec ffmpeg qmmp"
COMMERCIAL_AUDIO_PLUGINS ?= ""
# COMMERCIAL_AUDIO_PLUGINS ?= "gst-plugins-ugly-mad gst-plugins-ugly-mpegaudioparse"
COMMERCIAL_VIDEO_PLUGINS ?= ""
# COMMERCIAL_VIDEO_PLUGINS ?= "gst-plugins-ugly-mpeg2dec gst-plugins-ugly-mpegstream gst-plugins-bad-mpegvideoparse"
COMMERCIAL_QT ?= ""
# COMMERCIAL_QT ?= "qmmp"
# Set of common licenses used for license.bbclass
COMMON_LICENSE_DIR ??= "${POKYBASE}/meta/files/common-licenses"

BB_GENERATE_MIRROR_TARBALLS ??= "0"

require conf/distro/include/world-broken.inc

PREMIRRORS =+ "\
bzr://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
cvs://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
git://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
hg://.*/.*    http://autobuilder.yoctoproject.org/sources/ \n \
osc://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
p4://.*/.*    http://autobuilder.yoctoproject.org/sources/ \n \
svk://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
svn://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n"

MIRRORS =+ "\
ftp://.*/.*      http://autobuilder.yoctoproject.org/sources/ \n \
http://.*/.*     http://autobuilder.yoctoproject.org/sources/ \n \
https://.*/.*    http://autobuilder.yoctoproject.org/sources/ \n"

