#@--------------------------------------------------------------------
#@TYPE: Distribution
#@NAME: Chinook-compatible
#@DESCRIPTION: Distribution which allows building packages compatible to OS 2008
#@--------------------------------------------------------------------

# Note: This is not a complete distribution. Just some definitions to make
# it possible to build packages that are compatible to Nokia's OS2008.
# You should *not* replace core libraries of the operating system (glibc,
# glib, gtk+, ..) with those you build in OE.
#
# Furthermore it may be possible that OpenEmbedded lacks specific versions
# of some packages. If you encounter such a problem please provide a recipe
# or file a bug!

DISTRO_NAME = "Chinook-compat"
DISTRO_VERSION = "test-${DATE}"
DISTRO_TYPE = "debug"
#DISTRO_TYPE = "release"

# Needed for e.g. libffi builds on armv6
OVERRIDES .= ":${FEED_ARCH}"

require conf/distro/include/angstrom-glibc.inc
FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -O1"

INHERIT += "package_deb debian"
TARGET_OS  = "linux-gnueabi"

TARGET_FPU_nokia770 = "soft"
TARGET_FPU_nokia800 = "hard"

DPKG_ARCH_nokia770 = "armel"
DPKG_ARCH_nokia800 = "armel"

FEED_ARCH_nokia770	= "armv5te"

# Actually n800 is armv6 but we are using armv5te because qemu does not emulate
# armv6 yet. 
FEED_ARCH_nokia800		= "armv5te"
#FEED_ARCH_nokia800		= "armv6"

#Make sure we use 2.6 on machines with a 2.4/2.6 selector
KERNEL = "kernel26"
MACHINE_KERNEL_VERSION = "2.6"

PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-intermediate"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"

PREFERRED_PROVIDER_virtual/libc = "glibc"

# NPTL stuff
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
PREFERRED_PROVIDER_virtual/arm-linux-gnueabi-libc-for-gcc = "glibc"

PREFERRED_PROVIDER_virtual/arm-linux-gnueabi-binutils = "binutils-cross"
PREFERRED_PROVIDER_linux-libc-header = "linux-libc-headers"
PREFERRED_PROVIDER_virtual/libx11 = "libx11"
PREFERRED_PROVIDER_gconf ?= "gconf-dbus"

PREFERRED_VERSION_automake-native = "1.10"

PREFERRED_VERSION_binutils = "2.17.50.0.12"
PREFERRED_VERSION_binutils-cross    = "2.18"

PREFERRED_VERSION_gcc = "3.4.4cs2005q3.2"
PREFERRED_VERSION_gcc-cross = "3.4.4cs2005q3.2"
PREFERRED_VERSION_gcc-cross-initial = "4.1.1"
PREFERRED_VERSION_gcc-cross-intermediate = "4.1.1"

#PREFERRED_VERSION_gcc-cross-initial = "3.4.4cs2005q3.2"

# Use recent enough version of the headers to let HAL build successfully.
PREFERRED_VERSION_linux-libc-headers = "2.6.20"

PREFERRED_VERSION_glibc = "2.5"
PREFERRED_VERSION_glibc-initial = "2.5"

PREFERRED_VERSION_libtool = "1.5.6"

require conf/distro/include/sane-srcrevs.inc

PREFERRED_VERSION_fontconfig       = "2.4.1"
PREFERRED_VERSION_freetype         = "2.2.1"
PREFERRED_VERSION_freetype-native  = "2.2.1"
PREFERRED_VERSION_cairo            = "1.4.10"
PREFERRED_VERSION_glib-2.0         = "2.12.12"
PREFERRED_VERSION_pango            = "1.16.4"
PREFERRED_VERSION_atk              = "1.18.0"
PREFERRED_VERSION_gtk+             = "2.10.14"
PREFERRED_VERSION_libpng           = "1.2.8"
PREFERRED_VERSION_expat            = "1.95.7"

# only dbus-glib 0.74 works with older dbus 1.0.x
PREFERRED_VERSION_dbus             = "1.0.3"
PREFERRED_VERSION_dbus-glib        = "0.74"

PREFERRED_VERSION_gnome-vfs        = "2.16.3"

# 3.9.1 would be correct
PREFERRED_VERSION_gtkhtml-3.8      = "3.8.2"
PREFERRED_VERSION_libxml2          = "2.7.2"
# 2.16 would be correct
PREFERRED_VERSION_gconf            = "2.6.1"

# gstreamer
# 0.10.13 would be correct (+ maemo patches)
PREFERRED_VERSION_gstreamer        = "0.10.14"
PREFERRED_VERSION_gst-plugins-good = "0.10.6"
# 0.10.13 would be correct (+ maemo patches)
PREFERRED_VERSION_gst-plugins-base = "0.10.14"
# 0.11.3 would be correct ( + maemo patches)
PREFERRED_VERSION_gst-ffmpeg       = "0.10.2"

PREFERRED_VERSION_bluez-libs            = "3.20"

PREFERRED_PROVIDER_virtual/db           = "db"
PREFERRED_PROVIDER_virtual/db-native    = "db-native"
PREFERRED_PROVIDER_virtual/xserver      = "xserver-kdrive"

# This is a hack to avoid building mesa which crashes the compiler
PREFERRED_PROVIDER_virtual/libsdl       = "libsdl-directfb"
PREFERRED_VERSION_libsdl-directfb       = "1.2.9"
PREFERRED_VERSION_libsdl-image          = "1.2.3"
PREFERRED_VERSION_libsdl-mixer          = "1.2.6"

PREFERRED_PROVIDER_xserver          = "xserver-kdrive"

PREFERRED_VERSION_xserver-kdrive    = "1.3.0.0"
PREFERRED_VERSION_libxrandr         = "1.2.1"
PREFERRED_VERSION_xrandr            = "1.2.0"
PREFERRED_VERSION_randrproto        = "1.2.1"

PREFERRED_VERSION_libgnomeui         = "2.18.1"

PREFERRED_PROVIDER_gtk+                   = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-ani  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-bmpg = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-gif  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-ico  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-jpeg = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-pcx  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-png  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-pnm  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-ras  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-tga  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-wbmp = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-xbm  = "gtk+"
PREFERRED_PROVIDER_gdk-pixbuf-loader-xpm  = "gtk+"

PREFERRED_PROVIDER_gconf                  = "gconf-dbus"

PREFERRED_VERSION_pixman                  = "0.9.6"

PREFERRED_PROVIDER_virtual/libqte2	  = "qte-mt"
PREFERRED_PROVIDER_avahi		  = "avahi"

PREFERRED_VERSION_libsoup = "2.2.7"
PREFERRED_VERSION_libglade = "2.4.2"
PREFERRED_VERSION_gnutls = "1.4.5"
PREFERRED_VERSION_libgpg-error = "1.4"
PREFERRED_VERSION_libgcrypt = "1.4.0"

PREFERRED_VERSION_gpe-scap = "1.3"

# various Maemo4 specific libraries
PREFERRED_VERSION_mce-dev = "1.6.3"
PREFERRED_VERSION_libosso = "2.13"
PREFERRED_VERSION_libhildon = "1.99.0"
PREFERRED_VERSION_libhildonmime = "1.10.0"
PREFERRED_VERSION_libhildonfm = "1.9.46"
PREFERRED_VERSION_hildon-thumbnail = "0.14"
PREFERRED_VERSION_osso-gwconnect = "1.0.12"
PREFERRED_VERSION_osso-gnome-vfs2 = "2.16.3"

PREFERRED_VERSION_shared-mime-info = "0.22"

# Java stuff 
PREFERRED_PROVIDER_midpath = "midpath-maemo"
PREFERRED_PROVIDER_midpath-backend-gtk = "midpath-backend-gtk-hildon"

# Need jamvm-initial since cacao 0.98 seems to get miscompiled with newer GCCs.
PREFERRED_PROVIDER_virtual/java-initial = "jamvm-initial"

PREFERRED_PROVIDER_virtual/javac-native = "ecj-bootstrap-native"

PREFERRED_PROVIDER_classpath = "classpath"
PREFERRED_VERSION_classpath = "0.97.2"

PREFERRED_PROVIDER_swt3.4-gtk = "swt3.4-gtk-hildon"
PREFERRED_VERSION_swt3.4-gtk-hildon = "3.4"

# Does not compile with the CodeSourcery compiler .. :(
#PREFERRED_VERSION_kaffe = "1.1.8+cvs20080120"
#PREFERRED_VERSION_kaffeh-native = "1.1.8+cvs20080120"

# WARNING: If you change these values after the respective package has
# been built the change will have no effect. Edit the package's file in 
# ${STAGING}/pkgdata/runtime then.
PKG_ncurses = "libncurses5"
PKG_ncurses-tools = "ncurses-bin"
PKG_ncurses-terminfo = "ncurses-base"

PKG_gtk+ = "libgtk2.0-0"
PKG_pango = "libpango1.0-0"
PKG_atk = "libatk1.0-0"
PKG_glib-2.0 = "libglib2.0-0"
PKG_gconf = "libgconf2-6"
DEBIANNAME_dbus_pn-dbus = "dbus"
PKG_libhildon = "libhildon1"
DEBIANNAME_eds-dbus_pn-libedataserver-1.2 = "libedataserver"

PKG_zlib = "zlib1g"
PKG_libglade = "libglade2-0"
PKG_libsoup = "libsoup2.2-8"

PKG_libsdl-mixer = "libsdl-mixer1.2"
PKG_libsdl-image = "libsdl-image1.2"
PKG_libsdl-directfb = "libsdl1.2"
PKG_libsdl-ttf = "libsdl-ttf2.0-0"
PKG_libsdl-gfx = "libsdl-gfx1.2-4"

PKG_bluez-libs = "libbluetooth2"

PKG_osso-ic-oss = "osso-ic"
PKG_libconic = "libconic0"

PKG_libgcc = "libgcc1"
