wok-6.x annotate memtest64/receipt @ rev 25514
Add memtest64
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Thu Feb 16 14:18:05 2023 +0000 (16 months ago) |
parents | |
children | 8acc87b18a99 |
rev | line source |
---|---|
pascal@25514 | 1 # SliTaz package receipt. |
pascal@25514 | 2 |
pascal@25514 | 3 PACKAGE="memtest64" |
pascal@25514 | 4 VERSION="6.10" |
pascal@25514 | 5 CATEGORY="base-system" |
pascal@25514 | 6 SHORT_DESC="Memory failures detection tool." |
pascal@25514 | 7 MAINTAINER="pascal.bellard@slitaz.org" |
pascal@25514 | 8 LICENSE="GPL2" |
pascal@25514 | 9 TARBALL="$PACKAGE-$VERSION.zip" |
pascal@25514 | 10 WEB_SITE="https://www.memtest.org/" # https://github.com/memtest86plus/memtest86plus/ |
pascal@25514 | 11 WGET_URL="https://memtest.org/download/v$VERSION/mt86plus_${VERSION}.binaries.zip" |
pascal@25514 | 12 |
pascal@25514 | 13 # What is the latest version available today? |
pascal@25514 | 14 current_version() |
pascal@25514 | 15 { |
pascal@25514 | 16 wget -O - $WEB_SITE 2>/dev/null | \ |
pascal@25514 | 17 sed '/binaries.zip/!d;s|.*mt86plus_||;s|.binaries.zip.*||;q' |
pascal@25514 | 18 } |
pascal@25514 | 19 |
pascal@25514 | 20 asm() |
pascal@25514 | 21 { |
pascal@25514 | 22 cc -o $1.o -Wa,-a=$1.lst -c $1.S |
pascal@25514 | 23 objcopy --only-section=.text -O binary $1.o $1.bin |
pascal@25514 | 24 } |
pascal@25514 | 25 |
pascal@25514 | 26 tune_lzma() |
pascal@25514 | 27 { |
pascal@25514 | 28 file=$1 |
pascal@25514 | 29 shift |
pascal@25514 | 30 for i in lzma lz4x2 lzsa1x2 lzsa2x2 ; do |
pascal@25514 | 31 cp $stuff/*.S $stuff/pack . |
pascal@25514 | 32 sed "s/VERSION/$VERSION/;s|lzma1=|&nice=${1:-64},|" -i pack |
pascal@25514 | 33 while [ -n "$2" ]; do |
pascal@25514 | 34 sed "s|^#define PROP_$2 .*|#define PROP_$2 $3|" -i unlzma.S |
pascal@25514 | 35 shift 2 |
pascal@25514 | 36 done |
pascal@25514 | 37 sed -i "s|uncompress|un${i%x2}|" unpack.S |
pascal@25514 | 38 asm bootloader |
pascal@25514 | 39 asm unpack |
pascal@25514 | 40 cp pack pack.bak |
pascal@25514 | 41 ./pack --build bootloader.bin unpack.bin |
pascal@25514 | 42 PACKER=${i%x2} ./pack $file $file.${i%x2} |
pascal@25514 | 43 if [ $(stat -c %s $file.${i%x2}) -ge $((0x101F0)) ]; then |
pascal@25514 | 44 rm $file.${i%x2} |
pascal@25514 | 45 cp pack.bak pack |
pascal@25514 | 46 sed -e "s|^#define FLAT16.*// lzma case|#define FLAT16 0 // ${i%x2}|" -i unpack.S |
pascal@25514 | 47 asm unpack |
pascal@25514 | 48 ./pack --build bootloader.bin unpack.bin |
pascal@25514 | 49 PACKER=${i%x2} ./pack $file $file.${i%x2} |
pascal@25514 | 50 fi |
pascal@25514 | 51 mv unpack.lst unpack.lst.${i%x2} |
pascal@25514 | 52 if [ "${i#*x}" = "2" ]; then |
pascal@25514 | 53 cp pack.bak pack |
pascal@25514 | 54 sed -e "s|^#define DOUBLE_PACKED|#define DOUBLE_PACKED 1 // $i|" -i unpack.S |
pascal@25514 | 55 asm unpack |
pascal@25514 | 56 ./pack --build bootloader.bin unpack.bin |
pascal@25514 | 57 PACKER=${i%x2} ./pack $file $file.$i |
pascal@25514 | 58 mv unpack.lst unpack.lst.$i |
pascal@25514 | 59 fi |
pascal@25514 | 60 done |
pascal@25514 | 61 } |
pascal@25514 | 62 |
pascal@25514 | 63 # Rules to configure and make the package. |
pascal@25514 | 64 compile_rules() |
pascal@25514 | 65 { |
pascal@25514 | 66 tune_lzma memtest64.bin 55,mf=bt2 LC 3 PB 2 |
pascal@25514 | 67 } |
pascal@25514 | 68 |
pascal@25514 | 69 # Rules to gen a SliTaz package suitable for Tazpkg. |
pascal@25514 | 70 genpkg_rules() |
pascal@25514 | 71 { |
pascal@25514 | 72 mkdir -p $fs/boot |
pascal@25514 | 73 cp $src/memtest64.bin.lzma $fs/boot/memtest64.exe |
pascal@25514 | 74 } |
pascal@25514 | 75 |
pascal@25514 | 76 # Pre and post install commands for Tazpkg. |
pascal@25514 | 77 post_install() |
pascal@25514 | 78 { |
pascal@25514 | 79 [ -s $1/boot/isolinux/isolinux.cfg ] && |
pascal@25514 | 80 ! grep -qs 'Check 64bits memory' $1/boot/isolinux/isolinux.cfg && sed -i \ |
pascal@25514 | 81 's|LABEL md5|LABEL memtest64 mem64 ram64\ |
pascal@25514 | 82 MENU LABEL Check 64bits memory\ |
pascal@25514 | 83 KERNEL /boot/memtest64.exe\ |
pascal@25514 | 84 \n&|' $1/boot/isolinux/isolinux.cfg |
pascal@25514 | 85 true |
pascal@25514 | 86 } |