mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-07-21 18:24:49 +00:00
tools: add test script to build various configurations
Script to schedule out-of-tree builds
This commit is contained in:
parent
33e8da438e
commit
d38e5c3b38
59
tools/test-build.sh
Executable file
59
tools/test-build.sh
Executable file
|
@ -0,0 +1,59 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
die() {
|
||||
echo "$@"
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [[ "x$(LANG=C git clean -ndx)" != x ]]; then
|
||||
die "The working directory is not clean. Refuse to run. Try \`git clean -dx -n\`"
|
||||
fi
|
||||
if [[ "x$(git status --porcelain)" != x ]]; then
|
||||
die "The working directory has local changes. Refuse to run. Try \`git reset --hard\`"
|
||||
fi
|
||||
|
||||
build_out_of_tree() {
|
||||
local TARGET="$1"
|
||||
local C="$2"
|
||||
local M="$3"
|
||||
(
|
||||
git clean -fdx || return 1
|
||||
NOCONFIGURE=x ./autogen.sh || return 1
|
||||
mkdir -p x/y || return 1
|
||||
cd x/y || return 1
|
||||
../../configure $C $NMTST_CONFIGURE || return 1
|
||||
make $TARGET $M $NMTST_MAKE || return 1
|
||||
)
|
||||
}
|
||||
|
||||
TARGETS=("$@")
|
||||
if [ "${#TARGETS}" -lt 1 ]; then
|
||||
TARGETS=(
|
||||
src/NetworkManager
|
||||
src/nm-iface-helper
|
||||
src/dhcp/nm-dhcp-helper
|
||||
dispatcher/nm-dispatcher
|
||||
clients/nm-online
|
||||
clients/cli/nmcli
|
||||
clients/tui/nmtui
|
||||
src/platform/tests/monitor
|
||||
src/ndisc/tests/test-ndisc-linux
|
||||
libnm-util/tests/test-libnm-linking
|
||||
libnm-glib/libnm-glib-test
|
||||
$(git grep -h '\.l\?a\>' Makefile.am | sed 's/[a-zA-Z.0-9_-/]\+/\n\0\n/g' | sort -u | grep '\.l\?a$')
|
||||
)
|
||||
fi
|
||||
|
||||
set -x
|
||||
|
||||
cd "$(dirname "$(readlink -f "$0")")/.."
|
||||
|
||||
IDX=($(seq 0 $((${#TARGETS[@]} - 1))))
|
||||
IDX=($(printf '%s\n' "${IDX[@]}" | sort -R))
|
||||
for idx in "${IDX[@]}"; do
|
||||
TARGET="${TARGETS[$idx]}"
|
||||
echo "### $idx: TARGET=$TARGET"
|
||||
build_out_of_tree "$TARGET" "--enable-gtk-doc" "-j 5"
|
||||
done
|
Loading…
Reference in a new issue