From: fess <fe...@us...> - 2004-01-15 22:32:07
|
Update of /cvsroot/wigwam/wigwam-packaging-utils In directory sc8-pr-cvs1:/tmp/cvs-serv4864 Modified Files: rebuild-package-list Log Message: make the installed files list slightly faster, and cleanup the previous speedups. Index: rebuild-package-list =================================================================== RCS file: /cvsroot/wigwam/wigwam-packaging-utils/rebuild-package-list,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- rebuild-package-list 15 Jan 2004 22:07:58 -0000 1.4 +++ rebuild-package-list 15 Jan 2004 22:32:04 -0000 1.5 @@ -7,7 +7,8 @@ Options: --deep Assume this a deep archive. - --shallow Assume this a shallow archive. [no longer works probably]" + --shallow Assume this a shallow archive. [no longer works probably] + --verbose Be verbose" package_archive_style=deep @@ -50,8 +51,8 @@ test "$got_directory" = 0 && cd "$PLAYPEN_ROOT/public" -rm -f package_list -touch package_list +rm -f package_list.$$.in +touch package_list.$$.in case $package_archive_style in shallow) @@ -90,9 +91,11 @@ bad_package_test="is_bad_package=0" fi +test x"$verbose" = x"0" || echo "$id: Generating package_list" # Produce a list of `.files' files. eval "$files_command" | +# Parse the package name and version from them. perl -ne '($p, $v) = m%/([^/]+)/([^/]+)/[^/]*files%; printf "%s %s $_", $p ||= _, $v||=_ ' | # Scan them. @@ -110,19 +113,28 @@ fi echo "$package $version" >> package_list.$$.in done -mv package_list.$$.in package_list +mv package_list.$$.in package_list || { + echo "$id: mv of package_list.$$.in to package_list failed!"; + exit 1; +} last_package_name="" # XXX: move this to another script. + +test x"$verbose" = x"0" || echo "$id: Generating installed_files" sort package_list | { while read curpackage curversion ; do if test "x$curversion" = "x$last_package_name" ; then - last_package_version=`versiontool max $curversion $last_package_version` + curpackage_versions="$curpackage_versions $curversion" + #last_package_version=`versiontool max $curversion $last_package_version` else + test x"$curpackage_versions" = x || + last_package_version=`versiontool max $curpackage_versions` echo "$last_package_name $last_package_version" last_package_name="$curpackage" - last_package_version="$curversion" + curpackage_versions="$curversion $curversion" + #last_package_version="$curversion" fi done test "x$last_package_version" = x || @@ -135,4 +147,10 @@ sed -e "s/^/$package-$version:/" fi done -} > installed_contents +} > installed_contents.$$.in + +mv installed_contents.$$.in installed_contents || { + echo "$id: mv of installed_contents.$$.in to installed_contents failed!"; + exit 1; +} + |