]>
git.ipfire.org Git - thirdparty/ccache.git/blob - misc/build-in-docker
3 # This script runs ci/build in a Docker container.
5 if [ $# -eq 0 ] ||
[ ${1:-} = -h ] ||
[ ${1:-} = --help ]; then
7 Usage: build-in-docker NAME [ARGUMENTS]
9 NAME: Subdirectory name in the dockerfiles directory.
10 ARGUMENTS: Arguments that will be passed to ci/build.
17 if [ -n "${VERBOSE:-}" ]; then
24 tag
="ccache-build:$name"
25 command="${COMMAND:-/source/ci/build}"
26 interactive
="${INTERACTIVE:+--interactive --tty}"
28 # Build (if not exists):
29 docker build
-t "$tag" "dockerfiles/$name"
31 # Cache compilation across docker sessions
32 mkdir
-p build-in-docker
33 mkdir
-p build-in-docker
/docker-ccache
37 --volume "$PWD:/source" \
38 --volume "$PWD/build-in-docker/docker-ccache:/ccache" \
39 --tmpfs /builddir
:rw
,exec \
41 --env ASAN_OPTIONS
="${ASAN_OPTIONS:-}" \
42 --env EXTRA_CMAKE_BUILD_FLAGS
="${EXTRA_CMAKE_BUILD_FLAGS:-}" \
44 --env CCACHE_DIR
=/ccache \
45 --env CCACHE_LOC
="/source" \
46 --env CFLAGS
="${CFLAGS:-}" \
47 --env CMAKE_PARAMS
="${CMAKE_PARAMS:-}" \
48 --env CXX
="${CXX:-}" \
49 --env CXXFLAGS
="${CXXFLAGS:-}" \
50 --env LDFLAGS
="${LDFLAGS:-}" \
51 --env NO_TEST
="${NO_TEST:-}" \
52 --env SCAN_BUILD
="${SCAN_BUILD:-}" \
53 --env SPECIAL
="${SPECIAL:-}" \
54 --env VERBOSE
="${VERBOSE:-}" \