diff options
author | Bruno Haible <bruno@clisp.org> | 2023-04-23 13:25:42 +0200 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2023-04-23 13:35:30 +0200 |
commit | e46a05b5ee1cbe2d6d0c2ac679b71ad3fd2f7c2d (patch) | |
tree | b3eb9f5427f3e860f9b5aca0bfc9fbbaab6ac4ea /lib | |
parent | 934167a39654699eca26869c96b875092dc16976 (diff) | |
download | gnulib-e46a05b5ee1cbe2d6d0c2ac679b71ad3fd2f7c2d.tar.gz |
libunistring: Fix build on Windows, when a libunistring is installed.
* lib/unicase.in.h: Include <unistring/woe32dll.h>.
(unicase_empty_prefix_context, unicase_empty_suffix_context): Declare
with GNULIB_UNICASE_..._DLL_VARIABLE.
* lib/unictype.in.h: Include <unistring/woe32dll.h>.
(UC_CATEGORY_*, UC_PROPERTY_*): Declare with
GNULIB_UNICTYPE_..._DLL_VARIABLE.
* lib/uninorm.in.h: Include <unistring/woe32dll.h>.
(unicode_normalization_form uninorm_nf*): Declare with
GNULIB_UNINORM_..._DLL_VARIABLE.
* m4/libunistring-base.m4 (gl_LIBUNISTRING_MODULE_WITH_VARIABLE): New
macro.
(gl_LIBUNISTRING_LIB_PREPARE): Set HAVE_UNISTRING_WOE32DLL_H.
* m4/unicase_h.m4: New file.
* m4/unictype_h.m4: New file.
* m4/uninorm_h.m4: New file.
* modules/unicase/base (Files): Add m4/unicase_h.m4.
(configure.ac): Bump version number. Invoke gl_UNICASE_H,
gl_UNICASE_H_REQUIRE_DEFAULTS.
(Makefile.am): Substitute all GNULIB_UNICASE_*_DLL_VARIABLE.
* modules/unicase/empty-*-context (configure.ac): Invoke
gl_UNICASE_H_REQUIRE_DEFAULTS. Use gl_LIBUNISTRING_MODULE_WITH_VARIABLE.
* modules/unictype/base (Files): Add m4/unictype_h.m4.
(configure.ac): Bump version number. Invoke gl_UNICTYPE_H,
gl_UNICTYPE_H_REQUIRE_DEFAULTS.
(Makefile.am): Substitute all GNULIB_UNICTYPE_*_DLL_VARIABLE.
* modules/unictype/category-* (configure.ac): Invoke
gl_UNICTYPE_H_REQUIRE_DEFAULTS. Use
gl_LIBUNISTRING_MODULE_WITH_VARIABLE.
* modules/unictype/property-* (configure.ac): Likewise.
* modules/uninorm/base (Files): Add m4/uninorm_h.m4.
(configure.ac): Bump version number. Invoke gl_UNINORM_H,
gl_UNINORM_H_REQUIRE_DEFAULTS.
(Makefile.am): Substitute all GNULIB_UNINORM_*_DLL_VARIABLE.
* modules/uninorm/nf* (configure.ac): Invoke
gl_UNINORM_H_REQUIRE_DEFAULTS. Use gl_LIBUNISTRING_MODULE_WITH_VARIABLE.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/unicase.in.h | 10 | ||||
-rw-r--r-- | lib/unictype.in.h | 268 | ||||
-rw-r--r-- | lib/uninorm.in.h | 14 |
3 files changed, 155 insertions, 137 deletions
diff --git a/lib/unicase.in.h b/lib/unicase.in.h index cf2bc9bd62..f6b86d33f3 100644 --- a/lib/unicase.in.h +++ b/lib/unicase.in.h @@ -36,6 +36,12 @@ /* Get uninorm_t. */ #include "uninorm.h" +#if @HAVE_UNISTRING_WOE32DLL_H@ +# include <unistring/woe32dll.h> +#else +# define LIBUNISTRING_DLL_VARIABLE +#endif + #ifdef __cplusplus extern "C" { #endif @@ -155,7 +161,7 @@ typedef struct casing_prefix_context } casing_prefix_context_t; /* The case-mapping context of the empty prefix string. */ -extern const casing_prefix_context_t unicase_empty_prefix_context; +extern @GNULIB_UNICASE_EMPTY_PREFIX_CONTEXT_DLL_VARIABLE@ const casing_prefix_context_t unicase_empty_prefix_context; /* Return the case-mapping context of a given prefix string. */ extern casing_prefix_context_t u8_casing_prefix_context (const uint8_t *s, size_t n); @@ -184,7 +190,7 @@ typedef struct casing_suffix_context } casing_suffix_context_t; /* The case-mapping context of the empty suffix string. */ -extern const casing_suffix_context_t unicase_empty_suffix_context; +extern @GNULIB_UNICASE_EMPTY_SUFFIX_CONTEXT_DLL_VARIABLE@ const casing_suffix_context_t unicase_empty_suffix_context; /* Return the case-mapping context of a given suffix string. */ extern casing_suffix_context_t u8_casing_suffix_context (const uint8_t *s, size_t n); diff --git a/lib/unictype.in.h b/lib/unictype.in.h index c2f21c18f5..bab2aaf97a 100644 --- a/lib/unictype.in.h +++ b/lib/unictype.in.h @@ -25,6 +25,12 @@ /* Get size_t. */ #include <stddef.h> +#if @HAVE_UNISTRING_WOE32DLL_H@ +# include <unistring/woe32dll.h> +#else +# define LIBUNISTRING_DLL_VARIABLE +#endif + #ifdef __cplusplus extern "C" { #endif @@ -101,44 +107,44 @@ enum }; /* Predefined General category values. */ -extern const uc_general_category_t UC_CATEGORY_L; -extern const uc_general_category_t UC_CATEGORY_LC; -extern const uc_general_category_t UC_CATEGORY_Lu; -extern const uc_general_category_t UC_CATEGORY_Ll; -extern const uc_general_category_t UC_CATEGORY_Lt; -extern const uc_general_category_t UC_CATEGORY_Lm; -extern const uc_general_category_t UC_CATEGORY_Lo; -extern const uc_general_category_t UC_CATEGORY_M; -extern const uc_general_category_t UC_CATEGORY_Mn; -extern const uc_general_category_t UC_CATEGORY_Mc; -extern const uc_general_category_t UC_CATEGORY_Me; -extern const uc_general_category_t UC_CATEGORY_N; -extern const uc_general_category_t UC_CATEGORY_Nd; -extern const uc_general_category_t UC_CATEGORY_Nl; -extern const uc_general_category_t UC_CATEGORY_No; -extern const uc_general_category_t UC_CATEGORY_P; -extern const uc_general_category_t UC_CATEGORY_Pc; -extern const uc_general_category_t UC_CATEGORY_Pd; -extern const uc_general_category_t UC_CATEGORY_Ps; -extern const uc_general_category_t UC_CATEGORY_Pe; -extern const uc_general_category_t UC_CATEGORY_Pi; -extern const uc_general_category_t UC_CATEGORY_Pf; -extern const uc_general_category_t UC_CATEGORY_Po; -extern const uc_general_category_t UC_CATEGORY_S; -extern const uc_general_category_t UC_CATEGORY_Sm; -extern const uc_general_category_t UC_CATEGORY_Sc; -extern const uc_general_category_t UC_CATEGORY_Sk; -extern const uc_general_category_t UC_CATEGORY_So; -extern const uc_general_category_t UC_CATEGORY_Z; -extern const uc_general_category_t UC_CATEGORY_Zs; -extern const uc_general_category_t UC_CATEGORY_Zl; -extern const uc_general_category_t UC_CATEGORY_Zp; -extern const uc_general_category_t UC_CATEGORY_C; -extern const uc_general_category_t UC_CATEGORY_Cc; -extern const uc_general_category_t UC_CATEGORY_Cf; -extern const uc_general_category_t UC_CATEGORY_Cs; -extern const uc_general_category_t UC_CATEGORY_Co; -extern const uc_general_category_t UC_CATEGORY_Cn; +extern @GNULIB_UNICTYPE_CATEGORY_L_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_L; +extern @GNULIB_UNICTYPE_CATEGORY_LC_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_LC; +extern @GNULIB_UNICTYPE_CATEGORY_LU_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Lu; +extern @GNULIB_UNICTYPE_CATEGORY_LL_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Ll; +extern @GNULIB_UNICTYPE_CATEGORY_LT_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Lt; +extern @GNULIB_UNICTYPE_CATEGORY_LM_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Lm; +extern @GNULIB_UNICTYPE_CATEGORY_LO_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Lo; +extern @GNULIB_UNICTYPE_CATEGORY_M_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_M; +extern @GNULIB_UNICTYPE_CATEGORY_MN_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Mn; +extern @GNULIB_UNICTYPE_CATEGORY_MC_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Mc; +extern @GNULIB_UNICTYPE_CATEGORY_ME_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Me; +extern @GNULIB_UNICTYPE_CATEGORY_N_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_N; +extern @GNULIB_UNICTYPE_CATEGORY_ND_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Nd; +extern @GNULIB_UNICTYPE_CATEGORY_NL_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Nl; +extern @GNULIB_UNICTYPE_CATEGORY_NO_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_No; +extern @GNULIB_UNICTYPE_CATEGORY_P_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_P; +extern @GNULIB_UNICTYPE_CATEGORY_PC_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Pc; +extern @GNULIB_UNICTYPE_CATEGORY_PD_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Pd; +extern @GNULIB_UNICTYPE_CATEGORY_PS_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Ps; +extern @GNULIB_UNICTYPE_CATEGORY_PE_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Pe; +extern @GNULIB_UNICTYPE_CATEGORY_PI_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Pi; +extern @GNULIB_UNICTYPE_CATEGORY_PF_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Pf; +extern @GNULIB_UNICTYPE_CATEGORY_PO_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Po; +extern @GNULIB_UNICTYPE_CATEGORY_S_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_S; +extern @GNULIB_UNICTYPE_CATEGORY_SM_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Sm; +extern @GNULIB_UNICTYPE_CATEGORY_SC_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Sc; +extern @GNULIB_UNICTYPE_CATEGORY_SK_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Sk; +extern @GNULIB_UNICTYPE_CATEGORY_SO_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_So; +extern @GNULIB_UNICTYPE_CATEGORY_Z_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Z; +extern @GNULIB_UNICTYPE_CATEGORY_ZS_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Zs; +extern @GNULIB_UNICTYPE_CATEGORY_ZL_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Zl; +extern @GNULIB_UNICTYPE_CATEGORY_ZP_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Zp; +extern @GNULIB_UNICTYPE_CATEGORY_C_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_C; +extern @GNULIB_UNICTYPE_CATEGORY_CC_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Cc; +extern @GNULIB_UNICTYPE_CATEGORY_CF_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Cf; +extern @GNULIB_UNICTYPE_CATEGORY_CS_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Cs; +extern @GNULIB_UNICTYPE_CATEGORY_CO_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Co; +extern @GNULIB_UNICTYPE_CATEGORY_CN_DLL_VARIABLE@ const uc_general_category_t UC_CATEGORY_Cn; /* Non-public. */ extern const uc_general_category_t _UC_CATEGORY_NONE; @@ -602,107 +608,107 @@ uc_property_t; /* Predefined properties. */ /* General. */ -extern const uc_property_t UC_PROPERTY_WHITE_SPACE; -extern const uc_property_t UC_PROPERTY_ALPHABETIC; -extern const uc_property_t UC_PROPERTY_OTHER_ALPHABETIC; -extern const uc_property_t UC_PROPERTY_NOT_A_CHARACTER; -extern const uc_property_t UC_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT; -extern const uc_property_t UC_PROPERTY_OTHER_DEFAULT_IGNORABLE_CODE_POINT; -extern const uc_property_t UC_PROPERTY_DEPRECATED; -extern const uc_property_t UC_PROPERTY_LOGICAL_ORDER_EXCEPTION; -extern const uc_property_t UC_PROPERTY_VARIATION_SELECTOR; -extern const uc_property_t UC_PROPERTY_PRIVATE_USE; -extern const uc_property_t UC_PROPERTY_UNASSIGNED_CODE_VALUE; +extern @GNULIB_UNICTYPE_PROPERTY_WHITE_SPACE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_WHITE_SPACE; +extern @GNULIB_UNICTYPE_PROPERTY_ALPHABETIC_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_ALPHABETIC; +extern @GNULIB_UNICTYPE_PROPERTY_OTHER_ALPHABETIC_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_OTHER_ALPHABETIC; +extern @GNULIB_UNICTYPE_PROPERTY_NOT_A_CHARACTER_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_NOT_A_CHARACTER; +extern @GNULIB_UNICTYPE_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT; +extern @GNULIB_UNICTYPE_PROPERTY_OTHER_DEFAULT_IGNORABLE_CODE_POINT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_OTHER_DEFAULT_IGNORABLE_CODE_POINT; +extern @GNULIB_UNICTYPE_PROPERTY_DEPRECATED_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_DEPRECATED; +extern @GNULIB_UNICTYPE_PROPERTY_LOGICAL_ORDER_EXCEPTION_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_LOGICAL_ORDER_EXCEPTION; +extern @GNULIB_UNICTYPE_PROPERTY_VARIATION_SELECTOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_VARIATION_SELECTOR; +extern @GNULIB_UNICTYPE_PROPERTY_PRIVATE_USE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_PRIVATE_USE; +extern @GNULIB_UNICTYPE_PROPERTY_UNASSIGNED_CODE_VALUE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_UNASSIGNED_CODE_VALUE; /* Case. */ -extern const uc_property_t UC_PROPERTY_UPPERCASE; -extern const uc_property_t UC_PROPERTY_OTHER_UPPERCASE; -extern const uc_property_t UC_PROPERTY_LOWERCASE; -extern const uc_property_t UC_PROPERTY_OTHER_LOWERCASE; -extern const uc_property_t UC_PROPERTY_TITLECASE; -extern const uc_property_t UC_PROPERTY_CASED; -extern const uc_property_t UC_PROPERTY_CASE_IGNORABLE; -extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_LOWERCASED; -extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_UPPERCASED; -extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_TITLECASED; -extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_CASEFOLDED; -extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_CASEMAPPED; -extern const uc_property_t UC_PROPERTY_SOFT_DOTTED; +extern @GNULIB_UNICTYPE_PROPERTY_UPPERCASE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_UPPERCASE; +extern @GNULIB_UNICTYPE_PROPERTY_OTHER_UPPERCASE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_OTHER_UPPERCASE; +extern @GNULIB_UNICTYPE_PROPERTY_LOWERCASE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_LOWERCASE; +extern @GNULIB_UNICTYPE_PROPERTY_OTHER_LOWERCASE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_OTHER_LOWERCASE; +extern @GNULIB_UNICTYPE_PROPERTY_TITLECASE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_TITLECASE; +extern @GNULIB_UNICTYPE_PROPERTY_CASED_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_CASED; +extern @GNULIB_UNICTYPE_PROPERTY_CASE_IGNORABLE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_CASE_IGNORABLE; +extern @GNULIB_UNICTYPE_PROPERTY_CHANGES_WHEN_LOWERCASED_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_CHANGES_WHEN_LOWERCASED; +extern @GNULIB_UNICTYPE_PROPERTY_CHANGES_WHEN_UPPERCASED_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_CHANGES_WHEN_UPPERCASED; +extern @GNULIB_UNICTYPE_PROPERTY_CHANGES_WHEN_TITLECASED_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_CHANGES_WHEN_TITLECASED; +extern @GNULIB_UNICTYPE_PROPERTY_CHANGES_WHEN_CASEFOLDED_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_CHANGES_WHEN_CASEFOLDED; +extern @GNULIB_UNICTYPE_PROPERTY_CHANGES_WHEN_CASEMAPPED_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_CHANGES_WHEN_CASEMAPPED; +extern @GNULIB_UNICTYPE_PROPERTY_SOFT_DOTTED_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_SOFT_DOTTED; /* Identifiers. */ -extern const uc_property_t UC_PROPERTY_ID_START; -extern const uc_property_t UC_PROPERTY_OTHER_ID_START; -extern const uc_property_t UC_PROPERTY_ID_CONTINUE; -extern const uc_property_t UC_PROPERTY_OTHER_ID_CONTINUE; -extern const uc_property_t UC_PROPERTY_XID_START; -extern const uc_property_t UC_PROPERTY_XID_CONTINUE; -extern const uc_property_t UC_PROPERTY_PATTERN_WHITE_SPACE; -extern const uc_property_t UC_PROPERTY_PATTERN_SYNTAX; +extern @GNULIB_UNICTYPE_PROPERTY_ID_START_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_ID_START; +extern @GNULIB_UNICTYPE_PROPERTY_OTHER_ID_START_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_OTHER_ID_START; +extern @GNULIB_UNICTYPE_PROPERTY_ID_CONTINUE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_ID_CONTINUE; +extern @GNULIB_UNICTYPE_PROPERTY_OTHER_ID_CONTINUE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_OTHER_ID_CONTINUE; +extern @GNULIB_UNICTYPE_PROPERTY_XID_START_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_XID_START; +extern @GNULIB_UNICTYPE_PROPERTY_XID_CONTINUE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_XID_CONTINUE; +extern @GNULIB_UNICTYPE_PROPERTY_PATTERN_WHITE_SPACE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_PATTERN_WHITE_SPACE; +extern @GNULIB_UNICTYPE_PROPERTY_PATTERN_SYNTAX_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_PATTERN_SYNTAX; /* Shaping and rendering. */ -extern const uc_property_t UC_PROPERTY_JOIN_CONTROL; -extern const uc_property_t UC_PROPERTY_GRAPHEME_BASE; -extern const uc_property_t UC_PROPERTY_GRAPHEME_EXTEND; -extern const uc_property_t UC_PROPERTY_OTHER_GRAPHEME_EXTEND; -extern const uc_property_t UC_PROPERTY_GRAPHEME_LINK; +extern @GNULIB_UNICTYPE_PROPERTY_JOIN_CONTROL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_JOIN_CONTROL; +extern @GNULIB_UNICTYPE_PROPERTY_GRAPHEME_BASE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_GRAPHEME_BASE; +extern @GNULIB_UNICTYPE_PROPERTY_GRAPHEME_EXTEND_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_GRAPHEME_EXTEND; +extern @GNULIB_UNICTYPE_PROPERTY_OTHER_GRAPHEME_EXTEND_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_OTHER_GRAPHEME_EXTEND; +extern @GNULIB_UNICTYPE_PROPERTY_GRAPHEME_LINK_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_GRAPHEME_LINK; /* Bidi. */ -extern const uc_property_t UC_PROPERTY_BIDI_CONTROL; -extern const uc_property_t UC_PROPERTY_BIDI_LEFT_TO_RIGHT; -extern const uc_property_t UC_PROPERTY_BIDI_HEBREW_RIGHT_TO_LEFT; -extern const uc_property_t UC_PROPERTY_BIDI_ARABIC_RIGHT_TO_LEFT; -extern const uc_property_t UC_PROPERTY_BIDI_EUROPEAN_DIGIT; -extern const uc_property_t UC_PROPERTY_BIDI_EUR_NUM_SEPARATOR; -extern const uc_property_t UC_PROPERTY_BIDI_EUR_NUM_TERMINATOR; -extern const uc_property_t UC_PROPERTY_BIDI_ARABIC_DIGIT; -extern const uc_property_t UC_PROPERTY_BIDI_COMMON_SEPARATOR; -extern const uc_property_t UC_PROPERTY_BIDI_BLOCK_SEPARATOR; -extern const uc_property_t UC_PROPERTY_BIDI_SEGMENT_SEPARATOR; -extern const uc_property_t UC_PROPERTY_BIDI_WHITESPACE; -extern const uc_property_t UC_PROPERTY_BIDI_NON_SPACING_MARK; -extern const uc_property_t UC_PROPERTY_BIDI_BOUNDARY_NEUTRAL; -extern const uc_property_t UC_PROPERTY_BIDI_PDF; -extern const uc_property_t UC_PROPERTY_BIDI_EMBEDDING_OR_OVERRIDE; -extern const uc_property_t UC_PROPERTY_BIDI_OTHER_NEUTRAL; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_CONTROL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_CONTROL; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_LEFT_TO_RIGHT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_LEFT_TO_RIGHT; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_HEBREW_RIGHT_TO_LEFT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_HEBREW_RIGHT_TO_LEFT; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_ARABIC_RIGHT_TO_LEFT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_ARABIC_RIGHT_TO_LEFT; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_EUROPEAN_DIGIT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_EUROPEAN_DIGIT; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_EUR_NUM_SEPARATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_EUR_NUM_SEPARATOR; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_EUR_NUM_TERMINATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_EUR_NUM_TERMINATOR; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_ARABIC_DIGIT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_ARABIC_DIGIT; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_COMMON_SEPARATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_COMMON_SEPARATOR; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_BLOCK_SEPARATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_BLOCK_SEPARATOR; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_SEGMENT_SEPARATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_SEGMENT_SEPARATOR; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_WHITESPACE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_WHITESPACE; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_NON_SPACING_MARK_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_NON_SPACING_MARK; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_BOUNDARY_NEUTRAL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_BOUNDARY_NEUTRAL; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_PDF_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_PDF; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_EMBEDDING_OR_OVERRIDE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_EMBEDDING_OR_OVERRIDE; +extern @GNULIB_UNICTYPE_PROPERTY_BIDI_OTHER_NEUTRAL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_BIDI_OTHER_NEUTRAL; /* Numeric. */ -extern const uc_property_t UC_PROPERTY_HEX_DIGIT; -extern const uc_property_t UC_PROPERTY_ASCII_HEX_DIGIT; +extern @GNULIB_UNICTYPE_PROPERTY_HEX_DIGIT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_HEX_DIGIT; +extern @GNULIB_UNICTYPE_PROPERTY_ASCII_HEX_DIGIT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_ASCII_HEX_DIGIT; /* CJK. */ -extern const uc_property_t UC_PROPERTY_IDEOGRAPHIC; -extern const uc_property_t UC_PROPERTY_UNIFIED_IDEOGRAPH; -extern const uc_property_t UC_PROPERTY_RADICAL; -extern const uc_property_t UC_PROPERTY_IDS_BINARY_OPERATOR; -extern const uc_property_t UC_PROPERTY_IDS_TRINARY_OPERATOR; +extern @GNULIB_UNICTYPE_PROPERTY_IDEOGRAPHIC_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_IDEOGRAPHIC; +extern @GNULIB_UNICTYPE_PROPERTY_UNIFIED_IDEOGRAPH_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_UNIFIED_IDEOGRAPH; +extern @GNULIB_UNICTYPE_PROPERTY_RADICAL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_RADICAL; +extern @GNULIB_UNICTYPE_PROPERTY_IDS_BINARY_OPERATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_IDS_BINARY_OPERATOR; +extern @GNULIB_UNICTYPE_PROPERTY_IDS_TRINARY_OPERATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_IDS_TRINARY_OPERATOR; /* Emoji. */ -extern const uc_property_t UC_PROPERTY_EMOJI; -extern const uc_property_t UC_PROPERTY_EMOJI_PRESENTATION; -extern const uc_property_t UC_PROPERTY_EMOJI_MODIFIER; -extern const uc_property_t UC_PROPERTY_EMOJI_MODIFIER_BASE; -extern const uc_property_t UC_PROPERTY_EMOJI_COMPONENT; -extern const uc_property_t UC_PROPERTY_EXTENDED_PICTOGRAPHIC; +extern @GNULIB_UNICTYPE_PROPERTY_EMOJI_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_EMOJI; +extern @GNULIB_UNICTYPE_PROPERTY_EMOJI_PRESENTATION_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_EMOJI_PRESENTATION; +extern @GNULIB_UNICTYPE_PROPERTY_EMOJI_MODIFIER_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_EMOJI_MODIFIER; +extern @GNULIB_UNICTYPE_PROPERTY_EMOJI_MODIFIER_BASE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_EMOJI_MODIFIER_BASE; +extern @GNULIB_UNICTYPE_PROPERTY_EMOJI_COMPONENT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_EMOJI_COMPONENT; +extern @GNULIB_UNICTYPE_PROPERTY_EXTENDED_PICTOGRAPHIC_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_EXTENDED_PICTOGRAPHIC; /* Misc. */ -extern const uc_property_t UC_PROPERTY_ZERO_WIDTH; -extern const uc_property_t UC_PROPERTY_SPACE; -extern const uc_property_t UC_PROPERTY_NON_BREAK; -extern const uc_property_t UC_PROPERTY_ISO_CONTROL; -extern const uc_property_t UC_PROPERTY_FORMAT_CONTROL; -extern const uc_property_t UC_PROPERTY_DASH; -extern const uc_property_t UC_PROPERTY_HYPHEN; -extern const uc_property_t UC_PROPERTY_PUNCTUATION; -extern const uc_property_t UC_PROPERTY_LINE_SEPARATOR; -extern const uc_property_t UC_PROPERTY_PARAGRAPH_SEPARATOR; -extern const uc_property_t UC_PROPERTY_QUOTATION_MARK; -extern const uc_property_t UC_PROPERTY_SENTENCE_TERMINAL; -extern const uc_property_t UC_PROPERTY_TERMINAL_PUNCTUATION; -extern const uc_property_t UC_PROPERTY_CURRENCY_SYMBOL; -extern const uc_property_t UC_PROPERTY_MATH; -extern const uc_property_t UC_PROPERTY_OTHER_MATH; -extern const uc_property_t UC_PROPERTY_PAIRED_PUNCTUATION; -extern const uc_property_t UC_PROPERTY_LEFT_OF_PAIR; -extern const uc_property_t UC_PROPERTY_COMBINING; -extern const uc_property_t UC_PROPERTY_COMPOSITE; -extern const uc_property_t UC_PROPERTY_DECIMAL_DIGIT; -extern const uc_property_t UC_PROPERTY_NUMERIC; -extern const uc_property_t UC_PROPERTY_DIACRITIC; -extern const uc_property_t UC_PROPERTY_EXTENDER; -extern const uc_property_t UC_PROPERTY_IGNORABLE_CONTROL; -extern const uc_property_t UC_PROPERTY_REGIONAL_INDICATOR; +extern @GNULIB_UNICTYPE_PROPERTY_ZERO_WIDTH_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_ZERO_WIDTH; +extern @GNULIB_UNICTYPE_PROPERTY_SPACE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_SPACE; +extern @GNULIB_UNICTYPE_PROPERTY_NON_BREAK_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_NON_BREAK; +extern @GNULIB_UNICTYPE_PROPERTY_ISO_CONTROL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_ISO_CONTROL; +extern @GNULIB_UNICTYPE_PROPERTY_FORMAT_CONTROL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_FORMAT_CONTROL; +extern @GNULIB_UNICTYPE_PROPERTY_DASH_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_DASH; +extern @GNULIB_UNICTYPE_PROPERTY_HYPHEN_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_HYPHEN; +extern @GNULIB_UNICTYPE_PROPERTY_PUNCTUATION_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_PUNCTUATION; +extern @GNULIB_UNICTYPE_PROPERTY_LINE_SEPARATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_LINE_SEPARATOR; +extern @GNULIB_UNICTYPE_PROPERTY_PARAGRAPH_SEPARATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_PARAGRAPH_SEPARATOR; +extern @GNULIB_UNICTYPE_PROPERTY_QUOTATION_MARK_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_QUOTATION_MARK; +extern @GNULIB_UNICTYPE_PROPERTY_SENTENCE_TERMINAL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_SENTENCE_TERMINAL; +extern @GNULIB_UNICTYPE_PROPERTY_TERMINAL_PUNCTUATION_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_TERMINAL_PUNCTUATION; +extern @GNULIB_UNICTYPE_PROPERTY_CURRENCY_SYMBOL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_CURRENCY_SYMBOL; +extern @GNULIB_UNICTYPE_PROPERTY_MATH_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_MATH; +extern @GNULIB_UNICTYPE_PROPERTY_OTHER_MATH_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_OTHER_MATH; +extern @GNULIB_UNICTYPE_PROPERTY_PAIRED_PUNCTUATION_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_PAIRED_PUNCTUATION; +extern @GNULIB_UNICTYPE_PROPERTY_LEFT_OF_PAIR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_LEFT_OF_PAIR; +extern @GNULIB_UNICTYPE_PROPERTY_COMBINING_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_COMBINING; +extern @GNULIB_UNICTYPE_PROPERTY_COMPOSITE_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_COMPOSITE; +extern @GNULIB_UNICTYPE_PROPERTY_DECIMAL_DIGIT_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_DECIMAL_DIGIT; +extern @GNULIB_UNICTYPE_PROPERTY_NUMERIC_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_NUMERIC; +extern @GNULIB_UNICTYPE_PROPERTY_DIACRITIC_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_DIACRITIC; +extern @GNULIB_UNICTYPE_PROPERTY_EXTENDER_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_EXTENDER; +extern @GNULIB_UNICTYPE_PROPERTY_IGNORABLE_CONTROL_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_IGNORABLE_CONTROL; +extern @GNULIB_UNICTYPE_PROPERTY_REGIONAL_INDICATOR_DLL_VARIABLE@ const uc_property_t UC_PROPERTY_REGIONAL_INDICATOR; /* Return the property given by name, e.g. "White space". */ extern uc_property_t diff --git a/lib/uninorm.in.h b/lib/uninorm.in.h index a5a27b06c6..0698246ac7 100644 --- a/lib/uninorm.in.h +++ b/lib/uninorm.in.h @@ -23,6 +23,12 @@ #include "unitypes.h" +#if @HAVE_UNISTRING_WOE32DLL_H@ +# include <unistring/woe32dll.h> +#else +# define LIBUNISTRING_DLL_VARIABLE +#endif + #ifdef __cplusplus extern "C" { @@ -108,21 +114,21 @@ struct unicode_normalization_form; typedef const struct unicode_normalization_form *uninorm_t; /* UNINORM_NFD: Normalization form D: canonical decomposition. */ -extern const struct unicode_normalization_form uninorm_nfd; +extern @GNULIB_UNINORM_NFD_DLL_VARIABLE@ const struct unicode_normalization_form uninorm_nfd; #define UNINORM_NFD (&uninorm_nfd) /* UNINORM_NFC: Normalization form C: canonical decomposition, then canonical composition. */ -extern const struct unicode_normalization_form uninorm_nfc; +extern @GNULIB_UNINORM_NFC_DLL_VARIABLE@ const struct unicode_normalization_form uninorm_nfc; #define UNINORM_NFC (&uninorm_nfc) /* UNINORM_NFKD: Normalization form KD: compatibility decomposition. */ -extern const struct unicode_normalization_form uninorm_nfkd; +extern @GNULIB_UNINORM_NFKD_DLL_VARIABLE@ const struct unicode_normalization_form uninorm_nfkd; #define UNINORM_NFKD (&uninorm_nfkd) /* UNINORM_NFKC: Normalization form KC: compatibility decomposition, then canonical composition. */ -extern const struct unicode_normalization_form uninorm_nfkc; +extern @GNULIB_UNINORM_NFKC_DLL_VARIABLE@ const struct unicode_normalization_form uninorm_nfkc; #define UNINORM_NFKC (&uninorm_nfkc) /* Test whether a normalization form does compatibility decomposition. */ |