manu%netbsd.org@localhost (Emmanuel Dreyfus) writes: > If MYSQL_VERSION_DEFAULT=MARIADB55 then some package build break, > because they expect BUILDINK_xxx.mysql-client to be defined and they get > BUILDINK_xxx.mariadb-client instead. > > Take the example of databases/php-pdo_mysql. Its Makefile features: > CONFIGURE_ARGS+=--with-${MODNAME}=shared,${BUILDLINK_PREFIX.mysql-client} > > This should be --with-pdo_mysql=shared,/usr/pkg and it becomes just > --with-pdo_mysql=shared, with the consequence that php-pdo_mysql configure > script cannot find mysql_config and aborts; > > Working around is simple, we just need to define the proper variable in the > mariadb55-client case. The patch below lets databases/php-pdo_mysql build with > MYSQL_VERSION_DEFAULT=MARIADB55. My reaction (without too much thought) is that either mariadb is a different database (as pgsql is to mysql), or it's a version of mysql (with different names, but with depending packages expecting to treat it as more-or-less mysql). mk/mysql.mk seems to indicate it is simply a version of mysql. Given that, I don't see why BUILDLINK_PREFIX.mariadb-client should even exist; it seems like we should just set BUILDLINK_TREE to mysql-client. If not, then all the variables should be copied from mariadb-client to mysql-client. I am not entirely clear on MAKEVARS, but it seems to be about memoizing computing variable contents. If there are just going to be assignments to FOO.mysql-lcient from FOO.mariadb-client, then those are as fast as reading a memoized value could be, and I don't see that it helps.
Attachment:
pgpfPV2Adau9U.pgp
Description: PGP signature