Hi,
I have a few questions about the use of Ports. There are still some things I'm having trouble with. Hopefully you guys can help me out. I have a Gentoo background and I'm used to working with Portage, so I will do some comparing along the way.

I have a few questions about the use of Ports. There are still some things I'm having trouble with. Hopefully you guys can help me out. I have a Gentoo background and I'm used to working with Portage, so I will do some comparing along the way.
- When compiling a package, several options can be enabled/disabled. In Portage I can enable/disable these compile options with USE-flags. And Portage will remember what USE-flags I used when a package was compiled. So when I have to update, I know I'm not forgetting to enable/disable certain compile options. Can Ports do this for me as well? If so, how? If not, how do I know I'm not going to mess up a package, let's say Apache or PHP, when I have to recompile, or compile an update?
- When I enable an option when I want to (re)compile a package, say LDAP support in Apache, Portage will see if some of the dependencies need to be recompiled with certain option enabled, in order to make it work and to avoid compilation errors. Can Ports do this for me? If so, how does it work? If not, how can I figure out what dependencies might cause trouble?
- I like to install precompiled packages with pkg_add whenever I can. But some packages I have to compile, because the precompiled package is missing the options I need. When I want to update installed ports, there is no way for me to see what I installed with pkg_add and what I compiled. Is there any way to distinguish these packages, so I know when to install an update from package, or to compile the update?
- When installing a package with Portage, I can ask for a list of all the dependencies that Portage intents to install. So I know exactly what is going on. If cececary, I can enable/disable some compile options, to prevent the installation of a package I don't want. Can Ports do this? If so, how. If not, how can I see what is going to be installed and why? And how can I tweak this, so I can prevent the installation of certain packages?
- In all cases, keep in mind I prefer to install precompiled pakcages. So I need to know how to handle those as well.
- All tips and pointers how to keep my FreeBSD system healthy and running smooth are most welcome.