Rethink conditions

Raise the requirement to ICU 56. Mixing both old and new normalizer APIs
would create too much complexity. Therefore go by the recommended ICU
version where all the normalizer API became stable. For the older ICU,
the deprecated normalizer API is used.
This commit is contained in:
Anatol Belski 2018-04-06 21:33:13 +02:00
parent 39301abbe1
commit 14de058086
6 changed files with 10 additions and 11 deletions

View file

@ -51,7 +51,7 @@ void normalizer_register_constants( INIT_FUNC_ARGS )
NORMALIZER_EXPOSE_CLASS_CONST( NFC );
NORMALIZER_EXPOSE_CLASS_CONST( FORM_KC );
NORMALIZER_EXPOSE_CLASS_CONST( NFKC );
#if U_ICU_VERSION_MAJOR_NUM >= 49
#if U_ICU_VERSION_MAJOR_NUM >= 56
NORMALIZER_EXPOSE_CLASS_CONST( FORM_KC_CF );
NORMALIZER_EXPOSE_CLASS_CONST( NFKC_CF );
#endif

View file

@ -19,7 +19,7 @@
#include <php.h>
#include <unicode/utypes.h>
#if U_ICU_VERSION_MAJOR_NUM < 49
#if U_ICU_VERSION_MAJOR_NUM < 56
#include <unicode/unorm.h>
#define NORMALIZER_NONE UNORM_NONE

View file

@ -34,7 +34,7 @@ ZEND_BEGIN_ARG_INFO_EX( normalizer_args, 0, 0, 1 )
ZEND_ARG_INFO( 0, form )
ZEND_END_ARG_INFO()
#if U_ICU_VERSION_MAJOR_NUM >= 49
#if U_ICU_VERSION_MAJOR_NUM >= 56
ZEND_BEGIN_ARG_INFO_EX( decomposition_args, 0, 0, 1 )
ZEND_ARG_INFO( 0, input )
ZEND_END_ARG_INFO();
@ -49,7 +49,7 @@ ZEND_END_ARG_INFO();
static const zend_function_entry Normalizer_class_functions[] = {
ZEND_FENTRY( normalize, ZEND_FN( normalizer_normalize ), normalizer_args, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC )
ZEND_FENTRY( isNormalized, ZEND_FN( normalizer_is_normalized ), normalizer_args, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC )
#if U_ICU_VERSION_MAJOR_NUM >= 49
#if U_ICU_VERSION_MAJOR_NUM >= 56
ZEND_FENTRY( getRawDecomposition, ZEND_FN( normalizer_get_raw_decomposition ), decomposition_args, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC )
#endif
PHP_FE_END

View file

@ -21,8 +21,7 @@
#include "php_intl.h"
#if U_ICU_VERSION_MAJOR_NUM < 56
#include "unicode/unorm.h"
#endif
#if U_ICU_VERSION_MAJOR_NUM >= 49
#else
#include <unicode/unorm2.h>
#endif
#include "normalizer.h"
@ -34,7 +33,7 @@
#endif
#if U_ICU_VERSION_MAJOR_NUM >= 49
#if U_ICU_VERSION_MAJOR_NUM >= 56
static const UNormalizer2 *intl_get_normalizer(zend_long form, UErrorCode *err)
{/*{{{*/
switch (form)
@ -345,7 +344,7 @@ PHP_FUNCTION( normalizer_is_normalized )
/* {{{ proto string|null normalizer_get_raw_decomposition( string $input [, string $form = FORM_C] )
* Returns the Decomposition_Mapping property for the given UTF-8 encoded code point.
*/
#if U_ICU_VERSION_MAJOR_NUM >= 49
#if U_ICU_VERSION_MAJOR_NUM >= 56
PHP_FUNCTION( normalizer_get_raw_decomposition )
{
char* input = NULL;

View file

@ -21,7 +21,7 @@
PHP_FUNCTION( normalizer_normalize );
PHP_FUNCTION( normalizer_is_normalized );
#if U_ICU_VERSION_MAJOR_NUM >= 49
#if U_ICU_VERSION_MAJOR_NUM >= 56
PHP_FUNCTION( normalizer_get_raw_decomposition );
#endif

View file

@ -206,7 +206,7 @@ ZEND_BEGIN_ARG_INFO_EX(normalizer_args, 0, 0, 1)
ZEND_ARG_INFO(0, form)
ZEND_END_ARG_INFO()
#if U_ICU_VERSION_MAJOR_NUM >= 49
#if U_ICU_VERSION_MAJOR_NUM >= 56
ZEND_BEGIN_ARG_INFO_EX(decomposition_args, 0, 0, 1)
ZEND_ARG_INFO(0, input)
ZEND_END_ARG_INFO();
@ -668,7 +668,7 @@ static const zend_function_entry intl_functions[] = {
/* normalizer functions */
PHP_FE( normalizer_normalize, normalizer_args )
PHP_FE( normalizer_is_normalized, normalizer_args )
#if U_ICU_VERSION_MAJOR_NUM >= 49
#if U_ICU_VERSION_MAJOR_NUM >= 56
PHP_FE( normalizer_get_raw_decomposition, decomposition_args )
#endif