Portmaster 2.7-RC1 ready for testing

Doug Barton dougb at FreeBSD.org
Mon Jan 26 16:41:23 PST 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160

Howdy!

It's been almost exactly 6 months since the last portmaster release,
which in my mind is a good thing. :)  I do have a new version ready
for those who would like to give it a try before I commit it.

It would be especially useful if those who've been bitten by the
"portmaster deletes my java distfiles" problem could give it a try.

The patch to the port is here:
http://dougbarton.us/Downloads/portmaster-2.7-RC1.diff

Here is what will probably be the commit message:

New Feature
===========
1. Add --check-port-dbdir to clean stale entries from /var/db/ports [1]
Since the definition of PORT_DBDIR is now used in more than one place,
add it to the initialization routine at the top.


General Improvements
====================
1. Add a 'nonfatal' option to find_moved_port() so that when it's
called in a context where we don't care about a port that has been
deleted (such as distfile listing) it doesn't exit. Add some code to
that function
to tell -L that the port has been deleted.
2. Deal with ports that require user interaction to fetch by checking
first whether MASTER_SITES is empty before running 'make checksum'.
This should solve the problem of portmaster unintentionally deleting
the distfiles for java ports, inter alia. [2]
3. Improve kill_bad_children() by using process group id [3]
4. Don't call kill_bad_children() in safe_exit() unless there is a reason.
a. Implement this for the distinfo child process by flagging the first
line of the file and checking for a file with -s instead of just -e.
b. Implement this for -F mode by flagging when all the background
processes have finished.
This should result in less of those annoying 'Terminated' messages
5. Move the start of read_distinfos() until after we are sure that we
are going to try building the port.


Small Fixups
============
1. When update_contents() finds something odd when updating a port
suggest using --check-depends to clean it up.
2. In check_for_update() avoid having variables that differ only by case
3. In update_port() recurse with just the port to update [3]
4. In dependency_check() run check_interactive() for installed
versions that need updating.
5. Update copyright


Concept by:             RW <fbsd06 at mlists.homeunix.com> [1]
Fix Suggested by:       ale [2]
Suggested by:           Geraint Edwards <gedge at yadn.org> [3]


Enjoy!

Doug

- --

    This .signature sanitized for your protection

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.10 (FreeBSD)

iEYEAREDAAYFAkl+WC8ACgkQyIakK9Wy8PsePACgn+ImR9Va2SqNoRXfVFTL7rXj
4LEAnRYwM7NTUturAzqNs/3ks8j0ZjEC
=NW6r
-----END PGP SIGNATURE-----


More information about the freebsd-ports mailing list