update_binary-addons: make script branch aware

This commit is contained in:
MilhouseVH 2017-05-23 18:07:19 +01:00 committed by Lukas Rusak
parent dfff7c8942
commit bc2553b363
No known key found for this signature in database
GPG Key ID: 8C310C807E7393A3

View File

@ -22,13 +22,20 @@ if [ -z "$1" ]; then
exit 0 exit 0
fi fi
KODI_DIR="kodi-$1.git" KODI_BRANCH="$1"
KODI_DIR="kodi-${KODI_BRANCH}.git"
git_clone() { git_clone() {
# git_clone https://repo.url branch ./target_dir [githash] # git_clone https://repo.url branch ./target_dir [githash]
echo "[mkpkg] Checking out $1 ..." echo "[mkpkg] Checking out $1 ..."
if [ ! -d "$3" ]; then if [ ! -d "$3" ]; then
git clone "$1" -b $2 "$3" git clone "$1" "$3"
# Try to switch to specified branch if it exist, if not then use default branch
if [ -n "$2" ]; then
cd "$3"
git checkout $2 >/dev/null 2>/dev/null
cd ..
fi
else else
if [ -d "$3" ] ; then if [ -d "$3" ] ; then
cd "$3" cd "$3"
@ -37,6 +44,7 @@ git_clone() {
cd .. cd ..
fi fi
fi fi
if [ ! -z "$4" ] ; then if [ ! -z "$4" ] ; then
cd "$3" cd "$3"
git fetch >/dev/null 2>/dev/null git fetch >/dev/null 2>/dev/null
@ -88,8 +96,8 @@ validate_pkg_url() {
[ "${url1}" = "${url2}" ] && return 0 || return 1 [ "${url1}" = "${url2}" ] && return 0 || return 1
} }
if [ ! -d $KODI_DIR ] ; then if [ ! -d ${KODI_DIR} ] ; then
git_clone https://github.com/xbmc/xbmc $1 $KODI_DIR git_clone https://github.com/xbmc/xbmc ${KODI_BRANCH} ${KODI_DIR}
fi fi
# p8-platform # p8-platform
@ -125,7 +133,7 @@ for addontxt in $KODI_DIR/cmake/addons/bootstrap/repositories/*-addons.txt ; do
ADDONS=$(cat $addontxt | awk '{print $1}') ADDONS=$(cat $addontxt | awk '{print $1}')
ADDONREPO=$(cat $addontxt | awk '{print $2}') ADDONREPO=$(cat $addontxt | awk '{print $2}')
GIT_HASH=$(cat $addontxt | awk '{print $3}') GIT_HASH=$(cat $addontxt | awk '{print $3}')
git_clone $ADDONREPO master $ADDONS.git $GIT_HASH git_clone $ADDONREPO ${KODI_BRANCH} $ADDONS.git $GIT_HASH
for addon in $ADDONS.git/*.*/ ; do for addon in $ADDONS.git/*.*/ ; do
ADDON=$(basename $addon) ADDON=$(basename $addon)
@ -146,7 +154,7 @@ for addontxt in $KODI_DIR/cmake/addons/bootstrap/repositories/*-addons.txt ; do
fi fi
if [ -f ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk ] ; then if [ -f ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk ] ; then
git_clone $REPO master $PKG_NAME.git $GIT_HASH git_clone $REPO ${KODI_BRANCH} $PKG_NAME.git $GIT_HASH
# update package.mk # update package.mk
RESOLVED_HASH=$(resolve_hash $PKG_NAME.git $GIT_HASH) RESOLVED_HASH=$(resolve_hash $PKG_NAME.git $GIT_HASH)
@ -177,7 +185,7 @@ for ADDON in $(ls -1 ../../packages/mediacenter/kodi-binary-addons); do
# Obtain git url - ignore if not a suitable repo # Obtain git url - ignore if not a suitable repo
REPO="$(geturl "${ADDON}")" || continue REPO="$(geturl "${ADDON}")" || continue
git_clone $REPO master $ADDON.git HEAD git_clone $REPO ${KODI_BRANCH} $ADDON.git HEAD
# update package.mk for stale github.com packages # update package.mk for stale github.com packages
RESOLVED_HASH=$(resolve_hash ${ADDON}.git HEAD) || continue RESOLVED_HASH=$(resolve_hash ${ADDON}.git HEAD) || continue