diff options
Diffstat (limited to 'templates/base')
-rw-r--r-- | templates/base/00_local.conf.agl.inc | 2 | ||||
-rw-r--r-- | templates/base/01_setup_pkg_revision.sh | 68 | ||||
-rw-r--r-- | templates/base/99_local.conf.inc | 33 | ||||
-rw-r--r-- | templates/base/bblayers.conf.sample | 57 | ||||
-rw-r--r-- | templates/base/conf-notes.txt | 17 | ||||
-rw-r--r-- | templates/base/local.conf.sample | 237 |
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" |