some infrastructure for 'roku lt' subcommand
This commit is contained in:
@@ -27,6 +27,7 @@ __build_legacy()
|
|||||||
${PLATFORM_TYPE:+PLATFORM_TYPE=$PLATFORM_TYPE} \
|
${PLATFORM_TYPE:+PLATFORM_TYPE=$PLATFORM_TYPE} \
|
||||||
ENABLE_ICECC=$ENABLE_ICECC \
|
ENABLE_ICECC=$ENABLE_ICECC \
|
||||||
PAX_DEBUG=$PAX_DEBUG \
|
PAX_DEBUG=$PAX_DEBUG \
|
||||||
|
ROOTFSCOMPONENTS_DBG=gdbserver \
|
||||||
${BUILD_MODE:+BUILD_MODE=$BUILD_MODE} \
|
${BUILD_MODE:+BUILD_MODE=$BUILD_MODE} \
|
||||||
$OPTIONS \
|
$OPTIONS \
|
||||||
-j $JOBS \
|
-j $JOBS \
|
||||||
@@ -42,6 +43,7 @@ __build_os()
|
|||||||
${PLATFORM_TYPE:+PLATFORM_TYPE=$PLATFORM_TYPE} \
|
${PLATFORM_TYPE:+PLATFORM_TYPE=$PLATFORM_TYPE} \
|
||||||
ENABLE_ICECC=$ENABLE_ICECC \
|
ENABLE_ICECC=$ENABLE_ICECC \
|
||||||
PAX_DEBUG=$PAX_DEBUG \
|
PAX_DEBUG=$PAX_DEBUG \
|
||||||
|
ROOTFSCOMPONENTS_DBG=gdbserver \
|
||||||
${BUILD_MODE:+BUILD_MODE=$BUILD_MODE} \
|
${BUILD_MODE:+BUILD_MODE=$BUILD_MODE} \
|
||||||
$OPTIONS \
|
$OPTIONS \
|
||||||
-j $JOBS \
|
-j $JOBS \
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
source _roku_shared.sh
|
_ROKU_SHELL_DIR=$(dirname $(realpath $(readlink -f "${BASH_SOURCE[0]}" )))
|
||||||
|
source $_ROKU_SHELL_DIR/_roku_shared.sh
|
||||||
|
source $_ROKU_SHELL_DIR/_roku_completion.sh
|
||||||
|
|
||||||
roku()
|
roku()
|
||||||
{
|
{
|
||||||
|
|||||||
10
_roku.sh
10
_roku.sh
@@ -1,6 +1,11 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
source _roku_shared.sh
|
if [ -z "$_ROKU_SHELL_DIR" ]; then
|
||||||
|
_ROKU_SHELL_DIR=$(dirname $(realpath $(readlink -f "${BASH_SOURCE[0]}" )))
|
||||||
|
fi
|
||||||
|
source $_ROKU_SHELL_DIR/_roku_shared.sh
|
||||||
|
source $_ROKU_SHELL_DIR/_roku_lt.sh
|
||||||
|
source $_ROKU_SHELL_DIR/_roku_build.sh
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#
|
#
|
||||||
@@ -217,7 +222,8 @@ _roku_wget()
|
|||||||
else
|
else
|
||||||
local USER_PASSWORD="--password=$ROKU_CORP_PASSWORD"
|
local USER_PASSWORD="--password=$ROKU_CORP_PASSWORD"
|
||||||
fi
|
fi
|
||||||
wget --no-check-certificate --user=vkhachatryan $USER_PASSWORD "$@"
|
# wget --no-check-certificate --user=vkhachatryan $USER_PASSWORD "$@"
|
||||||
|
wget --user=vkhachatryan $USER_PASSWORD "$@"
|
||||||
}
|
}
|
||||||
|
|
||||||
# _roku_wget_pass() sets corp password. It is defined in the
|
# _roku_wget_pass() sets corp password. It is defined in the
|
||||||
|
|||||||
295
_roku_build.sh
Normal file
295
_roku_build.sh
Normal file
@@ -0,0 +1,295 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
_roku_build_completion()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
_roku_build()
|
||||||
|
{
|
||||||
|
__build "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
_roku_build_port()
|
||||||
|
{
|
||||||
|
__build "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
export ACLOCAL_PATH=/usr/share/aclocal
|
||||||
|
|
||||||
|
# This is needed to be able to set brake point on /bin/Application
|
||||||
|
export PAX_DEBUG=on
|
||||||
|
|
||||||
|
__build_help()
|
||||||
|
{
|
||||||
|
cat <<EOF
|
||||||
|
platform:
|
||||||
|
bailey, marlin, porting-kit-stb
|
||||||
|
icecream:
|
||||||
|
local, icecc
|
||||||
|
target:
|
||||||
|
all, addon-checksums, addon-checksum-check, clobber
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
__build_legacy()
|
||||||
|
{
|
||||||
|
eval $MAKE \
|
||||||
|
-C $BUILD_ROOT \
|
||||||
|
BUILD_PLATFORM=$BUILD_PLATFORM \
|
||||||
|
${BUILD_PLID:+BUILD_PLID=$BUILD_PLID} \
|
||||||
|
${PLATFORM_TYPE:+PLATFORM_TYPE=$PLATFORM_TYPE} \
|
||||||
|
ENABLE_ICECC=$ENABLE_ICECC \
|
||||||
|
PAX_DEBUG=$PAX_DEBUG \
|
||||||
|
ROOTFSCOMPONENTS_DBG=gdbserver \
|
||||||
|
${BUILD_MODE:+BUILD_MODE=$BUILD_MODE} \
|
||||||
|
$OPTIONS \
|
||||||
|
-j $JOBS \
|
||||||
|
$TARGET
|
||||||
|
}
|
||||||
|
|
||||||
|
__build_os()
|
||||||
|
{
|
||||||
|
eval $MAKE \
|
||||||
|
-C $BUILD_ROOT \
|
||||||
|
BUILD_PLATFORM=$BUILD_PLATFORM \
|
||||||
|
${BUILD_PLID:+BUILD_PLID=$BUILD_PLID} \
|
||||||
|
${PLATFORM_TYPE:+PLATFORM_TYPE=$PLATFORM_TYPE} \
|
||||||
|
ENABLE_ICECC=$ENABLE_ICECC \
|
||||||
|
PAX_DEBUG=$PAX_DEBUG \
|
||||||
|
ROOTFSCOMPONENTS_DBG=gdbserver \
|
||||||
|
${BUILD_MODE:+BUILD_MODE=$BUILD_MODE} \
|
||||||
|
$OPTIONS \
|
||||||
|
-j $JOBS \
|
||||||
|
$TARGET
|
||||||
|
}
|
||||||
|
|
||||||
|
__build_wdk()
|
||||||
|
{
|
||||||
|
echo test
|
||||||
|
}
|
||||||
|
|
||||||
|
__build_port()
|
||||||
|
{
|
||||||
|
eval $MAKE \
|
||||||
|
-C $BUILD_ROOT \
|
||||||
|
BUILD_PLATFORM=$BUILD_PLATFORM \
|
||||||
|
${BUILD_PLID:+BUILD_PLID=$BUILD_PLID} \
|
||||||
|
${PLATFORM_TYPE:+PLATFORM_TYPE=$PLATFORM_TYPE} \
|
||||||
|
ENABLE_ICECC=$ENABLE_ICECC \
|
||||||
|
${ROKU_OS_DIR:+ROKU_OS_DIR=$ROKU_OS_DIR} \
|
||||||
|
${ROKU_WLAN_DIR:+ROKU_WLAN_DIR=$ROKU_WLAN_DIR} \
|
||||||
|
$OPTIONS \
|
||||||
|
-j $JOBS \
|
||||||
|
$TARGET
|
||||||
|
}
|
||||||
|
|
||||||
|
# declar -a __build_configs = (
|
||||||
|
__build()
|
||||||
|
{
|
||||||
|
local REPO_ROKU_OS_DIR=$REPO_ROOT/os/dist/rootfs/Carbon14_dev_stb.OBJ/export/package/porting_kit/os
|
||||||
|
local REPO_DOCKER_MAKE=$REPO_ROOT/os/scripts/docker/localcontainer/docker-u20-make
|
||||||
|
local MAKE=$DOCKER_MAKE
|
||||||
|
local ROKU_OS_DIR=
|
||||||
|
local BUILD_PLATFORM=carbon
|
||||||
|
local PLATFORM_TYPE=
|
||||||
|
local ENABLE_ICECC=0
|
||||||
|
local JOBS=$(nproc)
|
||||||
|
local TARGET=all
|
||||||
|
local BUILD_MODE=dev
|
||||||
|
local PAX_DEBUG=on
|
||||||
|
local OPTIONS=
|
||||||
|
|
||||||
|
#
|
||||||
|
# Root of repository
|
||||||
|
#
|
||||||
|
local REPO_ROOT=$(git rev-parse --show-toplevel)
|
||||||
|
if [ "$?" -ne "0" ]; then
|
||||||
|
REPO_ROOT=$(p4 -Ztag -F %clientRoot% info)
|
||||||
|
fi
|
||||||
|
if [ -z "$REPO_ROOT" ] || [ ! -d "$REPO_ROOT" ]; then
|
||||||
|
echo "build: Cannot find workspace root directory." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
local BUILD_ROOT=$REPO_ROOT/os
|
||||||
|
|
||||||
|
#
|
||||||
|
# Parse arguments
|
||||||
|
#
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
wdk)
|
||||||
|
BUILD_ROOT=$REPO_ROOT/os
|
||||||
|
BUILD_PLATFORM=carbon
|
||||||
|
TARGET=wdk-kit
|
||||||
|
BUILD_PLID=00
|
||||||
|
if [ "$1" == "streambar"]; then
|
||||||
|
PLATFORM_TYPE=WDK_STREAMBAR
|
||||||
|
else
|
||||||
|
PLATFORM_TYPE=WDK_STB
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
porting-kit|\
|
||||||
|
streambar|\
|
||||||
|
stb)
|
||||||
|
BUILD_ROOT=$REPO_ROOT/os
|
||||||
|
BUILD_PLATFORM=carbon
|
||||||
|
TARGET=porting-kit
|
||||||
|
BUILD_PLID=00
|
||||||
|
if [ "$1" == "streambar"]; then
|
||||||
|
PLATFORM_TYPE=STREAMBAR
|
||||||
|
else
|
||||||
|
PLATFORM_TYPE=STB
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
tests|\
|
||||||
|
unittests)
|
||||||
|
BUILD_PLATFORM=host
|
||||||
|
PLATFORM_TYPE=unittests
|
||||||
|
TARGET=build-tests-all
|
||||||
|
PAX_DEBUG=off
|
||||||
|
;;
|
||||||
|
host|\
|
||||||
|
hoststatic|\
|
||||||
|
unity|\
|
||||||
|
native)
|
||||||
|
BUILD_PLATFORM=$1
|
||||||
|
PAX_DEBUG=off
|
||||||
|
MAKE=$DOCKER_MAKE
|
||||||
|
TARGET=all
|
||||||
|
;;
|
||||||
|
reno|\
|
||||||
|
nemo|\
|
||||||
|
rockett|\
|
||||||
|
bailey|\
|
||||||
|
marlin|\
|
||||||
|
brewster|\
|
||||||
|
benjamin|\
|
||||||
|
benjaminw|\
|
||||||
|
loggan|\
|
||||||
|
lockhart|\
|
||||||
|
madison)
|
||||||
|
local ROOT_DIR="$(basename $REPO_ROOT)"
|
||||||
|
if [ "$ROOT_DIR" == "stark" ] || \
|
||||||
|
[ "$ROOT_DIR" == "hank" ]; then
|
||||||
|
local BUILD_ROOT="$REPO_ROOT/$1"
|
||||||
|
local ROKU_OS_DIR=$REPO_ROOT/../../../os/dist/rootfs/Carbon14_dev_stb.OBJ/export/package/porting_kit/os
|
||||||
|
# local ROKU_WLAN_DIR=$REPO_ROOT/common/wlan
|
||||||
|
local TARGET=image
|
||||||
|
else
|
||||||
|
local BUILD_ROOT=$REPO_ROOT/os
|
||||||
|
fi
|
||||||
|
BUILD_PLATFORM=$1
|
||||||
|
;;
|
||||||
|
icecc)
|
||||||
|
ENABLE_ICECC=1
|
||||||
|
JOBS=256
|
||||||
|
;;
|
||||||
|
port-only)
|
||||||
|
ROKU_OS_DIR=$REPO_ROKU_OS_DIR
|
||||||
|
;;
|
||||||
|
local)
|
||||||
|
ENABLE_ICECC=0
|
||||||
|
JOBS=$(nproc)
|
||||||
|
;;
|
||||||
|
all|\
|
||||||
|
addon-checksums|\
|
||||||
|
addon-checksum-check|\
|
||||||
|
clean|\
|
||||||
|
cleanall|\
|
||||||
|
clobber|\
|
||||||
|
build-tests-all|\
|
||||||
|
build-tests-ZipMountServerTest|\
|
||||||
|
build-tests-FuseServerTest|\
|
||||||
|
build-tests-PluginPackageManagemnetPluginUnitTests|\
|
||||||
|
make_custom_package|\
|
||||||
|
clobber-all)
|
||||||
|
TARGET=$1
|
||||||
|
;;
|
||||||
|
build-integration-tests)
|
||||||
|
OPTIONS+="BUILD_INTEGRATION_TESTS=true"
|
||||||
|
;;
|
||||||
|
here)
|
||||||
|
BUILD_ROOT="."
|
||||||
|
;;
|
||||||
|
nopax)
|
||||||
|
PAX_DEBUG=off
|
||||||
|
;;
|
||||||
|
make)
|
||||||
|
MAKE=make
|
||||||
|
;;
|
||||||
|
docker)
|
||||||
|
MAKE=$DOCKER_MAKE
|
||||||
|
;;
|
||||||
|
debug)
|
||||||
|
BUILD_MODE=dbg
|
||||||
|
;;
|
||||||
|
help)
|
||||||
|
build_help
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Really? Do you mean that?"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
# Fallback to make if docker image not found.
|
||||||
|
if [ -e $MAKE ]; then
|
||||||
|
local MAKE=make
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$BUILD_PLATFORM" == "carbon" ]; then
|
||||||
|
__build_os
|
||||||
|
elif [ "$TARGET" == "image" ]; then
|
||||||
|
__build_port
|
||||||
|
else
|
||||||
|
__build_legacy
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
#
|
||||||
|
# Build Completion
|
||||||
|
#
|
||||||
|
__build_completion_contains()
|
||||||
|
{
|
||||||
|
# Platforms
|
||||||
|
for WORD in "$@"; do
|
||||||
|
if [[ "${COMP_WORDS[*]}" =~ "$WORD" ]]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
__build_completion_add_if()
|
||||||
|
{
|
||||||
|
__build_completion_contains "$@"
|
||||||
|
if [[ $? == 0 ]]; then
|
||||||
|
CANDIDATES+=" $@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
complete -F __build_completion build
|
||||||
|
__build_completion()
|
||||||
|
{
|
||||||
|
local CANDIDATES="help clobber tests addon-checksums"
|
||||||
|
|
||||||
|
# Docker
|
||||||
|
__build_completion_add_if docker make
|
||||||
|
|
||||||
|
# Build hosts
|
||||||
|
__build_completion_add_if icecc local
|
||||||
|
|
||||||
|
# Port dir
|
||||||
|
__build_completion_add_if port-only
|
||||||
|
|
||||||
|
# Platforms
|
||||||
|
__build_completion_add_if native marlin bailey loggan lockhart porting-kit streambar stb
|
||||||
|
|
||||||
|
COMPREPLY=($(compgen -W "$CANDIDATES" "${COMP_WORDS[${COMP_CWORD}]}"))
|
||||||
|
}
|
||||||
|
|
||||||
71
_roku_completion.sh
Normal file
71
_roku_completion.sh
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
#
|
||||||
|
# It is assumed that the following variables are set.
|
||||||
|
#
|
||||||
|
#_ROKU_SHELL_DIR=$(dirname $(realpath $(readlink $0)))
|
||||||
|
#_ROKU_SHELL=$_ROKU_SHELL_DIR/_roku.sh
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
#
|
||||||
|
# Build Completion
|
||||||
|
#
|
||||||
|
__roku_completion_contains()
|
||||||
|
{
|
||||||
|
# Platforms
|
||||||
|
for WORD in "$@"; do
|
||||||
|
if [[ "${COMP_WORDS[*]}" =~ "$WORD" ]]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
__roku_completion_add_if()
|
||||||
|
{
|
||||||
|
__roku_completion_contains "$@"
|
||||||
|
if [[ $? == 0 ]]; then
|
||||||
|
CANDIDATES+=" $@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# complete -F __build_completion roku
|
||||||
|
# __build_completion()
|
||||||
|
# {
|
||||||
|
# local CANDIDATES="help clobber tests addon-checksums"
|
||||||
|
|
||||||
|
# # Docker
|
||||||
|
# __build_completion_add_if docker make
|
||||||
|
|
||||||
|
# # Build hosts
|
||||||
|
# __build_completion_add_if icecc local
|
||||||
|
|
||||||
|
# # Port dir
|
||||||
|
# __build_completion_add_if port-only
|
||||||
|
|
||||||
|
# # Platforms
|
||||||
|
# __build_completion_add_if native marlin bailey loggan lockhart porting-kit streambar stb
|
||||||
|
|
||||||
|
# COMPREPLY=($(compgen -W "$CANDIDATES" "${COMP_WORDS[${COMP_CWORD}]}"))
|
||||||
|
# }
|
||||||
|
|
||||||
|
complete -F __roku_completion roku
|
||||||
|
__roku_completion()
|
||||||
|
{
|
||||||
|
local CANDIDATES="device get log flash gdb gdb_attach telnet reboot audcap san_update sideload token_install"
|
||||||
|
|
||||||
|
# # Docker
|
||||||
|
# __build_completion_add_if docker make
|
||||||
|
|
||||||
|
# # Build hosts
|
||||||
|
# __build_completion_add_if icecc local
|
||||||
|
|
||||||
|
# # Port dir
|
||||||
|
# __build_completion_add_if port-only
|
||||||
|
|
||||||
|
# # Platforms
|
||||||
|
# __build_completion_add_if native marlin bailey loggan lockhart porting-kit streambar stb
|
||||||
|
|
||||||
|
COMPREPLY=($(compgen -W "$CANDIDATES" "${COMP_WORDS[${COMP_CWORD}]}"))
|
||||||
|
}
|
||||||
|
|
||||||
14
_roku_lt.sh
Normal file
14
_roku_lt.sh
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
_roku_lt_completion()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
_roku_lt_build()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
_roku_lt_flash()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
126
_roku_shared.sh
126
_roku_shared.sh
@@ -1,19 +1,16 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# I have my automake
|
if [ -z "$_ROKU_SHELL_DIR" ]; then
|
||||||
export ACLOCAL_PATH=/usr/share/aclocal
|
_ROKU_SHELL_DIR=$(dirname $(realpath $(readlink -f "${BASH_SOURCE[0]}" )))
|
||||||
|
fi
|
||||||
export ROKU_NFS_ROOT=$HOME/roku/nfs
|
_ROKU_SHELL=$_ROKU_SHELL_DIR/_roku.sh
|
||||||
export ROKU_NFS_IP=192.168.0.64
|
|
||||||
export EXPORTROOT=${ROKU_NFS_ROOT}
|
|
||||||
|
|
||||||
|
|
||||||
export DEVPASSWORD=aaaa
|
export DEVPASSWORD=aaaa
|
||||||
_roku_device()
|
_roku_device()
|
||||||
{
|
{
|
||||||
if [ "$1" != "" ]; then
|
if [ "$1" != "" ]; then
|
||||||
export ROKU_DEV_TARGET="$1"
|
export ROKU_DEV_TARGET="$1"
|
||||||
export ROKU_DEV_PLATFORM="$(_roku.sh device_platform)"
|
export ROKU_DEV_PLATFORM="$($_ROKU_SHELL device_platform)"
|
||||||
fi
|
fi
|
||||||
echo "device: $ROKU_DEV_TARGET"
|
echo "device: $ROKU_DEV_TARGET"
|
||||||
echo "platform: $ROKU_DEV_PLATFORM"
|
echo "platform: $ROKU_DEV_PLATFORM"
|
||||||
@@ -26,7 +23,7 @@ _roku_wget_pass()
|
|||||||
export ROKU_CORP_PASSWORD
|
export ROKU_CORP_PASSWORD
|
||||||
}
|
}
|
||||||
|
|
||||||
_ROKU_DEFAULT_DISPATCH_FUNC=_roku.sh
|
_ROKU_DEFAULT_DISPATCH_FUNC=$_ROKU_SHELL
|
||||||
_roku_dispatch()
|
_roku_dispatch()
|
||||||
{
|
{
|
||||||
local DISPATCH_FUNC=$_ROKU_DEFAULT_DISPATCH_FUNC
|
local DISPATCH_FUNC=$_ROKU_DEFAULT_DISPATCH_FUNC
|
||||||
@@ -47,114 +44,3 @@ roku()
|
|||||||
_roku_dispatch "$@"
|
_roku_dispatch "$@"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
#
|
|
||||||
# Build Completion
|
|
||||||
#
|
|
||||||
__roku_completion_contains()
|
|
||||||
{
|
|
||||||
# Platforms
|
|
||||||
for WORD in "$@"; do
|
|
||||||
if [[ "${COMP_WORDS[*]}" =~ "$WORD" ]]; then
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
__roku_completion_add_if()
|
|
||||||
{
|
|
||||||
__roku_completion_contains "$@"
|
|
||||||
if [[ $? == 0 ]]; then
|
|
||||||
CANDIDATES+=" $@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# complete -F __build_completion roku
|
|
||||||
# __build_completion()
|
|
||||||
# {
|
|
||||||
# local CANDIDATES="help clobber tests addon-checksums"
|
|
||||||
|
|
||||||
# # Docker
|
|
||||||
# __build_completion_add_if docker make
|
|
||||||
|
|
||||||
# # Build hosts
|
|
||||||
# __build_completion_add_if icecc local
|
|
||||||
|
|
||||||
# # Port dir
|
|
||||||
# __build_completion_add_if port-only
|
|
||||||
|
|
||||||
# # Platforms
|
|
||||||
# __build_completion_add_if native marlin bailey loggan lockhart porting-kit streambar stb
|
|
||||||
|
|
||||||
# COMPREPLY=($(compgen -W "$CANDIDATES" "${COMP_WORDS[${COMP_CWORD}]}"))
|
|
||||||
# }
|
|
||||||
|
|
||||||
complete -F __roku_completion roku
|
|
||||||
__roku_completion()
|
|
||||||
{
|
|
||||||
local CANDIDATES="device get log flash gdb gdb_attach telnet reboot audcap san_update sideload token_install"
|
|
||||||
|
|
||||||
# # Docker
|
|
||||||
# __build_completion_add_if docker make
|
|
||||||
|
|
||||||
# # Build hosts
|
|
||||||
# __build_completion_add_if icecc local
|
|
||||||
|
|
||||||
# # Port dir
|
|
||||||
# __build_completion_add_if port-only
|
|
||||||
|
|
||||||
# # Platforms
|
|
||||||
# __build_completion_add_if native marlin bailey loggan lockhart porting-kit streambar stb
|
|
||||||
|
|
||||||
COMPREPLY=($(compgen -W "$CANDIDATES" "${COMP_WORDS[${COMP_CWORD}]}"))
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
#
|
|
||||||
# Logging
|
|
||||||
#
|
|
||||||
LOGDIR="${HOME}/roku/logs"
|
|
||||||
|
|
||||||
|
|
||||||
dcapture()
|
|
||||||
{
|
|
||||||
nc minicom "$@" -C $LOGDIR/.log.$(date +%Y-%m-%d--%H-%M-%S)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
dfile()
|
|
||||||
{
|
|
||||||
local Nth="-1"
|
|
||||||
if [ $# -gt 0 ]; then
|
|
||||||
Nth="$1"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo $(ls -tr -1 ${LOGDIR}/minicom.log.* | tail ${Nth} | head -1)
|
|
||||||
}
|
|
||||||
|
|
||||||
dless()
|
|
||||||
{
|
|
||||||
less $(lfile "$@")
|
|
||||||
}
|
|
||||||
|
|
||||||
dcat()
|
|
||||||
{
|
|
||||||
cat $(lfile "$@")
|
|
||||||
}
|
|
||||||
|
|
||||||
dgrep()
|
|
||||||
{
|
|
||||||
lcat | grep -a --color "$@"
|
|
||||||
}
|
|
||||||
|
|
||||||
dtail()
|
|
||||||
{
|
|
||||||
if [ $# -gt 0 ]; then
|
|
||||||
tail -f $(lfile) | grep "$@"
|
|
||||||
else
|
|
||||||
tail -f $(lfile)
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user