summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Carlier <devnexen@gmail.com>2018-01-15 22:07:10 +0000
committerAnatol Belski <ab@php.net>2018-01-25 18:28:55 +0100
commite7da9685cf7e0c0a33c5e55b9dddb6cbe8e88d48 (patch)
treeed3b47fe97f9713e7308516586ab8b0de9734bb1
parent93185218e146a23c759d3ce3939e4ac46e82475b (diff)
downloadphp-git-e7da9685cf7e0c0a33c5e55b9dddb6cbe8e88d48.tar.gz
Tidy extension update to be able to either use tidy or tidyp at configure time
-rw-r--r--ext/tidy/config.m434
-rw-r--r--ext/tidy/config.w321
-rw-r--r--ext/tidy/tidy.c12
3 files changed, 38 insertions, 9 deletions
diff --git a/ext/tidy/config.m4 b/ext/tidy/config.m4
index 88463fa8d4..7a45af954f 100644
--- a/ext/tidy/config.m4
+++ b/ext/tidy/config.m4
@@ -14,13 +14,19 @@ if test "$PHP_TIDY" != "no"; then
fi
for i in $TIDY_SEARCH_DIRS; do
- if test -f $i/include/tidy/tidy.h; then
- TIDY_DIR=$i
- TIDY_INCDIR=$i/include/tidy
- elif test -f $i/include/tidy.h; then
- TIDY_DIR=$i
- TIDY_INCDIR=$i/include
- fi
+ for j in tidy tidyp; do
+ if test -f $i/include/$j/$j.h; then
+ TIDY_DIR=$i
+ TIDY_INCDIR=$i/include/$j
+ TIDY_LIB_NAME=$j
+ break
+ elif test -f $i/include/$j.h; then
+ TIDY_DIR=$i
+ TIDY_INCDIR=$i/include
+ TIDY_LIB_NAME=$j
+ break
+ fi
+ done
done
if test -z "$TIDY_DIR"; then
@@ -36,9 +42,14 @@ if test "$PHP_TIDY" != "no"; then
fi
TIDY_LIBDIR=$TIDY_DIR/$PHP_LIBDIR
+ if test "$TIDY_LIB_NAME" == 'tidyp'; then
+ AC_DEFINE(HAVE_TIDYP_H,1,[defined if tidyp.h exists])
+ else
+ AC_DEFINE(HAVE_TIDY_H,1,[defined if tidy.h exists])
+ fi
- TIDY_LIB_NAME=tidy
- PHP_CHECK_LIBRARY(tidy,tidyOptGetDoc,
+
+ PHP_CHECK_LIBRARY($TIDY_LIB_NAME,tidyOptGetDoc,
[
AC_DEFINE(HAVE_TIDYOPTGETDOC,1,[ ])
],[
@@ -49,6 +60,11 @@ if test "$PHP_TIDY" != "no"; then
], [], [])
],[])
+ PHP_CHECK_LIBRARY($TIDY_LIB_NAME,tidyReleaseDate,
+ [
+ AC_DEFINE(HAVE_TIDYRELEASEDATE,1,[ ])
+ ], [], [])
+
PHP_ADD_LIBRARY_WITH_PATH($TIDY_LIB_NAME, $TIDY_LIBDIR, TIDY_SHARED_LIBADD)
PHP_ADD_INCLUDE($TIDY_INCDIR)
diff --git a/ext/tidy/config.w32 b/ext/tidy/config.w32
index 654c1590c9..9b62db950b 100644
--- a/ext/tidy/config.w32
+++ b/ext/tidy/config.w32
@@ -17,6 +17,7 @@ if (PHP_TIDY != "no") {
EXTENSION("tidy", "tidy.c");
AC_DEFINE('HAVE_TIDY', 1, 'Have TIDY library');
+ AC_DEFINE('HAVE_TIDY_H', 1, "tidy include header")
ADD_FLAG('CFLAGS_TIDY', '/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1');
if (!PHP_TIDY_SHARED) {
ADD_DEF_FILE("ext\\tidy\\php_tidy.def");
diff --git a/ext/tidy/tidy.c b/ext/tidy/tidy.c
index 75c7a3f6c1..9cc0699a58 100644
--- a/ext/tidy/tidy.c
+++ b/ext/tidy/tidy.c
@@ -30,7 +30,11 @@
#include "php_ini.h"
#include "ext/standard/info.h"
+#if HAVE_TIDY_H
#include "tidy.h"
+#elif HAVE_TIDYP_H
+#include "tidyp.h"
+#endif
#if HAVE_TIDYBUFFIO_H
#include "tidybuffio.h"
@@ -1073,8 +1077,12 @@ static PHP_MINFO_FUNCTION(tidy)
php_info_print_table_header(2, "Tidy support", "enabled");
#if HAVE_TIDYBUFFIO_H
php_info_print_table_row(2, "libTidy Version", (char *)tidyLibraryVersion());
+#elif HAVE_TIDYP_H
+ php_info_print_table_row(2, "libTidy Version", (char *)tidyVersion());
#endif
+#if HAVE_TIDYRELEASEDATE
php_info_print_table_row(2, "libTidy Release", (char *)tidyReleaseDate());
+#endif
php_info_print_table_row(2, "Extension Version", PHP_TIDY_VERSION " ($Id$)");
php_info_print_table_end();
@@ -1342,7 +1350,11 @@ static PHP_FUNCTION(tidy_get_release)
return;
}
+#if HAVE_TIDYRELEASEDATE
RETURN_STRING((char *)tidyReleaseDate());
+#else
+ RETURN_STRING((char *)"unknown");
+#endif
}
/* }}} */