1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-23 04:23:08 +00:00
freebsd-ports/ports-mgmt/portmaster
Doug Barton c05052db0c Update to version 3.0
New Features
============
1. Add an option to log actions after the run is complete. To enable
   it define PM_LOG in your rc file as the path of the file you want
   to log to. If using PM_SU_CMD make sure that the directory or file
   is writable by the unprivileged user.

2. Add the --clean-packages[-all] feature

   This works similarly to --clean-distfiles[-all] in that it searches
   the $PACKAGES directory for out of date packages, and either offers
   to delete them, or with -all deletes them without prompting. It
   also cleans out stale symlinks and empty directories.

   This necessitates moving init_packages_var() and parse_index() so
   they can be used by the new feature.

   The idea for grabbing the ORIGIN from the package's +CONTENTS file
   and checking to see if it is up to date came from:
   Alexey Markov <a.markov@complitex.ru>

3. Add an option to --clean-distfiles[-all] to allow a distfile to be
   valid if it matches ANY port in the tree, not just those installed.
   This requires building a distinfo list from all ports, so duplicate
   the relevant bits of read_distinfos() into read_distinfos_all(). The
   common elements are split into during the loop and after the loop, so
   making 4 functions total doesn't seem worth it.

   Add logic to --clean-distfiles to handle the -t option and call the
   right read_distinfos* function accordingly.

4. Add the ability to ignore failed backup package creation by setting
   PM_IGNORE_FAILED_BACKUP_PACKAGE in the environment (rc file, etc.)

5. Add the ability to skip the rebuild of the -r port by adding -R

Cleanups and Tweaks
===================
1. Finalize the deprecations of /etc/portmaster.rc, -u and -p
2. If --local-packagedir and ${LOCAL_PACKAGEDIR}/All/${new_port}.tbz
   exists just use it, don't bother dereferencing $LATEST_LINK. This
   is faster, but it also solves the problem of (for example)
   packages/Latest/perl links to perl-5.10.x, even with 5.12.x
   installed and the 5.12.x package in packages/All
3. Change the behavior of the -G option.

   In the original version of portmaster the concept of 2 distinct
   passes through the dependency tree, the first to do all the
   'make config's and the second to build everything was intrinsic to
   the design. When released publicly there were a non-trivial number
   of users who objected to the idea of 'make config' being mandatory,
   so I added the -G option to disable the whole first pass.  However
   as time went on, more and more features were added that depended on
   the first pass, so it was necessary to rethink how -G works.

   In this version, the 2-pass design is now universal, and the only
   thing -G does is suppress the actual OPTIONS dialog. This has
   several benefits:
   a. Now all features are available to -G users
   b. The new method of suppressing the OPTIONS dialog is 100%
      effective (thus it's no longer necessary to use BATCH to truly
      suppress them)
   c. The --force-config option now overrides -G so users who really
      hate OPTIONS can have -G in their rc file, but still have it
      available by using --force-config on the command line

   Lots of variables, functions, and text have been modified to
   substitute out references to "config" in favor of "first pass"
4. Use nice for the make commands that actually build stuff
5. Improve the messages for fetching and updating INDEX
6. Add some whitespace in checkdepends() after removing stale data
7. If we're doing -F don't bother to initialize $PACKAGES
8. Clean up whitespace in the code
9. Use a better, more generic method of signaling an abnormal exit
   and call safe_exit with a status of 1 from more places.

   This is likely the cause of some of the vague problem reports I have
   received in the past that include complaints of, "I used -r/f and -R
   but portmaster still rebuilt certain ports a whole bunch of times."
10. In parent_exit() if INSTALLED_LIST has content but ilist does not,
    move it over so we can display the right information about work done
11. Make parse_index() more forgiving of PORTSDIR != /usr/ports
12. If PORTSDIR exists, but isn't a ports tree, warn the user, and when
    setting PACKAGES run tests against $pd, not literal /usr/ports.
    Thanks to bf@ for these 2.
2010-08-07 23:04:57 +00:00
..
distinfo Update to version 3.0 2010-08-07 23:04:57 +00:00
Makefile Update to version 3.0 2010-08-07 23:04:57 +00:00
pkg-descr Add LICENSE information to my ports where the right answer is obvious 2010-06-14 08:22:55 +00:00