- allow to avoid deps on shared extensions on build time
[m6w6/ext-http] / php_http_cache_api.h
index 6efe1d834199cb23295f6175a112a9918cb068c0..dbbe0a2b78df9287c143b572c3e94719175cc0ee 100644 (file)
 #include "ext/standard/crc32.h"
 #include "ext/standard/sha1.h"
 #include "ext/standard/md5.h"
-#if defined(HTTP_HAVE_EXT_HASH)
-#      include "php_hash.h"
-#elif defined(HTTP_HAVE_HASH_EXT_HASH)
-#      define HTTP_HAVE_EXT_HASH
-#      include "hash/php_hash.h"
-#elif defined(HTTP_HAVE_EXT_HASH_EXT_HASH)
-#      define HTTP_HAVE_EXT_HASH
-#      include "ext/hash/php_hash.h"
+#if !HTTP_SHARED_EXT(HASH)
+#      if defined(HTTP_HAVE_EXT_HASH)
+#              include "php_hash.h"
+#      elif defined(HTTP_HAVE_HASH_EXT_HASH)
+#              define HTTP_HAVE_EXT_HASH
+#              include "hash/php_hash.h"
+#      elif defined(HTTP_HAVE_EXT_HASH_EXT_HASH)
+#              define HTTP_HAVE_EXT_HASH
+#              include "ext/hash/php_hash.h"
+#      endif
 #endif
 
 #define http_etag_digest(d, l) _http_etag_digest((d), (l))
@@ -53,7 +55,7 @@ static inline void *_http_etag_init(TSRMLS_D)
        void *ctx = NULL;
        char *mode = HTTP_G->etag.mode;
        
-#ifdef HTTP_HAVE_EXT_HASH
+#if defined(HTTP_HAVE_EXT_HASH) && !HTTP_SHARED_EXT(HASH)
        php_hash_ops *eho = NULL;
        
        if (mode && (eho = php_hash_fetch_ops(mode, strlen(mode)))) {
@@ -79,7 +81,7 @@ static inline char *_http_etag_finish(void *ctx TSRMLS_DC)
        unsigned char digest[128] = {0};
        char *etag = NULL, *mode = HTTP_G->etag.mode;
        
-#ifdef HTTP_HAVE_EXT_HASH
+#if defined(HTTP_HAVE_EXT_HASH) && !HTTP_SHARED_EXT(HASH)
        php_hash_ops *eho = NULL;
        
        if (mode && (eho = php_hash_fetch_ops(mode, strlen(mode)))) {
@@ -106,7 +108,7 @@ static inline char *_http_etag_finish(void *ctx TSRMLS_DC)
 static inline void _http_etag_update(void *ctx, const char *data_ptr, size_t data_len TSRMLS_DC)
 {
        char *mode = HTTP_G->etag.mode;
-#ifdef HTTP_HAVE_EXT_HASH
+#if defined(HTTP_HAVE_EXT_HASH) && !HTTP_SHARED_EXT(HASH)
        php_hash_ops *eho = NULL;
        
        if (mode && (eho = php_hash_fetch_ops(mode, strlen(mode)))) {