bf3fe05dfb
This needs some more testing before it's on by default. If the card is otherwise functioning, these messages may be confusing to the user. If the card is not functioning, the driver can be reloaded with debug to check for this condition. Signed-off-by: Shaun Ruffell <sruffell@digium.com> git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@9205 a0bf4364-ded3-4de4-8d8a-66a801d63aff
102 lines
2.3 KiB
Bash
Executable File
102 lines
2.3 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
GIT_URL=git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
|
|
CONF_FILE=build_tools/git_test.conf
|
|
|
|
usage() {
|
|
me=`basename $0`
|
|
echo "$me: test building DAHDI vs. kernel from git"
|
|
echo "Usage:"
|
|
echo " $me checkout <kerneldir> Pull a kernel version into <kerneldir>"
|
|
echo " $me update Update (pull) the kernel tree."
|
|
echo " $me setver <kernel_ver> Set the kernel version"
|
|
echo " $me versions Print available versions"
|
|
echo " $me version Print current (kernel) version"
|
|
echo " $me version_driver Print the version of DAHDI"
|
|
echo " $me build Test-build"
|
|
echo " $me git <git command> Run <git command>"
|
|
echo ""
|
|
echo " $me versions [pattern] List available versions."
|
|
}
|
|
|
|
# Set a variable in $CONF_FILE
|
|
# The format of CONF_FILE is assumed to be:
|
|
# VAR=value
|
|
# in shell syntax. "value" may be quoted.
|
|
# "value should not contain a '|' character.
|
|
set_var() {
|
|
var="$1"
|
|
val="$2"
|
|
if grep -q "^$var=" $CONF_FILE 2>/dev/null; then
|
|
sed -i -e "s|^$var=.*|$var=\"$val\"|" $CONF_FILE
|
|
else
|
|
echo "$var=\"$val\"" >>$CONF_FILE
|
|
fi
|
|
}
|
|
|
|
if [ -r "$CONF_FILE" ]; then . "$CONF_FILE"; fi
|
|
|
|
if echo "$CONF_FILE" | grep -qv '^/'; then
|
|
# make CONF_FILE an absolute path:
|
|
CONF_FILE="$PWD/$CONF_FILE"
|
|
fi
|
|
|
|
command="$1"
|
|
|
|
case "$command" in
|
|
checkout)
|
|
kernel_dir="$2"
|
|
cd "$kernel_dir"
|
|
git clone $GIT_URL
|
|
set_var kernel_dir "$kernel_dir/linux-2.6"
|
|
;;
|
|
update)
|
|
cd "$kernel_dir"
|
|
git pull
|
|
;;
|
|
git)
|
|
cd "$kernel_dir"
|
|
shift
|
|
git "$@"
|
|
;;
|
|
versions)
|
|
cd "$kernel_dir"
|
|
git tag -l $2 | cut -c2-
|
|
;;
|
|
version)
|
|
cd "$kernel_dir"
|
|
echo "Configured: $kernel_ver"
|
|
echo -n "Actual: "
|
|
git describe | cut -c2-
|
|
;;
|
|
version_driver)
|
|
version_h=include/dahdi/version.h
|
|
make $version_h >/dev/null
|
|
awk -F'"' '/DAHDI_VERSION/{print $2}' $version_h
|
|
;;
|
|
setver)
|
|
kernel_ver="$2"
|
|
tag="v$kernel_ver"
|
|
cd "$kernel_dir"
|
|
git-reset --hard "$tag"
|
|
make distclean
|
|
make defconfig modules_prepare
|
|
set_var kernel_ver "$kernel_ver"
|
|
;;
|
|
test|build)
|
|
# you can pass extra parameters to the make command in
|
|
# two ways:
|
|
# 1. Set the value of MAKE_PARAMS in git_test.conf .
|
|
# 2. Any extra command-line parameter.
|
|
shift
|
|
make KSRC="$kernel_dir" KVERS=$kernel_ver $MAKE_PARAMS "$@"
|
|
;;
|
|
*)
|
|
echo "$0: no such command $command. Aborting."
|
|
usage
|
|
exit 1
|
|
;;
|
|
esac
|