diff options
author | Richard Purdie <richard@openedhand.com> | 2006-02-10 11:45:39 +0000 |
---|---|---|
committer | Richard Purdie <richard@openedhand.com> | 2006-02-10 11:45:39 +0000 |
commit | dd1b4430b5d74ee7f3827ed6eed56a2bd5f99d42 (patch) | |
tree | e8b9838dc2981038046081efe5145a4227902f7d | |
parent | ce241d7e6d8e31411867b5f2127b02c776b39d8a (diff) | |
download | openembedded-core-dd1b4430b5d74ee7f3827ed6eed56a2bd5f99d42.tar.gz openembedded-core-dd1b4430b5d74ee7f3827ed6eed56a2bd5f99d42.tar.bz2 openembedded-core-dd1b4430b5d74ee7f3827ed6eed56a2bd5f99d42.tar.xz openembedded-core-dd1b4430b5d74ee7f3827ed6eed56a2bd5f99d42.zip |
Pull conf file updates from OE
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@270 311d38ba-8fff-0310-9ca6-ca027cbcb966
37 files changed, 329 insertions, 207 deletions
diff --git a/openembedded/conf/bitbake.conf b/openembedded/conf/bitbake.conf index 06d9e61ac..89ab4ff92 100644 --- a/openembedded/conf/bitbake.conf +++ b/openembedded/conf/bitbake.conf @@ -67,6 +67,14 @@ TIME := "${@time.strftime('%H%M%S',time.gmtime())}" DATETIME = "${DATE}${TIME}" ################################################################## +# Openembedded Software Prerequisites. +################################################################## + +# python-native should be here but python relies on building +# its own in staging +ASSUME_PROVIDED = "cvs-native svn-native" + +################################################################## # Package default variables. ################################################################## @@ -270,7 +278,6 @@ BUILD_OPTIMIZATION = "-O2" # Bootstrap stuff. ################################################################## -BOOTSTRAP_EXTRA_DEPENDS = "" BOOTSTRAP_EXTRA_RDEPENDS = "" BOOTSTRAP_EXTRA_RRECOMMENDS = "" @@ -293,6 +300,7 @@ DEBIAN_MIRROR = "ftp://ftp.debian.org/debian/pool" SOURCEFORGE_MIRROR = "http://heanet.dl.sourceforge.net/sourceforge" GPE_MIRROR = "http://ftp.handhelds.org/pub/projects/gpe/source" XLIBS_MIRROR = "http://xlibs.freedesktop.org/release" +XORG_MIRROR = "http://xorg.freedesktop.org/releases" GNOME_MIRROR = "http://ftp.gnome.org/pub/GNOME/sources" FREEBSD_MIRROR = "ftp://ftp.freebsd.org/pub/FreeBSD/" HANDHELDS_CVS = "cvs://anoncvs:anoncvs@anoncvs.handhelds.org/cvs" @@ -309,7 +317,7 @@ RESUMECOMMAND = "" RESUMECOMMAND_wget = "/usr/bin/env wget -c -t 5 --passive-ftp -P ${DL_DIR} ${URI}" UPDATECOMMAND = "" UPDATECOMMAND_cvs = "/usr/bin/env cvs update -d -P ${CVSCOOPTS}" -CVSDATE = "${DATE}" +SRCDATE = "${DATE}" SRC_URI = "file://${FILE}" diff --git a/openembedded/conf/distro/familiar-0.8.3.conf b/openembedded/conf/distro/familiar-0.8.3.conf deleted file mode 100644 index 53614d929..000000000 --- a/openembedded/conf/distro/familiar-0.8.3.conf +++ /dev/null @@ -1,66 +0,0 @@ -DISTRO = "familiar" -DISTRO_NAME = "Familiar Linux" -DISTRO_VERSION = "v0.8.3-unofficial-unsupported-snapshot-${DATE}" - -include conf/distro/familiar.conf - -"${@bb.fatal('This file is unmaintained in the org.oe.dev branch, use the org.openembedded.oz354fam083 branch instead. You can also remove this line, but don't complain if something breaks')}" - - - -DISTRO_TYPE = "debug" -#DISTRO_TYPE = "release" - -FEED_URIS += " \ - base##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/base \ - updates##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/updates" - -#CVSDATE = 20050331 - -PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial" -PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc:gcc-cross" -PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}g++:gcc-cross" - -PREFERRED_PROVIDER_virtual/libiconv=glibc -PREFERRED_PROVIDER_virtual/libintl=glibc -PREFERRED_PROVIDER_x11=diet-x11 - -PREFERRED_VERSION_hostap-modules ?= "0.3.9" - -# The CSL compiler is unusable because -# 1) certain programs stop to compile -# 2) more programs segfault -PREFERRED_VERSION_gcc ?= "3.4.4" -PREFERRED_VERSION_gcc-cross ?= "3.4.4" -PREFERRED_VERSION_gcc-cross-initial ?= "3.4.4" - -# -# Opie -# - -PREFERRED_PROVIDERS += " virtual/libqpe:libqpe-opie" -PREFERRED_VERSION_qte = "2.3.10" - -OPIE_VERSION = "1.2.1" -include conf/distro/preferred-opie-versions.inc - -# -# GPE -# - -PREFERRED_PROVIDERS += "virtual/xserver:xserver-kdrive" -PREFERRED_PROVIDERS += "virtual/gconf:gconf-dbus" -PREFERRED_PROVIDER_x11 = "diet-x11" - -include conf/distro/preferred-gpe-versions-2.7.inc - -# -# E -# - - -#23:57 < mickeyl> it's no longer necessary since our cleanup -#23:57 < mickeyl> it may be again when we add cvs versions, but until now, just don't include it - -#include conf/distro/preferred-e-versions.inc - diff --git a/openembedded/conf/distro/familiar-distro.conf b/openembedded/conf/distro/familiar-distro.conf deleted file mode 100644 index 497ba6a89..000000000 --- a/openembedded/conf/distro/familiar-distro.conf +++ /dev/null @@ -1,11 +0,0 @@ -#@TYPE: Distribution -#@NAME: Familiar Linux -#@DESCRIPTION: Distribution configuration for Familiar Linux (handhelds.org) - -INHERIT += "package_ipk debian" -TARGET_OS = "linux" - -PARALLEL_INSTALL_MODULES = "1" - -UDEV_DEVFS_RULES = "1" - diff --git a/openembedded/conf/distro/maemo-1.0.conf b/openembedded/conf/distro/maemo-1.0.conf index 15ec45f34..f83e4b1d9 100644 --- a/openembedded/conf/distro/maemo-1.0.conf +++ b/openembedded/conf/distro/maemo-1.0.conf @@ -11,7 +11,7 @@ FEED_URIS += " \ base##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/base \ updates##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/updates" -#CVSDATE = 20050331 +#SRCDATE = 20050331 PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial" PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc:gcc-cross" diff --git a/openembedded/conf/distro/openzaurus-3.5.4.conf b/openembedded/conf/distro/openzaurus-3.5.4.conf deleted file mode 100644 index 8fbcbefa4..000000000 --- a/openembedded/conf/distro/openzaurus-3.5.4.conf +++ /dev/null @@ -1,71 +0,0 @@ -DISTRO = "openzaurus" -DISTRO_NAME = "OpenZaurus" -DISTRO_VERSION = "3.5.3-snapshot-${DATE}" - -include conf/distro/openzaurus.conf - - -# DISTRO_VERSION = "3.5.4" -DISTRO_TYPE = "debug" -# DISTRO_TYPE = "release" - -FEED_URIS += " \ - upgrades##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/upgrades/ \ -upgrades-${MACHINE}##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/upgrades/${MACHINE} \ - machine##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/machine/${MACHINE} \ - base##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/base/ \ - libs##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/libs/ \ - console##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/console \ - devel##http://openzaurus.org/official/unstable/${DISTRO_VERSION}/feed/devel" - -# CVSDATE = "20050704" - -# -# Zaurus -# - -ASSUME_PROVIDED += "virtual/arm-linux-gcc-2.95" -OEINCLUDELOGS = "yes" -KERNEL_CONSOLE = "ttyS0" -#DEBUG_OPTIMIZATION = "-O -g3" -#DEBUG_BUILD = "1" -#INHIBIT_PACKAGE_STRIP = "1" - -PREFERRED_VERSION_gcc-cross ?= "3.4.4" -PREFERRED_VERSION_gcc-cross-initial ?= "3.4.4" - -PREFERRED_VERSION_hostap-modules ?= "0.3.9" - -#fix some iconv issues, needs to be adjusted when doing uclibc builds -PREFERRED_PROVIDER_virtual/libiconv=glibc -PREFERRED_PROVIDER_virtual/libintl=glibc - - -# -# Base -# -PREFERRED_VERSION_binutils-cross = "2.15.94.0.1" -PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial" -PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross" -PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross" - -# -# Opie -# -PREFERRED_PROVIDERS += " virtual/libqpe:libqpe-opie" - -OPIE_VERSION = "1.2.1" -include conf/distro/preferred-opie-versions.inc - -# -# GPE -# -PREFERRED_PROVIDERS += "virtual/xserver:xserver-kdrive" -PREFERRED_PROVIDER_x11 = "diet-x11" -include conf/distro/preferred-gpe-versions-2.7.inc - -# -# E -# -#include conf/distro/preferred-e-versions.inc - diff --git a/openembedded/conf/distro/openzaurus.conf b/openembedded/conf/distro/openzaurus.conf index a935ed4ac..edcbacc80 100644 --- a/openembedded/conf/distro/openzaurus.conf +++ b/openembedded/conf/distro/openzaurus.conf @@ -2,12 +2,19 @@ #@NAME: OpenZaurus #@DESCRIPTION: Distribution configuration for OpenZaurus (http://www.openzaurus.org) +DISTRO = "openzaurus" +DISTRO_NAME = "OpenZaurus" + INHERIT += " package_ipk debian" # For some reason, this doesn't work # TARGET_OS ?= "linux" TARGET_OS = "linux" TARGET_FPU = "soft" +BOOTSTRAP_EXTRA_RDEPENDS += "openzaurus-version" + PARALLEL_INSTALL_MODULES = "1" DISTRO_CHECK := "${@bb.data.getVar("DISTRO_VERSION",d,1) or bb.fatal('Remove this line or set a dummy DISTRO_VERSION if you really want to build an unversioned distro')}" + +include conf/distro/include/multimachine.conf diff --git a/openembedded/conf/distro/preferred-e-versions.inc b/openembedded/conf/distro/preferred-e-versions.inc index d861944d5..e4571f1ae 100644 --- a/openembedded/conf/distro/preferred-e-versions.inc +++ b/openembedded/conf/distro/preferred-e-versions.inc @@ -2,12 +2,26 @@ # Specify which versions of E-related libraries and applications to build # -PREFERRED_VERSION_ecore = "0.9.9.013" -PREFERRED_VERSION_edb = "1.0.5.004" -PREFERRED_VERSION_edje = "0.5.0.013" -PREFERRED_VERSION_eet = "0.9.10.013" -PREFERRED_VERSION_embryo = "0.9.1.013" -PREFERRED_VERSION_etox = "0.9.0.004" -PREFERRED_VERSION_evas = "0.9.9.013" -PREFERRED_VERSION_ewl = "0.0.4.004" -PREFERRED_VERSION_imlib2 = "1.2.1.004" +PREFERRED_VERSION_e = "0.16.999.023" +PREFERRED_VERSION_ecore-x11 = "0.9.9.023" +PREFERRED_VERSION_ecore-native = "0.9.9.023" +PREFERRED_VERSION_edb = "1.0.5.005" +PREFERRED_VERSION_edb-native = "1.0.5.005" +PREFERRED_VERSION_edje = "0.5.0.023" +PREFERRED_VERSION_edje-native = "0.5.0.023" +PREFERRED_VERSION_eet = "0.9.10.023" +PREFERRED_VERSION_eet-native = "0.9.10.023" +PREFERRED_VERSION_embryo = "0.9.1.023" +PREFERRED_VERSION_embryo-native = "0.9.1.023" +PREFERRED_VERSION_emotion = "0.0.1.004" +PREFERRED_VERSION_emotion-native = "0.0.1.004" +PREFERRED_VERSION_epeg = "0.9.0.005" +PREFERRED_VERSION_epsilon = "0.3.0.005" +PREFERRED_VERSION_esmart-x11 = "0.9.0.005" +PREFERRED_VERSION_evas-x11 = "0.9.9.023" +PREFERRED_VERSION_evas-native = "0.9.9.023" +PREFERRED_VERSION_ewl = "0.0.4.005" +PREFERRED_VERSION_imlib2-x11 = "1.2.1.010" +PREFERRED_VERSION_imlib2-native = "1.2.1.010" +PREFERRED_VERSION_e-wm = "0.16.999.023" +PREFERRED_VERSION_entrance = "0.9.0.005" diff --git a/openembedded/conf/local.conf.sample b/openembedded/conf/local.conf.sample index 49b66b2e5..70abc9892 100644 --- a/openembedded/conf/local.conf.sample +++ b/openembedded/conf/local.conf.sample @@ -40,11 +40,11 @@ BBMASK = "" # provide packages for toolchain and additional libraries yourself. You also # have to set PATH in your environment to make sure BitBake finds additional binaries. # Note: You will definitely need to say: -# ASSUME_PROVIDED = "virtual/arm-linux-gcc-2.95" +# ASSUME_PROVIDED += "virtual/arm-linux-gcc-2.95" # to build any of two Linux 2.4 Embedix kernels, # i.e. openzaurus-sa-2.4.18 and openzaurus-pxa-2.4.18 - and don't forget # to rename the binaries as instructed in the Wiki. -# ASSUME_PROVIDED = "virtual/${TARGET_PREFIX}gcc virtual/libc" +# ASSUME_PROVIDED += "virtual/${TARGET_PREFIX}gcc virtual/libc" # Select between multiple alternative providers, if more than one is eligible. PREFERRED_PROVIDERS = "virtual/qte:qte virtual/libqpe:libqpe-opie" @@ -78,7 +78,7 @@ PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross" # Uncomment this to select a distribution policy. See the conf directory # for distributions currently known to OpenEmbedded. # Stay away from unversioned distros unless you really know what you are doing -# DISTRO = "familiar-0.8.3" +# DISTRO = "familiar-unstable" # Uncomment this to select a particular kernel version if supported by # your MACHINE setting. Currently only supported on Zaurus Clamshells. diff --git a/openembedded/conf/machine/akita.conf b/openembedded/conf/machine/akita.conf index cfcc41167..da699e725 100644 --- a/openembedded/conf/machine/akita.conf +++ b/openembedded/conf/machine/akita.conf @@ -2,9 +2,9 @@ #@NAME: Sharp Zaurus SL-C1000 #@DESCRIPTION: Machine configuration for the Sharp Zaurus SL-C1000 device -KERNEL_VERSION ?= "2.4" +KERNEL_VERSION ?= "2.6" -include conf/machine/zaurus-clamshell.conf -include conf/machine/zaurus-clamshell-${KERNEL_VERSION}.conf +include conf/machine/include/zaurus-clamshell.conf +include conf/machine/include/zaurus-clamshell-${KERNEL_VERSION}.conf -ROOT_FLASH_SIZE = "64" +ROOT_FLASH_SIZE = "58" diff --git a/openembedded/conf/machine/c7x0.conf b/openembedded/conf/machine/c7x0.conf index c5e42a2be..af1c9dad1 100644 --- a/openembedded/conf/machine/c7x0.conf +++ b/openembedded/conf/machine/c7x0.conf @@ -4,9 +4,8 @@ KERNEL_VERSION ?= "2.6" -include conf/machine/zaurus-clamshell.conf -include conf/machine/zaurus-clamshell-${KERNEL_VERSION}.conf - -ROOT_FLASH_SIZE = "32" -# yes, the husky has 64MB, I know... Be happy, that way you can install more software :) +include conf/machine/include/zaurus-clamshell.conf +include conf/machine/include/zaurus-clamshell-${KERNEL_VERSION}.conf +ROOT_FLASH_SIZE = "25" +# yes, we are aware that the husky (c760,c860) has 54MB rootfs, but we don't make a special image for it. diff --git a/openembedded/conf/machine/handheld-common.conf b/openembedded/conf/machine/include/handheld-common.conf index 4bb8325de..467d5e59f 100644 --- a/openembedded/conf/machine/handheld-common.conf +++ b/openembedded/conf/machine/include/handheld-common.conf @@ -16,9 +16,10 @@ irda irlan irnet irport irtty ircomm-tty \ input uinput \ " +PCMCIA_MANAGER ?= "pcmcia-cs" + # Configuration bits for "generic handheld" -BOOTSTRAP_EXTRA_DEPENDS += "apmd ppp wireless-tools irda-utils openswan wpa-supplicant-nossl lrzsz ppp-dialin network-suspend-scripts" -BOOTSTRAP_EXTRA_RDEPENDS += "apm apmd network-suspend-scripts" +BOOTSTRAP_EXTRA_RDEPENDS += "${PCMCIA_MANAGER} apm apmd network-suspend-scripts" BOOTSTRAP_EXTRA_RRECOMMENDS += "ppp wireless-tools irda-utils openswan wpa-supplicant-nossl lrzsz ppp-dialin ${@linux_module_packages('${HANDHELD_MODULES}', d)}" INHERIT += "linux_modules" diff --git a/openembedded/conf/machine/ipaq-common.conf b/openembedded/conf/machine/include/ipaq-common.conf index 791abd210..eb696cf9f 100644 --- a/openembedded/conf/machine/ipaq-common.conf +++ b/openembedded/conf/machine/include/ipaq-common.conf @@ -1,7 +1,5 @@ IPAQ_MODULES = "apm h3600_generic_sleeve ipaq-sleeve ipaq-mtd-asset nvrd atmelwlandriver sa1100-rtc ipaq-hal h3600_ts usb-eth wavelan_cs keybdev" -BOOTSTRAP_EXTRA_DEPENDS += "kbdd bl hostap-modules orinoco-modules atmelwlandriver" -BOOTSTRAP_EXTRA_DEPENDS_append_kernel24 += "mipv6" BOOTSTRAP_EXTRA_RRECOMMENDS += "kbdd bl hostap-modules-cs orinoco-modules-cs atmelwlandriver ${@linux_module_packages('${IPAQ_MODULES}', d)}" BOOTSTRAP_EXTRA_RRECOMMENDS_append_kernel24 += "mipv6" diff --git a/openembedded/conf/machine/include/ixp4xx.conf b/openembedded/conf/machine/include/ixp4xx.conf new file mode 100644 index 000000000..639bf4a74 --- /dev/null +++ b/openembedded/conf/machine/include/ixp4xx.conf @@ -0,0 +1,174 @@ +#@TYPE: Machine configuration +#@NAME: ixp4xx +#@DESCRIPTION: genric machine configuration for ixp4xx platforms + +#------------------------------------------------------------------------------- +# INPUTS +#------------------------------------------------------------------------------- +# conf/${DISTRO}.conf is included after this file and should be used to modify +# variables identified as 'INPUTS' to the required values for the DISTRO, this +# will cause the board specific settings (which depend for the most part on the +# exact CPU used) to be set correctly within this file. The results are the +# variables identifies here as 'OUTPUTS' +# +#variable = "default" +# <possible values> +# description + +ARCH_BYTE_SEX = "be" +# "be" "le" +# The memory byte sex and (on correctly implemented hardware - the IXP4XX is +# correct) the byte sex of the buses within the system. 'be' (big-endian) +# means that the first byte is the most significant byte on a bus, 'le' +# (little-endian) means that the first byte is the least significant byte. + +ARM_INSTRUCTION_SET = "arm" +# "arm" "thumb" +# The instruction set the compiler should use when generating application +# code. The kernel is always compiled with arm code at present. arm code +# is the original 32 bit ARM instruction set, thumb code is the 16 bit +# encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size) +# but requires more instructions (140% for 70% smaller code) so may be +# slower. + +THUMB_INTERWORK = "yes" +# "yes" "no" +# Whether to compile with code to allow interworking between the two +# instruction sets. This allows thumb code to be executed on a primarily +# arm system and vice versa. It is strongly recommended that DISTROs not +# turn this off - the actual cost is very small. + +DISTRO_BASE = "" +# "" ":<base>" +# If given this must be the name of a 'distro' to add to the bitbake OVERRIDES +# after ${DISTRO}, this allows different distros to share a common base of +# overrides. The value given must include a leading ':' or chaos will result. + +IXP4XX_SUFFIX = "${MACHINE_ARCH}" +# <string> +# Kernel suffix - 'ixp4xxbe' or 'ixp4xxle' for a truely generic image, controls +# the suffix on the name of the generated zImage, override in the DISTRO +# configuration if patches or defconfig are changed for the DISTRO. + +#------------------------------------------------------------------------------- +# OUTPUTS +#------------------------------------------------------------------------------- + +#OVERRIDES +# The standard ':' separated list of overrides used by bitbake - see the +# basic setting in bitbake.conf. This list is based on that used for the +# standard setting however :<base>, :thumb and :thumb-interwork will be +# inserted at appropriate points if a base distro, default use of thumb or +# arm/thumb interworking are enabled in the inputs. +OVERRIDE_THUMB = "${@['', ':thumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +OVERRIDE_INTERWORK = "${@['', ':thumb-interwork'][bb.data.getVar('THUMB_INTERWORK', d, 1) == 'yes']}" +OVERRIDES = "local:${MACHINE}:ixp4xx:${DISTRO}${DISTRO_BASE}:${TARGET_OS}:${TARGET_ARCH}${OVERRIDE_THUMB}${OVERRIDE_INTERWORK}:build-${BUILD_OS}" + +# TARGET_CC_ARCH +# TARGET_CC_KERNEL_ARCH +# TARGET_LD_ARCH +# TARGET_LD_KERNEL_ARCH +# Compiler and linker options for application code and kernel code. These +# options ensure that the compiler has the correct settings for the selected +# instruction set and interworking. +ARM_INTERWORK_M_OPT = "${@['-mno-thumb-interwork', '-mthumb-interwork'][bb.data.getVar('THUMB_INTERWORK', d, 1) == 'yes']}" +ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +# +TARGET_CC_ARCH = "-march=armv5te -mtune=xscale ${ARM_INTERWORK_M_OPT} ${ARM_THUMB_M_OPT}" +TARGET_CC_KERNEL_ARCH = "-march=armv5te -mtune=xscale -mno-thumb-interwork -mno-thumb" +TARGET_LD_ARCH = "" +TARGET_LD_KERNEL_ARCH = "" + +# FULL_OPTIMIZATION +# Optimization settings. Os works fine and is significantly better than O2. +# The other settings are somewhat arbitrary. The optimisations chosen here +# include the ones which 'break' symbolic debugging (because the compiler does +# not include enough information to allow the debugger to know where given +# values are.) The -fno options are an attempt to cancel explicit use of space +# consuming options found in some packages (this isn't a complete list, this is +# just the ones which package writers seem to know about and abuse). +FULL_OPTIMIZATION = "-Os -fomit-frame-pointer -frename-registers \ + -fno-unroll-loops -fno-inline-functions \ + -fweb -funit-at-a-time" + +# TARGET_ARCH +# The correct setting for the system endianness (ARCH_BYTE_SEX). This will +# be arm (le) or armeb (be) - it is difficult to be more precise in the +# setting because of the large number of ways it is used within OpenEmbedded. +TARGET_ARCH = "${@['armeb', 'arm'][bb.data.getVar('ARCH_BYTE_SEX', d, 1) == 'le']}" + +# TARGET_PACKAGE_ARCH [not used] +# The correct setting for the generated packages. This corresponds to the +# -march flag passed to the compiler because that limits the architectures +# on which the generated code will run. +BYTE_SEX_CHAR = "${@['b', 'l'][bb.data.getVar('ARCH_BYTE_SEX', d, 1) == 'le']}" +TARGET_PACKAGE_ARCH_BASE = "${@['armv5te', 'thumbv5t'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +TARGET_PACKAGE_ARCH = "${TARGET_PACKAGE_ARCH_BASE}${BYTE_SEX_CHAR}" + +# MACHINE_ARCH +# The correct setting for packages which are specific to the machine, this +# defaults to ${MACHINE} in bitbake.conf, however it is set to ixp4xx here +# because everything built here is no more specific than that. +MACHINE_ARCH = "ixp4xx${ARCH_BYTE_SEX}" + +# IPKG_ARCHS +# The full list of package architectures which should run on the system. +# This takes into account both the board level issues and the INPUTS set +# by the distro. The arm list is derived from the architecture settings +# known to gcc, the thumb list is then derived from that (only the 't' +# architectures of course). +#[not used]: TARGET_ARCH is handled below because it is also currently +# used for thumb packages. +#ARM_ARCHITECTURES = "${TARGET_ARCH} armv2${BYTE_SEX_CHAR} armv2a${BYTE_SEX_CHAR} armv3${BYTE_SEX_CHAR} armv3m${BYTE_SEX_CHAR} armv4${BYTE_SEX_CHAR} armv4t${BYTE_SEX_CHAR} armv5${BYTE_SEX_CHAR} armv5t${BYTE_SEX_CHAR} armv5e${BYTE_SEX_CHAR} armv5te${BYTE_SEX_CHAR} xscale${BYTE_SEX_CHAR}" +ARM_ARCHITECTURES = "armv2${BYTE_SEX_CHAR} armv2a${BYTE_SEX_CHAR} armv3${BYTE_SEX_CHAR} armv3m${BYTE_SEX_CHAR} armv4${BYTE_SEX_CHAR} armv4t${BYTE_SEX_CHAR} armv5${BYTE_SEX_CHAR} armv5t${BYTE_SEX_CHAR} armv5e${BYTE_SEX_CHAR} armv5te${BYTE_SEX_CHAR} xscale${BYTE_SEX_CHAR}" +THUMB_ARCHITECTURES = "thumbe${BYTE_SEX_CHAR} thumbv4t${BYTE_SEX_CHAR} thumbv5t${BYTE_SEX_CHAR}" + +# NOTE: this list contains just the things which rootfs_ipk.bbclass does +# not add, rootfs_ipk.bbclass evaluates: +# +# ipkgarchs="all any noarch ${TARGET_ARCH} ${IPKG_ARCHS} ${MACHINE}" +# +# This is a priority ordered list - most desireable architecture at the end, +# so put <ARM_INSTRUCTION_SET>_ARCHITECTURES at the end and, if +# THUMB_INTERWORK precede this with the other architectures. +IPKG_ARCHS = "ixp4xx ${MACHINE} \ + ${@(lambda arch_thumb, arch_arm, is_arm, interwork: \ + (interwork and (is_arm and arch_thumb or arch_arm) + ' ' or '') \ + + '${TARGET_ARCH} ' + (is_arm and arch_arm or arch_thumb)) \ + (bb.data.getVar('THUMB_ARCHITECTURES', d, 1), \ + bb.data.getVar('ARM_ARCHITECTURES', d, 1), \ + bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) != 'thumb', \ + bb.data.getVar('THUMB_INTERWORK', d, 1) == 'yes')} \ + ${MACHINE_ARCH} ${MACHINE}${ARCH_BYTE_SEX}" + +# IPKG_ARCH_LIST [not used] +# This is used to override the ipkgarchs settings in rootfs_ipk.bbclass, allowing +# the removal of the raw "${MACHINE}" from the end of the list. ${MACHINE} and +# ixp4xx are included at the start (lower priority) as the non-byte-sex specific +# versions. +IPKG_ARCH_LIST = "all any noarch ixp4xx ${MACHINE} ${IPKG_ARCHS}" + +#------------------------------------------------------------------------------- +# Package versions +#------------------------------------------------------------------------------- +# Warning: these are shared across the different machine and distro +# configurations but can be overridden therein if required. +SRCDATE_ipkg-utils ?= "20060106" +SRCDATE_ipkg-utils-native ?= "20060106" +SRCDATE_ipkg-link ?= "20060106" +SRCDATE_irssi ?= "20050930" + +CVS_TARBALL_STASH = "http://sources.nslu2-linux.org/sources/" +INHERIT += "nslu2-mirrors" + +PREFERRED_VERSION_ipkg ?= "0.99.154" +PREFERRED_VERSION_ipkg-native ?= "0.99.154" + +#------------------------------------------------------------------------------- +# Board defaults +#------------------------------------------------------------------------------- +# These values are board specific but they seem to be common to a large number +# of boards so are reasonable defaults. +SERIAL_CONSOLE = "115200 ttyS0" +KERNEL_CONSOLE = "ttyS0,115200n8" +USE_VT = "0" diff --git a/openembedded/conf/machine/include/poodle-2.4.conf b/openembedded/conf/machine/include/poodle-2.4.conf new file mode 100644 index 000000000..5453fda60 --- /dev/null +++ b/openembedded/conf/machine/include/poodle-2.4.conf @@ -0,0 +1,10 @@ +PREFERRED_PROVIDER_virtual/kernel = "openzaurus-pxa" + +# Later versions are broken on kernel 2.4 +PREFERRED_VERSION_orinoco-modules = "0.13e" + +BOOTSTRAP_EXTRA_RDEPENDS = "kernel hostap-modules-cs orinoco-modules orinoco-modules-cs sharp-sdmmc-support \ +kernel-module-net-fd kernel-module-registers kernel-module-pxa-bi \ +kernel-module-usbdcore kernel-module-usbdmonitor \ +hostap-utils prism3-firmware prism3-support" + diff --git a/openembedded/conf/machine/include/poodle-2.6.conf b/openembedded/conf/machine/include/poodle-2.6.conf new file mode 100644 index 000000000..885bf40b4 --- /dev/null +++ b/openembedded/conf/machine/include/poodle-2.6.conf @@ -0,0 +1,4 @@ +PREFERRED_PROVIDER_virtual/kernel = "linux-openzaurus" + +BOOTSTRAP_EXTRA_RDEPENDS = "kernel udev sysfsutils hostap-modules-cs orinoco-modules-cs udev-utils" + diff --git a/openembedded/conf/machine/include/thinclient-common.conf b/openembedded/conf/machine/include/thinclient-common.conf new file mode 100644 index 000000000..4a96b4252 --- /dev/null +++ b/openembedded/conf/machine/include/thinclient-common.conf @@ -0,0 +1,19 @@ +THINCLIENT_MODULES = "ipv6 \ +mip6-mn \ +tun \ +loop \ +vfat \ +sunrpc nfs \ +rfcomm bnep l2cap sco \ +af_packet \ +ppp-async ppp-deflate ppp-mppe \ +ip-gre ip-tables ipip \ +irda irlan irnet irport irtty \ +input uinput \ +" + +# Configuration bits for "generic thinclient" +BOOTSTRAP_EXTRA_RDEPENDS += "apm" +BOOTSTRAP_EXTRA_RRECOMMENDS += "ppp bluez-utils wireless-tools ${@linux_module_packages('${THINCLIENT_MODULES}', d)}" + +INHERIT += "linux_modules" diff --git a/openembedded/conf/machine/include/tosa-2.4.conf b/openembedded/conf/machine/include/tosa-2.4.conf new file mode 100644 index 000000000..88df07cdd --- /dev/null +++ b/openembedded/conf/machine/include/tosa-2.4.conf @@ -0,0 +1,20 @@ +PREFERRED_PROVIDER_xserver = "xserver-kdrive" +PREFERRED_PROVIDER_virtual/kernel = "openzaurus-pxa" + +# Later versions are broken on kernel 2.4 +PREFERRED_VERSION_orinoco-modules = "0.13e" + +BOOTSTRAP_EXTRA_RDEPENDS += "wlan-ng-modules wlan-ng-utils console-tools \ + kernel-module-acm \ + kernel-module-evdev kernel-module-net-fd \ + kernel-module-pxa-bi kernel-module-registers \ + kernel-module-storage-fd kernel-module-usb-ohci-tc6393 \ + kernel hostap-modules-cs orinoco-modules-cs \ + sharp-sdmmc-support kernel-module-pxa-bi \ + kernel-module-ip-gre kernel-module-irnet kernel-module-ipip \ + kernel-module-usbcore kernel-module-usbdcore kernel-module-usbdmonitor kernel-module-usb-storage" + +RRECOMMENDS += "kernel-module-usbdserial kernel-module-usbkbd \ + kernel-module-usbmouse kernel-module-hid usbutils \ + kernel-module-evdev" + diff --git a/openembedded/conf/machine/include/tosa-2.6.conf b/openembedded/conf/machine/include/tosa-2.6.conf new file mode 100644 index 000000000..fdd706d09 --- /dev/null +++ b/openembedded/conf/machine/include/tosa-2.6.conf @@ -0,0 +1,14 @@ +include conf/machine/include/zaurus-clamshell-2.6.conf +# SOUND Modules +BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-snd kernel-module-snd-ac97-bus kernel-module-snd-ac97-codec kernel-module-snd-mixer-oss kernel-module-snd-page-alloc kernel-module-snd-pcm kernel-module-snd-pcm-oss kernel-module-snd-pxa2xx-ac97 kernel-module-snd-pxa2xx-pcm kernel-module-snd-timer kernel-module-soundcore" + +module_autoload_snd-pxa2xx-ac97 = "snd-pxa2xx-ac97" +module_autoload_snd-pcm-oss ="snd-pcm-oss" + +# WM97xx Modules +BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-wm97xx-core kernel-module-wm9705 kernel-module-pxa-wm97xx" +module_autoload_wm9705 = "wm9705" +#module_autoload_pxa-wm97xx = "pen_int=0" + +#BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-wm97xx" +#module_autoload_wm97xx = "wm97xx" diff --git a/openembedded/conf/machine/tune-arm920t.conf b/openembedded/conf/machine/include/tune-arm920t.conf index 936b13751..936b13751 100644 --- a/openembedded/conf/machine/tune-arm920t.conf +++ b/openembedded/conf/machine/include/tune-arm920t.conf diff --git a/openembedded/conf/machine/tune-arm926ejs.conf b/openembedded/conf/machine/include/tune-arm926ejs.conf index 5e2f6b7c6..5e2f6b7c6 100644 --- a/openembedded/conf/machine/tune-arm926ejs.conf +++ b/openembedded/conf/machine/include/tune-arm926ejs.conf diff --git a/openembedded/conf/machine/tune-arm9tdmi.conf b/openembedded/conf/machine/include/tune-arm9tdmi.conf index cfc3bad1c..cfc3bad1c 100644 --- a/openembedded/conf/machine/tune-arm9tdmi.conf +++ b/openembedded/conf/machine/include/tune-arm9tdmi.conf diff --git a/openembedded/conf/machine/include/tune-c3.conf b/openembedded/conf/machine/include/tune-c3.conf new file mode 100644 index 000000000..e6a522af1 --- /dev/null +++ b/openembedded/conf/machine/include/tune-c3.conf @@ -0,0 +1,3 @@ +TARGET_CC_ARCH = "-march=c3 -mtune=c3" +PACKAGE_ARCH = "i586" + diff --git a/openembedded/conf/machine/include/tune-ep9312.conf b/openembedded/conf/machine/include/tune-ep9312.conf new file mode 100644 index 000000000..f7a6fb845 --- /dev/null +++ b/openembedded/conf/machine/include/tune-ep9312.conf @@ -0,0 +1,6 @@ +TARGET_CC_ARCH = "-march=ep9312 -mtune=ep9312" +# add "-mfp=maverick" for newer gcc versions > 4.0 + +#set arch to ep9312 for all generated packages +PACKAGE_ARCH = "ep9312" + diff --git a/openembedded/conf/machine/include/tune-ppc603e.conf b/openembedded/conf/machine/include/tune-ppc603e.conf new file mode 100644 index 000000000..7c8714cfc --- /dev/null +++ b/openembedded/conf/machine/include/tune-ppc603e.conf @@ -0,0 +1,2 @@ +TARGET_CC_ARCH = "-mcpu=603e" +PACKAGE_ARCH = "ppc603e" diff --git a/openembedded/conf/machine/include/tune-ppce500.conf b/openembedded/conf/machine/include/tune-ppce500.conf new file mode 100644 index 000000000..11717eba7 --- /dev/null +++ b/openembedded/conf/machine/include/tune-ppce500.conf @@ -0,0 +1,2 @@ +TARGET_CC_ARCH = "-mcpu=8540" +PACKAGE_ARCH = "ppce500" diff --git a/openembedded/conf/machine/include/tune-sh3.conf b/openembedded/conf/machine/include/tune-sh3.conf new file mode 100644 index 000000000..192dd8fd2 --- /dev/null +++ b/openembedded/conf/machine/include/tune-sh3.conf @@ -0,0 +1 @@ +TARGET_CC_ARCH = "-ml -m3" diff --git a/openembedded/conf/machine/include/tune-sh4.conf b/openembedded/conf/machine/include/tune-sh4.conf new file mode 100644 index 000000000..866f7f89d --- /dev/null +++ b/openembedded/conf/machine/include/tune-sh4.conf @@ -0,0 +1 @@ +TARGET_CC_ARCH = "-ml -m4" diff --git a/openembedded/conf/machine/tune-strongarm.conf b/openembedded/conf/machine/include/tune-strongarm.conf index 8654c996e..8654c996e 100644 --- a/openembedded/conf/machine/tune-strongarm.conf +++ b/openembedded/conf/machine/include/tune-strongarm.conf diff --git a/openembedded/conf/machine/include/tune-supersparc.conf b/openembedded/conf/machine/include/tune-supersparc.conf new file mode 100644 index 000000000..1b1ec1207 --- /dev/null +++ b/openembedded/conf/machine/include/tune-supersparc.conf @@ -0,0 +1,2 @@ +TARGET_CC_ARCH = "-mcpu=supersparc" +PACKAGE_ARCH = "supersparc" diff --git a/openembedded/conf/machine/tune-xscale.conf b/openembedded/conf/machine/include/tune-xscale.conf index 0b98f09fc..0b98f09fc 100644 --- a/openembedded/conf/machine/tune-xscale.conf +++ b/openembedded/conf/machine/include/tune-xscale.conf diff --git a/openembedded/conf/machine/zaurus-clamshell-2.4.conf b/openembedded/conf/machine/include/zaurus-clamshell-2.4.conf index d61dc197b..184258c8b 100644 --- a/openembedded/conf/machine/zaurus-clamshell-2.4.conf +++ b/openembedded/conf/machine/include/zaurus-clamshell-2.4.conf @@ -9,10 +9,6 @@ PREFERRED_PROVIDERS_append_borzoi = " virtual/kernel:openzaurus-pxa27x" # Later versions are broken on kernel 2.4 PREFERRED_VERSION_orinoco-modules = "0.13e" -BOOTSTRAP_EXTRA_DEPENDS += "virtual/kernel hostap-modules orinoco-modules sharp-sdmmc-support \ -pcmcia-cs apmd wireless-tools console-tools irda-utils lrzsz hostap-utils prism3-firmware prism3-support \ -wpa-supplicant-nossl ppp ppp-dialin openswan" - BOOTSTRAP_EXTRA_RDEPENDS += "kernel hostap-modules-cs orinoco-modules-cs sharp-sdmmc-support \ pcmcia-cs apmd apm wireless-tools console-tools irda-utils hostap-utils prism3-firmware prism3-support \ wpa-supplicant-nossl ppp ppp-dialin openswan" diff --git a/openembedded/conf/machine/zaurus-clamshell-2.6.conf b/openembedded/conf/machine/include/zaurus-clamshell-2.6.conf index 007750a39..007750a39 100644 --- a/openembedded/conf/machine/zaurus-clamshell-2.6.conf +++ b/openembedded/conf/machine/include/zaurus-clamshell-2.6.conf diff --git a/openembedded/conf/machine/zaurus-clamshell.conf b/openembedded/conf/machine/include/zaurus-clamshell.conf index f55f2d255..ec10cd5e4 100644 --- a/openembedded/conf/machine/zaurus-clamshell.conf +++ b/openembedded/conf/machine/include/zaurus-clamshell.conf @@ -4,22 +4,19 @@ IPKG_ARCHS = "all arm armv4 armv5te c7x0" PREFERRED_PROVIDER_xserver = "xserver-kdrive" EXTRA_IMAGECMD_jffs2 = "--pad --little-endian --eraseblock=0x4000 -n" -EXTRA_IMAGEDEPENDS = "sharp-flash-header-c700" +EXTRA_IMAGEDEPENDS += "sharp-flash-header-c700 zaurus-updater" IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} --faketime \ --output=${T}/${IMAGE_NAME}.rootfs.jffs2 ${EXTRA_IMAGECMD}; \ cat ${STAGING_LIBDIR}/sharp-flash-header/header-c700.bin \ ${T}/${IMAGE_NAME}.rootfs.jffs2 > ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.img" -BOOTSTRAP_EXTRA_DEPENDS += "zaurus-updater" - GUI_MACHINE_CLASS = "bigscreen" -GPE_EXTRA_DEPENDS += "gaim sylpheed chkhinge" GPE_EXTRA_INSTALL += "gaim sylpheed chkhinge" -include conf/machine/handheld-common.conf +include conf/machine/include/handheld-common.conf # Use tune-xscale per default. Machine independent feeds should be built with tune-strongarm. -include conf/machine/tune-xscale.conf +include conf/machine/include/tune-xscale.conf SERIAL_CONSOLE = "115200 ttyS0" diff --git a/openembedded/conf/machine/ipaq-pxa270.conf b/openembedded/conf/machine/ipaq-pxa270.conf index 626b5cf21..0c432ad67 100644 --- a/openembedded/conf/machine/ipaq-pxa270.conf +++ b/openembedded/conf/machine/ipaq-pxa270.conf @@ -9,9 +9,6 @@ PREFERRED_VERSIONS_handhelds-pxa-2.6 = "2.6.12-hh3" PREFERRED_VERSION_orinoco-modules = "0.15rc1" -BOOTSTRAP_EXTRA_DEPENDS = "ipaq-boot-params" -BOOTSTRAP_EXTRA_DEPENDS_append = " handhelds-pxa-2.6 udev module-init-tools" - ROOT_FLASH_SIZE = "80" BOOTSTRAP_EXTRA_RDEPENDS = "kernel ipaq-boot-params ${@linux_module_packages('${PXA270_MODULES}', d)}" @@ -23,15 +20,14 @@ PXA270_MODULES = "g_ether g_file_storage g_serial gadgetfs pxa27x_udc \ SERIAL_CONSOLE = "115200 ttyS0" -include conf/machine/ipaq-common.conf -include conf/machine/handheld-common.conf +include conf/machine/include/ipaq-common.conf +include conf/machine/include/handheld-common.conf GUI_MACHINE_CLASS = "bigscreen" -GPE_EXTRA_DEPENDS += "gaim" GPE_EXTRA_INSTALL += "gaim" # Use tune-xscale per default. Machine independent feeds should be built with tune-strongarm. -include conf/machine/tune-xscale.conf +include conf/machine/include/tune-xscale.conf BOOTSTRAP_EXTRA_RDEPENDS += "${@linux_module_packages('${HX4700_MODULES}', d)}" HX4700_MODULES = "i2c-pxa asic3_mmc hx4700_bt hx4700_leds hx4700_navpt hx4700_pcmcia \ diff --git a/openembedded/conf/machine/jornada7xx.conf b/openembedded/conf/machine/jornada7xx.conf index b3e184046..82eff0b56 100644 --- a/openembedded/conf/machine/jornada7xx.conf +++ b/openembedded/conf/machine/jornada7xx.conf @@ -5,4 +5,4 @@ TARGET_ARCH = "arm" IPKG_ARCHS = "all arm ${MACHINE}" -include conf/machine/tune-strongarm.conf
\ No newline at end of file +include conf/machine/include/tune-strongarm.conf
\ No newline at end of file diff --git a/openembedded/conf/machine/nokia770.conf b/openembedded/conf/machine/nokia770.conf index 637b4311f..d022d8703 100644 --- a/openembedded/conf/machine/nokia770.conf +++ b/openembedded/conf/machine/nokia770.conf @@ -11,11 +11,10 @@ XSERVER = "xserver-kdrive-omap" # 800x480 is big enough for me GUI_MACHINE_CLASS = "bigscreen" -GPE_EXTRA_DEPENDS += "gaim sylpheed gpe-mini-browser tscalib" GPE_EXTRA_INSTALL += "gaim sylpheed gpe-mini-browser tscalib" # Use tune-arm926 per default. Machine independent feeds should be built with tune-strongarm. -include conf/machine/tune-arm926ejs.conf +include conf/machine/include/tune-arm926ejs.conf #size of the root partition (yes, it is 123 MB) @@ -30,11 +29,8 @@ SERIAL_CONSOLE = "115200 ttyS0" #build omap1 till nokia releases the patches PREFERRED_PROVIDER_virtual/kernel = "linux-omap1" -BOOTSTRAP_EXTRA_DEPENDS += "virtual/kernel sysfsutils nokia770-init \ -apmd ppp wireless-tools console-tools openswan wpa-supplicant-nossl lrzsz ppp-dialin" - BOOTSTRAP_EXTRA_RDEPENDS += "sysfsutils nokia770-init \ -apm ppp wireless-tools console-tools" +pcmcia-cs apm ppp wireless-tools console-tools" # NFS Modules #BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-nfs kernel-module-lockd kernel-module-sunrpc" @@ -56,5 +52,5 @@ apm ppp wireless-tools console-tools" ROOTFS_POSTPROCESS_COMMAND += " remove_init_link; " -include conf/machine/handheld-common.conf +include conf/machine/include/handheld-common.conf diff --git a/openembedded/conf/machine/spitz.conf b/openembedded/conf/machine/spitz.conf index 9a53e8f1a..e1cb468d8 100644 --- a/openembedded/conf/machine/spitz.conf +++ b/openembedded/conf/machine/spitz.conf @@ -2,19 +2,19 @@ #@NAME: Sharp Zaurus SL-C3000 #@DESCRIPTION: Machine configuration for the Sharp Zaurus SL-C3000 device -KERNEL_VERSION ?= "2.4" +KERNEL_VERSION ?= "2.6" -include conf/machine/zaurus-clamshell.conf -include conf/machine/zaurus-clamshell-${KERNEL_VERSION}.conf +include conf/machine/include/zaurus-clamshell.conf +include conf/machine/include/zaurus-clamshell-${KERNEL_VERSION}.conf -PIVOTBOOT_EXTRA_DEPENDS += "pivotinit pcmcia-cs" PIVOTBOOT_EXTRA_RDEPENDS += "pivotinit pcmcia-cs" PIVOTBOOT_EXTRA_RRECOMMENDS += "" # Useful things for the built-in Harddisk -BOOTSTRAP_EXTRA_DEPENDS += "hdparm e2fsprogs" -BOOTSTRAP_EXTRA_RDEPENDS += "hdparm e2fsprogs" +BOOTSTRAP_EXTRA_RDEPENDS += "hdparm e2fsprogs e2fsprogs-e2fsck e2fsprogs-mke2fs" IMAGE_FSTYPES = "jffs2 tar.gz" ROOT_FLASH_SIZE = "100" +# actually that should really read ROOTFS_SIZE = "100", because with modern kernels, +# we boot from the built-in harddisk in C3000. ROOT_FLASH_SIZE is really 5 MegaByte |