mirror of
https://github.com/archr-linux/Arch-R.git
synced 2026-03-31 14:41:55 -07:00
77 lines
2.6 KiB
Bash
Executable File
77 lines
2.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
|
|
|
. config/options $1
|
|
|
|
# Make sure we have a value for STRIP
|
|
setup_toolchain target
|
|
|
|
[ -n "$2" ] && PKG_ADDON_ID=$2
|
|
|
|
ADDON_DIRECTORY="$ADDON_BUILD/$PKG_ADDON_ID"
|
|
|
|
install_addon_files "$ADDON_DIRECTORY"
|
|
|
|
debug_strip "$ADDON_DIRECTORY"
|
|
|
|
# pack_addon()
|
|
ADDON_INSTALL_DIR="$TARGET_IMG/$ADDONS/$ADDON_VERSION/${DEVICE:-$PROJECT}/$TARGET_ARCH/$PKG_ADDON_ID"
|
|
ADDONVER="$(xmlstarlet sel -t -v "/addon/@version" $ADDON_BUILD/$PKG_ADDON_ID/addon.xml)"
|
|
|
|
if [ -f $ADDON_INSTALL_DIR/$PKG_ADDON_ID-$ADDONVER.zip ]; then
|
|
if [ "$ADDON_OVERWRITE" = "yes" ]; then
|
|
rm $ADDON_INSTALL_DIR/$PKG_ADDON_ID-$ADDONVER.zip
|
|
else
|
|
build_msg "CLR_WARNING" "*** WARNING: ${PKG_ADDON_ID}-${ADDONVER}.zip already exists. Not overwriting it. ***"
|
|
exit 0
|
|
fi
|
|
fi
|
|
|
|
cd $ADDON_BUILD
|
|
build_msg "CLR_INFO" "*** compressing addon ${PKG_ADDON_ID} ... ***"
|
|
$TOOLCHAIN/bin/7za a -l -mx9 -bsp0 -bso0 -tzip $PKG_ADDON_ID-$ADDONVER.zip $PKG_ADDON_ID
|
|
cd - &>/dev/null
|
|
|
|
mkdir -p $ADDON_INSTALL_DIR
|
|
cp $ADDON_BUILD/$PKG_ADDON_ID-$ADDONVER.zip $ADDON_INSTALL_DIR
|
|
if [ -f $ADDON_BUILD/$PKG_ADDON_ID/changelog.txt ]; then
|
|
cp $ADDON_BUILD/$PKG_ADDON_ID/changelog.txt $ADDON_INSTALL_DIR/changelog-$ADDONVER.txt
|
|
fi
|
|
if [ -f $ADDON_BUILD/$PKG_ADDON_ID/resources/icon.png ]; then
|
|
mkdir -p $ADDON_INSTALL_DIR/resources
|
|
cp $ADDON_BUILD/$PKG_ADDON_ID/resources/icon.png $ADDON_INSTALL_DIR/resources/icon.png
|
|
fi
|
|
|
|
# workaround for kodi pvr addons
|
|
if [ -f $ADDON_BUILD/$PKG_ADDON_ID/icon.png ]; then
|
|
cp $ADDON_BUILD/$PKG_ADDON_ID/icon.png $ADDON_INSTALL_DIR/icon.png
|
|
fi
|
|
|
|
if [ -f $ADDON_BUILD/$PKG_ADDON_ID/resources/fanart.png ]; then
|
|
mkdir -p $ADDON_INSTALL_DIR/resources
|
|
cp $ADDON_BUILD/$PKG_ADDON_ID/resources/fanart.png $ADDON_INSTALL_DIR/resources/fanart.png
|
|
fi
|
|
for f in $ADDON_BUILD/$PKG_ADDON_ID/resources/screenshot-*.{jpg,png}; do
|
|
if [ -f "$f" ]; then
|
|
mkdir -p $ADDON_INSTALL_DIR/resources
|
|
cp $f $ADDON_INSTALL_DIR/resources
|
|
fi
|
|
done
|
|
|
|
# Jenkins add-on build
|
|
if [ "$ADDON_JENKINS" = "yes" ]; then
|
|
ADDON_JENKINS_DIR="$TARGET_IMG/jenkins"
|
|
ADDON_JENKINS_ADDON_NAME="$ADDON_VERSION-${DEVICE:-$PROJECT}-$TARGET_ARCH-$PKG_ADDON_ID-$ADDONVER"
|
|
mkdir -p "$ADDON_JENKINS_DIR"
|
|
cd $ADDON_INSTALL_DIR
|
|
$TOOLCHAIN/bin/7za a -l -mx0 -bsp0 -bso0 -tzip $ADDON_JENKINS_DIR/$ADDON_JENKINS_ADDON_NAME.zip $PKG_ADDON_ID-$ADDONVER.zip resources/
|
|
( cd $ADDON_JENKINS_DIR
|
|
sha256sum $ADDON_JENKINS_ADDON_NAME.zip > $ADDON_JENKINS_ADDON_NAME.zip.sha256
|
|
)
|
|
build_msg "CLR_INFO" "*** creating ${ADDON_JENKINS_ADDON_NAME}.zip for Jenkins complete ***"
|
|
else
|
|
build_msg "CLR_INFO" "*** creating ${PKG_ADDON_ID} complete ***"
|
|
fi
|