config.w32 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. // vim:ft=javascript
  2. ARG_WITH("xlswriter", "xlswriter support", "no");
  3. if (PHP_XLSWRITER != "no") {
  4. if (
  5. CHECK_HEADER_ADD_INCLUDE("minizip/zip.h", "CFLAGS_XLSWRITER", configure_module_dirname + "\\library\\libxlsxwriter\\third_party;" + PHP_EXTRA_INCLUDES) &&
  6. CHECK_HEADER_ADD_INCLUDE("xlsxwriter.h", "CFLAGS_XLSWRITER", configure_module_dirname + "\\library\\libxlsxwriter\\include;" + PHP_EXTRA_INCLUDES) &&
  7. CHECK_HEADER_ADD_INCLUDE("expat.h", "CFLAGS_XLSWRITER", configure_module_dirname + "\\library\\libexpat\\expat\\lib;" + PHP_EXTRA_INCLUDES) &&
  8. CHECK_HEADER_ADD_INCLUDE("xlsxio_read.h", "CFLAGS_XLSWRITER", configure_module_dirname + "\\library\\libxlsxio\\include;" + PHP_EXTRA_INCLUDES) &&
  9. CHECK_HEADER_ADD_INCLUDE("xlswriter.h", "CFLAGS_XLSWRITER", configure_module_dirname + "\\include;" + PHP_EXTRA_INCLUDES) &&
  10. ((
  11. ((PHP_ZLIB == "no") && (CHECK_LIB("zlib_a.lib;zlib.lib", "xlswriter", PHP_XLSWRITER))) ||
  12. (PHP_ZLIB_SHARED && CHECK_LIB("zlib.lib", "xlswriter", PHP_XLSWRITER)) ||
  13. (PHP_ZLIB == "yes" && (!PHP_ZLIB_SHARED))
  14. ) || (
  15. CHECK_LIB("zlib.lib;zlib_a.lib", "xlswriter", PHP_XLSWRITER) &&
  16. CHECK_HEADER_ADD_INCLUDE("zlib.h", "CFLAGS_XLSWRITER", PHP_PHP_BUILD + "\\include;" + PHP_XLSWRITER)
  17. ))
  18. ) {
  19. EXTENSION("xlswriter", "xlswriter.c")
  20. ADD_FLAG("CFLAGS_XLSWRITER", ' /D ENABLE_READER /D USE_SYSTEM_MINIZIP /D USE_MINIZIP /I "' + configure_module_dirname + '" ');
  21. AC_DEFINE("HAVE_LXW_VERSION", 1, "lxw_version available in 0.7.7");
  22. ADD_SOURCES(configure_module_dirname + "\\kernel", "\
  23. exception.c \
  24. resource.c \
  25. common.c \
  26. excel.c \
  27. write.c \
  28. format.c \
  29. chart.c \
  30. read.c \
  31. csv.c \
  32. ", "xlswriter");
  33. ADD_SOURCES(configure_module_dirname + "\\library\\libxlsxwriter\\third_party\\minizip", "\
  34. ioapi.c \
  35. iowin32.c \
  36. mztools.c \
  37. unzip.c \
  38. zip.c \
  39. ", "xlswriter");
  40. ADD_SOURCES(configure_module_dirname + "\\library\\libxlsxwriter\\third_party\\tmpfileplus", "\
  41. tmpfileplus.c \
  42. ", "xlswriter");
  43. ADD_SOURCES(configure_module_dirname + "\\library\\libxlsxwriter\\src", "\
  44. app.c \
  45. chart.c \
  46. content_types.c \
  47. core.c \
  48. custom.c \
  49. drawing.c \
  50. format.c \
  51. hash_table.c \
  52. packager.c \
  53. relationships.c \
  54. shared_strings.c \
  55. styles.c \
  56. theme.c \
  57. utility.c \
  58. workbook.c \
  59. worksheet.c \
  60. xmlwriter.c \
  61. ", "xlswriter", "libxlsxwriter");
  62. ADD_SOURCES(configure_module_dirname + "\\library\\libexpat\\expat\\lib", "\
  63. loadlibrary.c \
  64. xmlparse.c \
  65. xmlrole.c \
  66. xmltok.c \
  67. xmltok_impl.c \
  68. xmltok_ns.c \
  69. ", "xlswriter");
  70. ADD_SOURCES(configure_module_dirname + "\\library\\libxlsxio\\lib", "\
  71. xlsxio_read.c \
  72. xlsxio_read_sharedstrings.c \
  73. ", "xlswriter");
  74. } else {
  75. WARNING("xlswriter not enabled, xlsxwriter.lib or headers not found");
  76. }
  77. }