mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-28 13:16:41 +00:00
Merge pull request #3078 from antonlacon/buildsystem-to-merge2
buildsystem: unpacking / extracting cleanup
This commit is contained in:
commit
1226636b2a
@ -935,8 +935,7 @@ install_addon_files() {
|
|||||||
|
|
||||||
install_driver_addon_files() {
|
install_driver_addon_files() {
|
||||||
if [ "$#" -eq 0 ] ; then
|
if [ "$#" -eq 0 ] ; then
|
||||||
printf "$(print_color CLR_ERROR "no module search path defined")\n"
|
die "$(print_color CLR_ERROR "no module search path defined")"
|
||||||
die
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
PKG_MODULE_DIR="$INSTALL/$(get_full_module_dir $PKG_ADDON_ID)/updates/$PKG_ADDON_ID"
|
PKG_MODULE_DIR="$INSTALL/$(get_full_module_dir $PKG_ADDON_ID)/updates/$PKG_ADDON_ID"
|
||||||
|
@ -2,11 +2,12 @@
|
|||||||
|
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||||
|
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
. config/options $1
|
. config/options $1
|
||||||
|
|
||||||
if [ "$1" = "--all" ]; then
|
if [ "$1" = "--all" ]; then
|
||||||
if [ ! -z "$2" ]; then
|
if [ -n "$2" ]; then
|
||||||
for build_dir in $(ls -1d ${ROOT}/build.*); do
|
for build_dir in $(ls -1d ${ROOT}/build.*); do
|
||||||
load_build_config ${build_dir} && ./scripts/build $2
|
load_build_config ${build_dir} && ./scripts/build $2
|
||||||
done
|
done
|
||||||
@ -15,13 +16,11 @@ if [ "$1" = "--all" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
echo "usage: $0 package_name[:<host|target|init|bootstrap>]"
|
die "usage: $0 package_name[:<host|target|init|bootstrap>]"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -f $PKG_DIR/package.mk ]; then
|
if [ ! -f $PKG_DIR/package.mk ]; then
|
||||||
printf "$(print_color CLR_ERROR "$1: no package.mk file found")\n"
|
die "$(print_color CLR_ERROR "$1: no package.mk file found")"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# set defaults
|
# set defaults
|
||||||
@ -36,7 +35,7 @@ else
|
|||||||
PACKAGE_NAME=$1
|
PACKAGE_NAME=$1
|
||||||
TARGET=
|
TARGET=
|
||||||
fi
|
fi
|
||||||
[ -z "$TARGET" ] && TARGET="target"
|
TARGET="${TARGET:-target}"
|
||||||
|
|
||||||
if [ -n "$PKG_ARCH" ]; then
|
if [ -n "$PKG_ARCH" ]; then
|
||||||
listcontains "$PKG_ARCH" "!$TARGET_ARCH" && exit 0
|
listcontains "$PKG_ARCH" "!$TARGET_ARCH" && exit 0
|
||||||
@ -53,15 +52,11 @@ $SCRIPTS/unpack $PACKAGE_NAME
|
|||||||
if [ -f $STAMP ] ; then
|
if [ -f $STAMP ] ; then
|
||||||
. $STAMP
|
. $STAMP
|
||||||
PKG_DEEPHASH=$(calculate_stamp)
|
PKG_DEEPHASH=$(calculate_stamp)
|
||||||
if [ ! "$PKG_DEEPHASH" = "$STAMP_PKG_DEEPHASH" ] ; then
|
if [ ! "$PKG_DEEPHASH" = "$STAMP_PKG_DEEPHASH" ]; then
|
||||||
rm -f $STAMP
|
rm -f $STAMP
|
||||||
fi
|
elif [ ! "$BUILD_WITH_DEBUG" = "$STAMP_BUILD_WITH_DEBUG" ]; then
|
||||||
|
|
||||||
if [ ! "$BUILD_WITH_DEBUG" = "$STAMP_BUILD_WITH_DEBUG" ]; then
|
|
||||||
rm -f $STAMP
|
rm -f $STAMP
|
||||||
fi
|
elif [ "$1" = "u-boot" -a ! "$UBOOT_SYSTEM" = "$STAMP_UBOOT_SYSTEM" ]; then
|
||||||
|
|
||||||
if [ "$1" = "u-boot" -a ! "$UBOOT_SYSTEM" = "$STAMP_UBOOT_SYSTEM" ]; then
|
|
||||||
rm -f $STAMP
|
rm -f $STAMP
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@ -232,32 +227,26 @@ fi
|
|||||||
|
|
||||||
# configure other variables
|
# configure other variables
|
||||||
if [ "$TARGET" = "target" ]; then
|
if [ "$TARGET" = "target" ]; then
|
||||||
INSTALL=$PKG_BUILD/.install_pkg
|
INSTALL="$PKG_BUILD/.install_pkg"
|
||||||
elif [ "$TARGET" = "init" ]; then
|
elif [ "$TARGET" = "init" ]; then
|
||||||
INSTALL=$PKG_BUILD/.install_init
|
INSTALL="$PKG_BUILD/.install_init"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# clean up
|
# clear previous image files
|
||||||
if [ ! -z "$INSTALL" ] ; then
|
if [ -n "$INSTALL" -a -d "$INSTALL" ]; then
|
||||||
if [ -d "$INSTALL" ] ; then
|
rm -rf "$INSTALL"
|
||||||
rm -rf $INSTALL
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# setup configure script
|
# setup configure scripts
|
||||||
if [ -z "$PKG_CONFIGURE_SCRIPT" ]; then
|
if [ -z "$PKG_CONFIGURE_SCRIPT" ]; then
|
||||||
PKG_CONFIGURE_SCRIPT="$PKG_BUILD/configure"
|
PKG_CONFIGURE_SCRIPT="$PKG_BUILD/configure"
|
||||||
else
|
else
|
||||||
PKG_CONFIGURE_SCRIPT="$PKG_BUILD/$PKG_CONFIGURE_SCRIPT"
|
PKG_CONFIGURE_SCRIPT="$PKG_BUILD/$PKG_CONFIGURE_SCRIPT"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$PKG_CMAKE_SCRIPT" ]; then
|
PKG_CMAKE_SCRIPT="${PKG_CMAKE_SCRIPT:-$PKG_BUILD/CMakeLists.txt}"
|
||||||
PKG_CMAKE_SCRIPT="$PKG_BUILD/CMakeLists.txt"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$PKG_MESON_SCRIPT" ]; then
|
PKG_MESON_SCRIPT="${PKG_MESON_SCRIPT:-$PKG_BUILD/meson.build}"
|
||||||
PKG_MESON_SCRIPT="$PKG_BUILD/meson.build"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# auto detect toolchain
|
# auto detect toolchain
|
||||||
_auto_toolchain=""
|
_auto_toolchain=""
|
||||||
@ -268,17 +257,15 @@ if [ -z "$PKG_TOOLCHAIN" -o "$PKG_TOOLCHAIN" = "auto" ]; then
|
|||||||
PKG_TOOLCHAIN="cmake"
|
PKG_TOOLCHAIN="cmake"
|
||||||
elif [ -f "$PKG_CONFIGURE_SCRIPT" ]; then
|
elif [ -f "$PKG_CONFIGURE_SCRIPT" ]; then
|
||||||
PKG_TOOLCHAIN="configure"
|
PKG_TOOLCHAIN="configure"
|
||||||
elif [ -f $PKG_BUILD/Makefile ]; then
|
elif [ -f "$PKG_BUILD/Makefile" ]; then
|
||||||
PKG_TOOLCHAIN="make"
|
PKG_TOOLCHAIN="make"
|
||||||
else
|
else
|
||||||
echo "Not possible to detect toolchain automatically. Add PKG_TOOLCHAIN= to package.mk"
|
die "Not possible to detect toolchain automatically. Add PKG_TOOLCHAIN= to package.mk"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
_auto_toolchain=" (auto-detect)"
|
_auto_toolchain=" (auto-detect)"
|
||||||
fi
|
fi
|
||||||
if ! listcontains "meson cmake cmake-make configure ninja make autotools manual" "$PKG_TOOLCHAIN"; then
|
if ! listcontains "meson cmake cmake-make configure ninja make autotools manual" "$PKG_TOOLCHAIN"; then
|
||||||
printf "$(print_color bold-red "ERROR:") unknown toolchain $PKG_TOOLCHAIN"
|
die "$(print_color bold-red "ERROR:") unknown toolchain $PKG_TOOLCHAIN"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
printf "%${BUILD_INDENT}c $(print_color CLR_TOOLCHAIN "TOOLCHAIN") $PKG_TOOLCHAIN${_auto_toolchain}\n" ' '>&$SILENT_OUT
|
printf "%${BUILD_INDENT}c $(print_color CLR_TOOLCHAIN "TOOLCHAIN") $PKG_TOOLCHAIN${_auto_toolchain}\n" ' '>&$SILENT_OUT
|
||||||
|
|
||||||
@ -293,11 +280,11 @@ if [ "$(type -t pre_build_$TARGET)" = "function" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# ensure $PKG_BUILD is there. (installer? PKG_URL="")
|
# ensure $PKG_BUILD is there. (installer? PKG_URL="")
|
||||||
if [ ! -d $PKG_BUILD ] ; then
|
if [ ! -d "$PKG_BUILD" ] ; then
|
||||||
mkdir -p $PKG_BUILD
|
mkdir -p "$PKG_BUILD"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cd $PKG_BUILD
|
cd "$PKG_BUILD"
|
||||||
|
|
||||||
if [ -f "$PKG_CONFIGURE_SCRIPT" -o -f "$PKG_CMAKE_SCRIPT" -o -f "$PKG_MESON_SCRIPT" ]; then
|
if [ -f "$PKG_CONFIGURE_SCRIPT" -o -f "$PKG_CMAKE_SCRIPT" -o -f "$PKG_MESON_SCRIPT" ]; then
|
||||||
case "$TARGET" in
|
case "$TARGET" in
|
||||||
@ -306,8 +293,8 @@ if [ -f "$PKG_CONFIGURE_SCRIPT" -o -f "$PKG_CMAKE_SCRIPT" -o -f "$PKG_MESON_SCRI
|
|||||||
"init") PKG_REAL_BUILD="$PKG_BUILD/.$TARGET_NAME-$TARGET" ;;
|
"init") PKG_REAL_BUILD="$PKG_BUILD/.$TARGET_NAME-$TARGET" ;;
|
||||||
"bootstrap") PKG_REAL_BUILD="$PKG_BUILD/.$HOST_NAME-$TARGET" ;;
|
"bootstrap") PKG_REAL_BUILD="$PKG_BUILD/.$HOST_NAME-$TARGET" ;;
|
||||||
esac
|
esac
|
||||||
mkdir -p $PKG_REAL_BUILD
|
mkdir -p "$PKG_REAL_BUILD"
|
||||||
cd $PKG_REAL_BUILD
|
cd "$PKG_REAL_BUILD"
|
||||||
|
|
||||||
MESON_CONF="$PKG_REAL_BUILD/meson.conf"
|
MESON_CONF="$PKG_REAL_BUILD/meson.conf"
|
||||||
fi
|
fi
|
||||||
@ -494,7 +481,7 @@ if [ "$(type -t post_makeinstall_$TARGET)" = "function" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$TARGET" = "target" -o "$TARGET" = "init" ]; then
|
if [ "$TARGET" = "target" -o "$TARGET" = "init" ]; then
|
||||||
if [ -d $INSTALL ] ; then
|
if [ -d $INSTALL ]; then
|
||||||
rm -rf $INSTALL/{usr/,}include
|
rm -rf $INSTALL/{usr/,}include
|
||||||
rm -rf $INSTALL/{usr/,}lib/cmake
|
rm -rf $INSTALL/{usr/,}lib/cmake
|
||||||
rm -rf $INSTALL/{usr/,}lib/pkgconfig
|
rm -rf $INSTALL/{usr/,}lib/pkgconfig
|
||||||
@ -520,26 +507,26 @@ if [ "$TARGET" = "target" -o "$TARGET" = "init" ]; then
|
|||||||
find $INSTALL -type d -exec rmdir -p {} \; 2>/dev/null || :
|
find $INSTALL -type d -exec rmdir -p {} \; 2>/dev/null || :
|
||||||
|
|
||||||
if [ ! "${BUILD_WITH_DEBUG}" = "yes" ]; then
|
if [ ! "${BUILD_WITH_DEBUG}" = "yes" ]; then
|
||||||
$STRIP `find $INSTALL \
|
$STRIP $(find $INSTALL \
|
||||||
-type f -name "*.so*" \
|
-type f -name "*.so*" \
|
||||||
! -name "ld-*.so" \
|
! -name "ld-*.so" \
|
||||||
! -name "libc-*.so" \
|
! -name "libc-*.so" \
|
||||||
! -name "libpthread-*.so" \
|
! -name "libpthread-*.so" \
|
||||||
! -name "libthread_db-*so" \
|
! -name "libthread_db-*so" \
|
||||||
2>/dev/null` 2>/dev/null || :
|
2>/dev/null) 2>/dev/null || :
|
||||||
if [ "$TARGET" = "init" ]; then
|
if [ "$TARGET" = "init" ]; then
|
||||||
$STRIP `find $INSTALL -type f -name "*.so*" 2>/dev/null` 2>/dev/null || :
|
$STRIP $(find $INSTALL -type f -name "*.so*" 2>/dev/null) 2>/dev/null || :
|
||||||
fi
|
fi
|
||||||
$STRIP `find $INSTALL/bin $INSTALL/usr/bin $INSTALL/sbin $INSTALL/usr/sbin \
|
$STRIP $(find $INSTALL/bin $INSTALL/usr/bin $INSTALL/sbin $INSTALL/usr/sbin \
|
||||||
-type f -executable 2>/dev/null` 2>/dev/null || :
|
-type f -executable 2>/dev/null) 2>/dev/null || :
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cd $ROOT
|
cd $ROOT
|
||||||
|
|
||||||
for i in `find $SYSROOT_PREFIX/usr/lib/ -name "*.la" 2>/dev/null`; do \
|
for i in $(find $SYSROOT_PREFIX/usr/lib/ -name "*.la" 2>/dev/null); do
|
||||||
$SED "s:\(['= ]\)/usr:\\1$SYSROOT_PREFIX/usr:g" $i; \
|
sed -e "s:\(['= ]\)/usr:\\1$SYSROOT_PREFIX/usr:g" -i $i
|
||||||
done
|
done
|
||||||
|
|
||||||
PKG_DEEPHASH=$(calculate_stamp)
|
PKG_DEEPHASH=$(calculate_stamp)
|
||||||
|
@ -93,9 +93,9 @@ function find_addons() {
|
|||||||
|
|
||||||
# abort when nothing found and not embedded
|
# abort when nothing found and not embedded
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
printf "$(print_color CLR_ERROR "ERROR: '$1' matches nothing...")\n" ' '>&$SILENT_OUT
|
echo "$(print_color CLR_ERROR "ERROR: '$1' matches nothing...")" >&$SILENT_OUT
|
||||||
printf "for more informations type: ./scripts/create_addon --help\n" ' '>&$SILENT_OUT
|
echo "for more informations type: ./scripts/create_addon --help" >&$SILENT_OUT
|
||||||
exit 1
|
die
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -297,13 +297,13 @@ for addon in $(tr " " "\n" <<< $addons | sort -u); do
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# build package
|
# build package
|
||||||
printf "$(print_color CLR_BUILD "CREATE ADDON $addon") (${DEVICE:-$PROJECT}/$TARGET_ARCH)\n" ' '>&$SILENT_OUT
|
echo "$(print_color CLR_BUILD "CREATE ADDON $addon") (${DEVICE:-$PROJECT}/$TARGET_ARCH)" >&$SILENT_OUT
|
||||||
_count+='x'
|
_count+='x'
|
||||||
( build_addon $addon ) \
|
( build_addon $addon ) \
|
||||||
2>&1 | tee $log_file
|
2>&1 | tee $log_file
|
||||||
if [ ${PIPESTATUS[0]} != 0 ]; then
|
if [ ${PIPESTATUS[0]} != 0 ]; then
|
||||||
addons_failed+="$addon "
|
addons_failed+="$addon "
|
||||||
printf "$(print_color CLR_ERROR "ADDON FAILED $addon")\n" ' '>&$SILENT_OUT
|
echo "$(print_color CLR_ERROR "ADDON FAILED $addon")" >&$SILENT_OUT
|
||||||
echo "failed: ${addon}" >> $summary_file
|
echo "failed: ${addon}" >> $summary_file
|
||||||
else
|
else
|
||||||
if [ "$remove_success_logs" = "true" ]; then
|
if [ "$remove_success_logs" = "true" ]; then
|
||||||
@ -321,10 +321,9 @@ fi
|
|||||||
# print summary
|
# print summary
|
||||||
if [ "$_count" != 'x' ]; then
|
if [ "$_count" != 'x' ]; then
|
||||||
if [ -z "$addons_failed" ]; then
|
if [ -z "$addons_failed" ]; then
|
||||||
printf "$(print_color CLR_INFO "ALL ADDONS BUILDS SUCCESSFUL")\n"
|
echo "$(print_color CLR_INFO "ALL ADDONS BUILDS SUCCESSFUL")"
|
||||||
exit 0
|
exit 0
|
||||||
else
|
else
|
||||||
printf "$(print_color CLR_ERROR "FAILED ADDONS: $addons_failed")\n"
|
die "$(print_color CLR_ERROR "FAILED ADDONS: $addons_failed")"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -2,16 +2,17 @@
|
|||||||
|
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||||
|
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
. config/options $1
|
. config/options $1
|
||||||
|
|
||||||
if [ -z "$2" ]; then
|
if [ -z "$2" ]; then
|
||||||
echo "usage: $0 package_name target_dir"
|
die "usage: $0 package_name target_dir"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ -z "$PKG_URL" -o -z "$PKG_SOURCE_NAME" ] && exit 1
|
[ -z "$PKG_URL" -o -z "$PKG_SOURCE_NAME" ] && die "$PKG_NAME: PKG_URL or PKG_SOURCE_NAME undefined"
|
||||||
[ ! -d "$SOURCES/$1" -o ! -d "$2" ] && exit 1
|
[ ! -d "$SOURCES/$1" ] && die "$PKG_NAME: $SOURCES/$1 not found"
|
||||||
|
[ ! -d "$2" ] && die "$PKG_NAME: target $2 not found"
|
||||||
|
|
||||||
if [[ ${PKG_URL} =~ ^file:// ]]; then
|
if [[ ${PKG_URL} =~ ^file:// ]]; then
|
||||||
FULL_SOURCE_PATH="$PKG_SOURCE_NAME"
|
FULL_SOURCE_PATH="$PKG_SOURCE_NAME"
|
||||||
@ -22,11 +23,11 @@ fi
|
|||||||
if [ ! -f "$FULL_SOURCE_PATH" -a ! -d "$FULL_SOURCE_PATH" ]; then
|
if [ ! -f "$FULL_SOURCE_PATH" -a ! -d "$FULL_SOURCE_PATH" ]; then
|
||||||
echo "error: File $PKG_SOURCE_NAME doesn't exist for package $1"
|
echo "error: File $PKG_SOURCE_NAME doesn't exist for package $1"
|
||||||
echo "Have you called scripts/extract before scripts/get ?"
|
echo "Have you called scripts/extract before scripts/get ?"
|
||||||
exit 1
|
die
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# The build system expects packages to be extracted to
|
# The build system expects packages to be extracted to
|
||||||
# $BUILD/$PKG_NAME-$PKG_VERSION.
|
# $PKG_BUILD.
|
||||||
# Try to strip the top level dir from the archive and extract to
|
# Try to strip the top level dir from the archive and extract to
|
||||||
# the correct directory if possible so packages don't need to
|
# the correct directory if possible so packages don't need to
|
||||||
# set PKG_SOURCE_DIR and scripts/unpack doesn't need to rename
|
# set PKG_SOURCE_DIR and scripts/unpack doesn't need to rename
|
||||||
|
@ -8,13 +8,11 @@
|
|||||||
. config/options $1
|
. config/options $1
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
echo "usage: $0 package_name"
|
die "usage: $0 package_name"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$INSTALL" ] ; then
|
if [ -z "$INSTALL" ] ; then
|
||||||
echo "error: '\$INSTALL' not set! this script is not intended to be run manually"
|
die "error: '\$INSTALL' not set! this script is not intended to be run manually"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# set defaults
|
# set defaults
|
||||||
@ -38,8 +36,7 @@ if [ -n "$PKG_ARCH" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -f $PKG_DIR/package.mk ]; then
|
if [ ! -f $PKG_DIR/package.mk ]; then
|
||||||
printf "$(print_color CLR_ERROR "${PACKAGE_NAME}: no package.mk file found")\n"
|
die "$(print_color CLR_ERROR "${PACKAGE_NAME}: no package.mk file found")"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$SCRIPTS/build $@
|
$SCRIPTS/build $@
|
||||||
|
@ -2,22 +2,21 @@
|
|||||||
|
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||||
|
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
. config/options $1
|
. config/options $1
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
echo "usage: $0 package_name"
|
die "usage: $0 package_name"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -f $PKG_DIR/package.mk ]; then
|
if [ ! -f $PKG_DIR/package.mk ]; then
|
||||||
printf "$(print_color CLR_ERROR "$1: no package.mk file found")\n"
|
die "$(print_color CLR_ERROR "$1: no package.mk file found")"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$SCRIPTS/get $1
|
$SCRIPTS/get $1
|
||||||
|
|
||||||
STAMP=$PKG_BUILD/.libreelec-unpack
|
STAMP="$PKG_BUILD/.libreelec-unpack"
|
||||||
|
|
||||||
mkdir -p $BUILD
|
mkdir -p $BUILD
|
||||||
|
|
||||||
@ -67,21 +66,21 @@ if [ -d "$SOURCES/$1" -o -d "$PKG_DIR/sources" ]; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -d $BUILD/$PKG_NAME-$PKG_VERSION ]; then
|
if [ ! -d "$PKG_BUILD" ]; then
|
||||||
if [ -n "$PKG_SOURCE_DIR" ]; then
|
if [ -n "$PKG_SOURCE_DIR" ]; then
|
||||||
mv $BUILD/$PKG_SOURCE_DIR $BUILD/$PKG_NAME-$PKG_VERSION
|
mv $BUILD/$PKG_SOURCE_DIR "$PKG_BUILD"
|
||||||
elif [ -d $BUILD/$PKG_NAME-$PKG_VERSION* ]; then
|
elif [ -d "$PKG_BUILD"* ]; then
|
||||||
mv $BUILD/$PKG_NAME-$PKG_VERSION* $BUILD/$PKG_NAME-$PKG_VERSION
|
mv "$PKG_BUILD"* "$PKG_BUILD"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -d "$PKG_DIR/sources" ]; then
|
if [ -d "$PKG_DIR/sources" ]; then
|
||||||
[ ! -d "$BUILD/${PKG_NAME}-${PKG_VERSION}" ] && mkdir -p $BUILD/${PKG_NAME}-${PKG_VERSION}
|
[ ! -d "$PKG_BUILD" ] && mkdir -p "$PKG_BUILD"
|
||||||
cp -PRf $PKG_DIR/sources/* $BUILD/${PKG_NAME}-${PKG_VERSION}
|
cp -PRf "$PKG_DIR/sources/"* "$PKG_BUILD"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$PKG_URL" ]; then
|
if [ -z "$PKG_URL" ]; then
|
||||||
mkdir -p "${BUILD}/${PKG_NAME}-${PKG_VERSION}"
|
mkdir -p "${PKG_BUILD}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$(type -t post_unpack)" = "function" ]; then
|
if [ "$(type -t post_unpack)" = "function" ]; then
|
||||||
@ -153,9 +152,9 @@ if [ -d "$SOURCES/$1" -o -d "$PKG_DIR/sources" ]; then
|
|||||||
if [ -f "$i" ]; then
|
if [ -f "$i" ]; then
|
||||||
printf "%${BUILD_INDENT}c $(print_color CLR_APPLY_PATCH "APPLY PATCH") $(print_color CLR_PATCH_DESC "${PATCH_DESC}") ${i#$ROOT/}\n" ' '>&$SILENT_OUT
|
printf "%${BUILD_INDENT}c $(print_color CLR_APPLY_PATCH "APPLY PATCH") $(print_color CLR_PATCH_DESC "${PATCH_DESC}") ${i#$ROOT/}\n" ' '>&$SILENT_OUT
|
||||||
if grep -qE '^GIT binary patch$|^rename from|^rename to' $i; then
|
if grep -qE '^GIT binary patch$|^rename from|^rename to' $i; then
|
||||||
cat $i | git apply --directory=`echo "$PKG_BUILD" | cut -f1 -d\ ` -p1 --verbose --whitespace=nowarn --unsafe-paths >&$VERBOSE_OUT
|
cat $i | git apply --directory=$(echo "$PKG_BUILD" | cut -f1 -d\ ) -p1 --verbose --whitespace=nowarn --unsafe-paths >&$VERBOSE_OUT
|
||||||
else
|
else
|
||||||
cat $i | patch -d `echo "$PKG_BUILD" | cut -f1 -d\ ` -p1 >&$VERBOSE_OUT
|
cat $i | patch -d $(echo "$PKG_BUILD" | cut -f1 -d\ ) -p1 >&$VERBOSE_OUT
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@ -166,7 +165,7 @@ if [ -d "$SOURCES/$1" -o -d "$PKG_DIR/sources" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! "$PKG_NAME" = "configtools" ] ; then
|
if [ ! "$PKG_NAME" = "configtools" ] ; then
|
||||||
for config in `find $PKG_BUILD -name config.guess | sed 's/config.guess//'`; do
|
for config in $(find "$PKG_BUILD" -name config.guess | sed 's/config.guess//'); do
|
||||||
printf "%${BUILD_INDENT}c $(print_color CLR_FIXCONFIG "FIXCONFIG") $config\n" ' '
|
printf "%${BUILD_INDENT}c $(print_color CLR_FIXCONFIG "FIXCONFIG") $config\n" ' '
|
||||||
|
|
||||||
[ -f "$config/config.guess" -a -f $TOOLCHAIN/configtools/config.guess ] && \
|
[ -f "$config/config.guess" -a -f $TOOLCHAIN/configtools/config.guess ] && \
|
||||||
@ -178,7 +177,7 @@ if [ -d "$SOURCES/$1" -o -d "$PKG_DIR/sources" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$PKG_SECTION" != "virtual" ]; then
|
if [ "$PKG_SECTION" != "virtual" ]; then
|
||||||
mkdir -p $PKG_BUILD
|
mkdir -p "$PKG_BUILD"
|
||||||
|
|
||||||
rm -f $STAMPS/$1/build_*
|
rm -f $STAMPS/$1/build_*
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user