On Mar 22, 2007, at 12:34, Mark Duling wrote:
On Thursday, March 22, 2007 at 8:49 AM, Elise van Looij wrote:
turned out I'd made two mistakes when installing mysql: I hadn't used the +server variant and I hadn't initialized the database. So I uninstalled php5 and mysql5, reinstalled mysql5 +server and followed the instructions in an old post by Ryan Schmidt on how install the main db:
[snip]
There are some hacks to for port authors to prevent this behavior I've discovered. I'd be interested to hear if there is a downside to this. But if you'd make an empty server variant for the php5 port (variant server {}), and within the mysql5 variant use "variant_set server", then I think that "port installed php5 +apache2 +mysql5" would install mysql as a dependent using the server variant. This is because when a port is installed with a variant named "foo", all dependents that have variants named "foo" are installed using the variant.
Rather than litter the php5 port with variants that do not relate to it, I would prefer that the mysql5 +server variant be moved to a new mysql5-server port, which would depend on the mysql5 port. php5 would continue to depend on the mysql5 port, not the mysql5-server port, since php5 does not require there to be a mysql5 server, but those who then discover that they want to run a mysql5 server can simply install the mysql5-server port which will be much quicker for them than uninstalling and recompiling all of mysql5. See the postgresql82- server port for an example.