angstrom: prefer util-linux-ng
[vuplus_openembedded] / conf / distro / angstrom-2008.1.conf
1 #@--------------------------------------------------------------------
2 #@TYPE: Distribution
3 #@NAME: Angstrom <http://www.angstrom-distribution.org>
4 #@DESCRIPTION: The Linux Distribution for Kernel 2.6 based devices
5 #@MAINTAINER: Koen Kooi <koen@openembedded.org>
6 #@MAINTAINER: Michael 'Mickey' Lauer <mickey@Vanille-media.de>
7 #@--------------------------------------------------------------------
8
9 # This is a aimed to be the next stable angstrom release. 
10 # If you want something stable *right now*, use angstrom-2007.1
11 # with the org.openembedded.angstrom-2007.12-stable branch
12 #
13 # Use this at your own risk, we welcome bugreports filed at 
14 #    http://bugs.openembedded.net
15 #
16 # Again, in doubt, use DISTRO="angstrom-2007.1" with the 
17 # org.openembedded.angstrom-2007.12-stable branch
18
19 #DISTRO_VERSION = "2008.1"
20 DISTRO_VERSION = "2008.1-test-${DATE}"
21 DISTRO_REVISION = "1"
22
23 #build staging from packages
24 INHERIT += "packaged-staging"
25
26 require conf/distro/include/sane-srcdates.inc
27 require conf/distro/include/sane-srcrevs.inc
28 require conf/distro/include/angstrom-2008-preferred-versions.inc
29
30 #Images built can have to modes:
31 # 'debug': empty rootpassword, strace included
32 # 'release' no root password, no strace and gdb by default
33 DISTRO_TYPE ?= "debug"
34 #DISTRO_TYPE = "release"
35
36 # Ship just basic locale by default. Locales are big (~1Mb uncompr.), so
37 # shipping some adhoc subset will be still useless and size burden for
38 # users of all other languages/countries. Instead, worth to make it easy
39 # to install additional languages: installer/wizard + metapackages which
40 # will RRECOMMEND as much as possible content for a given language
41 # (locales, UI transalations, help, etc. - useless for pros, but really 
42 # helpful for common users).
43 # Also, it appears that no locales fit in 16Mb for now. "C" locale rules!
44 IMAGE_LINGUAS = '${@base_less_or_equal("ROOT_FLASH_SIZE", "16", "", "en-gb", d)}'
45
46
47 # set feed path variables
48 FEED_BASEPATH = "feeds/2008/${ANGSTROM_PKG_FORMAT}/${ANGSTROM_MODE}/"
49
50
51 #The angstrom-mirrors.bbclass should have everything, but we can use this as a fallback
52 CVS_TARBALL_STASH ?= "\
53                      http://www.angstrom-distribution.org/unstable/sources/ \
54                     "
55
56
57 #Make sure we use 2.6 on machines with a 2.4/2.6 selector
58 KERNEL = "kernel26"
59 MACHINE_KERNEL_VERSION = "2.6"
60 PCMCIA_MANAGER = "pcmciautils"
61
62 #Preferred version for the kernel on various machines
63 PREFERRED_VERSION_linux-handhelds-2.6 ?= "2.6.21-hh20"
64
65 #Initramfs for kernels
66 KERNEL_INITRAMFS_DIR = "${TMPDIR}/deploy/uclibc/images/${MACHINE}/"
67 KERNEL_INITRAMFS_PATH = "${KERNEL_INITRAMFS_DIR}/$(readlink ${KERNEL_INITRAMFS_DIR}initramfs-bootmenu-image-${MACHINE}.cpio.gz)"
68
69 #This is unrelated to the kernel version, but userspace apps (e.g. HAL) require a recent version to build against
70 PREFERRED_VERSION_linux-libc-headers    = "2.6.23"
71
72 #Prefer glibc 2.6 and uclibc 0.9.29, these have had the most testing.
73 PREFERRED_VERSION_glibc                 ?= "2.6.1"
74 PREFERRED_VERSION_glibc-intermediate    ?= "2.6.1"
75 PREFERRED_VERSION_glibc-initial         ?= "2.6.1"
76
77 #Prefer a newer GTK+ and friends
78 PREFERRED_VERSION_gtk+                  ?= "2.12.3"
79 PREFERRED_VERSION_glib-2.0              ?= "2.14.4"
80
81 PREFERRED_PROVIDER_avahi = "avahi"
82
83 #Small machines prefer kdrive, but we might ship full Xorg in other images
84 PREFERRED_PROVIDER_virtual/xserver  ?= "xserver-kdrive"
85 PREFERRED_PROVIDER_xserver          ?= "xserver-kdrive"
86
87 #powerpc needs additional patches to gcc
88 ANGSTROM_GCC_VERSION_ppc405             ?= "4.1.1"
89 ANGSTROM_GCC_VERSION_xilinx-ml403       ?= "4.1.1"
90 ANGSTROM_GCC_VERSION_xilinx-ml403       ?= "4.1.1"
91
92 #for proper NEON support we need a CSL toolchain 
93 #ANGSTROM_GCC_VERSION_armv7a             = "4.2.1+csl-arm-2007q3-53"
94 ANGSTROM_GCC_VERSION_armv7a             = "4.3.1" 
95
96 #Horrible workaround for armv7a follows:
97 # gcc 4.3.1 builds a kernel that oopses with a null-pointer in the rcu-update function
98 # gcc 4.2.1 (the one from *gasp* csl) builds a working kernel, but non-working userspace
99
100 KERNEL_CCSUFFIX_armv7a= "-4.2.1+csl-arm-2007q3-53"
101
102 #avr32 only has support for gcc 4.2.2
103 ANGSTROM_GCC_VERSION_avr32              ?= "4.2.2"
104
105 #Everybody else can just use this: 
106 ANGSTROM_GCC_VERSION                    ?= "4.2.4"
107
108 PREFERRED_VERSION_gcc               ?= "${ANGSTROM_GCC_VERSION}"
109 PREFERRED_VERSION_gcc-cross         ?= "${ANGSTROM_GCC_VERSION}"
110 PREFERRED_VERSION_gcc-cross-sdk     ?= "${ANGSTROM_GCC_VERSION}"
111 PREFERRED_VERSION_gcc-cross-initial ?= "${ANGSTROM_GCC_VERSION}"
112
113 #Loads preferred versions from files, these have weak assigments (?=), so put them at the bottom
114 require conf/distro/include/preferred-gpe-versions-2.8.inc
115 require conf/distro/include/preferred-e-versions.inc
116 require conf/distro/include/preferred-xorg-versions-X11R7.3.inc
117
118 #avr32 only has patches for binutils 2.17 in OE
119 PREFERRED_VERSION_binutils_avr32 = "2.17"
120 PREFERRED_VERSION_binutils-cross_avr32 = "2.17"
121 PREFERRED_VERSION_binutils-cross-sdk_avr32 = "2.17"
122
123 # Virtuals:
124 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
125 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "gcc-cross-initial"
126 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "gcc-cross"
127 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross"
128
129 # hostap stuff, we prefer the in-kernel modules, but those don't work for all machines
130 PREFERRED_PROVIDER_hostap-conf                      ?= "hostap-conf"
131 PREFERRED_PROVIDER_hostap-modules_h2200             ?= "hostap-modules"
132 PREFERRED_PROVIDER_hostap-modules_hx4700            ?= "hostap-modules"
133
134 PREFERRED_PROVIDER_virtual/db           ?= "db"
135 PREFERRED_PROVIDER_virtual/db-native    ?= "db-native"
136 PREFERRED_PROVIDER_virtual/libsdl       ?= "libsdl-x11"
137 PREFERRED_PROVIDER_virtual/libx11       ?= "libx11"
138 PREFERRED_PROVIDER_virtual/libxine      ?= "libxine-x11"
139 PREFERRED_PROVIDER_virtual/xserver      ?= "xserver-kdrive"
140
141 # Others:
142 PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
143 PREFERRED_PROVIDER_dbus-glib             = "dbus-glib"
144 PREFERRED_PROVIDER_esound               ?= "pulseaudio"
145 PREFERRED_PROVIDER_gconf                ?= "gconf-dbus"
146 PREFERRED_PROVIDER_gnome-vfs            ?= "gnome-vfs"
147 PREFERRED_PROVIDER_gnome-vfs-plugin-file ?= "gnome-vfs"
148 PREFERRED_PROVIDER_tslib                ?= "tslib"
149 PREFERRED_PROVIDER_tslib-conf           ?= "tslib"
150 PREFERRED_PROVIDER_libgpewidget         ?= "libgpewidget"
151 PREFERRED_PROVIDER_ntp                  ?= "ntp"
152 PREFERRED_PROVIDER_hotplug               = "udev"
153 PREFERRED_PROVIDER_libxss                = "libxss"
154 PREFERRED_PROVIDER_bluez-utils-dbus      = "bluez-utils"
155
156 # we don't ship gtk-directfb by default
157 PREFERRED_PROVIDER_gtk+                   ?= "gtk+"
158 PREFERRED_PROVIDER_gdk-pixbuf-loader-ani  ?= "gtk+"
159 PREFERRED_PROVIDER_gdk-pixbuf-loader-bmpg ?= "gtk+"
160 PREFERRED_PROVIDER_gdk-pixbuf-loader-gif  ?= "gtk+"
161 PREFERRED_PROVIDER_gdk-pixbuf-loader-ico  ?= "gtk+"
162 PREFERRED_PROVIDER_gdk-pixbuf-loader-jpeg ?= "gtk+"
163 PREFERRED_PROVIDER_gdk-pixbuf-loader-pcx  ?= "gtk+"
164 PREFERRED_PROVIDER_gdk-pixbuf-loader-png  ?= "gtk+"
165 PREFERRED_PROVIDER_gdk-pixbuf-loader-pnm  ?= "gtk+"
166 PREFERRED_PROVIDER_gdk-pixbuf-loader-ras  ?= "gtk+"
167 PREFERRED_PROVIDER_gdk-pixbuf-loader-tga  ?= "gtk+"
168 PREFERRED_PROVIDER_gdk-pixbuf-loader-wbmp ?= "gtk+"
169 PREFERRED_PROVIDER_gdk-pixbuf-loader-xbm  ?= "gtk+"
170 PREFERRED_PROVIDER_gdk-pixbuf-loader-xpm  ?= "gtk+"
171
172
173 #Silence a warning during parsing
174 PREFERRED_PROVIDER_task-bootstrap = "task-bootstrap"
175
176 #This is needed to get a correct PACKAGE_ARCH for packages that have PACKAGE_ARCH = ${MACHINE_ARCH}
177 ARM_ABI ?= "${@['','oabi'][bb.data.getVar('MACHINE',d) in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
178 require conf/distro/include/angstrom${ARM_ABI}.inc
179
180 # do some task-base stuff here
181
182 # We want to ship extra debug utils in the rootfs when doing a debug build 
183 DEBUG_APPS ?= ""
184 DEBUG_APPS += '${@base_conditional("DISTRO_TYPE", "release", "", "strace procps",d)}'
185
186 # Angstrom want to ship some extra stuff. This should be moved into task-base eventually
187 # contains ipkg specific stuff as well :(
188 DISTRO_EXTRA_RDEPENDS += "\
189     update-modules \
190     ${@base_contains("MACHINE_FEATURES", "screen", "psplash", "",d)} \   
191     angstrom-version \
192     opkg-nogpg opkg-collateral ${ANGSTROM_FEED_CONFIGS} \
193     util-linux-ng-mount util-linux-ng-umount \
194     ${DEBUG_APPS} \
195     "
196
197 DISTRO_EXTRA_RRECOMMENDS += " \
198     kernel-module-vfat \
199     kernel-module-ext2 \
200     kernel-module-af-packet \
201     avahi-daemon \
202     avahi-autoipd \
203     openssh-sftp-server \
204     "
205
206 SEPPUKU_NEWREPORT    = "http://bugs.openembedded.net/post_bug.cgi?bug_file_loc=http%3A%2F%2F&version=Angstrom%202008.x&priority=P2&bug_severity=normal&op_sys=Linux&rep_platform=Other&"
207