Vlad V. Teterya wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
from ports/UPDATING:
- --skip--
This upgrade procedure is for users of portupgrade. Users of other
upgrade tools should contact the author for the corresponding upgrade
method for that tool.
- --skip--
any portmaster-specific tips, Doug? :)
Yeah, don't use portmaster yet. :)
Seriously, I ran into a pretty big problem last night doing some
regression testing which I'm not sure how to address. What portmaster
does is this:
1. Get the list of dependencies for the port from build/run-depends-list.
2. Build and install any dependencies from that list that are not up
to date (or installed at all).
3. run make in the port
4. pkg_delete any existing port
5. run make install in the port
Where this gets really exciting is in the xorg-libraries port, whose
run-depends installs a whole bunch of files in the same places as
existing files from the old library, all of which are deleted by the
subsequent pkg_delete of the old port. Followed by BAM, everything
fails after that.
What I'm considering at this time is to change the default order to:
1. Get the build-depends-list
2. Build and install those
3. Run make
4. pkg_delete
5. Get the run-depends-list
6. Build and install those
7. Run make install
This would fix this particular problem, but my concern is that it
would expose other problems (namely maintainers that don't correctly
differentiate between build and run depends). I also think it's
overkill, since this is the first time we've ever run into a situation
like this, and we're not likely to run into another one any time soon.
There is also another issue in that if the -t option is used to use
all-depends-list instead of the other two, that HAS to run first, so
we'd still have this problem.
At this point I'm interested in feedback on what people think the
right answer should be here. I'll work on implementing the split of
build and run depends to see how hard it is to do (and whether it
breaks anything else), but I'm not convinced yet that I'll actually
commit it.
Meanwhile, if someone is really interested in doing the upgrade right
away, the way I'd do it is:
1. Run portmaster -l > installed-ports-list
2. Save the list of root and leaf ports
3. Download the new portmaster from http://dougbarton.us/portmaster
4. Check the help for new options -R -x and --force-config (portmaster -h)
5. pkg_delete * (seriously)
6. Use portmaster to install the (non-xorg) root ports from your list
in 1.
7. Install the x11/xorg meta-port
8. Install everything else from the list of leaf ports in 1.
hth,
Doug
--
This .signature sanitized for your protection
_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "[EMAIL PROTECTED]"