1 #############################################################################
4 #@DESCRIPTION: Embedded Linux Distribution Configuration
6 #@COMMENT: This distribution configuration can serve as a starting point for
7 #@COMMENT: the integration of new target platforms, machines, or distributions.
8 #############################################################################
10 #############################################################################
12 #############################################################################
13 DISTRO_NAME ?= "minimal"
14 DISTRO_VERSION = "dev-snapshot-${SRCDATE}"
15 #DISTRO_TYPE = "release"
16 DISTRO_TYPE ?= "debug"
18 # Ensure some form of release config, so error out if someone thinks he knows better
19 DISTRO_CHECK := "${@bb.data.getVar('DISTRO_VERSION',d,1) or bb.fatal('Remove this line or set a dummy DISTRO_VERSION')}"
21 #############################################################################
23 #############################################################################
25 DISTRO_BLUETOOTH_MANAGER = "bluez4"
26 PREFERRED_PROVIDER_bluez-utils-dbus = "bluez4"
27 PREFERRED_PROVIDER_bluez-libs = "bluez4"
28 PREFERRED_PROVIDER_bluez-utils = "bluez4"
30 # We want images supporting the following features (for task-base)
31 DISTRO_FEATURES = "ipv4 ipv6 nfs smbfs wifi ppp alsa ext2 vfat pcmcia usbgadget usbhost pci"
32 # Following features are for ARM and E500 based machines
33 DISTRO_FEATURES += "eabi"
35 # The following feature enables the MIPS ABI PLT extensions
36 # This feature needs GCC 4.4 binutils 2.19 or glibc/eglibc 2.9
39 DISTRO_FEATURES += "mplt"
40 DISTRO_FEATURES += ' ${@["", "thumb-interwork"][bb.data.getVar('THUMB_INTERWORK', d, 1) == "yes"]}'
42 #############################################################################
44 #############################################################################
45 # libfoo -> libfoo0-2 (etc)
48 #############################################################################
50 #############################################################################
51 # Chose the packaging system
52 INHERIT += "package_ipk"
53 IMAGE_FSTYPES ?= "tar.gz jffs2"
54 PREFERRED_PKG_FORMAT ?= "ipk"
56 # Put links to sources in deploy/sources to make it easier for people to be GPL compliant
57 INHERIT += "src_distribute_local"
58 SRC_DIST_LOCAL ?= "symlink"
60 # If we're using an .ipk based rootfs, we want to have opkg installed so postinst script can run
63 #############################################################################
65 #############################################################################
66 # Name the generated images in a sane way
67 IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${LIBC}-${PREFERRED_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}"
68 CACHE = "${TMPDIR}/cache/${LIBC}/${MACHINE}"
69 DEPLOY_DIR ?= "${TMPDIR}/deploy/${LIBC}"
70 DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE}"
71 SPLASH ?= '${@base_contains("MACHINE_FEATURES", "screen", "psplash", "",d)}'
72 PREFERRED_PROVIDER_virtual/psplash = "psplash"
74 # increase inode/block ratio for ext2 filesystem
75 EXTRA_IMAGECMD_ext2 = "-i 8192"
77 #############################################################################
79 #############################################################################
81 MACHINE_KERNEL_VERSION = "2.6"
83 #############################################################################
84 # Ensure MACHINE_CLASS is in OVERRIDES
85 #############################################################################
87 MACHINE_OVERRIDES += "${MACHINE_CLASS}"
89 #############################################################################
91 #############################################################################
93 require conf/distro/include/sane-toolchain.inc
94 require conf/distro/include/arm-thumb.inc
96 #############################################################################
98 #############################################################################
100 #run QA tests on builds and packages and log them
104 #run QA tests on recipes
105 INHERIT += "recipe_sanity"
107 #make devshell available as task
108 INHERIT += "devshell"
110 #############################################################################
112 #############################################################################
113 require conf/distro/include/preferred-e-versions.inc
114 require conf/distro/include/preferred-opie-versions-1.2.5.inc
116 PREFERRED_PROVIDER_opkg ?= "opkg"
117 PREFERRED_PROVIDER_virtual/update-alternatives ?= "opkg"
118 PREFERRED_QT_VERSION ?= "4.7.3"
119 PREFERRED_VERSION_qt4-tools-native = "${PREFERRED_QT_VERSION}"
120 PREFERRED_VERSION_qt4-tools-sdk = "${PREFERRED_QT_VERSION}"
121 PREFERRED_VERSION_qt4-embedded = "${PREFERRED_QT_VERSION}"
122 PREFERRED_VERSION_qt4-embedded-gles = "${PREFERRED_QT_VERSION}"
123 PREFERRED_VERSION_qt4-x11-free = "${PREFERRED_QT_VERSION}"
124 PREFERRED_VERSION_qt4-x11-free-gles = "${PREFERRED_QT_VERSION}"
125 #############################################################################
127 #############################################################################
129 # Ship extra debug utils in the rootfs when doing a debug build
130 DISTRO_EXTRA_APPS ?= ""
131 DISTRO_EXTRA_APPS += '${@base_conditional("DISTRO_TYPE", "release", "", "task-cli-tools-debug",d)}'
133 # Additional content I (only valid if you include task-base)
134 # distro-feed-configs: configuration files for the online feeds
135 # util-linux-ng-mount util-linux-ng-umount: busybox mount is broken
136 # angstrom-libc-fixup-hack: fixes an obscure bug with libc.so symlink
137 DISTRO_EXTRA_RDEPENDS += "\
138 distro-feed-configs \
139 util-linux-ng-mount util-linux-ng-umount \
140 angstrom-libc-fixup-hack \
141 ${DISTRO_EXTRA_APPS} \
144 # Additional content II (can be masked with BAD_RECOMMENDATIONS)
145 DISTRO_EXTRA_RRECOMMENDS += " \
149 kernel-module-af-packet \
152 openssh-sftp-server \