summaryrefslogtreecommitdiff
path: root/conf/distro/yogurt.conf
diff options
context:
space:
mode:
authorStefan Müller-Klieser <s.mueller-klieser@phytec.de>2015-01-15 15:33:12 +0100
committerStefan Müller-Klieser <s.mueller-klieser@phytec.de>2015-01-15 15:33:12 +0100
commitd91d88a79dc74b1a44195fc686dd941177eeaea9 (patch)
tree4804e0d2e5dd87d415d7d7a1ede594ce4af0e013 /conf/distro/yogurt.conf
parentcbd34883f182239fe9d1e1c04224ca399d1842d3 (diff)
downloadmeta-yogurt-d91d88a79dc74b1a44195fc686dd941177eeaea9.tar.bz2
meta-yogurt-d91d88a79dc74b1a44195fc686dd941177eeaea9.zip
layer: rework the distribution
Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de>
Diffstat (limited to 'conf/distro/yogurt.conf')
-rw-r--r--conf/distro/yogurt.conf217
1 files changed, 108 insertions, 109 deletions
diff --git a/conf/distro/yogurt.conf b/conf/distro/yogurt.conf
index 17c12ac..6b13b96 100644
--- a/conf/distro/yogurt.conf
+++ b/conf/distro/yogurt.conf
@@ -1,118 +1,117 @@
-#@--------------------------------------------------------------------
-#@TYPE: Distribution
-#@NAME: Yogurt
-#@DESCRIPTION: The Linux Distribution for Kernel 2.6+ based devices
-#@--------------------------------------------------------------------
-
-# This is a aimed to be the next stable yogurt release.
-# If you want something stable *right now*, use yogurt-v2013.12
-#
-# Use this at your own risk, we welcome bugreports sent to
-# yogurt-distro-devel@linuxtogo.org
+DISTRO = "yogurt"
+DISTRO_NAME = "Yogurt (Phytec Example Distribution)"
+DISTRO_VERSION = "${BSP_VERSION}"
+DISTRO_CODENAME = "dizzy"
+SDK_VENDOR = "-yogurtsdk"
+SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}"
+
+TARGET_VENDOR = "-phytec"
+
+DISTRO_FEATURES_YOGURT = "alsa bluetooth ext2 ipv4 ipv6 largefile nfs pam pci smbfs systemd usbgadget usbhost vfat wifi xattr zeroconf opengl ptest wayland pulseaudio"
+
+DISTRO_FEATURES = "${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC} ${DISTRO_FEATURES_YOGURT}"
+
+SDK_NAME = "${DISTRO}-${TCLIBC}-${SDK_ARCH}-${IMAGE_BASENAME}-${TUNE_PKGARCH}"
+SDKPATH = "/opt/${DISTRO}/${SDK_VERSION}"
+
+EXTRAOPKGCONFIG = "yogurt-feed-config-opkg"
+EXTRA_IMAGE_FEATURES ?= "package-management"
+
+POKYQEMUDEPS = "${@bb.utils.contains("INCOMPATIBLE_LICENSE", "GPLv3", "", "packagegroup-core-device-devel",d)}"
+DISTRO_EXTRA_RDEPENDS_append_qemuarm = " ${POKYQEMUDEPS}"
+DISTRO_EXTRA_RDEPENDS_append_qemumips = " ${POKYQEMUDEPS}"
+DISTRO_EXTRA_RDEPENDS_append_qemuppc = " ${POKYQEMUDEPS}"
+DISTRO_EXTRA_RDEPENDS_append_qemux86 = " ${POKYQEMUDEPS}"
+DISTRO_EXTRA_RDEPENDS_append_qemux86-64 = " ${POKYQEMUDEPS}"
+
+# Can be "glibc", "musl" or "uclibc"
+TCLIBC ?= "glibc"
+include include/yogurt-${TCLIBC}.inc
+
+QEMU_TARGETS ?= "arm i386 mips mipsel ppc x86_64"
+# Other QEMU_TARGETS "mips64 mips64el sh4"
+
+# The CONNECTIVITY_CHECK_URI's are used to test whether we can succesfully
+# fetch from the network (and warn you if not). To disable the test set
+# the variable to be empty.
+# Git example url: git://git.yoctoproject.org/yocto-firewall-test;protocol=git;rev=HEAD
+
+CONNECTIVITY_CHECK_URIS ?= " \
+ https://eula-downloads.yoctoproject.org/index.php \
+ http://bugzilla.yoctoproject.org/report.cgi \
+ ftp://ftp.phytec.de/pub/Software/Linux/Yocto/Tools/phyLinux \
+ git://git.yoctoproject.org/yocto-firewall-test;protocol=git;rev=HEAD \
+ "
+
+SANITY_TESTED_DISTROS ?= " \
+ Ubuntu-14.04 \n \
+ "
+
+# Default hash policy for distro
+BB_SIGNATURE_HANDLER ?= 'OEBasicHash'
#
-# For more contact info please visit
-# http://www.yogurt-distribution.org/contact
+# OELAYOUT_ABI allows us to notify users when the format of TMPDIR changes in
+# an incompatible way. Such changes should usually be detailed in the commit
+# that breaks the format and have been previously discussed on the mailing list
+# with general agreement from the core team.
#
-# Again, in doubt, use the master branch of setup-scripts
+OELAYOUT_ABI = "8"
-DISTRO_VERSION ?= ""
+# add poky sanity bbclass
+INHERIT += "poky-sanity"
-OLDEST_KERNEL = "2.6.16"
+# QA check settings - a little stricter than the OE-Core defaults
+WARN_QA = "textrel files-invalid incompatible-license xorg-driver-abi libdir \
+ unknown-configure-option build-deps"
+ERROR_QA = "dev-so debug-deps dev-deps debug-files arch pkgconfig la perms \
+ useless-rpaths rpaths staticdev ldflags pkgvarcheck already-stripped \
+ compile-host-path dep-cmp installed-vs-shipped install-host-path \
+ packages-list perm-config perm-line perm-link pkgv-undefined \
+ pn-overrides split-strip var-undefined version-going-backwards"
-# build comemrcial hw accell modules
-MACHINE_FEATURES_append_ti33x = " sgx"
+# Set some java bits
+DEFAULTJRE ?= "openjdk-7-jre"
-#Images built can have to modes:
-# 'debug': empty rootpassword, strace included
-# 'release' no root password, no strace and gdb by default
-DISTRO_TYPE ?= "debug"
-#DISTRO_TYPE = "release"
+#activate config checker
+INHERIT += "sanity"
-# Set the toolchain type (internal, external) and brand (generic, csl etc.)
-TOOLCHAIN_TYPE ?= "internal"
-TOOLCHAIN_BRAND ?= ""
+#use angstrom source mirrors to combat 404s
+INHERIT += "phytec-mirrors"
-PREFERRED_PROVIDER_os-release = "yogurt-version"
+#run QA tests on builds and packages and log them
+INHERIT += "insane"
+QA_LOG = "1"
+
+# Log information on images and packages
+INHERIT += "buildhistory"
+BUILDHISTORY_COMMIT = "1"
+INHERIT += "buildstats"
+
+# Prelink images
+INHERIT += "image-prelink"
+
+# optimize lib sizes with mklibs
+INHERIT += "image-mklibs"
+
+#run QA tests on recipes
+#INHERIT += "recipe_sanity"
-DISTRO_FEATURES_append = " wayland"
-#QT5 config
-include include/qt5-versions.inc
-
-
-# Ship just basic locale by default. Locales are big (~1Mb uncompr.), so
-# shipping some adhoc subset will be still useless and size burden for
-# users of all other languages/countries. Instead, worth to make it easy
-# to install additional languages: installer/wizard + metapackages which
-# will RRECOMMEND as much as possible content for a given language
-# (locales, UI transalations, help, etc. - useless for pros, but really
-# helpful for common users).
-# Also, it appears that no locales fit in 16Mb for now. "C" locale rules!
-ROOT_FLASH_SIZE ??= "32"
-IMAGE_LINGUAS ?= '${@base_less_or_equal("ROOT_FLASH_SIZE", "16", "", "en-us", d)}'
-
-# blacklist policy
-
-PNBLACKLIST[pn-fso-apm] = "regular apmd is good enough"
-PNBLACKLIST[gconf-dbus] = "gconf-dbus has been merged back into main GConf"
-PNBLACKLIST[gconf-dbus-native] = "gconf-dbus has been merged back into main GConf"
-PNBLACKLIST[ffmpeg] = "libav is preferred over ffmpeg"
-
-# Define splash before it gets set to empty in yogurt-core-tweaks.inc:
-SPLASH ?= ' ${@base_contains("MACHINE_FEATURES", "screen", "dietsplash", "",d)}'
-require yogurt.inc
-
-# Prefer openssh over dropbear
-TASK_BASIC_SSHDAEMON = "openssh-ssh openssh-sshd openssh-scp openssh-sftp openssh-sftp-server"
-
-# Toolchain virtuals:
-require conf/distro/toolchain-${TOOLCHAIN_TYPE}.inc
-# Processor specific tunes like hard float ABI
-include conf/distro/${TARGET_ARCH}-defaults.inc
-
-# If we're using an .ipk based rootfs, we want to have opkg installed so postinst script can run
-# We also take this opportunity to inject yogurt-version and the feed configs into the rootfs
-IPKG_VARIANT = "opkg yogurt-version"
-
-# Select xserver-xorg as default, since kdrive has been EOL'ed
-XSERVER ?= "xserver-xorg xf86-input-evdev xf86-input-keyboard xf86-input-mouse xf86-video-fbdev"
-
-# do some packagegroup-base stuff here
-
-# Prefer bluez4, it's needed for things like connman. Bluez4 is also largely backward compatible with
-# bluez 3.x
-DISTRO_BLUETOOTH_MANAGER = "\
- blueprobe \
- bluez4 \
- "
-
-# We want to ship extra debug utils in the rootfs when doing a debug build
-DEBUG_APPS ?= ""
-DEBUG_APPS += '${@base_conditional("DISTRO_TYPE", "release", "", "strace procps",d)}'
-
-# This hooks into packagegroup-base, so it won't do anything if your images doesn't include packagegroup-base.
-# yogurt-version: ship this to have an identifiable rootfs so user can report bugs against a specific version
-# util-linux-mount util-linux-umount: busybox mount is broken
-DISTRO_EXTRA_RDEPENDS += "\
- yogurt-version \
- util-linux-mount util-linux-umount \
- "
-
-# This also hooks into packagegroup-base, but isn't mandatory.
-# If you don't want parts of this in your packagegroup-base using images you can put this in the image recipe:
-# BAD_RECOMMENDATIONS = "avahi-daemon avahi-autoipd"
-# Note that BAD_RECOMMENDATIONS is a feature of rootfs_ipk.bbclass, not yogurt
-# kernel modules: ship fs modules so you can mount stuff and af-packet so networking works
-# avahi: makes finding your device on the network a lot easier
-# openssh-sftp-server: provides sftp which combined with avahi makes it real easy to use things like sshfs
-# psplash-yogurt: yogurt branded psplash, you can add your own psplash-foo to an image, it uses update-alternatives
-# DEBUG_APPS: ship strace and procpc to make simple debugging a lot easier
-DISTRO_EXTRA_RRECOMMENDS += " \
- kernel-module-vfat \
- kernel-module-ext2 \
- kernel-module-ext3 \
- kernel-module-af-packet \
- avahi-daemon \
- avahi-autoipd \
- openssh-sftp-server \
- ${DEBUG_APPS} \
-"
+# Prefer libjpeg-turbo
+PREFERRED_PROVIDER_jpeg = "libjpeg-turbo"
+PREFERRED_PROVIDER_jpeg-native = "libjpeg-turbo-native"
+
+PACKAGE_CLASSES = "package_ipk"
+
+VIRTUAL-RUNTIME_dev_manager = "udev"
+VIRTUAL-RUNTIME_init_manager = "systemd"
+DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit"
+VIRTUAL-RUNTIME_login_manager = "busybox"
+VIRTUAL-RUNTIME_syslog = ""
+VIRTUAL-RUNTIME_initscripts = ""
+
+# some default locales
+IMAGE_LINGUAS ?= "de-de fr-fr en-us"
+
+# All images build with the distribution get the version package
+IMAGE_INSTALL_append += " os-release"
+PREFERRED_PROVIDER_os-release = "yogurt-version"