configure: add -lgdbm if needed for ndbm support
[m6w6/ext-psi] / m4 / posix / ndbm.m4
index 3d60b06dbf58ef837ae53a6318a6047f7873c320..7b04504536b60495f9dc4afebff8b5cebc95c634 100644 (file)
@@ -1,18 +1,22 @@
 PSI_CHECK_NDBM() {
-       PSI_CONFIG_POSIX(ndbm, ndbm.h)
-       
-       PHP_CHECK_FUNC_LIB(dbm_open, gdbm_compat)
-       
+       PSI_CONFIG_POSIX(ndbm, ndbm.h gdbm-ndbm.h)
+
+       PHP_CHECK_FUNC(dbm_open, gdbm_compat)
+       # See http://www.gnu.org.ua/software/gdbm/manual/html_section/gdbm_19.html
+       if expr X"$LIBS" : "X.*-lgdbm_compat" >/dev/null; then
+               LIBS="-lgdbm $LIBS"
+       fi
+
        PSI_STRUCT(datum, [
                void *dptr,
                int dsize]
        )
-       
+
        PSI_OPAQUE_TYPE(DBM)
-       
+
        PSI_CONST(DBM_INSERT, int)
        PSI_CONST(DBM_REPLACE, int)
-       
+
        PSI_DECL(void dbm_clearerr, [(DBM *db)])
        PSI_DECL(void dbm_close, [(DBM *db)])
        PSI_DECL(int dbm_delete, [(DBM *db, datum key)])