vortex86sx: we use sisfb which gives 2D acceleration
[vuplus_openembedded] / conf / distro / include / slugos.inc
1 #@TYPE: Distribution
2 #@NAME: SlugOS
3 #@DESCRIPTION: SlugOS Linux Distribution for the NSLU2
4
5 # WARNING: this file should not be used directly, use one of
6 # the supported slugos-derived distributions instead.
7
8 #----------------------------------------------------------------------------------
9 # STANDARD SLUGOS DEFINITIONS
10 #----------------------------------------------------------------------------------
11 # The following must be set in the top level distro file:
12 #
13 #DISTRO_NAME
14 #DISTRO_TYPE
15 #ARM_INSTRUCTION_SET "arm" or "thumb"
16 #TARGET_OS "linux" or "linux-uclibc"
17
18 # The following may be overridden to make sub-versions
19 SLUGOS_VERSION = "5.2"
20 DISTRO_REVISION ?= ""
21 DISTRO_VERSION ?= "${SLUGOS_VERSION}${DISTRO_REVISION}-${DISTRO_TYPE}"
22 # For release (only):
23 # DISTRO_FEED ?= "${SLUGOS_VERSION}-${DISTRO_TYPE}"
24 DISTRO_FEED ?= "unstable"
25
26 # We want images supporting the following features (for task-base)
27 DISTRO_FEATURES = "nfs smbfs wifi ppp alsa bluetooth ext2 vfat irda pcmcia usbgadget usbhost pci"
28
29 IMAGE_BASENAME = "${@['slugos${SITEINFO_ENDIANESS}', 'ucslugc'][bb.data.getVar('TARGET_OS', d, 1) == 'linux-uclibc']}"
30
31 # The following need not be set, the defaults should be adequate
32 #USE_NLS = "no" or "yes"
33 USE_NLS ?= "no"
34
35 # To make errors easier to identify:
36 DISTRO_NAME ?= "INVALID-${SITEINFO_ENDIANESS}-${ARM_INSTRUCTION_SET}-${TARGET_OS}"
37 DISTRO_TYPE ?= "INVALID"
38
39 # The following must not be changed.
40 TARGET_FPU = "soft"
41
42 # glib-2.0 builds require USE_NLS to be overridden
43 USE_NLS_glib-2.0 = "yes"
44 USE_NLS_glib-2.0-native = "yes"
45 USE_NLS_gcc-cross = "no"
46
47 INHERIT += "package_ipk debian testlab packaged-staging"
48
49 # FULL_OPTIMIZATION
50 #    Optimization settings.  Os works fine and is significantly better than O2.
51 FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os"
52
53 # We need to keep OABI compat for things like madwifi-ng.
54 ARM_KEEP_OABI = "1"
55
56 TARGET_LINK_HASH_STYLE = "-Wl,--hash-style=gnu"
57
58 CXXFLAGS += "-fvisibility-inlines-hidden"
59
60 # There is a problem of sorts with Perl.  This needs a better home eventually,
61 # but for now put it in this file.
62 FULL_OPTIMIZATION_pn-perl = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O1"
63 BUILD_OPTIMIZATION_pn-perl = "-O1"
64
65 #----------------------------------------------------------------------------------
66 # FEEDS
67 #  The FEED_URIS lines define where on the internet SlugOS looks for packages
68 #  when downloading new packages or updating existing packages.  Additional feeds
69 #  (such as a local feed) can be defined in local.conf
70 #----------------------------------------------------------------------------------
71 #
72 FEED_URIS_append += "cross##http://ipkg.nslu2-linux.org/feeds/${IMAGE_BASENAME}/cross/${DISTRO_FEED}"
73 FEED_URIS_append += "native##http://ipkg.nslu2-linux.org/feeds/${IMAGE_BASENAME}/native/${DISTRO_FEED}"
74
75 #----------------------------------------------------------------------------------
76 # FIRMWARE CONFIGURATION
77 #----------------------------------------------------------------------------------
78 # IMAGE BUILD OPTIONS
79 # -------------------
80 # CMDLINE* macros define the kernel command line.  CMDLINE_DEBUG is provided
81 # to enable/disable debugging in the distro.  Here noirqdebug is used to
82 # remove the messages about unhandled interrupts - people debugging interrupt
83 # issues in the kernel need to cancel this (set CMDLINE_DEBUG empty in local.conf)
84 CMDLINE_ROOT  = "root=/dev/mtdblock4 rootfstype=jffs2 rw init=/linuxrc"
85 CMDLINE_DEBUG = "noirqdebug"
86
87 # EXTRA PACKAGES
88 # --------------
89 # SlugOS builds an image with no extra packages - to add packages to the
90 # firmware include this file in a new 'distro' configuration file) and set
91 # the definition below to include the requirements.
92 # NOTE: as built this system will *not* be able to boot off anything other than
93 # the flash file system ('turnup' will not work).  You need to add the filesystem
94 # modules for your chosen root file system (and any others which will be used).
95 # See openslug.conf for a more full-featured system!
96 #
97 # Everything in this list gets added to the flash image, along with any RDEPENDS
98 # it has itself!
99 DISTRO_EXTRA_DEPENDS ?= ""
100 DISTRO_EXTRA_RDEPENDS ?= ""
101 DISTRO_EXTRA_RRECOMMENDS ?= ""
102
103 CVS_TARBALL_STASH = "http://sources.nslu2-linux.org/sources/"
104 INHERIT += "nslu2-mirrors"
105
106 #FIXME: HACK: REMOVE THIS
107 IGNORE_STRIP_ERRORS = ""
108
109 #----------------------------------------------------------------------------------
110 # PACKAGE VERSION CONTROL
111 #----------------------------------------------------------------------------------
112 # Define how to bootstrap the system - we need cross compilers.  It is also
113 # necessary to define which gets generated first, glibc or the kernel, and
114 # this is done by selecting the provider of libc (in this case it needs the
115 # kernel, so there has to be a non-libc gcc to build the kernel!)
116
117 # Virtuals:
118 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial      = "gcc-cross-initial"
119 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-intermediate"
120 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc              = "gcc-cross"
121 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++              = "gcc-cross"
122
123 #Set preferred provider for the C library that is used to build the crosscompiler (NPTL voodoo)
124 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc     = "glibc"
125 PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc           = "glibc"
126 PREFERRED_PROVIDER_virtual/armeb-linux-libc-for-gcc         = "glibc"
127 PREFERRED_PROVIDER_virtual/arm-linux-gnueabi-libc-for-gcc   = "glibc"
128 PREFERRED_PROVIDER_virtual/armeb-linux-gnueabi-libc-for-gcc = "glibc"
129
130 # Set the preferred provider for a few toolchain-related items, otherwise
131 # these may be selected from the external-toolchain instead.
132 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils         = "binutils-cross"
133 PREFERRED_PROVIDER_virtual/arm-linux-binutils               = "binutils-cross"
134 PREFERRED_PROVIDER_virtual/armeb-linux-binutils             = "binutils-cross"
135 PREFERRED_PROVIDER_linux-libc-headers                       = "linux-libc-headers"
136
137 # Select the smallest provider of x11 libraries
138 PREFERRED_PROVIDER_virtual/libx11               = "diet-x11"
139 SRCDATE_diet-x11                                ?= "20060106"
140
141 # Ensure consistency across all SlugOS builds for the provider of a relational
142 # database - use the latest version of the SleepyCat Berkeley database
143 PREFERRED_PROVIDER_virtual/db                   = "db"
144 PREFERRED_PROVIDER_virtual/db-native            = "db-native"
145
146 SRCDATE_ipkg-utils                              ?= "20060106"
147 SRCDATE_ipkg-utils-native                       ?= "20060106"
148 SRCDATE_ipkg-link                               ?= "20060106"
149 SRCDATE_irssi                                   ?= "20050930"
150
151 # we don't ship gtk-directfb by default
152 PREFERRED_PROVIDER_gtk+                         ?= "gtk+"
153 PREFERRED_PROVIDER_gdk-pixbuf-loader-ani        ?= "gtk+"
154 PREFERRED_PROVIDER_gdk-pixbuf-loader-bmpg       ?= "gtk+"
155 PREFERRED_PROVIDER_gdk-pixbuf-loader-gif        ?= "gtk+"
156 PREFERRED_PROVIDER_gdk-pixbuf-loader-ico        ?= "gtk+"
157 PREFERRED_PROVIDER_gdk-pixbuf-loader-jpeg       ?= "gtk+"
158 PREFERRED_PROVIDER_gdk-pixbuf-loader-pcx        ?= "gtk+"
159 PREFERRED_PROVIDER_gdk-pixbuf-loader-png        ?= "gtk+"
160 PREFERRED_PROVIDER_gdk-pixbuf-loader-pnm        ?= "gtk+"
161 PREFERRED_PROVIDER_gdk-pixbuf-loader-ras        ?= "gtk+"
162 PREFERRED_PROVIDER_gdk-pixbuf-loader-tga        ?= "gtk+"
163 PREFERRED_PROVIDER_gdk-pixbuf-loader-wbmp       ?= "gtk+"
164 PREFERRED_PROVIDER_gdk-pixbuf-loader-xbm        ?= "gtk+"
165 PREFERRED_PROVIDER_gdk-pixbuf-loader-xpm        ?= "gtk+"
166
167 PREFERRED_PROVIDER_avahi                        ?= "avahi"
168 PREFERRED_PROVIDER_gconf                        ?= "gconf"
169
170 # Include any package preferred versions and srcrevs:
171
172 require conf/distro/include/preferred-slugos-versions.inc
173 require conf/distro/include/sane-srcdates.inc
174 require conf/distro/include/sane-srcrevs.inc