mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-28 13:16:41 +00:00
buildsys: use md5deep to check if package has changed
This commit is contained in:
parent
5f6b9e46e8
commit
a817547eb6
@ -53,9 +53,15 @@ STAMP=$STAMPS/$PACKAGE_NAME/build_$TARGET
|
|||||||
|
|
||||||
$SCRIPTS/unpack $PACKAGE_NAME
|
$SCRIPTS/unpack $PACKAGE_NAME
|
||||||
|
|
||||||
if [ -f $STAMP -a $PKG_DIR/package.mk -nt $STAMP ]; then
|
STAMP_DEPENDS="$PKG_DIR $PKG_NEED_UNPACK $PROJECT_DIR/$PROJECT/patches/$PKG_NAME"
|
||||||
|
|
||||||
|
if [ -f $STAMP ] ; then
|
||||||
|
. $STAMP
|
||||||
|
PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1)
|
||||||
|
if [ ! "$PKG_DEEPMD5" = "$STAMP_PKG_DEEPMD5" ] ; then
|
||||||
rm -f $STAMP
|
rm -f $STAMP
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
if [ ! -f $STAMP ]; then
|
if [ ! -f $STAMP ]; then
|
||||||
rm -f $STAMP
|
rm -f $STAMP
|
||||||
@ -358,7 +364,8 @@ if [ ! -f $STAMP ]; then
|
|||||||
$SED "s:\(['= ]\)/usr:\\1$SYSROOT_PREFIX/usr:g" $i; \
|
$SED "s:\(['= ]\)/usr:\\1$SYSROOT_PREFIX/usr:g" $i; \
|
||||||
done
|
done
|
||||||
|
|
||||||
for i in `sed -n "s/^\([^#].*\)=\".*$/\1/p" $PROJECT_DIR/$PROJECT/options | grep -v "#"`; do
|
PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1)
|
||||||
|
for i in PKG_NAME PKG_DEEPMD5; do
|
||||||
eval val=\$$i
|
eval val=\$$i
|
||||||
echo "STAMP_$i=\"$val\"" >> $STAMP
|
echo "STAMP_$i=\"$val\"" >> $STAMP
|
||||||
done
|
done
|
||||||
|
@ -38,36 +38,19 @@ mkdir -p $BUILD
|
|||||||
|
|
||||||
[ ! -d "$SOURCES/$1" -a ! -d "$PKG_DIR/sources" ] && exit 0
|
[ ! -d "$SOURCES/$1" -a ! -d "$PKG_DIR/sources" ] && exit 0
|
||||||
|
|
||||||
|
STAMP_DEPENDS="$PKG_DIR $PKG_NEED_UNPACK $PROJECT_DIR/$PROJECT/patches/$PKG_NAME"
|
||||||
|
|
||||||
for i in $BUILD/$1-*; do
|
for i in $BUILD/$1-*; do
|
||||||
if [ -d $i -a -f "$i/.openelec-unpack" ] ; then
|
if [ -d $i -a -f "$i/.openelec-unpack" ] ; then
|
||||||
. "$i/.openelec-unpack"
|
. "$i/.openelec-unpack"
|
||||||
if [ "$STAMP_PKG_NAME" = "$1" ]; then
|
if [ "$STAMP_PKG_NAME" = "$1" ]; then
|
||||||
# trigger unpack / full rebuild on any package.mk change
|
PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1)
|
||||||
if [ $PKG_DIR/package.mk -nt "$i/.openelec-unpack" ]; then
|
if [ ! "$PKG_DEEPMD5" = "$STAMP_PKG_DEEPMD5" ] ; then
|
||||||
CLEAN_SOURCE=yes
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
# handle $PKG_NEED_UNPACK
|
|
||||||
for file in $PKG_NEED_UNPACK; do
|
|
||||||
if [ -f "$file" -a "$file" -nt "$i/.openelec-unpack" ] ; then
|
|
||||||
CLEAN_SOURCE=yes
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
# trigger unpack / full rebuild on any patch / script / etc.. change
|
|
||||||
for file in $PKG_DIR/{patches,scripts,config}/* $PKG_DIR/patches/$PKG_VERSION/*.patch $PROJECT_DIR/$PROJECT/patches/$PKG_NAME/*.patch; do
|
|
||||||
if [ -f "$file" -a "$file" -nt "$i/.openelec-unpack" ]; then
|
|
||||||
CLEAN_SOURCE=yes
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ "$CLEAN_SOURCE" = "yes" ]; then
|
|
||||||
$SCRIPTS/clean $1
|
$SCRIPTS/clean $1
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
[ -f "$STAMP" ] && exit 0
|
[ -f "$STAMP" ] && exit 0
|
||||||
|
|
||||||
@ -165,7 +148,8 @@ done
|
|||||||
|
|
||||||
rm -f $STAMPS/$1/build_*
|
rm -f $STAMPS/$1/build_*
|
||||||
|
|
||||||
for i in PKG_NAME PKG_VERSION PKG_REV PKG_SHORTDESC PKG_LONGDESC PKG_SITE PKG_URL PKG_SECTION; do
|
PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1)
|
||||||
|
for i in PKG_NAME PKG_DEEPMD5; do
|
||||||
eval val=\$$i
|
eval val=\$$i
|
||||||
echo "STAMP_$i=\"$val"\" >> $STAMP
|
echo "STAMP_$i=\"$val\"" >> $STAMP
|
||||||
done
|
done
|
||||||
|
Loading…
x
Reference in New Issue
Block a user