config.w32 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. // $Id$
  2. // vim:ft=javascript
  3. ARG_ENABLE("intl", "Enable internationalization support", "no");
  4. if (PHP_INTL != "no") {
  5. if (CHECK_LIB("icuuc.lib", "intl", PHP_INTL) &&
  6. CHECK_HEADER_ADD_INCLUDE("unicode/utf.h", "CFLAGS_INTL")) {
  7. // always build as shared - zend_strtod.c/ICU type conflict
  8. EXTENSION("intl", "php_intl.c intl_convert.c intl_convertcpp.cpp intl_error.c ", true,
  9. "/I \"" + configure_module_dirname + "\"");
  10. ADD_SOURCES(configure_module_dirname + "/collator", "\
  11. collator.c \
  12. collator_attr.c \
  13. collator_class.c \
  14. collator_compare.c \
  15. collator_convert.c \
  16. collator_create.c \
  17. collator_error.c \
  18. collator_is_numeric.c \
  19. collator_locale.c \
  20. collator_sort.c \
  21. ", "intl");
  22. ADD_SOURCES(configure_module_dirname + "/common", "\
  23. common_error.c \
  24. common_enum.cpp \
  25. common_date.cpp \
  26. ", "intl");
  27. ADD_SOURCES(configure_module_dirname + "/converter", "\
  28. converter.c \
  29. ", "intl");
  30. ADD_SOURCES(configure_module_dirname + "/formatter", "\
  31. formatter.c \
  32. formatter_attr.c \
  33. formatter_class.c \
  34. formatter_data.c \
  35. formatter_format.c \
  36. formatter_main.c \
  37. formatter_parse.c \
  38. ", "intl");
  39. ADD_SOURCES(configure_module_dirname + "/locale", "\
  40. locale.c \
  41. locale_class.c \
  42. locale_methods.c \
  43. ", "intl");
  44. ADD_SOURCES(configure_module_dirname + "/msgformat", "\
  45. msgformat.c \
  46. msgformat_attr.c \
  47. msgformat_class.c \
  48. msgformat_data.c \
  49. msgformat_format.c \
  50. msgformat_helpers.cpp \
  51. msgformat_parse.c \
  52. ", "intl");
  53. ADD_SOURCES(configure_module_dirname + "/grapheme", "\
  54. grapheme_string.c grapheme_util.c \
  55. ", "intl");
  56. ADD_SOURCES(configure_module_dirname + "/normalizer", "\
  57. normalizer.c \
  58. normalizer_class.c \
  59. normalizer_normalize.c \
  60. ", "intl");
  61. ADD_SOURCES(configure_module_dirname + "/dateformat", "\
  62. dateformat.c \
  63. dateformat_class.c \
  64. dateformat_attr.c \
  65. dateformat_format.c \
  66. dateformat_format_object.cpp \
  67. dateformat_parse.c \
  68. dateformat_data.c \
  69. dateformat_attrcpp.cpp \
  70. dateformat_helpers.cpp \
  71. dateformat_create.cpp \
  72. ", "intl");
  73. ADD_SOURCES(configure_module_dirname + "/idn", "\
  74. idn.c",
  75. "intl");
  76. ADD_SOURCES(configure_module_dirname + "/resourcebundle", "\
  77. resourcebundle.c \
  78. resourcebundle_class.c \
  79. resourcebundle_iterator.c",
  80. "intl");
  81. if (CHECK_HEADER_ADD_INCLUDE("unicode/uspoof.h", "CFLAGS_INTL")) {
  82. ADD_SOURCES(configure_module_dirname + "/spoofchecker", "\
  83. spoofchecker.c \
  84. spoofchecker_class.c \
  85. spoofchecker_create.c \
  86. spoofchecker_main.c",
  87. "intl");
  88. AC_DEFINE("HAVE_INTL", 1, "Internationalization support enabled");
  89. }
  90. ADD_SOURCES(configure_module_dirname + "/transliterator", "\
  91. transliterator.c \
  92. transliterator_class.c \
  93. transliterator_methods.c",
  94. "intl");
  95. ADD_SOURCES(configure_module_dirname + "/timezone", "\
  96. timezone_class.cpp \
  97. timezone_methods.cpp",
  98. "intl");
  99. ADD_SOURCES(configure_module_dirname + "/calendar", "\
  100. calendar_methods.cpp \
  101. gregoriancalendar_methods.cpp \
  102. calendar_class.cpp",
  103. "intl");
  104. ADD_SOURCES(configure_module_dirname + "/breakiterator", "\
  105. breakiterator_class.cpp \
  106. breakiterator_methods.cpp \
  107. breakiterator_iterators.cpp \
  108. rulebasedbreakiterator_methods.cpp \
  109. codepointiterator_internal.cpp \
  110. codepointiterator_methods.cpp ",
  111. "intl");
  112. ADD_FLAG("LIBS_INTL", "icudt.lib icuin.lib icuio.lib icule.lib iculx.lib");
  113. ADD_FLAG("CFLAGS_INTL", "/EHsc");
  114. AC_DEFINE("HAVE_INTL", 1, "Internationalization support enabled");
  115. } else {
  116. WARNING("intl not enabled; libraries and/or headers not found");
  117. }
  118. }