nokogiri 1.4.3.1-java → 1.5.0-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. data/.gemtest +0 -0
  2. data/CHANGELOG.ja.rdoc +113 -0
  3. data/CHANGELOG.rdoc +113 -1
  4. data/Manifest.txt +72 -68
  5. data/README.ja.rdoc +4 -4
  6. data/README.rdoc +31 -7
  7. data/Rakefile +110 -132
  8. data/bin/nokogiri +7 -3
  9. data/ext/java/nokogiri/EncodingHandler.java +124 -0
  10. data/ext/java/nokogiri/HtmlDocument.java +119 -0
  11. data/ext/java/nokogiri/HtmlElementDescription.java +145 -0
  12. data/ext/java/nokogiri/HtmlEntityLookup.java +79 -0
  13. data/ext/java/nokogiri/HtmlSaxParserContext.java +259 -0
  14. data/ext/java/nokogiri/NokogiriService.java +590 -0
  15. data/ext/java/nokogiri/XmlAttr.java +180 -0
  16. data/ext/java/nokogiri/XmlAttributeDecl.java +130 -0
  17. data/ext/java/nokogiri/XmlCdata.java +84 -0
  18. data/ext/java/nokogiri/XmlComment.java +86 -0
  19. data/ext/java/nokogiri/XmlDocument.java +519 -0
  20. data/ext/java/nokogiri/XmlDocumentFragment.java +223 -0
  21. data/ext/java/nokogiri/XmlDtd.java +469 -0
  22. data/ext/java/nokogiri/XmlElement.java +195 -0
  23. data/ext/java/nokogiri/XmlElementContent.java +382 -0
  24. data/ext/java/nokogiri/XmlElementDecl.java +152 -0
  25. data/ext/java/nokogiri/XmlEntityDecl.java +162 -0
  26. data/ext/java/nokogiri/XmlEntityReference.java +97 -0
  27. data/ext/java/nokogiri/XmlNamespace.java +183 -0
  28. data/ext/java/nokogiri/XmlNode.java +1378 -0
  29. data/ext/java/nokogiri/XmlNodeSet.java +267 -0
  30. data/ext/java/nokogiri/XmlProcessingInstruction.java +99 -0
  31. data/ext/java/nokogiri/XmlReader.java +408 -0
  32. data/ext/java/nokogiri/XmlRelaxng.java +144 -0
  33. data/ext/java/nokogiri/XmlSaxParserContext.java +367 -0
  34. data/ext/java/nokogiri/XmlSaxPushParser.java +184 -0
  35. data/ext/java/nokogiri/XmlSchema.java +324 -0
  36. data/ext/java/nokogiri/XmlSyntaxError.java +119 -0
  37. data/ext/java/nokogiri/XmlText.java +119 -0
  38. data/ext/java/nokogiri/XmlXpathContext.java +199 -0
  39. data/ext/java/nokogiri/XsltStylesheet.java +197 -0
  40. data/ext/java/nokogiri/internals/HtmlDomParserContext.java +204 -0
  41. data/ext/java/nokogiri/internals/NokogiriDocumentCache.java +73 -0
  42. data/ext/java/nokogiri/internals/NokogiriErrorHandler.java +86 -0
  43. data/ext/java/nokogiri/internals/NokogiriHandler.java +327 -0
  44. data/ext/java/nokogiri/internals/NokogiriHelpers.java +639 -0
  45. data/ext/java/nokogiri/internals/NokogiriNamespaceCache.java +167 -0
  46. data/ext/java/nokogiri/internals/NokogiriNamespaceContext.java +130 -0
  47. data/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler.java +74 -0
  48. data/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler4NekoHtml.java +121 -0
  49. data/ext/java/nokogiri/internals/NokogiriStrictErrorHandler.java +79 -0
  50. data/ext/java/nokogiri/internals/NokogiriXPathFunction.java +141 -0
  51. data/ext/java/nokogiri/internals/NokogiriXPathFunctionResolver.java +73 -0
  52. data/ext/java/nokogiri/internals/NokogiriXPathVariableResolver.java +67 -0
  53. data/ext/java/nokogiri/internals/NokogiriXsltErrorListener.java +86 -0
  54. data/ext/java/nokogiri/internals/ParserContext.java +276 -0
  55. data/ext/java/nokogiri/internals/PushInputStream.java +411 -0
  56. data/ext/java/nokogiri/internals/ReaderNode.java +531 -0
  57. data/ext/java/nokogiri/internals/SaveContextVisitor.java +567 -0
  58. data/ext/java/nokogiri/internals/SchemaErrorHandler.java +76 -0
  59. data/ext/java/nokogiri/internals/XmlDeclHandler.java +42 -0
  60. data/ext/java/nokogiri/internals/XmlDomParser.java +76 -0
  61. data/ext/java/nokogiri/internals/XmlDomParserContext.java +244 -0
  62. data/ext/java/nokogiri/internals/XmlSaxParser.java +65 -0
  63. data/ext/java/nokogiri/internals/XsltExtensionFunction.java +72 -0
  64. data/ext/nokogiri/depend +358 -32
  65. data/ext/nokogiri/extconf.rb +10 -6
  66. data/ext/nokogiri/nokogiri.c +23 -3
  67. data/ext/nokogiri/nokogiri.h +7 -2
  68. data/ext/nokogiri/xml_document.c +9 -0
  69. data/ext/nokogiri/xml_dtd.c +2 -2
  70. data/ext/nokogiri/xml_io.c +32 -7
  71. data/ext/nokogiri/xml_node.c +45 -25
  72. data/ext/nokogiri/xml_node_set.c +1 -1
  73. data/ext/nokogiri/xml_relax_ng.c +0 -7
  74. data/ext/nokogiri/xml_sax_parser.c +14 -7
  75. data/ext/nokogiri/xml_sax_parser_context.c +40 -0
  76. data/ext/nokogiri/xml_xpath_context.c +33 -2
  77. data/ext/nokogiri/xslt_stylesheet.c +128 -6
  78. data/lib/isorelax.jar +0 -0
  79. data/lib/jing.jar +0 -0
  80. data/lib/nekodtd.jar +0 -0
  81. data/lib/nekohtml.jar +0 -0
  82. data/lib/nokogiri/css/parser.rb +665 -70
  83. data/lib/nokogiri/css/parser.y +3 -1
  84. data/lib/nokogiri/css/parser_extras.rb +91 -0
  85. data/lib/nokogiri/css/tokenizer.rb +148 -3
  86. data/lib/nokogiri/css/tokenizer.rex +1 -1
  87. data/lib/nokogiri/css/xpath_visitor.rb +15 -7
  88. data/lib/nokogiri/css.rb +5 -3
  89. data/lib/nokogiri/decorators/slop.rb +5 -3
  90. data/lib/nokogiri/html/document.rb +142 -19
  91. data/lib/nokogiri/html/document_fragment.rb +19 -17
  92. data/lib/nokogiri/html/element_description_defaults.rb +671 -0
  93. data/lib/nokogiri/html/sax/parser.rb +6 -2
  94. data/lib/nokogiri/html.rb +1 -0
  95. data/lib/nokogiri/nokogiri.jar +0 -0
  96. data/lib/nokogiri/version.rb +76 -26
  97. data/lib/nokogiri/xml/attribute_decl.rb +1 -1
  98. data/lib/nokogiri/xml/builder.rb +7 -0
  99. data/lib/nokogiri/xml/document.rb +43 -2
  100. data/lib/nokogiri/xml/document_fragment.rb +16 -2
  101. data/lib/nokogiri/xml/dtd.rb +12 -1
  102. data/lib/nokogiri/xml/element_decl.rb +1 -1
  103. data/lib/nokogiri/xml/entity_decl.rb +1 -1
  104. data/lib/nokogiri/xml/node/save_options.rb +20 -1
  105. data/lib/nokogiri/xml/node.rb +198 -78
  106. data/lib/nokogiri/xml/node_set.rb +10 -3
  107. data/lib/nokogiri/xml/parse_options.rb +8 -0
  108. data/lib/nokogiri/xml/reader.rb +42 -6
  109. data/lib/nokogiri/xml/sax/document.rb +4 -2
  110. data/lib/nokogiri/xml/schema.rb +7 -1
  111. data/lib/nokogiri/xslt/stylesheet.rb +1 -1
  112. data/lib/nokogiri/xslt.rb +9 -5
  113. data/lib/nokogiri.rb +19 -25
  114. data/lib/xercesImpl.jar +0 -0
  115. data/nokogiri_help_responses.md +40 -0
  116. data/tasks/cross_compile.rb +130 -136
  117. data/tasks/nokogiri.org.rb +18 -0
  118. data/tasks/test.rb +2 -2
  119. data/test/css/test_parser.rb +29 -18
  120. data/test/css/test_tokenizer.rb +8 -0
  121. data/test/decorators/test_slop.rb +16 -0
  122. data/test/files/encoding.html +82 -0
  123. data/test/files/encoding.xhtml +84 -0
  124. data/test/files/metacharset.html +10 -0
  125. data/test/files/noencoding.html +47 -0
  126. data/test/helper.rb +5 -1
  127. data/test/html/sax/test_parser.rb +65 -3
  128. data/test/html/test_document.rb +75 -1
  129. data/test/html/test_document_encoding.rb +61 -0
  130. data/test/html/test_document_fragment.rb +50 -5
  131. data/test/html/test_element_description.rb +4 -2
  132. data/test/html/test_node.rb +9 -0
  133. data/test/test_memory_leak.rb +20 -35
  134. data/test/test_nokogiri.rb +14 -20
  135. data/test/test_reader.rb +23 -6
  136. data/test/test_xslt_transforms.rb +6 -2
  137. data/test/xml/node/test_save_options.rb +10 -2
  138. data/test/xml/sax/test_parser.rb +39 -8
  139. data/test/xml/sax/test_parser_context.rb +50 -0
  140. data/test/xml/sax/test_push_parser.rb +18 -1
  141. data/test/xml/test_attribute_decl.rb +7 -3
  142. data/test/xml/test_builder.rb +17 -0
  143. data/test/xml/test_document.rb +34 -5
  144. data/test/xml/test_document_fragment.rb +14 -2
  145. data/test/xml/test_dtd.rb +28 -3
  146. data/test/xml/test_element_content.rb +1 -1
  147. data/test/xml/test_element_decl.rb +1 -1
  148. data/test/xml/test_entity_decl.rb +12 -10
  149. data/test/xml/test_namespace.rb +7 -5
  150. data/test/xml/test_node.rb +65 -13
  151. data/test/xml/test_node_reparenting.rb +72 -31
  152. data/test/xml/test_node_set.rb +57 -0
  153. data/test/xml/test_schema.rb +5 -0
  154. data/test/xml/test_xpath.rb +32 -0
  155. data/test/xslt/test_custom_functions.rb +94 -0
  156. data/test/xslt/test_exception_handling.rb +37 -0
  157. metadata +512 -517
  158. data/deps.rip +0 -5
  159. data/ext/nokogiri/libcharset-1.dll +0 -0
  160. data/ext/nokogiri/libexslt.dll +0 -0
  161. data/ext/nokogiri/libiconv-2.dll +0 -0
  162. data/ext/nokogiri/libxml2.dll +0 -0
  163. data/ext/nokogiri/libxslt.dll +0 -0
  164. data/ext/nokogiri/zlib1.dll +0 -0
  165. data/lib/nokogiri/css/generated_parser.rb +0 -676
  166. data/lib/nokogiri/css/generated_tokenizer.rb +0 -146
  167. data/lib/nokogiri/ffi/encoding_handler.rb +0 -42
  168. data/lib/nokogiri/ffi/html/document.rb +0 -28
  169. data/lib/nokogiri/ffi/html/element_description.rb +0 -81
  170. data/lib/nokogiri/ffi/html/entity_lookup.rb +0 -16
  171. data/lib/nokogiri/ffi/html/sax/parser_context.rb +0 -38
  172. data/lib/nokogiri/ffi/io_callbacks.rb +0 -42
  173. data/lib/nokogiri/ffi/libxml.rb +0 -411
  174. data/lib/nokogiri/ffi/structs/common_node.rb +0 -38
  175. data/lib/nokogiri/ffi/structs/html_elem_desc.rb +0 -24
  176. data/lib/nokogiri/ffi/structs/html_entity_desc.rb +0 -13
  177. data/lib/nokogiri/ffi/structs/xml_alloc.rb +0 -16
  178. data/lib/nokogiri/ffi/structs/xml_attr.rb +0 -19
  179. data/lib/nokogiri/ffi/structs/xml_attribute.rb +0 -27
  180. data/lib/nokogiri/ffi/structs/xml_buffer.rb +0 -16
  181. data/lib/nokogiri/ffi/structs/xml_char_encoding_handler.rb +0 -11
  182. data/lib/nokogiri/ffi/structs/xml_document.rb +0 -117
  183. data/lib/nokogiri/ffi/structs/xml_dtd.rb +0 -28
  184. data/lib/nokogiri/ffi/structs/xml_element.rb +0 -26
  185. data/lib/nokogiri/ffi/structs/xml_element_content.rb +0 -17
  186. data/lib/nokogiri/ffi/structs/xml_entity.rb +0 -32
  187. data/lib/nokogiri/ffi/structs/xml_enumeration.rb +0 -12
  188. data/lib/nokogiri/ffi/structs/xml_node.rb +0 -28
  189. data/lib/nokogiri/ffi/structs/xml_node_set.rb +0 -53
  190. data/lib/nokogiri/ffi/structs/xml_notation.rb +0 -11
  191. data/lib/nokogiri/ffi/structs/xml_ns.rb +0 -15
  192. data/lib/nokogiri/ffi/structs/xml_parser_context.rb +0 -19
  193. data/lib/nokogiri/ffi/structs/xml_relax_ng.rb +0 -14
  194. data/lib/nokogiri/ffi/structs/xml_sax_handler.rb +0 -51
  195. data/lib/nokogiri/ffi/structs/xml_sax_push_parser_context.rb +0 -124
  196. data/lib/nokogiri/ffi/structs/xml_schema.rb +0 -13
  197. data/lib/nokogiri/ffi/structs/xml_syntax_error.rb +0 -31
  198. data/lib/nokogiri/ffi/structs/xml_text_reader.rb +0 -12
  199. data/lib/nokogiri/ffi/structs/xml_xpath_context.rb +0 -38
  200. data/lib/nokogiri/ffi/structs/xml_xpath_object.rb +0 -35
  201. data/lib/nokogiri/ffi/structs/xml_xpath_parser_context.rb +0 -20
  202. data/lib/nokogiri/ffi/structs/xslt_stylesheet.rb +0 -13
  203. data/lib/nokogiri/ffi/weak_bucket.rb +0 -40
  204. data/lib/nokogiri/ffi/xml/attr.rb +0 -41
  205. data/lib/nokogiri/ffi/xml/attribute_decl.rb +0 -27
  206. data/lib/nokogiri/ffi/xml/cdata.rb +0 -19
  207. data/lib/nokogiri/ffi/xml/comment.rb +0 -18
  208. data/lib/nokogiri/ffi/xml/document.rb +0 -166
  209. data/lib/nokogiri/ffi/xml/document_fragment.rb +0 -21
  210. data/lib/nokogiri/ffi/xml/dtd.rb +0 -67
  211. data/lib/nokogiri/ffi/xml/element_content.rb +0 -43
  212. data/lib/nokogiri/ffi/xml/element_decl.rb +0 -19
  213. data/lib/nokogiri/ffi/xml/entity_decl.rb +0 -36
  214. data/lib/nokogiri/ffi/xml/entity_reference.rb +0 -19
  215. data/lib/nokogiri/ffi/xml/namespace.rb +0 -44
  216. data/lib/nokogiri/ffi/xml/node.rb +0 -554
  217. data/lib/nokogiri/ffi/xml/node_set.rb +0 -149
  218. data/lib/nokogiri/ffi/xml/processing_instruction.rb +0 -20
  219. data/lib/nokogiri/ffi/xml/reader.rb +0 -236
  220. data/lib/nokogiri/ffi/xml/relax_ng.rb +0 -85
  221. data/lib/nokogiri/ffi/xml/sax/parser.rb +0 -135
  222. data/lib/nokogiri/ffi/xml/sax/parser_context.rb +0 -67
  223. data/lib/nokogiri/ffi/xml/sax/push_parser.rb +0 -51
  224. data/lib/nokogiri/ffi/xml/schema.rb +0 -109
  225. data/lib/nokogiri/ffi/xml/syntax_error.rb +0 -98
  226. data/lib/nokogiri/ffi/xml/text.rb +0 -18
  227. data/lib/nokogiri/ffi/xml/xpath.rb +0 -9
  228. data/lib/nokogiri/ffi/xml/xpath_context.rb +0 -148
  229. data/lib/nokogiri/ffi/xslt/stylesheet.rb +0 -53
  230. data/lib/nokogiri/version_warning.rb +0 -14
  231. data/test/ffi/test_document.rb +0 -35
data/ext/nokogiri/depend CHANGED
@@ -1,32 +1,358 @@
1
- html_document.o: html_document.c
2
- html_element_description.o: html_element_description.c
3
- html_entity_lookup.o: html_entity_lookup.c
4
- html_sax_parser_context.o: html_sax_parser_context.c
5
- nokogiri.o: nokogiri.c
6
- xml_attr.o: xml_attr.c
7
- xml_attribute_decl.o: xml_attribute_decl.c
8
- xml_cdata.o: xml_cdata.c
9
- xml_comment.o: xml_comment.c
10
- xml_document.o: xml_document.c
11
- xml_document_fragment.o: xml_document_fragment.c
12
- xml_dtd.o: xml_dtd.c
13
- xml_element_content.o: xml_element_content.c
14
- xml_element_decl.o: xml_element_decl.c
15
- xml_encoding_handler.o: xml_encoding_handler.c
16
- xml_entity_decl.o: xml_entity_decl.c
17
- xml_entity_reference.o: xml_entity_reference.c
18
- xml_io.o: xml_io.c
19
- xml_namespace.o: xml_namespace.c
20
- xml_node.o: xml_node.c
21
- xml_node_set.o: xml_node_set.c
22
- xml_processing_instruction.o: xml_processing_instruction.c
23
- xml_reader.o: xml_reader.c
24
- xml_relax_ng.o: xml_relax_ng.c
25
- xml_sax_parser.o: xml_sax_parser.c
26
- xml_sax_parser_context.o: xml_sax_parser_context.c
27
- xml_sax_push_parser.o: xml_sax_push_parser.c
28
- xml_schema.o: xml_schema.c
29
- xml_syntax_error.o: xml_syntax_error.c
30
- xml_text.o: xml_text.c
31
- xml_xpath_context.o: xml_xpath_context.c
32
- xslt_stylesheet.o: xslt_stylesheet.c
1
+ html_document.o: html_document.c html_document.h nokogiri.h xml_io.h \
2
+ xml_document.h html_entity_lookup.h xml_node.h xml_text.h \
3
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
4
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
5
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
6
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
7
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
8
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
9
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
10
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
11
+
12
+ html_element_description.o: html_element_description.c \
13
+ html_element_description.h nokogiri.h xml_io.h xml_document.h \
14
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
15
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
16
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
17
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
18
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
19
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
20
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
21
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h xml_namespace.h \
22
+ xml_encoding_handler.h
23
+
24
+ html_entity_lookup.o: html_entity_lookup.c html_entity_lookup.h \
25
+ nokogiri.h xml_io.h xml_document.h html_document.h xml_node.h \
26
+ xml_text.h xml_cdata.h xml_attr.h xml_processing_instruction.h \
27
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
28
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
29
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
30
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
31
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
32
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
33
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
34
+
35
+ html_sax_parser_context.o: html_sax_parser_context.c \
36
+ html_sax_parser_context.h nokogiri.h xml_io.h xml_document.h \
37
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
38
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
39
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
40
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
41
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
42
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
43
+ xml_reader.h xslt_stylesheet.h xml_syntax_error.h xml_schema.h \
44
+ xml_relax_ng.h html_element_description.h xml_namespace.h \
45
+ xml_encoding_handler.h
46
+
47
+ nokogiri.o: nokogiri.c nokogiri.h xml_io.h xml_document.h \
48
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
49
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
50
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
51
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
52
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
53
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
54
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
55
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
56
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
57
+
58
+ xml_attr.o: xml_attr.c xml_attr.h nokogiri.h xml_io.h xml_document.h \
59
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
60
+ xml_cdata.h xml_processing_instruction.h xml_entity_reference.h \
61
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
62
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
63
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
64
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
65
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
66
+ xml_schema.h xml_relax_ng.h html_element_description.h \
67
+ xml_namespace.h xml_encoding_handler.h
68
+
69
+ xml_attribute_decl.o: xml_attribute_decl.c xml_attribute_decl.h \
70
+ nokogiri.h xml_io.h xml_document.h html_entity_lookup.h \
71
+ html_document.h xml_node.h xml_text.h xml_cdata.h xml_attr.h \
72
+ xml_processing_instruction.h xml_entity_reference.h \
73
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
74
+ xml_element_decl.h xml_entity_decl.h xml_xpath_context.h \
75
+ xml_element_content.h xml_sax_parser_context.h xml_sax_parser.h \
76
+ xml_sax_push_parser.h xml_reader.h html_sax_parser_context.h \
77
+ xslt_stylesheet.h xml_syntax_error.h xml_schema.h xml_relax_ng.h \
78
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
79
+
80
+ xml_cdata.o: xml_cdata.c xml_cdata.h nokogiri.h xml_io.h \
81
+ xml_document.h html_entity_lookup.h html_document.h xml_node.h \
82
+ xml_text.h xml_attr.h xml_processing_instruction.h \
83
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
84
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
85
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
86
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
87
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
88
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
89
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
90
+
91
+ xml_comment.o: xml_comment.c xml_comment.h nokogiri.h xml_io.h \
92
+ xml_document.h html_entity_lookup.h html_document.h xml_node.h \
93
+ xml_text.h xml_cdata.h xml_attr.h xml_processing_instruction.h \
94
+ xml_entity_reference.h xml_document_fragment.h xml_node_set.h \
95
+ xml_dtd.h xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
96
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
97
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
98
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
99
+ xml_schema.h xml_relax_ng.h html_element_description.h \
100
+ xml_namespace.h xml_encoding_handler.h
101
+
102
+ xml_document.o: xml_document.c xml_document.h nokogiri.h xml_io.h \
103
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
104
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
105
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
106
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
107
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
108
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
109
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
110
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
111
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
112
+
113
+ xml_document_fragment.o: xml_document_fragment.c \
114
+ xml_document_fragment.h nokogiri.h xml_io.h xml_document.h \
115
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
116
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
117
+ xml_entity_reference.h xml_comment.h xml_node_set.h xml_dtd.h \
118
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
119
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
120
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
121
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
122
+ xml_schema.h xml_relax_ng.h html_element_description.h \
123
+ xml_namespace.h xml_encoding_handler.h
124
+
125
+ xml_dtd.o: xml_dtd.c xml_dtd.h nokogiri.h xml_io.h xml_document.h \
126
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
127
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
128
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
129
+ xml_node_set.h xml_attribute_decl.h xml_element_decl.h \
130
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
131
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
132
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
133
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
134
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
135
+
136
+ xml_element_content.o: xml_element_content.c xml_element_content.h \
137
+ nokogiri.h xml_io.h xml_document.h html_entity_lookup.h \
138
+ html_document.h xml_node.h xml_text.h xml_cdata.h xml_attr.h \
139
+ xml_processing_instruction.h xml_entity_reference.h \
140
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
141
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
142
+ xml_xpath_context.h xml_sax_parser_context.h xml_sax_parser.h \
143
+ xml_sax_push_parser.h xml_reader.h html_sax_parser_context.h \
144
+ xslt_stylesheet.h xml_syntax_error.h xml_schema.h xml_relax_ng.h \
145
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
146
+
147
+ xml_element_decl.o: xml_element_decl.c xml_element_decl.h nokogiri.h \
148
+ xml_io.h xml_document.h html_entity_lookup.h html_document.h \
149
+ xml_node.h xml_text.h xml_cdata.h xml_attr.h \
150
+ xml_processing_instruction.h xml_entity_reference.h \
151
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
152
+ xml_attribute_decl.h xml_entity_decl.h xml_xpath_context.h \
153
+ xml_element_content.h xml_sax_parser_context.h xml_sax_parser.h \
154
+ xml_sax_push_parser.h xml_reader.h html_sax_parser_context.h \
155
+ xslt_stylesheet.h xml_syntax_error.h xml_schema.h xml_relax_ng.h \
156
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
157
+
158
+ xml_encoding_handler.o: xml_encoding_handler.c xml_encoding_handler.h \
159
+ nokogiri.h xml_io.h xml_document.h html_entity_lookup.h \
160
+ html_document.h xml_node.h xml_text.h xml_cdata.h xml_attr.h \
161
+ xml_processing_instruction.h xml_entity_reference.h \
162
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
163
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
164
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
165
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
166
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
167
+ xml_schema.h xml_relax_ng.h html_element_description.h \
168
+ xml_namespace.h
169
+
170
+ xml_entity_decl.o: xml_entity_decl.c xml_entity_decl.h nokogiri.h \
171
+ xml_io.h xml_document.h html_entity_lookup.h html_document.h \
172
+ xml_node.h xml_text.h xml_cdata.h xml_attr.h \
173
+ xml_processing_instruction.h xml_entity_reference.h \
174
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
175
+ xml_attribute_decl.h xml_element_decl.h xml_xpath_context.h \
176
+ xml_element_content.h xml_sax_parser_context.h xml_sax_parser.h \
177
+ xml_sax_push_parser.h xml_reader.h html_sax_parser_context.h \
178
+ xslt_stylesheet.h xml_syntax_error.h xml_schema.h xml_relax_ng.h \
179
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
180
+
181
+ xml_entity_reference.o: xml_entity_reference.c xml_entity_reference.h \
182
+ nokogiri.h xml_io.h xml_document.h html_entity_lookup.h \
183
+ html_document.h xml_node.h xml_text.h xml_cdata.h xml_attr.h \
184
+ xml_processing_instruction.h xml_document_fragment.h xml_comment.h \
185
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
186
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
187
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
188
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
189
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
190
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
191
+
192
+ xml_io.o: xml_io.c xml_io.h nokogiri.h xml_document.h \
193
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
194
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
195
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
196
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
197
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
198
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
199
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
200
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
201
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
202
+
203
+ xml_namespace.o: xml_namespace.c xml_namespace.h nokogiri.h xml_io.h \
204
+ xml_document.h html_entity_lookup.h html_document.h xml_node.h \
205
+ xml_text.h xml_cdata.h xml_attr.h xml_processing_instruction.h \
206
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
207
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
208
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
209
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
210
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
211
+ xml_syntax_error.h xml_schema.h xml_relax_ng.h \
212
+ html_element_description.h xml_encoding_handler.h
213
+
214
+ xml_node.o: xml_node.c xml_node.h nokogiri.h xml_io.h xml_document.h \
215
+ html_entity_lookup.h html_document.h xml_text.h xml_cdata.h \
216
+ xml_attr.h xml_processing_instruction.h xml_entity_reference.h \
217
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
218
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
219
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
220
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
221
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
222
+ xml_schema.h xml_relax_ng.h html_element_description.h \
223
+ xml_namespace.h xml_encoding_handler.h
224
+
225
+ xml_node_set.o: xml_node_set.c xml_node_set.h nokogiri.h xml_io.h \
226
+ xml_document.h html_entity_lookup.h html_document.h xml_node.h \
227
+ xml_text.h xml_cdata.h xml_attr.h xml_processing_instruction.h \
228
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
229
+ xml_dtd.h xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
230
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
231
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
232
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
233
+ xml_schema.h xml_relax_ng.h html_element_description.h \
234
+ xml_namespace.h xml_encoding_handler.h
235
+
236
+ xml_processing_instruction.o: xml_processing_instruction.c \
237
+ xml_processing_instruction.h nokogiri.h xml_io.h xml_document.h \
238
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
239
+ xml_cdata.h xml_attr.h xml_entity_reference.h xml_document_fragment.h \
240
+ xml_comment.h xml_node_set.h xml_dtd.h xml_attribute_decl.h \
241
+ xml_element_decl.h xml_entity_decl.h xml_xpath_context.h \
242
+ xml_element_content.h xml_sax_parser_context.h xml_sax_parser.h \
243
+ xml_sax_push_parser.h xml_reader.h html_sax_parser_context.h \
244
+ xslt_stylesheet.h xml_syntax_error.h xml_schema.h xml_relax_ng.h \
245
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
246
+
247
+ xml_reader.o: xml_reader.c xml_reader.h nokogiri.h xml_io.h \
248
+ xml_document.h html_entity_lookup.h html_document.h xml_node.h \
249
+ xml_text.h xml_cdata.h xml_attr.h xml_processing_instruction.h \
250
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
251
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
252
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
253
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
254
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
255
+ xml_schema.h xml_relax_ng.h html_element_description.h \
256
+ xml_namespace.h xml_encoding_handler.h
257
+
258
+ xml_relax_ng.o: xml_relax_ng.c xml_relax_ng.h nokogiri.h xml_io.h \
259
+ xml_document.h html_entity_lookup.h html_document.h xml_node.h \
260
+ xml_text.h xml_cdata.h xml_attr.h xml_processing_instruction.h \
261
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
262
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
263
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
264
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
265
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
266
+ xml_syntax_error.h xml_schema.h html_element_description.h \
267
+ xml_namespace.h xml_encoding_handler.h
268
+
269
+ xml_sax_parser.o: xml_sax_parser.c xml_sax_parser.h nokogiri.h \
270
+ xml_io.h xml_document.h html_entity_lookup.h html_document.h \
271
+ xml_node.h xml_text.h xml_cdata.h xml_attr.h \
272
+ xml_processing_instruction.h xml_entity_reference.h \
273
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
274
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
275
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
276
+ xml_sax_push_parser.h xml_reader.h html_sax_parser_context.h \
277
+ xslt_stylesheet.h xml_syntax_error.h xml_schema.h xml_relax_ng.h \
278
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
279
+
280
+ xml_sax_parser_context.o: xml_sax_parser_context.c \
281
+ xml_sax_parser_context.h nokogiri.h xml_io.h xml_document.h \
282
+ html_entity_lookup.h html_document.h xml_node.h xml_text.h \
283
+ xml_cdata.h xml_attr.h xml_processing_instruction.h \
284
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
285
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
286
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
287
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
288
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
289
+ xml_schema.h xml_relax_ng.h html_element_description.h \
290
+ xml_namespace.h xml_encoding_handler.h
291
+
292
+ xml_sax_push_parser.o: xml_sax_push_parser.c xml_sax_push_parser.h \
293
+ nokogiri.h xml_io.h xml_document.h html_entity_lookup.h \
294
+ html_document.h xml_node.h xml_text.h xml_cdata.h xml_attr.h \
295
+ xml_processing_instruction.h xml_entity_reference.h \
296
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
297
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
298
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
299
+ xml_sax_parser.h xml_reader.h html_sax_parser_context.h \
300
+ xslt_stylesheet.h xml_syntax_error.h xml_schema.h xml_relax_ng.h \
301
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
302
+
303
+ xml_schema.o: xml_schema.c xml_schema.h nokogiri.h xml_io.h \
304
+ xml_document.h html_entity_lookup.h html_document.h xml_node.h \
305
+ xml_text.h xml_cdata.h xml_attr.h xml_processing_instruction.h \
306
+ xml_entity_reference.h xml_document_fragment.h xml_comment.h \
307
+ xml_node_set.h xml_dtd.h xml_attribute_decl.h xml_element_decl.h \
308
+ xml_entity_decl.h xml_xpath_context.h xml_element_content.h \
309
+ xml_sax_parser_context.h xml_sax_parser.h xml_sax_push_parser.h \
310
+ xml_reader.h html_sax_parser_context.h xslt_stylesheet.h \
311
+ xml_syntax_error.h xml_relax_ng.h html_element_description.h \
312
+ xml_namespace.h xml_encoding_handler.h
313
+
314
+ xml_syntax_error.o: xml_syntax_error.c xml_syntax_error.h nokogiri.h \
315
+ xml_io.h xml_document.h html_entity_lookup.h html_document.h \
316
+ xml_node.h xml_text.h xml_cdata.h xml_attr.h \
317
+ xml_processing_instruction.h xml_entity_reference.h \
318
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
319
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
320
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
321
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
322
+ html_sax_parser_context.h xslt_stylesheet.h xml_schema.h \
323
+ xml_relax_ng.h html_element_description.h xml_namespace.h \
324
+ xml_encoding_handler.h
325
+
326
+ xml_text.o: xml_text.c xml_text.h nokogiri.h xml_io.h xml_document.h \
327
+ html_entity_lookup.h html_document.h xml_node.h xml_cdata.h \
328
+ xml_attr.h xml_processing_instruction.h xml_entity_reference.h \
329
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
330
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
331
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
332
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
333
+ html_sax_parser_context.h xslt_stylesheet.h xml_syntax_error.h \
334
+ xml_schema.h xml_relax_ng.h html_element_description.h \
335
+ xml_namespace.h xml_encoding_handler.h
336
+
337
+ xml_xpath_context.o: xml_xpath_context.c xml_xpath_context.h \
338
+ nokogiri.h xml_io.h xml_document.h html_entity_lookup.h \
339
+ html_document.h xml_node.h xml_text.h xml_cdata.h xml_attr.h \
340
+ xml_processing_instruction.h xml_entity_reference.h \
341
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
342
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
343
+ xml_element_content.h xml_sax_parser_context.h xml_sax_parser.h \
344
+ xml_sax_push_parser.h xml_reader.h html_sax_parser_context.h \
345
+ xslt_stylesheet.h xml_syntax_error.h xml_schema.h xml_relax_ng.h \
346
+ html_element_description.h xml_namespace.h xml_encoding_handler.h
347
+
348
+ xslt_stylesheet.o: xslt_stylesheet.c xslt_stylesheet.h nokogiri.h \
349
+ xml_io.h xml_document.h html_entity_lookup.h html_document.h \
350
+ xml_node.h xml_text.h xml_cdata.h xml_attr.h \
351
+ xml_processing_instruction.h xml_entity_reference.h \
352
+ xml_document_fragment.h xml_comment.h xml_node_set.h xml_dtd.h \
353
+ xml_attribute_decl.h xml_element_decl.h xml_entity_decl.h \
354
+ xml_xpath_context.h xml_element_content.h xml_sax_parser_context.h \
355
+ xml_sax_parser.h xml_sax_push_parser.h xml_reader.h \
356
+ html_sax_parser_context.h xml_syntax_error.h xml_schema.h \
357
+ xml_relax_ng.h html_element_description.h xml_namespace.h \
358
+ xml_encoding_handler.h
@@ -17,9 +17,9 @@ end
17
17
  $CFLAGS << " #{ENV["CFLAGS"]}"
18
18
  $LIBS << " #{ENV["LIBS"]}"
19
19
 
20
- if Config::CONFIG['target_os'] == 'mingw32' || Config::CONFIG['target_os'] =~ /mswin32/
20
+ if RbConfig::CONFIG['target_os'] == 'mingw32' || RbConfig::CONFIG['target_os'] =~ /mswin32/
21
21
  $CFLAGS << " -DXP_WIN -DXP_WIN32 -DUSE_INCLUDED_VASPRINTF"
22
- elsif Config::CONFIG['target_os'] =~ /solaris/
22
+ elsif RbConfig::CONFIG['target_os'] =~ /solaris/
23
23
  $CFLAGS << " -DUSE_INCLUDED_VASPRINTF"
24
24
  else
25
25
  $CFLAGS << " -g -DXP_UNIX"
@@ -33,7 +33,7 @@ if RbConfig::MAKEFILE_CONFIG['CC'] =~ /gcc/
33
33
  $CFLAGS << " -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline"
34
34
  end
35
35
 
36
- if Config::CONFIG['target_os'] =~ /mswin32/
36
+ if RbConfig::CONFIG['target_os'] =~ /mswin32/
37
37
  lib_prefix = 'lib'
38
38
 
39
39
  # There's no default include/lib dir on Windows. Let's just add the Ruby ones
@@ -91,18 +91,22 @@ def asplode(lib)
91
91
  abort "-----\n#{lib} is missing. please visit http://nokogiri.org/tutorials/installing_nokogiri.html for help with installing dependencies.\n-----"
92
92
  end
93
93
 
94
- # Use this with cross compiling
95
- # PKG_CONFIG_PATH=/Users/apatterson/git/nokogiri/tmp/cross/lib/pkgconfig/ \
96
- # rake cross compile RUBY_CC_VERSION=1.9.1
97
94
  pkg_config('libxslt') if RUBY_PLATFORM =~ /mingw/
98
95
 
99
96
  asplode "libxml2" unless find_header('libxml/parser.h')
100
97
  asplode "libxslt" unless find_header('libxslt/xslt.h')
101
98
  asplode "libexslt" unless find_header('libexslt/exslt.h')
99
+ asplode "libiconv" unless have_func('iconv_open', 'iconv.h') or have_library('iconv', 'iconv_open', 'iconv.h')
102
100
  asplode "libxml2" unless find_library("#{lib_prefix}xml2", 'xmlParseDoc')
103
101
  asplode "libxslt" unless find_library("#{lib_prefix}xslt", 'xsltParseStylesheetDoc')
104
102
  asplode "libexslt" unless find_library("#{lib_prefix}exslt", 'exsltFuncRegister')
105
103
 
104
+ unless have_func('xmlHasFeature')
105
+ abort "-----\nThe function 'xmlHasFeature' is missing from your installation of libxml2. Likely this means that your installed version of libxml2 is old enough that nokogiri will not work well. To get around this problem, please upgrade your installation of libxml2.
106
+
107
+ Please visit http://nokogiri.org/tutorials/installing_nokogiri.html for more help!"
108
+ end
109
+
106
110
  have_func 'xmlFirstElementChild'
107
111
  have_func('xmlRelaxNGSetParserStructuredErrors')
108
112
  have_func('xmlRelaxNGSetParserStructuredErrors')
@@ -23,19 +23,39 @@ int vasprintf (char **strp, const char *fmt, va_list ap)
23
23
  }
24
24
  #endif
25
25
 
26
- int is_2_6_16(void)
26
+ #ifdef USING_SYSTEM_ALLOCATOR_LIBRARY /* Ruby Enterprise Edition with tcmalloc */
27
+ void vasprintf_free (void *p)
27
28
  {
28
- return (strcmp(xmlParserVersion, "20616") <= 0) ? 1 : 0 ;
29
+ system_free(p);
29
30
  }
31
+ #else
32
+ void vasprintf_free (void *p)
33
+ {
34
+ free(p);
35
+ }
36
+ #endif
37
+
38
+ #ifndef __MACRUBY__
39
+ /* Allocate strdupped strings with the same memory allocator Ruby uses. */
40
+ static char *ruby_strdup(const char *s)
41
+ {
42
+ size_t len = strlen(s);
43
+ char *result = ruby_xmalloc((ssize_t) (len + 1));
44
+ memcpy(result, s, len + 1);
45
+ return result;
46
+ }
47
+ #endif
30
48
 
31
49
  void Init_nokogiri()
32
50
  {
51
+ #ifndef __MACRUBY__
33
52
  xmlMemSetup(
34
53
  (xmlFreeFunc)ruby_xfree,
35
54
  (xmlMallocFunc)ruby_xmalloc,
36
55
  (xmlReallocFunc)ruby_xrealloc,
37
- strdup
56
+ ruby_strdup
38
57
  );
58
+ #endif
39
59
 
40
60
  mNokogiri = rb_define_module("Nokogiri");
41
61
  mNokogiriXml = rb_define_module_under(mNokogiri, "XML");
@@ -27,6 +27,7 @@ int vasprintf (char **strp, const char *fmt, va_list ap);
27
27
  #include <libxml/HTMLparser.h>
28
28
  #include <libxml/HTMLtree.h>
29
29
  #include <libxml/relaxng.h>
30
+ #include <libxslt/extensions.h>
30
31
  #include <ruby.h>
31
32
 
32
33
  #ifdef HAVE_RUBY_ENCODING_H
@@ -35,8 +36,6 @@ int vasprintf (char **strp, const char *fmt, va_list ap);
35
36
  #include <st.h>
36
37
  #endif
37
38
 
38
- int is_2_6_16(void) ;
39
-
40
39
  #ifndef UNUSED
41
40
  # if defined(__GNUC__)
42
41
  # define MAYBE_UNUSED(name) name __attribute__((unused))
@@ -134,6 +133,8 @@ extern VALUE mNokogiriXslt ;
134
133
  #define NOKOGIRI_DEBUG_START(p)
135
134
  #define NOKOGIRI_DEBUG_END(p)
136
135
 
136
+ #endif
137
+
137
138
  #ifndef RSTRING_PTR
138
139
  #define RSTRING_PTR(s) (RSTRING(s)->ptr)
139
140
  #endif
@@ -150,6 +151,10 @@ extern VALUE mNokogiriXslt ;
150
151
  #define RARRAY_LEN(a) RARRAY(a)->len
151
152
  #endif
152
153
 
154
+ #ifndef __builtin_expect
155
+ # if defined(__GNUC__)
156
+ # define __builtin_expect(expr, c) __builtin_expect((long)(expr), (long)(c))
157
+ # endif
153
158
  #endif
154
159
 
155
160
  #endif
@@ -41,6 +41,7 @@ static void dealloc(xmlDocPtr doc)
41
41
  static void recursively_remove_namespaces_from_node(xmlNodePtr node)
42
42
  {
43
43
  xmlNodePtr child ;
44
+ xmlAttrPtr property ;
44
45
 
45
46
  xmlSetNs(node, NULL);
46
47
 
@@ -51,6 +52,14 @@ static void recursively_remove_namespaces_from_node(xmlNodePtr node)
51
52
  xmlFreeNsList(node->nsDef);
52
53
  node->nsDef = NULL;
53
54
  }
55
+
56
+ if (node->properties != NULL) {
57
+ property = node->properties ;
58
+ while (property != NULL) {
59
+ if (property->ns) property->ns = NULL ;
60
+ property = property->next ;
61
+ }
62
+ }
54
63
  }
55
64
 
56
65
  /*
@@ -84,10 +84,10 @@ static VALUE attributes(VALUE self)
84
84
 
85
85
  Data_Get_Struct(self, xmlDtd, dtd);
86
86
 
87
- if(!dtd->attributes) return Qnil;
88
-
89
87
  hash = rb_hash_new();
90
88
 
89
+ if(!dtd->attributes) return hash;
90
+
91
91
  xmlHashScan((xmlHashTablePtr)dtd->attributes, element_copier, (void *)hash);
92
92
 
93
93
  return hash;
@@ -2,22 +2,47 @@
2
2
 
3
3
  static ID id_read, id_write;
4
4
 
5
+ VALUE read_check(VALUE *args) {
6
+ return rb_funcall(args[0], id_read, 1, args[1]);
7
+ }
8
+
9
+ VALUE read_failed(void) {
10
+ return Qnil;
11
+ }
12
+
5
13
  int io_read_callback(void * ctx, char * buffer, int len) {
6
- VALUE io = (VALUE)ctx;
7
- VALUE string = rb_funcall(io, id_read, 1, INT2NUM(len));
14
+ VALUE string, args[2];
15
+ size_t str_len, safe_len;
16
+
17
+ args[0] = (VALUE)ctx;
18
+ args[1] = INT2NUM(len);
19
+
20
+ string = rb_rescue(read_check, (VALUE)args, read_failed, 0);
8
21
 
9
22
  if(NIL_P(string)) return 0;
10
23
 
11
- memcpy(buffer, StringValuePtr(string), (unsigned int)RSTRING_LEN(string));
24
+ str_len = (size_t)RSTRING_LEN(string);
25
+ safe_len = str_len > (size_t)len ? (size_t)len : str_len;
26
+ memcpy(buffer, StringValuePtr(string), safe_len);
12
27
 
13
- return (int)RSTRING_LEN(string);
28
+ return safe_len;
29
+ }
30
+
31
+ VALUE write_check(VALUE *args) {
32
+ return rb_funcall(args[0], id_write, 1, args[1]);
33
+ }
34
+
35
+ VALUE write_failed(void) {
36
+ return Qnil;
14
37
  }
15
38
 
16
39
  int io_write_callback(void * ctx, char * buffer, int len) {
17
- VALUE io = (VALUE)ctx;
18
- VALUE string = rb_str_new(buffer, len);
40
+ VALUE args[2];
41
+
42
+ args[0] = (VALUE)ctx;
43
+ args[1] = rb_str_new(buffer, (long)len);
19
44
 
20
- rb_funcall(io, id_write, 1, string);
45
+ rb_rescue(write_check, (VALUE)args, write_failed, 0);
21
46
  return len;
22
47
  }
23
48