RW wrote: > On Monday 05 June 2006 12:07, Mikhail Goriachev wrote: >> RW wrote: >>> On Friday 02 June 2006 08:53, Mikhail Goriachev wrote: >>>> Jon Falconer wrote: >>>>> Greetings, >>>>> >>>>> I see in the man page for ports the following: >>>>> >>>>> reinstall Use this to restore a port after using >>>>> pkg_delete(1) when you should have used deinstall. >>>>> >>>>> So I'm wondering what is the difference between pkg_delete and using >>>>> "make deinstall" from within the ports directory? What does "make >>>>> deinstall" do that pkg_delete does not do? What does pkg_delete do that >>>>> "make deinstall" does not do? >>>> Hi, >>>> >>>> This will point you in the right direction: >>>> >>>> http://www.bsdforums.org/forums/archive/index.php/t-29467.html >>> Actually I think that points in wrong direction. There is a lot of >>> misinformation about this that is repeated ad-nauseum. >>> >>> Most ports use the standard deinstall target which calls pkg_delete; >>> there is only one port in the whole tree that defines it own deinstall >>> target, and that one installs its own versions of the pkg_* utilities. >>> >>> The port system uses a series of cookie files to keep track of what has >>> been done. For example if you type "make && make" the port will only >>> build once, because the first make sets the "build cookie". There is also >>> an Install cookie which leads to a problem when you go through the >>> sequence >>> >>> make install >>> pkg_delete >>> make install >>> >>> because pkg_delete doesn't know about the port cookies. The deinstall and >>> reinstall targets both delete the cookie and so using one or the other >>> avoids the problem. >>> >>> In practice this is virtually a non-issue since most people, and all >>> build tools, will do a make clean at some point in the sequence. >> Right, so pkg_deinstall is the way to go then, isn't? Logically, there >> is a difference between pkg_delete and pkg_deinstall. Personally, I use >> the latter. > > The question was about the difference between "make deinstall" and pkg_delete. > > pkg_deinstall (installed by the portupgrade port) is simply a ruby wrapper > for pkg_delete that provides globbing and recursion. There is no particular > correpondence between pkg_deinstall and "make deinstall" except for the > similar name.
Ah, now I see what you mean about cookies. I guess this is valid when you don't want to clean a port. In my case, I install and clean it right away... the cookie disappears in the process. make install clean pkg_deinstall make install clean Is this the only issue between pkg_delete and make deinstall? Cheers, Mikhail. -- Mikhail Goriachev Webanoide Telephone: +61 (0)3 62252501 Mobile Phone: +61 (0)4 38255158 E-Mail: [EMAIL PROTECTED] Web: http://www.webanoide.org PGP Key ID: 0x4E148A3B PGP Key Fingerprint: D96B 7C14 79A5 8824 B99D 9562 F50E 2F5D 4E14 8A3B _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"