xref: /openbmc/openbmc/meta-ampere/meta-jade/conf/templates/default/local.conf.sample (revision 0598b46d8929f8ce5404248191be44583b7c2e78)
1bb789d56SPatrick Williams#
2bb789d56SPatrick Williams# This file is your local configuration file and is where all local user settings
3bb789d56SPatrick Williams# are placed. The comments in this file give some guide to the options a new user
4bb789d56SPatrick Williams# to the system might want to change but pretty much any configuration option can
5bb789d56SPatrick Williams# be set in this file.
6bb789d56SPatrick Williams#
7bb789d56SPatrick Williams# Lines starting with the '#' character are commented out and in some cases the
8bb789d56SPatrick Williams# default values are provided as comments to show people example syntax. Enabling
9bb789d56SPatrick Williams# the option is a question of removing the # character and making any change to the
10bb789d56SPatrick Williams# variable as required.
11bb789d56SPatrick Williams
12bb789d56SPatrick Williams#
13bb789d56SPatrick Williams# Machine Selection
14bb789d56SPatrick Williams#
15bb789d56SPatrick WilliamsMACHINE ??= "mtjade"
16bb789d56SPatrick Williams
17bb789d56SPatrick Williams#
18bb789d56SPatrick Williams# Where to place downloads
19bb789d56SPatrick Williams#
20bb789d56SPatrick Williams# During a first build the system will download many different source code tarballs
21bb789d56SPatrick Williams# from various upstream projects. This can take a while, particularly if your network
22bb789d56SPatrick Williams# connection is slow. These are all stored in DL_DIR. When wiping and rebuilding you
23bb789d56SPatrick Williams# can preserve this directory to speed up this part of subsequent builds. This directory
24bb789d56SPatrick Williams# is safe to share between multiple builds on the same machine too.
25bb789d56SPatrick Williams#
26bb789d56SPatrick Williams# The default is a downloads directory under TOPDIR which is the build directory.
27bb789d56SPatrick Williams#
28bb789d56SPatrick Williams#DL_DIR ?= "${TOPDIR}/downloads"
29bb789d56SPatrick Williams
30bb789d56SPatrick Williams#
31bb789d56SPatrick Williams# Where to place shared-state files
32bb789d56SPatrick Williams#
33bb789d56SPatrick Williams# BitBake has the capability to accelerate builds based on previously built output.
34bb789d56SPatrick Williams# This is done using "shared state" files which can be thought of as cache objects
35bb789d56SPatrick Williams# and this option determines where those files are placed.
36bb789d56SPatrick Williams#
37bb789d56SPatrick Williams# You can wipe out TMPDIR leaving this directory intact and the build would regenerate
38bb789d56SPatrick Williams# from these files if no changes were made to the configuration. If changes were made
39bb789d56SPatrick Williams# to the configuration, only shared state files where the state was still valid would
40bb789d56SPatrick Williams# be used (done using checksums).
41bb789d56SPatrick Williams#
42bb789d56SPatrick Williams# The default is a sstate-cache directory under TOPDIR.
43bb789d56SPatrick Williams#
44bb789d56SPatrick Williams#SSTATE_DIR ?= "${TOPDIR}/sstate-cache"
45bb789d56SPatrick Williams
46bb789d56SPatrick Williams#
47bb789d56SPatrick Williams# Where to place the build output
48bb789d56SPatrick Williams#
49bb789d56SPatrick Williams# This option specifies where the bulk of the building work should be done and
50bb789d56SPatrick Williams# where BitBake should place its temporary files and output. Keep in mind that
51bb789d56SPatrick Williams# this includes the extraction and compilation of many applications and the toolchain
52bb789d56SPatrick Williams# which can use Gigabytes of hard disk space.
53bb789d56SPatrick Williams#
54bb789d56SPatrick Williams# The default is a tmp directory under TOPDIR.
55bb789d56SPatrick Williams#
56bb789d56SPatrick Williams#TMPDIR = "${TOPDIR}/tmp"
57bb789d56SPatrick Williams
58bb789d56SPatrick Williams#
59bb789d56SPatrick Williams# Default policy config
60bb789d56SPatrick Williams#
61bb789d56SPatrick Williams# The distribution setting controls which policy settings are used as defaults.
62bb789d56SPatrick Williams# The default value is fine for general Yocto project use, at least initially.
63bb789d56SPatrick Williams# Ultimately when creating custom policy, people will likely end up subclassing
64bb789d56SPatrick Williams# these defaults.
65bb789d56SPatrick Williams#
66bb789d56SPatrick WilliamsDISTRO ?= "openbmc-phosphor"
67bb789d56SPatrick Williams# As an example of a subclass there is a "bleeding" edge policy configuration
68bb789d56SPatrick Williams# where many versions are set to the absolute latest code from the upstream
69bb789d56SPatrick Williams# source control systems. This is just mentioned here as an example, its not
70bb789d56SPatrick Williams# useful to most new users.
71bb789d56SPatrick Williams# DISTRO ?= "poky-bleeding"
72bb789d56SPatrick Williams
73bb789d56SPatrick Williams#
74bb789d56SPatrick Williams# Package Management configuration
75bb789d56SPatrick Williams#
76bb789d56SPatrick Williams# This variable lists which packaging formats to enable. Multiple package backends
77bb789d56SPatrick Williams# can be enabled at once and the first item listed in the variable will be used
78bb789d56SPatrick Williams# to generate the root filesystems.
79bb789d56SPatrick Williams# Options are:
80bb789d56SPatrick Williams#  - 'package_deb' for debian style deb files
81bb789d56SPatrick Williams#  - 'package_ipk' for ipk files are used by opkg (a debian style embedded package manager)
82bb789d56SPatrick Williams#  - 'package_rpm' for rpm style packages
83bb789d56SPatrick Williams# E.g.: PACKAGE_CLASSES ?= "package_rpm package_deb package_ipk"
84bb789d56SPatrick Williams# We default to ipk:
85bb789d56SPatrick WilliamsPACKAGE_CLASSES ?= "package_ipk"
86bb789d56SPatrick Williams
87bb789d56SPatrick Williams#
88bb789d56SPatrick Williams# SDK/ADT target architecture
89bb789d56SPatrick Williams#
90bb789d56SPatrick Williams# This variable specifies the architecture to build SDK/ADT items for and means
91bb789d56SPatrick Williams# you can build the SDK packages for architectures other than the machine you are
92bb789d56SPatrick Williams# running the build on (i.e. building i686 packages on an x86_64 host).
93bb789d56SPatrick Williams# Supported values are i686 and x86_64
94bb789d56SPatrick Williams#SDKMACHINE ?= "i686"
95bb789d56SPatrick Williams
96bb789d56SPatrick WilliamsSANITY_TESTED_DISTROS:append ?= " *"
97bb789d56SPatrick Williams
98bb789d56SPatrick Williams#
99bb789d56SPatrick Williams# Extra image configuration defaults
100bb789d56SPatrick Williams#
101bb789d56SPatrick Williams# The EXTRA_IMAGE_FEATURES variable allows extra packages to be added to the generated
102bb789d56SPatrick Williams# images. Some of these options are added to certain image types automatically. The
103bb789d56SPatrick Williams# variable can contain the following options:
104bb789d56SPatrick Williams#  "dbg-pkgs"       - add -dbg packages for all installed packages
105bb789d56SPatrick Williams#                     (adds symbol information for debugging/profiling)
106bb789d56SPatrick Williams#  "dev-pkgs"       - add -dev packages for all installed packages
107bb789d56SPatrick Williams#                     (useful if you want to develop against libs in the image)
108bb789d56SPatrick Williams#  "ptest-pkgs"     - add -ptest packages for all ptest-enabled packages
109bb789d56SPatrick Williams#                     (useful if you want to run the package test suites)
110bb789d56SPatrick Williams#  "tools-sdk"      - add development tools (gcc, make, pkgconfig etc.)
111bb789d56SPatrick Williams#  "tools-debug"    - add debugging tools (gdb, strace)
112bb789d56SPatrick Williams#  "eclipse-debug"  - add Eclipse remote debugging support
113bb789d56SPatrick Williams#  "tools-profile"  - add profiling tools (oprofile, exmap, lttng, valgrind)
114bb789d56SPatrick Williams#  "tools-testapps" - add useful testing tools (ts_print, aplay, arecord etc.)
115*0598b46dSPatrick Williams#  "allow-root-login"   - make an image suitable for development
116bb789d56SPatrick Williams#                     e.g. ssh root access has a blank password
117bb789d56SPatrick Williams# There are other application targets that can be used here too, see
118bb789d56SPatrick Williams# meta/classes/image.bbclass and meta/classes/core-image.bbclass for more details.
119bb789d56SPatrick Williams# We default to enabling the debugging tweaks.
120*0598b46dSPatrick WilliamsEXTRA_IMAGE_FEATURES ?= "allow-root-login"
121bb789d56SPatrick Williams
122bb789d56SPatrick Williams#
123bb789d56SPatrick Williams# Additional image features
124bb789d56SPatrick Williams#
125bb789d56SPatrick Williams# The following is a list of additional classes to use when building images which
126bb789d56SPatrick Williams# enable extra features. Some available options which can be included in this variable
127bb789d56SPatrick Williams# are:
128bb789d56SPatrick Williams#   - 'buildstats' collect build statistics
129bb789d56SPatrick Williams#   - 'image-swab' to perform host system intrusion detection
130bb789d56SPatrick Williams# NOTE: if listing mklibs & prelink both, then make sure mklibs is before prelink
131bb789d56SPatrick Williams# NOTE: mklibs also needs to be explicitly enabled for a given image, see local.conf.extended
132bb789d56SPatrick WilliamsUSER_CLASSES ?= "buildstats"
133bb789d56SPatrick Williams
134bb789d56SPatrick Williams#
135bb789d56SPatrick Williams# Runtime testing of images
136bb789d56SPatrick Williams#
137bb789d56SPatrick Williams# The build system can test booting virtual machine images under qemu (an emulator)
138bb789d56SPatrick Williams# after any root filesystems are created and run tests against those images. To
139bb789d56SPatrick Williams# enable this uncomment this line. See classes/testimage(-auto).bbclass for
140bb789d56SPatrick Williams# further details.
141bb789d56SPatrick Williams#TEST_IMAGE = "1"
142bb789d56SPatrick Williams#
143bb789d56SPatrick Williams# Interactive shell configuration
144bb789d56SPatrick Williams#
145bb789d56SPatrick Williams# Under certain circumstances the system may need input from you and to do this it
146bb789d56SPatrick Williams# can launch an interactive shell. It needs to do this since the build is
147bb789d56SPatrick Williams# multithreaded and needs to be able to handle the case where more than one parallel
148bb789d56SPatrick Williams# process may require the user's attention. The default is iterate over the available
149bb789d56SPatrick Williams# terminal types to find one that works.
150bb789d56SPatrick Williams#
151bb789d56SPatrick Williams# Examples of the occasions this may happen are when resolving patches which cannot
152bb789d56SPatrick Williams# be applied, to use the devshell or the kernel menuconfig
153bb789d56SPatrick Williams#
154bb789d56SPatrick Williams# Supported values are auto, gnome, xfce, rxvt, screen, konsole (KDE 3.x only), none
155bb789d56SPatrick Williams# Note: currently, Konsole support only works for KDE 3.x due to the way
156bb789d56SPatrick Williams# newer Konsole versions behave
157bb789d56SPatrick Williams#OE_TERMINAL = "auto"
158bb789d56SPatrick Williams# By default disable interactive patch resolution (tasks will just fail instead):
159bb789d56SPatrick WilliamsPATCHRESOLVE = "noop"
160bb789d56SPatrick Williams
161bb789d56SPatrick Williams#
162bb789d56SPatrick Williams# Disk Space Monitoring during the build
163bb789d56SPatrick Williams#
164bb789d56SPatrick Williams# Monitor the disk space during the build. If there is less that 1GB of space or less
165bb789d56SPatrick Williams# than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully
166bb789d56SPatrick Williams# shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort
167bb789d56SPatrick Williams# of the build. The reason for this is that running completely out of space can corrupt
168bb789d56SPatrick Williams# files and damages the build in ways which may not be easily recoverable.
169bb789d56SPatrick Williams# It's necessary to monitor /tmp, if there is no space left the build will fail
170bb789d56SPatrick Williams# with very exotic errors.
171bb789d56SPatrick WilliamsBB_DISKMON_DIRS ??= "\
172bb789d56SPatrick Williams    STOPTASKS,${TMPDIR},1G,100K \
173bb789d56SPatrick Williams    STOPTASKS,${DL_DIR},1G,100K \
174bb789d56SPatrick Williams    STOPTASKS,${SSTATE_DIR},1G,100K \
175bb789d56SPatrick Williams    STOPTASKS,/tmp,100M,100K \
176bb789d56SPatrick Williams    HALT,${TMPDIR},100M,1K \
177bb789d56SPatrick Williams    HALT,${DL_DIR},100M,1K \
178bb789d56SPatrick Williams    HALT,${SSTATE_DIR},100M,1K \
179bb789d56SPatrick Williams    HALT,/tmp,10M,1K"
180bb789d56SPatrick Williams
181bb789d56SPatrick Williams#
182bb789d56SPatrick Williams# Shared-state files from other locations
183bb789d56SPatrick Williams#
184bb789d56SPatrick Williams# As mentioned above, shared state files are prebuilt cache data objects which can
185bb789d56SPatrick Williams# used to accelerate build time. This variable can be used to configure the system
186bb789d56SPatrick Williams# to search other mirror locations for these objects before it builds the data itself.
187bb789d56SPatrick Williams#
188bb789d56SPatrick Williams# This can be a filesystem directory, or a remote url such as http or ftp. These
189bb789d56SPatrick Williams# would contain the sstate-cache results from previous builds (possibly from other
190bb789d56SPatrick Williams# machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the
191bb789d56SPatrick Williams# cache locations to check for the shared objects.
192bb789d56SPatrick Williams# NOTE: if the mirror uses the same structure as SSTATE_DIR, you need to add PATH
193bb789d56SPatrick Williams# at the end as shown in the examples below. This will be substituted with the
194bb789d56SPatrick Williams# correct path within the directory structure.
195bb789d56SPatrick Williams#SSTATE_MIRRORS ?= "\
196bb789d56SPatrick Williams#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \
197bb789d56SPatrick Williams#file://.* file:///some/local/dir/sstate/PATH"
198bb789d56SPatrick Williams
199bb789d56SPatrick Williams
200bb789d56SPatrick Williams#
201bb789d56SPatrick Williams# Qemu configuration
202bb789d56SPatrick Williams#
203bb789d56SPatrick Williams# By default qemu will build with a builtin VNC server where graphical output can be
204bb789d56SPatrick Williams# seen. The two lines below enable the SDL backend too. This assumes there is a
205bb789d56SPatrick Williams# libsdl library available on your build system.
206bb789d56SPatrick Williams#PACKAGECONFIG_append_pn-qemu-native = " sdl"
207bb789d56SPatrick Williams#PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
208bb789d56SPatrick Williams#ASSUME_PROVIDED += "libsdl-native"
209bb789d56SPatrick Williams
210bb789d56SPatrick Williams
211bb789d56SPatrick Williams# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to
212bb789d56SPatrick Williams# track the version of this file when it was generated. This can safely be ignored if
213bb789d56SPatrick Williams# this doesn't mean anything to you.
214bb789d56SPatrick WilliamsCONF_VERSION = "2"
215