diff --git a/CHANGES b/CHANGES index 9e3b49fbc5..e18f868ff7 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,7 @@ +2381. [port] dlz/mysql: support multiple install layouts for + mysql. /include/{,mysql/}mysql.h and + /lib/{,mysql/}. [RT #18152] + 2380. [bug] dns_view_find() was not returning NXDOMAIN/NXRRSET proofs which, in turn, caused validation failures for insecure zones immediately below a secure zone diff --git a/contrib/dlz/config.dlz.in b/contrib/dlz/config.dlz.in index 0e4b2e580b..a186eed5b9 100644 --- a/contrib/dlz/config.dlz.in +++ b/contrib/dlz/config.dlz.in @@ -123,6 +123,8 @@ AC_ARG_WITH(dlz_mysql, (Required to use MySQL with DLZ)], use_dlz_mysql="$withval", use_dlz_mysql="no") +mysql_include="" +mysql_lib="" if test "$use_dlz_mysql" = "yes" then # User did not specify a path - guess it @@ -132,9 +134,49 @@ then if test -f $d/include/mysql/mysql.h then use_dlz_mysql=$d + mysql_include=$d/include/mysql + if test -d $d/lib/mysql + then + mysql_lib=$d/lib/mysql + else + mysql_lib=$d/lib + fi + break + elif test -f $d/include/mysql.h + then + use_dlz_mysql=$d + mysql_include=$d/include + if test -d $d/lib/mysql + then + mysql_lib=$d/lib/mysql + else + mysql_lib=$d/lib + fi break fi done +elif test "$use_dlz_mysql" != "no" +then + d = $use_dlz_mysql + if test -f $d/include/mysql/mysql.h + then + mysql_include=$d/include/mysql + if test -d $d/lib/mysql + then + mysql_lib=$d/lib/mysql + else + mysql_lib=$d/lib + fi + elif test -f $d/include/mysql.h + then + mysql_include=$d/include + if test -d $d/lib/mysql + then + mysql_lib=$d/lib/mysql + else + mysql_lib=$d/lib + fi + fi fi if test "$use_dlz_mysql" = "yes" @@ -150,11 +192,11 @@ case "$use_dlz_mysql" in ;; *) DLZ_ADD_DRIVER(MYSQL, dlz_mysql_driver, - [-I$use_dlz_mysql/include/mysql], - [-L$use_dlz_mysql/lib/mysql -lmysqlclient -lz -lcrypt -lm]) + [-I${mysql_include}], + [-L${mysql_lib} -lmysqlclient -lz -lcrypt -lm]) AC_MSG_RESULT( -[using mysql from $use_dlz_mysql/lib/mysql and $use_dlz_mysql/include/mysql]) +[using mysql from ${mysql_lib} and ${mysql_include}]) ;; esac