From 0f91fcefbb85504a1ed7c940d6b91562230583d0 Mon Sep 17 00:00:00 2001 From: Clifford Wolf Date: Sat, 24 Dec 2005 14:54:12 +0000 Subject: [PATCH] Clifford Wolf: Also create packages.db.md5, packages_stripped.db and packages_stripped.db.md5 from Build-Target [2005121214582528422] (https://www.rocklinux.net/submaster) git-svn-id: http://www.rocklinux.org/svn/rock-linux/trunk@6773 c5f82cb5-29bc-0310-9cd0-bff59a50e3bc --- scripts/functions | 37 +++++++++++++++++++++++++++---------- target/crystal/build.sh | 6 ++---- target/epiam/build.sh | 3 +-- target/generic/build.sh | 3 +-- target/reference/build.sh | 3 +-- 5 files changed, 32 insertions(+), 20 deletions(-) diff --git a/scripts/functions b/scripts/functions index 7a3a7a1ed..631aa6ef2 100644 --- a/scripts/functions +++ b/scripts/functions @@ -518,14 +518,20 @@ register_xdm() { # Create Package Database for gasgui install tool # create_package_db() { - rm -f $3 $3.tmp - for file in $( ls $1/descs/ ) ; do + local admdir="$1" + local outdir="$2" + + rm -f $outdir/packages.db $outdir/packages_stripped.db + rm -f $outdir/packages.db.md5 $outdir/packages_stripped.db.md5 + rm -f $outdir/packages.db.tmp + + for file in $( ls $admdir/descs/ ) ; do pkg="${file##*/}" # only include the package if a binary file is available if [ "$ROCKCFG_PKGFILE_VER" = 1 ] ; then v=-$(grep '^Package Name and Version' \ - $1/packages/$pkg | cut -f6,7 -d' ' | tr ' ' -) + $admdir/packages/$pkg | cut -f6,7 -d' ' | tr ' ' -) else v="" fi @@ -535,27 +541,38 @@ create_package_db() { bfile=${pkg}${v}.tar.bz2 fi - if [ -e $2/$bfile ] ; then + if [ -e $outdir/$bfile ] ; then [ "$pkg" = TRANS.TBL ] && continue ( echo -e "$pkg" echo -e "\027" - cat $1/descs/$pkg + cat $admdir/descs/$pkg echo -e "\027" - cat $1/dependencies/$pkg + cat $admdir/dependencies/$pkg echo -e "\027" - cat $1/cksums/$pkg + cat $admdir/cksums/$pkg echo -e "\027" echo -e "\004" - ) >> $3.tmp + ) >> $outdir/packages.db.tmp fi done - gzip -c $3.tmp > $3 - rm -f $3.tmp + + gawk ' + BEGIN { chunk=0; } + $0 == "\004" { chunk=0; print; next; } + $0 == "\027" { chunk++; print; next; } + chunk != 3 { print; } + ' < $outdir/packages.db.tmp | gzip -9 > $outdir/packages_stripped.db + + gzip -9 < $outdir/packages.db.tmp > $outdir/packages.db + rm -f $outdir/packages.db.tmp + + ( cd $outdir; md5sum packages.db > packages.db.md5; ) + ( cd $outdir; md5sum packages_stripped.db > packages_stripped.db.md5; ) } # Add files to the 'badfiles' list diff --git a/target/crystal/build.sh b/target/crystal/build.sh index 17309bc78..ac59c1e2d 100644 --- a/target/crystal/build.sh +++ b/target/crystal/build.sh @@ -46,13 +46,11 @@ done | xargs -r rm echo_status "Creating package database (everything) ..." admdir="build/${ROCKCFG_ID}/var/adm" -create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs \ - build/${ROCKCFG_ID}/ROCK/pkgs/packages.db +create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs echo_status "Creating package database (install media) ..." admdir="build/${ROCKCFG_ID}/ROCK/info_sel" -create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs_sel \ - build/${ROCKCFG_ID}/ROCK/pkgs_sel/packages.db +create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs_sel echo_status "Creating isofs.txt file .." cat << EOT > build/${ROCKCFG_ID}/ROCK/isofs.txt diff --git a/target/epiam/build.sh b/target/epiam/build.sh index 1e4a77b64..bb1be8480 100644 --- a/target/epiam/build.sh +++ b/target/epiam/build.sh @@ -9,8 +9,7 @@ echo_header "Finishing build." echo_status "Creating package database ..." admdir="build/${ROCKCFG_ID}/root/var/adm" -create_package_db $admdir build/${ROCKCFG_ID}/pkgs \ - build/${ROCKCFG_ID}/packages.db +create_package_db $admdir build/${ROCKCFG_ID}/pkgs echo_status "Creating isofs.txt file .." cat << EOT > build/${ROCKCFG_ID}/isofs.txt diff --git a/target/generic/build.sh b/target/generic/build.sh index 7b0370920..d650830c4 100755 --- a/target/generic/build.sh +++ b/target/generic/build.sh @@ -9,8 +9,7 @@ echo_header "Finishing build." echo_status "Creating package database ..." admdir="build/${ROCKCFG_ID}/var/adm" -create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs \ - build/${ROCKCFG_ID}/ROCK/pkgs/packages.db +create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs echo_status "Creating isofs.txt file .." cat << EOT > build/${ROCKCFG_ID}/ROCK/isofs.txt diff --git a/target/reference/build.sh b/target/reference/build.sh index 456a7137f..d78a2b035 100644 --- a/target/reference/build.sh +++ b/target/reference/build.sh @@ -34,8 +34,7 @@ cp $build_root/var/adm/logs/*.err $build_result/errors/ 2> /dev/null echo_status "Creating package database ..." admdir="build/${ROCKCFG_ID}/var/adm" -create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs \ - build/${ROCKCFG_ID}/ROCK/pkgs/packages.db +create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs echo_status "Creating isofs.txt file .." cat << EOT > build/${ROCKCFG_ID}/ROCK/isofs.txt