mirror of the now-defunct rocklinux.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.3 KiB

  1. build_result="$build_dir/result"
  2. pkgloop_action() {
  3. # Rebuild command line without '$cmd_maketar'
  4. #
  5. cmd_buildpkg="./scripts/Build-Pkg -$stagelevel -cfg $config"
  6. cmd_buildpkg="$cmd_buildpkg $cmd_root $cmd_prefix $pkg_name"
  7. # Build package
  8. #
  9. $cmd_buildpkg ; rc=$?
  10. # Copy *.cache file
  11. #
  12. if [ -f "$build_root/var/adm/cache/$pkg_name" ] ; then
  13. dir="$build_result/package/$pkg_tree/$pkg_name" ; mkdir -p $dir
  14. cp $build_root/var/adm/cache/$pkg_name $dir/$pkg_name.cache
  15. fi
  16. return $rc
  17. }
  18. pkgloop
  19. echo_header "Finishing build."
  20. echo_status "Creating new dependency database .."
  21. mkdir -p "$build_result/scripts"
  22. ./scripts/Create-DepDB -cachedir "$build_result/package" \
  23. > "$build_result/scripts/dep_db.txt" 2> /dev/null
  24. echo_status "Copying error logs and rock-debug data."
  25. mkdir -p $build_result/{errors,rock-debug,dep-debug}
  26. cp $build_root/var/adm/rock-debug/* $build_result/rock-debug/
  27. cp $build_root/var/adm/dep-debug/* $build_result/dep-debug/
  28. cp $build_root/var/adm/logs/*.err $build_result/errors/
  29. echo_status "Creating package database ..."
  30. admdir="build/${ROCKCFG_ID}/root/var/adm"
  31. create_package_db $admdir build/${ROCKCFG_ID}/pkgs \
  32. build/${ROCKCFG_ID}/packages.db
  33. echo_status "Creating isofs.txt file .."
  34. cat << EOT > build/${ROCKCFG_ID}/isofs.txt
  35. DISK1 $admdir/cache/ ${ROCKCFG_SHORTID}/info/cache/
  36. DISK1 $admdir/cksums/ ${ROCKCFG_SHORTID}/info/cksums/
  37. DISK1 $admdir/dependencies/ ${ROCKCFG_SHORTID}/info/dependencies/
  38. DISK1 $admdir/descs/ ${ROCKCFG_SHORTID}/info/descs/
  39. DISK1 $admdir/flists/ ${ROCKCFG_SHORTID}/info/flists/
  40. DISK1 $admdir/md5sums/ ${ROCKCFG_SHORTID}/info/md5sums/
  41. DISK1 $admdir/packages/ ${ROCKCFG_SHORTID}/info/packages/
  42. EVERY build/${ROCKCFG_ID}/packages.db ${ROCKCFG_SHORTID}/packages.db
  43. SPLIT build/${ROCKCFG_ID}/pkgs/ ${ROCKCFG_SHORTID}/pkgs/
  44. EOT
  45. echo_header "Reference build finished."
  46. cat <<- EOT > build/${ROCKCFG_ID}/result/copy-cache.sh
  47. #!/bin/sh
  48. cd $base/build/${ROCKCFG_ID}/result
  49. find package -type f | while read fn
  50. do [ -f ../../../\${fn%.cache}.desc ] && cp -v \$fn ../../../\$fn; done
  51. cd ../../..; ./scripts/Create-DepDB > scripts/dep_db.txt
  52. EOT
  53. chmod +x build/${ROCKCFG_ID}/result/copy-cache.sh
  54. echo_status "Results are stored in the directory"
  55. echo_status "build/$ROCKCFG_ID/result/."