cvs: /php3 configure.in

From: Date: Mon, 03 Jan 2000 18:25:28 +0000
Subject: cvs: /php3 configure.in
Groups: php.dev 
Request: Send a blank email to php-dev+get-14233@lists.php.net to get a copy of this message
kk Mon Jan 3 13:25:28 2000 EDT Modified files: /php3 configure.in Log: In Suse Linux, mysql.h is located in /usr/include/mysql and libmysqlclient.(a|so) is located in /usr/lib. That is, one must not assume identical path prefixes for include and library directories. I hope the following detection mechanism is general enough to be converted into an aclocal type macro (Sascha, are you interested), as the detection mechanism for many libraries is currently quite crude. Anyway, this should fix the Suse build problem. Index: php3/configure.in diff -u php3/configure.in:1.484 php3/configure.in:1.485 --- php3/configure.in:1.484 Fri Dec 31 21:30:52 1999 +++ php3/configure.in Mon Jan 3 13:25:27 2000 @@ -1,4 +1,4 @@ -dnl $Id: configure.in,v 1.484 2000/01/01 02:30:52 sas Exp $ +dnl $Id: configure.in,v 1.485 2000/01/03 18:25:27 kk Exp $ dnl Process this file with autoconf to produce a configure script. AC_INIT(main.c) @@ -1371,7 +1371,6 @@ AC_SUBST(SYBASE_CT_LFLAGS) AC_SUBST(SYBASE_CT_INCLUDE) - AC_MSG_CHECKING(for MySQL support) AC_ARG_WITH(mysql, [ --with-mysql[=DIR] Include MySQL support. DIR is the MySQL base @@ -1379,38 +1378,71 @@ a number of common places for the MySQL files.], [ if test "$withval" != "no"; then - if test "$withval" = "yes"; then - if test -f /usr/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/include/mysql - MYSQL_LIBDIR=/usr/lib/mysql - elif test -f /usr/include/mysql.h; then - MYSQL_INCDIR=/usr/include - MYSQL_LIBDIR=/usr/lib - elif test -f /usr/local/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/local/include/mysql - MYSQL_LIBDIR=/usr/local/lib/mysql - elif test -f /usr/local/include/mysql.h; then - MYSQL_INCDIR=/usr/local/include - MYSQL_LIBDIR=/usr/local/lib - elif test -f /usr/local/mysql/include/mysql/mysql.h; then - MYSQL_INCDIR=/usr/local/mysql/include/mysql - MYSQL_LIBDIR=/usr/local/mysql/lib/mysql - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid MySQL directory - unable to find mysql.h) - fi - else - if test -f $withval/include/mysql/mysql.h; then - MYSQL_INCDIR=$withval/include/mysql - MYSQL_LIBDIR=$withval/lib/mysql - elif test -f $withval/include/mysql.h; then - MYSQL_INCDIR=$withval/include - MYSQL_LIBDIR=$withval/lib - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(Invalid MySQL directory - unable to find mysql.h under $withval) - fi - fi + if test "$withval" = "yes"; then + # Autodetect + for w in /usr/include /usr/local/include /usr/mysql /usr/local/mysql /opt /opt/mysql; do + # check for plain setups + if test -f $w/mysql.h; then + MYSQL_INCDIR=$w + break + fi + # check for "/usr/include/<packagename>" type setups + if test -f $w/mysql/mysql.h; then + MYSQL_INCDIR=$w/mysql + break + fi + # check for "/usr/<packagename>/include" type setups + if test -f $w/mysql/include/mysql.h; then + MYSQL_INCDIR=$w/mysql/include + break + fi + done + + for w in /usr/lib /usr/local/lib /usr/mysql /usr/local/mysql /opt /opt/mysql; do + # check for plain setups + if test -f $w/libmysqlclient.a -o -f $w/libmysqlclient.so; then + MYSQL_LIBDIR=$w + break + fi + # check for "/usr/lib/<packagename>" type setups + if test -f $w/mysql/libmysqlclient.a -o -f $w/mysql/libmysqlclient.so; then + MYSQL_LIBDIR=$w/mysql + break + fi + # check for "/usr/<packagename>/lib" type setups + if test -f $w/mysql/lib/libmysqlclient.a -o -f $w/mysql/lib/libmysqlclient.so; then + MYSQL_LIBDIR=$w/mysql/lib + break + fi + done + else + # Manual detection for <withval>/include/<packagename> + # and <withval>/include. + if test -f $withval/include/mysql/mysql.h; then + MYSQL_INCDIR=$withval/include/mysql + elif test -f $withval/include/mysql.h; then + MYSQL_INCDIR=$withval/include + fi + + # Manual detection for <withval>/lib/<packagename> + # and <withval>/lib. + if test -f $withval/lib/mysql/libmysqlclient.a -o -f $withval/lib/mysql/libmysqlclient.so; then + MYSQL_LIBDIR=$withval/lib/mysql + elif test -f $withval/lib/libmysqlclient.a -o -f $withval/lib/libmysqlclient.so; then + MYSQL_LIBDIR=$withval/lib + fi + fi + + ## Did we find anything? + if test -z "$MYSQL_LIBDIR" ; then + AC_MSG_RESULT(no) + AC_MSG_ERROR(Invalid MySQL directory - unable to find libmysqlclient.a or libmysqlclient.so.) + fi + if test -z "$MYSQL_INCDIR" ; then + AC_MSG_RESULT(no) + AC_MSG_ERROR(Invalid MySQL directory - unable to find mysql.h.) + fi + AC_ADD_LIBRARY_WITH_PATH(mysqlclient, $MYSQL_LIBDIR) AC_ADD_INCLUDE($MYSQL_INCDIR)

« previous php.dev (#14233) next »