Reverting all the dbus related commits (sigh) from 27th July and fixing a QA issue...
[oespirit1] / 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 ## 03/06/09 23:36:58  Kirtika B Ruchandani <kirtibr@gmail.com> 
7 # Tweaked angstrom.conf to get a decent conf for maemo software stack
8 # on mamona base
9 #@--------------------------------------------------------------------
10
11 # This is a aimed to be the next stable angstrom release. 
12 # If you want something stable *right now*, use angstrom-2007.1
13 # with the org.openembedded.angstrom-2007.12-stable branch
14 #
15 # Use this at your own risk, we welcome bugreports filed at 
16 #    http://bugs.openembedded.net
17 #
18 # Again, in doubt, use DISTRO="angstrom-2007.1" with the 
19 # org.openembedded.angstrom-2007.12-stable branch
20
21 #DISTRO_VERSION = "2009.X"
22 DISTRO_VERSION = "2009.X-test-${DATE}"
23 DISTRO_REVISION = "1"
24 DISTRO_PR = ".1"
25
26 #build staging from packages
27 INHERIT += "packaged-staging"
28
29 require conf/distro/include/sane-srcdates.inc
30 require conf/distro/include/sane-srcrevs.inc
31 require conf/distro/include/angstrom-2008-preferred-versions.inc
32 require conf/distro/include/preferred-opie-versions-1.2.4.inc
33
34 #Images built can have to modes:
35 # 'debug': empty rootpassword, strace included
36 # 'release' no root password, no strace and gdb by default
37 DISTRO_TYPE ?= "debug"
38 #DISTRO_TYPE = "release"
39
40 # Ship just basic locale by default. Locales are big (~1Mb uncompr.), so
41 # shipping some adhoc subset will be still useless and size burden for
42 # users of all other languages/countries. Instead, worth to make it easy
43 # to install additional languages: installer/wizard + metapackages which
44 # will RRECOMMEND as much as possible content for a given language
45 # (locales, UI transalations, help, etc. - useless for pros, but really 
46 # helpful for common users).
47 # Also, it appears that no locales fit in 16Mb for now. "C" locale rules!
48 IMAGE_LINGUAS = '${@base_less_or_equal("ROOT_FLASH_SIZE", "16", "", "en-us", d)}'
49
50
51 # set feed path variables
52 FEED_BASEPATH = "feeds/2008/${ANGSTROM_PKG_FORMAT}/${LIBC}/"
53
54
55 #The angstrom-mirrors.bbclass should have everything, but we can use this as a fallback
56 CVS_TARBALL_STASH ?= "\
57                      http://www.angstrom-distribution.org/unstable/sources/ \
58                     "
59
60
61 #Make sure we use 2.6 on machines with a 2.4/2.6 selector
62 KERNEL = "kernel26"
63 MACHINE_KERNEL_VERSION = "2.6"
64 PCMCIA_MANAGER = "pcmciautils"
65
66 #Preferred version for the kernel on various machines
67 PREFERRED_VERSION_linux-handhelds-2.6 ?= "2.6.21-hh20"
68
69 #Initramfs for kernels
70 #KERNEL_INITRAMFS_DIR = "${TMPDIR}/deploy/uclibc/images/${MACHINE}/"
71 #KERNEL_INITRAMFS_PATH = "${KERNEL_INITRAMFS_DIR}/$(readlink ${KERNEL_INITRAMFS_DIR}initramfs-bootmenu-image-${MACHINE}.cpio.gz)"
72
73 #This is unrelated to the kernel version, but userspace apps (e.g. HAL) require a recent version to build against
74 PREFERRED_VERSION_linux-libc-headers    = "2.6.23"
75
76 #Prefer glibc 2.6 and uclibc 0.9.30, these have had the most testing.
77 PREFERRED_VERSION_glibc                 ?= "2.6.1"
78 PREFERRED_VERSION_glibc-initial         ?= "2.6.1"
79 PREFERRED_VERSION_uclibc                ?= "0.9.30"
80 PREFERRED_VERSION_uclibc-initial        ?= "0.9.30"
81
82 # Preferred provider for virtual/psplash
83 # This enforces a specific brand to be used, in our case the angstrom
84 # one. In case you want to change the logo or something like that we
85 # suggest you to create another recipe (e.g: psplash-<brand>) for that
86 # and add that into your image.
87 # You can also opt to change or override this line, but that isn't
88 # needed because psplash is using update-alternatives.
89 PREFERRED_PROVIDER_virtual/psplash               ?= "psplash-angstrom"
90
91 PREFERRED_PROVIDER_avahi = "avahi"
92
93 #Small machines prefer kdrive, but we might ship full Xorg in other images
94 PREFERRED_PROVIDER_virtual/xserver  ?= "xserver-kdrive"
95 PREFERRED_PROVIDER_xserver          ?= "xserver-kdrive"
96
97 #powerpc needs additional patches to gcc
98 ANGSTROM_GCC_VERSION_ppc405             ?= "4.1.1"
99 ANGSTROM_GCC_VERSION_xilinx-ml403       ?= "4.1.1"
100 ANGSTROM_GCC_VERSION_xilinx-ml403       ?= "4.1.1"
101
102 # Blackfin has its on gcc
103 ANGSTROM_GCC_VERSION_bfin                       = "4.1.2"
104
105 ANGSTROM_GCC_VERSION_486sx      = "4.3.3"
106 ANGSTROM_GCC_VERSION_armv7a     = "4.3.3" 
107
108 # Uncomment this if want need to build an armv7a kernel with CSL toolchain (<2.6.27 don't boot with mainline gcc)
109 #KERNEL_CCSUFFIX_armv7a= "-4.2.1+csl-arm-2007q3-53"
110
111 #avr32 only has support for gcc 4.2.2
112 ANGSTROM_GCC_VERSION_avr32              ?= "4.2.2"
113
114 #Everybody else can just use this: 
115 ANGSTROM_GCC_VERSION                     ?= "4.2.4"
116
117 #2.19.51.0.3
118 ANGSTROM_BINUTILS_VERSION                ?= "2.18.50.0.7"
119
120 PREFERRED_VERSION_binutils               ?= "${ANGSTROM_BINUTILS_VERSION}"
121 PREFERRED_VERSION_binutils-cross         ?= "${ANGSTROM_BINUTILS_VERSION}"
122 PREFERRED_VERSION_binutils-cross-sdk     ?= "${ANGSTROM_BINUTILS_VERSION}"
123
124 PREFERRED_VERSION_gcc                    ?= "${ANGSTROM_GCC_VERSION}"
125 PREFERRED_VERSION_gcc-cross              ?= "${ANGSTROM_GCC_VERSION}"
126 PREFERRED_VERSION_gcc-cross-sdk          ?= "${ANGSTROM_GCC_VERSION}"
127 PREFERRED_VERSION_gcc-cross-initial      ?= "${ANGSTROM_GCC_VERSION}"
128 PREFERRED_VERSION_gcc-cross-intermediate ?= "${ANGSTROM_GCC_VERSION}"
129
130 #Loads preferred versions from files, these have weak assigments (?=), so put them at the bottom
131 require conf/distro/include/preferred-e-versions.inc
132 require conf/distro/include/preferred-xorg-versions-X11R7.4-updates.inc
133 require conf/distro/include/preferred-xorg-versions-X11R7.4.inc
134
135 #avr32 only has patches for binutils 2.17 in OE
136 PREFERRED_VERSION_binutils_avr32 = "2.17"
137 PREFERRED_VERSION_binutils-cross_avr32 = "2.17"
138 PREFERRED_VERSION_binutils-cross-sdk_avr32 = "2.17"
139
140 # Virtuals:
141 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
142 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "gcc-cross-initial"
143 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-intermediate"
144 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "gcc-cross"
145 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross"
146
147 # hostap stuff, we prefer the in-kernel modules, but those don't work for all machines
148 PREFERRED_PROVIDER_hostap-conf                      ?= "hostap-conf"
149 PREFERRED_PROVIDER_hostap-modules_h2200             ?= "hostap-modules"
150 PREFERRED_PROVIDER_hostap-modules_hx4700            ?= "hostap-modules"
151
152 PREFERRED_PROVIDER_virtual/db           ?= "db"
153 PREFERRED_PROVIDER_virtual/db-native    ?= "db-native"
154 PREFERRED_PROVIDER_virtual/libsdl       ?= "libsdl-x11"
155 PREFERRED_PROVIDER_virtual/libx11       ?= "libx11"
156 PREFERRED_PROVIDER_virtual/xserver      ?= "xserver-kdrive"
157
158 # Others:
159 PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
160 PREFERRED_PROVIDER_dbus-glib             = "dbus-glib"
161 PREFERRED_PROVIDER_esound               ?= "pulseaudio"
162 PREFERRED_PROVIDER_gconf                ?= "gconf-dbus"
163 PREFERRED_PROVIDER_gnome-vfs            ?= "gnome-vfs"
164 PREFERRED_PROVIDER_gnome-vfs-plugin-file ?= "gnome-vfs"
165 PREFERRED_PROVIDER_tslib                ?= "tslib"
166 PREFERRED_PROVIDER_tslib-conf           ?= "tslib"
167 PREFERRED_PROVIDER_libgpewidget         ?= "libgpewidget"
168 PREFERRED_PROVIDER_ntp                  ?= "ntp"
169 PREFERRED_PROVIDER_hotplug               = "udev"
170 PREFERRED_PROVIDER_libxss                = "libxss"
171 PREFERRED_PROVIDER_bluez-utils-dbus      = "bluez-utils"
172 PREFERRED_PROVIDER_bluez-libs            = "bluez4"
173 PREFERRED_PROVIDER_bluez-utils           = "bluez4"
174
175 # we don't ship gtk-directfb by default
176 PREFERRED_PROVIDER_gtk+                   ?= "gtk+"
177 PREFERRED_PROVIDER_gdk-pixbuf-loader-ani  ?= "gtk+"
178 PREFERRED_PROVIDER_gdk-pixbuf-loader-bmpg ?= "gtk+"
179 PREFERRED_PROVIDER_gdk-pixbuf-loader-gif  ?= "gtk+"
180 PREFERRED_PROVIDER_gdk-pixbuf-loader-ico  ?= "gtk+"
181 PREFERRED_PROVIDER_gdk-pixbuf-loader-jpeg ?= "gtk+"
182 PREFERRED_PROVIDER_gdk-pixbuf-loader-pcx  ?= "gtk+"
183 PREFERRED_PROVIDER_gdk-pixbuf-loader-png  ?= "gtk+"
184 PREFERRED_PROVIDER_gdk-pixbuf-loader-pnm  ?= "gtk+"
185 PREFERRED_PROVIDER_gdk-pixbuf-loader-ras  ?= "gtk+"
186 PREFERRED_PROVIDER_gdk-pixbuf-loader-tga  ?= "gtk+"
187 PREFERRED_PROVIDER_gdk-pixbuf-loader-wbmp ?= "gtk+"
188 PREFERRED_PROVIDER_gdk-pixbuf-loader-xbm  ?= "gtk+"
189 PREFERRED_PROVIDER_gdk-pixbuf-loader-xpm  ?= "gtk+"
190 PREFERRED_PROVIDER_gdk-pixbuf             ?= "gtk+"
191
192
193 #Silence a warning during parsing
194 PREFERRED_PROVIDER_task-bootstrap = "task-bootstrap"
195
196 #This is needed to get a correct PACKAGE_ARCH for packages that have PACKAGE_ARCH = ${MACHINE_ARCH}
197 ARM_ABI ?= "${@['','oabi'][bb.data.getVar('MACHINE',d) in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
198 require conf/distro/include/angstrom${ARM_ABI}.inc
199
200
201
202 # If we're using an .ipk based rootfs, we want to have opkg-nogpg installed so postinst script can run
203 # We also take this opportunity to inject angstrom-version and the feed configs into the rootfs
204 IPKG_VARIANT = "opkg-nogpg angstrom-version ${ANGSTROM_FEED_CONFIGS}"
205
206 # do some task-base stuff here
207
208 # Prefer bluez4, it's needed for things like connman. Bluez4 is also largely backward compatible with
209 # bluez 3.x
210 DISTRO_BLUETOOTH_MANAGER = "\
211         blueprobe \
212         bluez4 \
213    "
214
215 # We want to ship extra debug utils in the rootfs when doing a debug build 
216 DEBUG_APPS ?= ""
217 DEBUG_APPS += '${@base_conditional("DISTRO_TYPE", "release", "", "strace procps",d)}'
218
219 # This hooks into task-base, so it won't do anything if your images doesn't include task-base.
220 # angstrom-version: ship this to have an identifiable rootfs so user can report bugs against a specific version
221 # ANGSTROM_FEED_CONFIGS: configfiles for the online feeds
222 # util-linux-ng-mount util-linux-ng-umount: busybox mount is broken
223 # angstrom-libc-fixup-hack: fixes an obscure bug with libc.so symlink
224 DISTRO_EXTRA_RDEPENDS += "\
225     angstrom-version \
226     ${ANGSTROM_FEED_CONFIGS} \
227     util-linux-ng-mount util-linux-ng-umount \
228     angstrom-libc-fixup-hack \
229     "
230
231 # This also hooks into task-base, but isn't mandatory.
232 # If you don't want parts of this in your task-base using images you can put this in the image recipe:
233 # BAD_RECOMMENDATIONS = "avahi-daemon avahi-autoipd"
234 # Note that BAD_RECOMMENDATIONS is a feature of rootfs_ipk.bbclass, not angstrom
235 # kernel modules: ship fs modules so you can mount stuff and af-packet so networking works
236 # avahi: makes finding your device on the network a lot easier
237 # openssh-sftp-server: provides sftp which combined with avahi makes it real easy to use things like sshfs
238 # psplash-angstrom: angstrom branded psplash, you can add your own psplash-foo to an image, it uses update-alternatives
239 # DEBUG_APPS: ship strace and procpc to make simple debugging a lot easier
240 DISTRO_EXTRA_RRECOMMENDS += " \
241     kernel-module-vfat \
242     kernel-module-ext2 \
243     kernel-module-ext3 \
244     kernel-module-af-packet \
245     avahi-daemon \
246     avahi-autoipd \
247     openssh-sftp-server \
248     ${DEBUG_APPS} \
249 "
250
251 SPLASH ?= ' ${@base_contains("MACHINE_FEATURES", "screen", "psplash-angstrom", "",d)}'
252 ARM_INSTRUCTION_SET_pn-uclibc = "arm"
253 ARM_INSTRUCTION_SET_pn-uclibc-initial = "arm"
254
255
256 # Gtk+ with maemo changes
257 PREFERRED_PROVIDER_gtk+ = "gtk+"
258 PREFERRED_VERSION_gtk+ = "2.12.12"
259 #Maemo has changes in glib too
260 PREFERRED_PROVIDER_glib-2.0 = "glib-2.0"
261 PREFERRED_VERSION_glib-2.0 = "2.18.1"