]> granicus.if.org Git - php/commitdiff
Added mnogosearch version checking into config.m4.
authorSergey Kartashoff <gluke@php.net>
Wed, 14 Feb 2001 14:27:46 +0000 (14:27 +0000)
committerSergey Kartashoff <gluke@php.net>
Wed, 14 Feb 2001 14:27:46 +0000 (14:27 +0000)
Some proto fixes.

ext/mnogosearch/config.m4
ext/mnogosearch/php_mnogo.c

index 76bc9c86e7b5ebfe45bc55572cd95e7e5ff63213..d2e9353fbb4f9f75c21047c579b49f9a764d52aa 100644 (file)
@@ -17,14 +17,36 @@ PHP_ARG_WITH(mnogosearch,for mnoGoSearch support,
       MNOGOSEARCH_LIBDIR=$PHP_MNOGOSEARCH/lib
     fi
     
-    AC_ADD_INCLUDE($MNOGOSEARCH_INCDIR)
+    AC_MSG_CHECKING(for mnoGoSearch version)    
     
     if test -x "$MNOGOSEARCH_BINDIR/udm-config"; then
+       MNOGOSEARCH_VERSION=`$MNOGOSEARCH_BINDIR/udm-config --version`
+       MNOGOSEARCH_VERSION_ID=`$MNOGOSEARCH_BINDIR/udm-config -version-id`
+
+       if test $? -ne 0; then
+               AC_MSG_RESULT(<= 3.1.9)    
+               AC_MSG_ERROR(mnoGoSearch 3.1.10 at least required)
+       fi
+       
+       if test -l "$MNOGOSEARCH_VERSION_ID" -gt 6; then
+               AC_MSG_RESULT(<= 3.1.9)    
+               AC_MSG_ERROR(mnoGoSearch 3.1.10 at least required)
+       fi
+       
+       if test "$MNOGOSEARCH_VERSION_ID" -lt 30110; then
+               AC_MSG_RESULT(<= 3.1.9)
+               AC_MSG_ERROR(mnoGoSearch 3.1.10 at least required)
+       fi
+       
+       AC_MSG_RESULT($MNOGOSEARCH_VERSION)
+       
        PHP_EVAL_LIBLINE(`$MNOGOSEARCH_BINDIR/udm-config --libs`, MNOGOSEARCH_SHARED_LIBADD)
     else
-       AC_ADD_LIBRARY_WITH_PATH(udmsearch, $MNOGOSEARCH_LIBDIR, MNOGOSEARCH_SHARED_LIBADD)
+       AC_MSG_ERROR(udm-config script not found in $MNOGOSEARCH_BINDIR)
     fi
     
+    AC_ADD_INCLUDE($MNOGOSEARCH_INCDIR)
+    
     AC_DEFINE(HAVE_MNOGOSEARCH,1,[ ])
     
     PHP_SUBST(MNOGOSEARCH_SHARED_LIBADD)
index 7c1246fb51369f67653a32d09e47fed3a54f4ca5..e8c2d9e305e8d57d9cff0473ea6fee0fee0777d4 100644 (file)
@@ -682,12 +682,12 @@ DLEXPORT PHP_FUNCTION(udm_free_res)
 /* }}} */
 
 
-/* {{{ proto int udm_errno(int agent)
-   mnoGoSearch error number */
-DLEXPORT PHP_FUNCTION(udm_errno)
+/* {{{ proto int udm_free_agent(int agent)
+   Free mnoGoSearch session */
+DLEXPORT PHP_FUNCTION(udm_free_agent)
 {
        pval ** yyagent;
-       UDM_AGENT * Agent;
+       UDM_RESULT * Agent;
        switch(ZEND_NUM_ARGS()){
                case 1: {
                                if (zend_get_parameters_ex(1, &yyagent)==FAILURE) {
@@ -699,19 +699,20 @@ DLEXPORT PHP_FUNCTION(udm_errno)
                        WRONG_PARAM_COUNT;
                        break;
        }
-       ZEND_FETCH_RESOURCE(Agent, UDM_AGENT *, yyagent, -1, "mnoGoSearch-Agent", le_link);
-       RETURN_LONG(UdmDBErrorCode(Agent->db));
+       ZEND_FETCH_RESOURCE(Agent, UDM_RESULT *, yyagent, -1, "mnoGoSearch-agent", le_link);
+       zend_list_delete((*yyagent)->value.lval);
+       
+       RETURN_TRUE;
 }
 /* }}} */
 
 
-/* {{{ proto string udm_error(int agent)
-   mnoGoSearch error message */
-DLEXPORT PHP_FUNCTION(udm_error)
+/* {{{ proto int udm_errno(int agent)
+   Get mnoGoSearch error number */
+DLEXPORT PHP_FUNCTION(udm_errno)
 {
        pval ** yyagent;
        UDM_AGENT * Agent;
-       
        switch(ZEND_NUM_ARGS()){
                case 1: {
                                if (zend_get_parameters_ex(1, &yyagent)==FAILURE) {
@@ -724,17 +725,18 @@ DLEXPORT PHP_FUNCTION(udm_error)
                        break;
        }
        ZEND_FETCH_RESOURCE(Agent, UDM_AGENT *, yyagent, -1, "mnoGoSearch-Agent", le_link);
-       RETURN_STRING(UdmDBErrorMsg(Agent->db),1);
+       RETURN_LONG(UdmDBErrorCode(Agent->db));
 }
 /* }}} */
 
 
-/* {{{ proto int udm_free_agent(int agent)
-   Free mnoGoSearch session */
-DLEXPORT PHP_FUNCTION(udm_free_agent)
+/* {{{ proto string udm_error(int agent)
+   Get mnoGoSearch error message */
+DLEXPORT PHP_FUNCTION(udm_error)
 {
        pval ** yyagent;
-       UDM_RESULT * Agent;
+       UDM_AGENT * Agent;
+       
        switch(ZEND_NUM_ARGS()){
                case 1: {
                                if (zend_get_parameters_ex(1, &yyagent)==FAILURE) {
@@ -746,10 +748,8 @@ DLEXPORT PHP_FUNCTION(udm_free_agent)
                        WRONG_PARAM_COUNT;
                        break;
        }
-       ZEND_FETCH_RESOURCE(Agent, UDM_RESULT *, yyagent, -1, "mnoGoSearch-agent", le_link);
-       zend_list_delete((*yyagent)->value.lval);
-       
-       RETURN_TRUE;
+       ZEND_FETCH_RESOURCE(Agent, UDM_AGENT *, yyagent, -1, "mnoGoSearch-Agent", le_link);
+       RETURN_STRING(UdmDBErrorMsg(Agent->db),1);
 }
 /* }}} */