summaryrefslogtreecommitdiff
path: root/conf/distro/shr.conf
blob: 5b0b29a1758c1e2d4eec7a3fde08d149ba22dd0a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
#-----------------------------------------------------------------------------
#@TYPE: Distribution
#@NAME: SHR
#@DESCRIPTION: Linux Distribution Configuration for Mobile Phones
#-----------------------------------------------------------------------------

# set default locale for images - we have to do that before
# including angstrom-2007-for-openmoko.inc because otherwise
# it will be already set to en-gb
IMAGE_LINGUAS ?= "en-us"

# Set the toolchain type (internal, external) and brand (generic, csl etc.)
TOOLCHAIN_TYPE ?= "internal"
TOOLCHAIN_BRAND ?= ""

#LIBC = "glibc"

require conf/distro/include/preferred-shr-versions.inc
require conf/distro/include/shr-autorev.inc

#
# Header
#
DISTRO_NAME = "shr"
DISTRO_VERSION = "-${DATE}"
DISTRO_REVISION = "2"
DISTRO_PR = ".4"
#DISTRO_TYPE = "release"
DISTRO_TYPE = "debug"
DISTRO = "shr"

#Generate locales on the buildsystem instead of on the target. Speeds up first boot, set to "1" to enable
ENABLE_BINARY_LOCALE_GENERATION ?= "1"

# We only want to build UTF8 locales
LOCALE_UTF8_ONLY = "1"

#save statistical info on images
INHERIT += "testlab"

#activate the angstrom blacklister
INHERIT += "angstrom"

ANGSTROM_BLACKLIST_pn-bluez-libs  = "bluez-libs 3.x has been replaced by bluez4"
ANGSTROM_BLACKLIST_pn-bluez-utils = "bluez-utils 3.x has been replaced by bluez4"
ANGSTROM_BLACKLIST_pn-atd = "atd has been replaced by atd-over-fso"

CVS_TARBALL_STASH += "http://build.shr-project.org/sources/"

PREMIRRORS = "(ftp|https?)$://.*/.* http://build.shr-project.org/sources/"

DISTRO_FEED_PREFIX ?= "shr-dev"
DISTRO_FEED_URI ?= "http://build.shr-project.org/shr-testing/ipk"

AB_DEPLOY_EXTRA ?= ""
DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE_ARCH}/${AB_DEPLOY_EXTRA}"

IMAGE_INITSCRIPTS = "initscripts-shr"
DISTRO_INITSCRIPTS = "initscripts-shr"
DISTRO_DEV_MANAGER = "udev"

IPKG_VARIANT = "opkg"

# Same kernel so same usb
PACKAGE_ARCH_pn-usb-gadget-mode_om-gta01 = "armv4t"
PACKAGE_ARCH_pn-usb-gadget-mode_om-gta02 = "armv4t"
# same kernel so same keymaps
PACKAGE_ARCH_pn-keymaps_om-gta01 = "armv4t"
PACKAGE_ARCH_pn-keymaps_om-gta02 = "armv4t"
# neod knows about both machines
PACKAGE_ARCH_pn-neod_om-gta01 = "armv4t"
PACKAGE_ARCH_pn-neod_om-gta02 = "armv4t"

# Helper to say what image we built
SHR_VERSION_FILE = "${IMAGE_ROOTFS}/${sysconfdir}/shr-version"
ROOTFS_POSTPROCESS_COMMAND += "OLD_PWD=$PWD; cd `dirname '${FILE_DIRNAME}'`; echo Tag Name: `git tag|tail -n 1`> ${SHR_VERSION_FILE};cd $OLD_PWD;"
ROOTFS_POSTPROCESS_COMMAND += "OLD_PWD=$PWD; cd `dirname '${FILE_DIRNAME}'`; echo VERSION: `git-log -n1 --pretty=oneline|awk '{print $1}'` >> ${SHR_VERSION_FILE}; cd $OLD_PWD;"
ROOTFS_POSTPROCESS_COMMAND += "OLD_PWD=$PWD; cd `dirname '${FILE_DIRNAME}'`; echo Branch: ` git branch |awk '/*/{print $2}'` >> ${SHR_VERSION_FILE}; cd $OLD_PWD;"
ROOTFS_POSTPROCESS_COMMAND += "echo Build Host: `cat /etc/hostname` >> ${SHR_VERSION_FILE};"
ROOTFS_POSTPROCESS_COMMAND += "echo Time Stamp: `date -R` >> ${SHR_VERSION_FILE};"

#Package customization
EXTRA_OECONF-pn_qemu += " --target-list=arm-linux-user,arm-softmmu"

#Illume settings
ILLUME_CONFIG = "e-wm-config-illume-shr"
ILLUME_THEME = "e-wm-theme-illume-gry"

# From minimal.conf

#############################################################################
# FEATURE SELECTION
#############################################################################
# Use bluetooth 4.0
DISTRO_BLUETOOTH_MANAGER = "bluez4"
# We want images supporting the following features (for task-base)
DISTRO_FEATURES = "nfs smbfs wifi ppp alsa ext2 vfat pcmcia usbgadget usbhost pci"
# Following features are for ARM and E500 based machines
DISTRO_FEATURES += "eabi"

#############################################################################
# LIBRARY NAMES
#############################################################################
# libfoo -> libfoo0-2 (etc)
INHERIT += "debian"

#############################################################################
# STAGING AREA
#############################################################################
# Controlled by packaging system
INHERIT += "packaged-staging"

#############################################################################
# PACKAGING & FEEDS
#############################################################################
# Chose the packaging system
INHERIT += "package_ipk"
IMAGE_FSTYPES ?= "tar.gz jffs2"

require conf/distro/include/sane-feed.inc
PREFERRED_PKG_FORMAT ?= "ipk"
require conf/distro/include/sane-feed-${PREFERRED_PKG_FORMAT}.inc

#############################################################################
# IMAGES
#############################################################################
# Name the generated images in a sane way
IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${LIBC}-${PREFERRED_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}"
CACHE ?= "${TMPDIR}/cache/${LIBC}/${MACHINE}"
DEPLOY_DIR ?= "${TMPDIR}/deploy/${LIBC}"
DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE}"

# increase inode/block ratio for ext2 filesystem 
EXTRA_IMAGECMD_ext2 = "-i 8192"

#############################################################################
# KERNEL
#############################################################################
KERNEL = "kernel26"
MACHINE_KERNEL_VERSION = "2.6"

#############################################################################
# OVERWRITES adjusted from bitbake.conf to feature the MACHINE_CLASS
#############################################################################
OVERRIDES = "local:${MACHINE}:${MACHINE_CLASS}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}"

#############################################################################
# TOOLCHAIN
#############################################################################
LIBC ?= "eglibc"
require conf/distro/include/sane-toolchain.inc

#############################################################################
# PREFERRED PROVIDERS
#############################################################################
PREFERRED_PROVIDER_qemu-native = "qemu-native"
PREFERRED_PROVIDER_gconf = "gconf"
PREFERRED_PROVIDER_virtual/shr-splash-theme = "shr-splash-theme-logo"
PREFERRED_PROVIDER_frameworkd-config = "frameworkd-config-shr"
PREFERRED_PROVIDER_gpsd = "fso-gpsd"
PREFERRED_PROVIDER_e-wm-menu = "e-wm-menu-shr"
PREFERRED_PROVIDER_openmoko-alsa-scenarios = "alsa-scenarii-shr"
PREFERRED_PROVIDER_virtual/alsa-scenarios = "alsa-scenarii-shr"
PREFERRED_PROVIDER_libfribidi = "fribidi"
PREFERRED_PROVIDER_bluez-libs = "bluez4"
PREFERRED_PROVIDER_bluez-utils = "bluez4"
PREFERRED_PROVIDER_classpath = "classpath"
PREFERRED_PROVIDER_virtual/javac-native = "ecj-bootstrap-native"
PREFERRED_PROVIDER_virtual/java-native = "jamvm-native"
PREFERRED_PROVIDER_virtual/gail = "gtk+"
PREFERRED_PROVIDER_opkg = "opkg"
PREFERRED_PROVIDER_virtual/java-initial = "jamvm-initial"
PREFERRED_PROVIDER_atd = "atd-over-fso"
PREFERRED_PROVIDER_qt4x11 = "qt4-x11-free"
PREFERRED_PROVIDER_task-bootstrap = "task-bootstrap"
PREFERRED_PROVIDER_avahi = "avahi"
PREFERRED_PROVIDER_gtk+ = "gtk+"
PREFERRED_PROVIDER_libgpewidget = "libgpewidget"
PREFERRED_PROVIDER_virtual/db = "db3"
PREFERRED_PROVIDER_virtual/db-native = "db3-native"
PREFERRED_PROVIDER_virtual/libsdl = "libsdl-x11"
PREFERRED_PROVIDER_virtual/libx11 ?= "libx11"
PREFERRED_PROVIDER_virtual/libusb0 ?= "libusb"

#############################################################################
# PREFERRED VERSIONS
#############################################################################
require conf/distro/include/sane-srcdates.inc
require conf/distro/include/sane-srcrevs.inc
require conf/distro/include/preferred-e-versions.inc
require conf/distro/include/preferred-opie-versions-1.2.4.inc
#Use newest available (X11R7.5 now)
#require conf/distro/include/preferred-xorg-versions-X11R7.4-updates.inc
#require conf/distro/include/preferred-xorg-versions-X11R7.4.inc

#############################################################################
# CONTENTS
#############################################################################

# Ship extra debug utils in the rootfs when doing a debug build 
DISTRO_EXTRA_APPS ?= ""
DISTRO_EXTRA_APPS += '${@base_conditional("DISTRO_TYPE", "release", "", "task-cli-tools-debug",d)}'

# Additional content I (only valid if you include task-base)
# distro-feed-configs: configuration files for the online feeds
# util-linux-ng-mount util-linux-ng-umount: busybox mount is broken
# angstrom-libc-fixup-hack: fixes an obscure bug with libc.so symlink
DISTRO_EXTRA_RDEPENDS += "\
  distro-feed-configs \
  util-linux-ng-mount util-linux-ng-umount \
  angstrom-libc-fixup-hack \
  ${DISTRO_EXTRA_APPS} \
"

# Additional content II (can be masked with BAD_RECOMMENDATIONS)
DISTRO_EXTRA_RRECOMMENDS += " \
    kernel-module-vfat \
    kernel-module-ext2 \
    kernel-module-ext3 \
    kernel-module-af-packet \
    openssh-sftp-server \
"

#    avahi-daemon \
#    avahi-autoipd \