cvs commit: ports/sysutils/portmaster/files portmaster.sh.in

Doug Barton dougb at FreeBSD.org
Mon Aug 7 19:13:21 UTC 2006


dougb       2006-08-07 19:13:20 UTC

  FreeBSD ports repository

  Modified files:
    sysutils/portmaster/files portmaster.sh.in 
  Log:
  New Features
  ============
  1. -L mode to list all installed ports, and search for updates.
  2. Trap SIGINT, and use the opportunity to reap all the child processes
  we can find.
  3. Warn the user during config mode if a port sets IS_INTERACTIVE
  4. Support +IGNOREME files in /var/db/pkg/<portname>, ala portupgrade
  5. Store the results of the user's choices for -i during config, so they
  don't have to enter it again during build
  6. When deleting stale distfiles, recurse through successively shorter
  versions of file-name-* till we find something to delete, or run out
  of dashes. This means a lot fewer false positives, although the
  algorithm is still aggressive.
  
  Performance Optimizations
  =========================
  1. Skip dependency check prior to build if the 'make config' recursion
  does not find any ports that need updating.
  2. Cache the dependency list for the parent port.
  3. -s mode is now recursive, so if a removed port has dependencies,
  they are checked too. Remember what ports the user does not want to
  delete so they don't have to keep saying "no."
  4. Much better support for failed downloads in the background, and the
  'make checksum' process is only run once for each port.
  5. Switch to using variables and case rather then grep to maintain state
  for current dependencies, answers for -i, etc.
  6. Re-order some tests to micro-optimize do_update, etc.
  7. Handle regular files in /var/db/pkg more efficiently
  8. Track the pid of the parent process, and use that to manage state
  more efficiently. Also makes for more readable code.
  9. Don't clean dependencies, since we don't recurse through them using
  the ports tree, we'll let each portmaster process handle it.
  10. Cache information about dependencies that are already up to date
  to avoid having to do this check when not necessary. This dramatically
  improves performance for building/updating large ports (especially
  meta-ports like gnome or kde) with a lot of dependencies.
  
  Bug Fixes
  =========
  1. Add -f to pkg_delete in -s case
  2. Reverse the "is required by" statements to make more sense for -r
  3. Add PATCHFILES to the list of distfiles to delete when looking for
  stale distfiles
  4. Minor cleanups, and better code consistency
  5. usage() already exits, so clean up h) getopt
  6. Add a catchall getopt so user will get usage() for an invalid option
  7. Update some messages to make them more meaningful and simplify code
  8. Fix specifying second option to -o in <category/portname> format
  9. Properly handle the case where the second argument to -o is a port
  that is already installed
  10. Don't mention the 'make config' step if -G
  
  Security Enhancement
  ====================
  1. Be more careful to only delete temp files if they haven't already been
  deleted or moved
  
  Revision  Changes    Path
  1.6       +369 -115  ports/sysutils/portmaster/files/portmaster.sh.in


More information about the cvs-all mailing list