summaryrefslogtreecommitdiffstats
path: root/templates/base
diff options
context:
space:
mode:
Diffstat (limited to 'templates/base')
-rw-r--r--templates/base/00_local.conf.agl.inc2
-rw-r--r--templates/base/01_setup_pkg_revision.sh68
-rw-r--r--templates/base/99_local.conf.inc33
-rw-r--r--templates/base/bblayers.conf.sample57
-rw-r--r--templates/base/conf-notes.txt17
-rw-r--r--templates/base/local.conf.sample237
6 files changed, 102 insertions, 312 deletions
diff --git a/templates/base/00_local.conf.agl.inc b/templates/base/00_local.conf.agl.inc
index 1cfd90557..d55cbef4b 100644
--- a/templates/base/00_local.conf.agl.inc
+++ b/templates/base/00_local.conf.agl.inc
@@ -4,5 +4,5 @@
# Set DISTRO for AGL
DISTRO = "poky-agl"
-#see meta-agl/meta-agl/conf/include/base-agl.inc
+#see meta-agl/meta-agl-profile-core/conf/include/base-agl.inc
require conf/include/base-agl.inc
diff --git a/templates/base/01_setup_pkg_revision.sh b/templates/base/01_setup_pkg_revision.sh
new file mode 100644
index 000000000..a9e4ceb8c
--- /dev/null
+++ b/templates/base/01_setup_pkg_revision.sh
@@ -0,0 +1,68 @@
+# use a function to be neutral with other fragments
+function 01_setup_pkg_revision() {
+ # BASH_SOURCE can't be used as this fragment is concatenated in a larger script
+ local THIS=meta-agl/templates/base/01_setup_pkg_revision.sh
+
+ # RPMREVISION and LOCALCONF must be set previously in the setup script
+ [[ -z "$RPMREVISION" || -z "$LOCALCONF" ]] && return 0
+
+ echo "INFO: using RPM revision schema $RPMREVISION"
+
+ cat <<EOF >> $LOCALCONF
+
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+# fragment {
+# generated by $THIS "$RPMREVISION"
+#
+
+EOF
+
+ case "$RPMREVISION" in
+ prservice*)
+ [[ $RPMREVISION =~ ^prservice(:([^ \t\n]+))?$ ]] && {
+ echo "PRSERV_HOST ?= \"${BASH_REMATCH[2]:-localhost:0}\"" >> $LOCALCONF
+ } || {
+ echo "ERROR ($THIS): invalid address specified for PR Service"
+ return 1
+ }
+ ;;
+ timestamp)
+ AGL_PR=$(date --utc '+%Y%m%d.%H%M%S')
+ cat <<'EOF' >> $LOCALCONF
+# to re-generate AGL_PR the same way as aglsetup does, run:
+# echo "AGL_PR ?= \"$(date --utc '+%Y%m%d.%H%M%S')\""
+EOF
+ echo "AGL_PR ?= \"${AGL_PR}\"" >> $LOCALCONF;
+ cat <<'EOF' >> $LOCALCONF
+PKGR = "${PR}${EXTENDPRAUTO}.${AGL_PR}"
+PKGV = "${@ '${PV}'.replace('AUTOINC','${AGL_PR}')}"
+BB_BASEHASH_IGNORE_VARS:append = " PKGR PKGV"
+EOF
+ ;;
+ value:*)
+ echo "AGL_PR ?= \"${RPMREVISION#value:}\"" >> $LOCALCONF;
+ cat <<'EOF' >> $LOCALCONF
+PKGR = "${PR}${EXTENDPRAUTO}.${AGL_PR}"
+PKGV = "${@ '${PV}'.replace('AUTOINC','${AGL_PR}')}"
+BB_BASEHASH_IGNORE_VARS:append = " PKGR PKGV"
+EOF
+ ;;
+ none)
+ # do nothing
+ ;;
+ *)
+ echo "ERROR ($THIS): unknown package revision method '$REVISION'"
+ return 1
+ ;;
+ esac
+
+ cat <<'EOF' >> $LOCALCONF
+
+#
+# }
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+EOF
+
+}
+
+01_setup_pkg_revision
diff --git a/templates/base/99_local.conf.inc b/templates/base/99_local.conf.inc
new file mode 100644
index 000000000..be5dd9321
--- /dev/null
+++ b/templates/base/99_local.conf.inc
@@ -0,0 +1,33 @@
+########################
+# AGL DISTRO VARIABLES #
+########################
+
+# ARM 32bit 'medium' compiler (armv7thf instead of armv7ve)
+# (only use for CPUs <= cortex-a9 / w/o virt extension - e.g. cortex-a8)
+# AGL_FEATURES:append = " agl-medium-arm-compiler"
+
+
+######################
+# AGL USER VARIABLES #
+######################
+
+# Add additional IMAGE_FSTYPES here on-top of the default ext4.xz and tar.xz
+#AGL_EXTRA_IMAGE_FSTYPES = ""
+
+# Additional free disk space created in the image in Kbytes.
+#IMAGE_ROOTFS_EXTRA_SPACE="524288"
+
+# meta-agl/meta-agl-profile-graphical/recipes-graphics/wayland/weston-init.bbappend
+# AGL's compositor is started instead of weston like so
+# AGL_DEFAULT_WESTONSTART ?= "/usr/bin/agl-compositor --config ${sysconfdir}/xdg/weston/weston.ini"
+# you can redefine it using this variable to go back to weston,
+# but be careful that this needs further changes to work !
+# Especially the AGL demo apps will not work as-is.
+#AGL_DEFAULT_WESTONSTART = "/usr/bin/weston"
+
+# meta-agl-profile-graphical-qt5/recipes-qt/qt5/qtwayland_%.bbappend
+# This defines the QT integration. We default to xdg-shell
+# AGL_DEFAULT_WM_SHELL ?= "xdg-shell"
+# you can redefine it using this variable to e.g. use ivi-shell
+# but be careful that this needs further changes to work !
+#AGL_DEFAULT_WM_SHELL = ""
diff --git a/templates/base/bblayers.conf.sample b/templates/base/bblayers.conf.sample
deleted file mode 100644
index 478523b0d..000000000
--- a/templates/base/bblayers.conf.sample
+++ /dev/null
@@ -1,57 +0,0 @@
-# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
-# changes incompatibly
-LCONF_VERSION = "6"
-
-BBPATH = "${TOPDIR}"
-BBFILES ?= ""
-
-# Convenience variables usable in various configuration fragments
-#----------------------------------
-BCONFDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True)))}"
-METADIR := "${@os.path.abspath('##OEROOT##/..')}"
-
-# These are the core OE + YP Layers
-#----------------------------------
-YOCTO_LAYERS = " \
- ${METADIR}/poky/meta \
- ${METADIR}/poky/meta-poky \
- "
-# this is added for the boards where necessary, not globally
-# ${METADIR}/poky/meta-yocto-bsp \
-#
-# These are the AGL CORE Layers that make up the basis
-# - they create a minimal bootable filesystem
-# with some automotive tools/libraries
-#-----------------------------------------------------
-AGL_CORE_LAYERS = " \
- ${METADIR}/meta-agl/meta-ivi-common \
- ${METADIR}/meta-agl/meta-agl \
- ${METADIR}/meta-agl/meta-agl-distro \
- ${METADIR}/meta-agl/meta-agl-bsp \
- "
-
-# These are the direct dependencies of the AGL CORE Layers
-#---------------------------------------------------------
-AGL_CORE_DEPENDENCY_LAYERS = " \
- ${METADIR}/meta-openembedded/meta-oe \
- ${METADIR}/meta-openembedded/meta-multimedia \
- ${METADIR}/meta-openembedded/meta-efl \
- ${METADIR}/meta-openembedded/meta-networking \
- ${METADIR}/meta-openembedded/meta-python \
- "
-
-####################
-# Combine the layers
-BBLAYERS ?= " \
- ${AGL_CORE_DEPENDENCY_LAYERS} \
- ${AGL_CORE_LAYERS} \
- ${YOCTO_LAYERS} \
- "
-
-BBLAYERS_NON_REMOVABLE ?= " \
- ${METADIR}/poky/meta \
- ${METADIR}/poky/meta-poky \
- ${METADIR}//meta-agl/meta-agl \
- "
-
-
diff --git a/templates/base/conf-notes.txt b/templates/base/conf-notes.txt
deleted file mode 100644
index 1279e2979..000000000
--- a/templates/base/conf-notes.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-Common targets are:
- - meta-agl: (core system)
- agl-image-minimal
- agl-image-minimal-qa
-
- agl-image-ivi
- agl-image-ivi-qa
- agl-image-ivi-crosssdk
-
- agl-image-weston
-
- - meta-agl-demo: (demo with UI)
- agl-demo-platform (* default demo target)
- agl-demo-platform-qa
- agl-demo-platform-crosssdk
-
- agl-demo-platform-html5
diff --git a/templates/base/local.conf.sample b/templates/base/local.conf.sample
deleted file mode 100644
index 365b6eb20..000000000
--- a/templates/base/local.conf.sample
+++ /dev/null
@@ -1,237 +0,0 @@
-#
-# This file is your local configuration file and is where all local user settings
-# are placed. The comments in this file give some guide to the options a new user
-# to the system might want to change but pretty much any configuration option can
-# be set in this file. More adventurous users can look at local.conf.extended
-# which contains other examples of configuration which can be placed in this file
-# but new users likely won't need any of them initially.
-#
-# Lines starting with the '#' character are commented out and in some cases the
-# default values are provided as comments to show people example syntax. Enabling
-# the option is a question of removing the # character and making any change to the
-# variable as required.
-
-#
-# Machine Selection
-#
-# You need to select a specific machine to target the build with. There are a selection
-# of emulated machines available which can boot and run in the QEMU emulator:
-#
-#MACHINE ?= "qemuarm"
-#MACHINE ?= "qemuarm64"
-#MACHINE ?= "qemumips"
-#MACHINE ?= "qemumips64"
-#MACHINE ?= "qemuppc"
-#MACHINE ?= "qemux86"
-#MACHINE ?= "qemux86-64"
-#
-# There are also the following hardware board target machines included for
-# demonstration purposes:
-#
-#MACHINE ?= "beaglebone"
-#MACHINE ?= "genericx86"
-#MACHINE ?= "genericx86-64"
-#MACHINE ?= "mpc8315e-rdb"
-#MACHINE ?= "edgerouter"
-#
-# This sets the default machine to be qemux86 if no other machine is selected:
-MACHINE ??= "qemux86"
-
-#
-# Where to place downloads
-#
-# During a first build the system will download many different source code tarballs
-# from various upstream projects. This can take a while, particularly if your network
-# connection is slow. These are all stored in DL_DIR. When wiping and rebuilding you
-# can preserve this directory to speed up this part of subsequent builds. This directory
-# is safe to share between multiple builds on the same machine too.
-#
-# The default is a downloads directory under TOPDIR which is the build directory.
-#
-#DL_DIR ?= "${TOPDIR}/downloads"
-
-#
-# Where to place shared-state files
-#
-# BitBake has the capability to accelerate builds based on previously built output.
-# This is done using "shared state" files which can be thought of as cache objects
-# and this option determines where those files are placed.
-#
-# You can wipe out TMPDIR leaving this directory intact and the build would regenerate
-# from these files if no changes were made to the configuration. If changes were made
-# to the configuration, only shared state files where the state was still valid would
-# be used (done using checksums).
-#
-# The default is a sstate-cache directory under TOPDIR.
-#
-#SSTATE_DIR ?= "${TOPDIR}/sstate-cache"
-
-#
-# Where to place the build output
-#
-# This option specifies where the bulk of the building work should be done and
-# where BitBake should place its temporary files and output. Keep in mind that
-# this includes the extraction and compilation of many applications and the toolchain
-# which can use Gigabytes of hard disk space.
-#
-# The default is a tmp directory under TOPDIR.
-#
-#TMPDIR = "${TOPDIR}/tmp"
-
-#
-# Default policy config
-#
-# The distribution setting controls which policy settings are used as defaults.
-# The default value is fine for general Yocto project use, at least initially.
-# Ultimately when creating custom policy, people will likely end up subclassing
-# these defaults.
-#
-DISTRO ?= "poky"
-# As an example of a subclass there is a "bleeding" edge policy configuration
-# where many versions are set to the absolute latest code from the upstream
-# source control systems. This is just mentioned here as an example, its not
-# useful to most new users.
-# DISTRO ?= "poky-bleeding"
-
-#
-# Package Management configuration
-#
-# This variable lists which packaging formats to enable. Multiple package backends
-# can be enabled at once and the first item listed in the variable will be used
-# to generate the root filesystems.
-# Options are:
-# - 'package_deb' for debian style deb files
-# - 'package_ipk' for ipk files are used by opkg (a debian style embedded package manager)
-# - 'package_rpm' for rpm style packages
-# E.g.: PACKAGE_CLASSES ?= "package_rpm package_deb package_ipk"
-# We default to rpm:
-PACKAGE_CLASSES ?= "package_rpm"
-
-#
-# SDK target architecture
-#
-# This variable specifies the architecture to build SDK items for and means
-# you can build the SDK packages for architectures other than the machine you are
-# running the build on (i.e. building i686 packages on an x86_64 host).
-# Supported values are i686 and x86_64
-#SDKMACHINE ?= "i686"
-
-#
-# Extra image configuration defaults
-#
-# The EXTRA_IMAGE_FEATURES variable allows extra packages to be added to the generated
-# images. Some of these options are added to certain image types automatically. The
-# variable can contain the following options:
-# "dbg-pkgs" - add -dbg packages for all installed packages
-# (adds symbol information for debugging/profiling)
-# "dev-pkgs" - add -dev packages for all installed packages
-# (useful if you want to develop against libs in the image)
-# "ptest-pkgs" - add -ptest packages for all ptest-enabled packages
-# (useful if you want to run the package test suites)
-# "tools-sdk" - add development tools (gcc, make, pkgconfig etc.)
-# "tools-debug" - add debugging tools (gdb, strace)
-# "eclipse-debug" - add Eclipse remote debugging support
-# "tools-profile" - add profiling tools (oprofile, lttng, valgrind)
-# "tools-testapps" - add useful testing tools (ts_print, aplay, arecord etc.)
-# "debug-tweaks" - make an image suitable for development
-# e.g. ssh root access has a blank password
-# There are other application targets that can be used here too, see
-# meta/classes/image.bbclass and meta/classes/core-image.bbclass for more details.
-# We default to enabling the debugging tweaks.
-EXTRA_IMAGE_FEATURES ?= "debug-tweaks"
-
-#
-# Additional image features
-#
-# The following is a list of additional classes to use when building images which
-# enable extra features. Some available options which can be included in this variable
-# are:
-# - 'buildstats' collect build statistics
-# - 'image-mklibs' to reduce shared library files size for an image
-# - 'image-prelink' in order to prelink the filesystem image
-# - 'image-swab' to perform host system intrusion detection
-# NOTE: if listing mklibs & prelink both, then make sure mklibs is before prelink
-# NOTE: mklibs also needs to be explicitly enabled for a given image, see local.conf.extended
-USER_CLASSES ?= "buildstats image-mklibs image-prelink"
-
-#
-# Runtime testing of images
-#
-# The build system can test booting virtual machine images under qemu (an emulator)
-# after any root filesystems are created and run tests against those images. To
-# enable this uncomment this line. See classes/testimage(-auto).bbclass for
-# further details.
-#TEST_IMAGE = "1"
-#
-# Interactive shell configuration
-#
-# Under certain circumstances the system may need input from you and to do this it
-# can launch an interactive shell. It needs to do this since the build is
-# multithreaded and needs to be able to handle the case where more than one parallel
-# process may require the user's attention. The default is iterate over the available
-# terminal types to find one that works.
-#
-# Examples of the occasions this may happen are when resolving patches which cannot
-# be applied, to use the devshell or the kernel menuconfig
-#
-# Supported values are auto, gnome, xfce, rxvt, screen, konsole (KDE 3.x only), none
-# Note: currently, Konsole support only works for KDE 3.x due to the way
-# newer Konsole versions behave
-#OE_TERMINAL = "auto"
-# By default disable interactive patch resolution (tasks will just fail instead):
-PATCHRESOLVE = "noop"
-
-#
-# Disk Space Monitoring during the build
-#
-# Monitor the disk space during the build. If there is less that 1GB of space or less
-# than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully
-# shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort
-# of the build. The reason for this is that running completely out of space can corrupt
-# files and damages the build in ways which may not be easily recoverable.
-# It's necesary to monitor /tmp, if there is no space left the build will fail
-# with very exotic errors.
-BB_DISKMON_DIRS = "\
- STOPTASKS,${TMPDIR},1G,100K \
- STOPTASKS,${DL_DIR},1G,100K \
- STOPTASKS,${SSTATE_DIR},1G,100K \
- STOPTASKS,/tmp,100M,100K \
- ABORT,${TMPDIR},100M,1K \
- ABORT,${DL_DIR},100M,1K \
- ABORT,${SSTATE_DIR},100M,1K \
- ABORT,/tmp,10M,1K"
-
-#
-# Shared-state files from other locations
-#
-# As mentioned above, shared state files are prebuilt cache data objects which can
-# used to accelerate build time. This variable can be used to configure the system
-# to search other mirror locations for these objects before it builds the data itself.
-#
-# This can be a filesystem directory, or a remote url such as http or ftp. These
-# would contain the sstate-cache results from previous builds (possibly from other
-# machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the
-# cache locations to check for the shared objects.
-# NOTE: if the mirror uses the same structure as SSTATE_DIR, you need to add PATH
-# at the end as shown in the examples below. This will be substituted with the
-# correct path within the directory structure.
-#SSTATE_MIRRORS ?= "\
-#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \
-#file://.* file:///some/local/dir/sstate/PATH"
-
-
-#
-# Qemu configuration
-#
-# By default qemu will build with a builtin VNC server where graphical output can be
-# seen. The two lines below enable the SDL backend too. By default libsdl-native will
-# be built, if you want to use your host's libSDL instead of the minimal libsdl built
-# by libsdl-native then uncomment the ASSUME_PROVIDED line below.
-PACKAGECONFIG_append_pn-qemu-native = " sdl"
-PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
-#ASSUME_PROVIDED += "libsdl-native"
-
-# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to
-# track the version of this file when it was generated. This can safely be ignored if
-# this doesn't mean anything to you.
-CONF_VERSION = "1"