blob: aca021618672fdbe59c23b96c79888076d5217c4 [file] [log] [blame]
# Default BuildStream project configuration.
# Variable Configuration
#
variables:
# Maximum number of parallel build processes within a given
# build, support for this is conditional on the element type
# and the build system used (any element using 'make' can
# implement this).
#
# Note: this value defaults to the number of cores available
max-jobs: 4
# Path configuration, to be used in build instructions.
#
prefix: "/usr"
exec_prefix: "%{prefix}"
bindir: "%{exec_prefix}/bin"
sbindir: "%{exec_prefix}/sbin"
libexecdir: "%{exec_prefix}/libexec"
datadir: "%{prefix}/share"
sysconfdir: "/etc"
sharedstatedir: "%{prefix}/com"
localstatedir: "/var"
lib: "lib"
libdir: "%{prefix}/%{lib}"
debugdir: "%{libdir}/debug"
includedir: "%{prefix}/include"
docdir: "%{datadir}/doc"
infodir: "%{datadir}/info"
mandir: "%{datadir}/man"
# Indicates the default build directory where input is
# normally staged
build-root: /buildstream/build
# Indicates the build installation directory in the sandbox
install-root: /buildstream/install
# Define some patterns which might be used in multiple
# elements
strip-binaries: |
find "%{install-root}" -type f \
'(' -perm -111 -o -name '*.so*' \
-o -name '*.cmxs' -o -name '*.node' ')' \
-exec sh -ec \
'read -n4 hdr <"$1" # check for elf header
if [ "$hdr" != "$(printf \\x7fELF)" ]; then
exit 0
fi
debugfile="%{install-root}%{debugdir}/$(basename "$1")"
mkdir -p "$(dirname "$debugfile")"
objcopy --only-keep-debug "$1" "$debugfile"
chmod 644 "$debugfile"
strip --remove-section=.comment --remove-section=.note --strip-unneeded "$1"
objcopy --add-gnu-debuglink "$debugfile" "$1"' - {} ';'
fix-pyc-timestamps: |
find "%{install-root}" -name '*.pyc' \
-exec dd if=/dev/zero of={} bs=1 count=4 seek=4 conv=notrunc ';'
# Base sandbox environment, can be overridden by plugins
environment:
PATH: /usr/bin:/bin:/usr/sbin:/sbin
SHELL: /bin/sh
TERM: dumb
USER: tomjon
USERNAME: tomjon
LOGNAME: tomjon
LC_ALL: C
HOME: /tmp
TZ: UTC
# List of environment variables which should not be taken into
# account when calculating a cache key for a given element.
#
environment-nocache: []
# Defaults for the 'split-rules' public data found on elements
# in the 'bst' domain.
#
split-rules:
# The runtime domain includes whatever is needed for the
# built element to run, this includes stripped executables
# and shared libraries by default.
runtime:
- |
%{bindir}/*
- |
%{sbindir}/*
- |
%{libexecdir}/*
- |
%{libdir}/lib*.so*
# The devel domain includes additional things which
# you may need for development.
#
# By default this includes header files, static libraries
# and other metadata such as pkgconfig files, m4 macros and
# libtool archives.
devel:
- |
%{includedir}
- |
%{includedir}/**
- |
%{libdir}/lib*.a
- |
%{libdir}/lib*.la
- |
%{libdir}/pkgconfig/*.pc
- |
%{datadir}/pkgconfig/*.pc
- |
%{datadir}/aclocal/*.m4
# The debug domain includes debugging information stripped
# away from libraries and executables
debug:
- |
%{debugdir}
- |
%{debugdir}/**
# The doc domain includes documentation
doc:
- |
%{docdir}
- |
%{docdir}/**
- |
%{infodir}
- |
%{infodir}/**
- |
%{mandir}
- |
%{mandir}/**
# The locale domain includes translations etc
locale:
- |
%{datadir}/locale
- |
%{datadir}/locale/**
- |
%{datadir}/i18n
- |
%{datadir}/i18n/**
- |
%{datadir}/zoneinfo
- |
%{datadir}/zoneinfo/**