Applied the VMS update patch from Craig A. Berry update Daniel

* vms/build_libxml.com vms/config.vms vms/readme.vms
  include/libxml/parser.h include/libxml/parserInternals.h
  include/libxml/tree.h include/libxml/xmlIO.h
  HTMLparser.c catalog.c debugXML.c parser.c parserInternals.c
  tree.c triodef.h trionan.c uri.c xmlIO.c xpath.c:
  Applied the VMS update patch from Craig A. Berry
* doc/*.html: update
Daniel
This commit is contained in:
Daniel Veillard 2002-10-22 17:35:37 +00:00
parent f000f07303
commit e645e8c141
23 changed files with 1093 additions and 469 deletions

View File

@ -1,3 +1,13 @@
Tue Oct 22 19:33:20 CEST 2002 Daniel Veillard <daniel@veillard.com>
* vms/build_libxml.com vms/config.vms vms/readme.vms
include/libxml/parser.h include/libxml/parserInternals.h
include/libxml/tree.h include/libxml/xmlIO.h
HTMLparser.c catalog.c debugXML.c parser.c parserInternals.c
tree.c triodef.h trionan.c uri.c xmlIO.c xpath.c:
Applied the VMS update patch from Craig A. Berry
* doc/*.html: update
Tue Oct 22 16:27:31 CEST 2002 Daniel Veillard <daniel@veillard.com>
* include/libxml/encoding.h encoding.c: made xmlGetUTF8Char public

View File

@ -3200,7 +3200,7 @@ htmlParseReference(htmlParserCtxtPtr ctxt) {
ctxt->sax->characters(ctxt->userData, BAD_CAST "&", 1);
return;
}
if ((ent == NULL) || (ent->value <= 0)) {
if ((ent == NULL) || !(ent->value > 0)) {
htmlCheckParagraph(ctxt);
if ((ctxt->sax != NULL) && (ctxt->sax->characters != NULL)) {
ctxt->sax->characters(ctxt->userData, BAD_CAST "&", 1);

View File

@ -2860,7 +2860,7 @@ xmlInitializeCatalog(void) {
paths = cur;
while ((*cur != 0) && (!IS_BLANK(*cur)))
cur++;
path = xmlStrndup((const xmlChar *)paths, cur - paths);
path = (char *) xmlStrndup((const xmlChar *)paths, cur - paths);
if (path != NULL) {
*nextent = xmlNewCatalogEntry(XML_CATA_CATALOG, NULL,
NULL, BAD_CAST path, xmlCatalogDefaultPrefer);

View File

@ -1563,7 +1563,7 @@ xmlShellSetBase(xmlShellCtxtPtr ctxt ATTRIBUTE_UNUSED,
*
* Returns 0
*/
int
static int
xmlShellGrep(xmlShellCtxtPtr ctxt ATTRIBUTE_UNUSED,
char *arg, xmlNodePtr node, xmlNodePtr node2 ATTRIBUTE_UNUSED)
{
@ -1582,16 +1582,16 @@ xmlShellGrep(xmlShellCtxtPtr ctxt ATTRIBUTE_UNUSED,
#endif
while (node != NULL) {
if (node->type == XML_COMMENT_NODE) {
if (xmlStrstr(node->content, arg)) {
if (xmlStrstr(node->content, (xmlChar *) arg)) {
fprintf(ctxt->output, "%s : ", xmlGetNodePath(node));
xmlShellList(ctxt, NULL, node, NULL);
}
} else if (node->type == XML_TEXT_NODE) {
if (xmlStrstr(node->content, arg)) {
if (xmlStrstr(node->content, (xmlChar *) arg)) {
fprintf(ctxt->output, "%s : ", xmlGetNodePath(node->parent));
xmlShellList(ctxt, NULL, node, NULL);
xmlShellList(ctxt, NULL, node->parent, NULL);
}
}

View File

@ -1,3 +1,693 @@
Freeing 0x809a570
Freeing 0x8099e68
Freeing 0x809a850
Freeing 0x809a120
Freeing 0x809aac8
Freeing 0x8099e68
Freeing 0x809ad30
Freeing 0x809a920
Freeing 0x809b090
Freeing 0x809a920
Freeing 0x809b368
Freeing 0x809a920
Freeing 0x809b630
Freeing 0x809a920
Freeing 0x809b8d8
Freeing 0x809a920
Freeing 0x809bba0
Freeing 0x809a920
Freeing 0x809be38
Freeing 0x809a920
Freeing 0x809c118
Freeing 0x809a920
Freeing 0x809c3b0
Freeing 0x809a920
Freeing 0x809c640
Freeing 0x809a920
Freeing 0x809c8e0
Freeing 0x809a920
Freeing 0x809cbb0
Freeing 0x809a920
Freeing 0x809ce60
Freeing 0x809a920
Freeing 0x809d140
Freeing 0x809a920
Freeing 0x809d3c0
Freeing 0x809a920
Freeing 0x809d6f8
Freeing 0x809a920
Freeing 0x809d9e0
Freeing 0x809a920
Freeing 0x809dbf8
Freeing 0x809d900
Freeing 0x809ded0
Freeing 0x809d900
Freeing 0x809e168
Freeing 0x809d900
Freeing 0x809e438
Freeing 0x809d900
Freeing 0x809e6e8
Freeing 0x809d900
Freeing 0x809e980
Freeing 0x809d900
Freeing 0x80a50d8
Freeing 0x817af18
Freeing 0x817b5b8
Freeing 0x8184cc8
Freeing 0x81827e8
Freeing 0x81854c8
Freeing 0x8185110
Freeing 0x8185868
Freeing 0x81854d0
Freeing 0x8185bf0
Freeing 0x8185868
Freeing 0x8185f70
Freeing 0x81858b8
Freeing 0x8186268
Freeing 0x8185d20
Freeing 0x8186678
Freeing 0x81862c0
Freeing 0x8186ab8
Freeing 0x81866d0
Freeing 0x8186e18
Freeing 0x8186bb0
Freeing 0x81872a0
Freeing 0x8186ec0
Freeing 0x81875a8
Freeing 0x8187258
Freeing 0x81878b0
Freeing 0x8187258
Freeing 0x8187df0
Freeing 0x8187b08
Freeing 0x81883b8
Freeing 0x8187fa8
Freeing 0x8188680
Freeing 0x8187fa8
Freeing 0x81889a8
Freeing 0x8185088
Freeing 0x81890a0
Freeing 0x8188c90
Freeing 0x8189488
Freeing 0x8189168
Freeing 0x8189910
Freeing 0x8189410
Freeing 0x818a658
Freeing 0x818a2a0
Freeing 0x818aa78
Freeing 0x818a760
Freeing 0x818ae90
Freeing 0x818ab08
Freeing 0x818b138
Freeing 0x818ab08
Freeing 0x818b768
Freeing 0x818b340
Freeing 0x818bd78
Freeing 0x818c928
Freeing 0x818fd78
Freeing 0x818cf60
Freeing 0x8191e48
Freeing 0x81927a8
Freeing 0x8193138
Freeing 0x81a0288
Freeing 0x819fdc0
Freeing 0x81a0550
Freeing 0x819ffe0
Freeing 0x81a0818
Freeing 0x819fdc0
Freeing 0x81a1280
Freeing 0x81a0e70
Freeing 0x81a16e8
Freeing 0x81a1358
Freeing 0x81a1980
Freeing 0x81a16a8
Freeing 0x81a1e48
Freeing 0x81a1a60
Freeing 0x818b768
Freeing 0x818b6c8
Freeing 0x81a2520
Freeing 0x818c7e0
Freeing 0x8193f58
Freeing 0x818cb60
Freeing 0x818ebc8
Freeing 0x8194bd0
Freeing 0x8195560
Freeing 0x819f308
Freeing 0x819cde0
Freeing 0x819f668
Freeing 0x819f010
Freeing 0x819f948
Freeing 0x819f010
Freeing 0x819fca8
Freeing 0x819f4b0
Freeing 0x81a07a0
Freeing 0x81a0420
Freeing 0x81a1e10
Freeing 0x81a1968
Freeing 0x81a2068
Freeing 0x81a1968
Freeing 0x81a27c0
Freeing 0x81a2338
Freeing 0x81a3270
Freeing 0x81a2e80
Freeing 0x81a3520
Freeing 0x81a3080
Freeing 0x81a3a38
Freeing 0x81a3710
Freeing 0x81a3d00
Freeing 0x81a38c8
Freeing 0x81a46c0
Freeing 0x81a4268
Freeing 0x81a76b0
Freeing 0x81a72a0
Freeing 0x81a7bd0
Freeing 0x81a7638
Freeing 0x81a7ee8
Freeing 0x81a7ad0
Freeing 0x81a81d0
Freeing 0x81a7ad0
Freeing 0x81aaca8
Freeing 0x81aaa40
Freeing 0x81aaf58
Freeing 0x81aac10
Freeing 0x81aceb0
Freeing 0x81acae8
Freeing 0x81ada18
Freeing 0x81ad660
Freeing 0x81ae470
Freeing 0x81ae038
Freeing 0x81afb20
Freeing 0x81af750
Freeing 0x81b02e8
Freeing 0x81afea0
Freeing 0x81b0820
Freeing 0x81b04a0
Freeing 0x81b1620
Freeing 0x81b1200
Freeing 0x81b1a10
Freeing 0x81b1620
Freeing 0x81b1fe0
Freeing 0x81b1bf0
Freeing 0x81b23c8
Freeing 0x81b2278
Freeing 0x818c2e0
Freeing 0x81a24c8
Freeing 0x818b848
Freeing 0x818c4c0
Freeing 0x81b2a28
Freeing 0x818cad8
Freeing 0x81ab7e8
Freeing 0x81abf18
Freeing 0x81ac8a8
Freeing 0x8195c28
Freeing 0x8195828
Freeing 0x8196080
Freeing 0x8195d50
Freeing 0x8196440
Freeing 0x8196158
Freeing 0x8196740
Freeing 0x8196270
Freeing 0x8196bc8
Freeing 0x8196818
Freeing 0x8197080
Freeing 0x8196d40
Freeing 0x8197278
Freeing 0x8196f88
Freeing 0x8197bb8
Freeing 0x8196e70
Freeing 0x8197e80
Freeing 0x8197080
Freeing 0x81982a8
Freeing 0x8197e88
Freeing 0x8198730
Freeing 0x8198348
Freeing 0x8198bd8
Freeing 0x8198830
Freeing 0x8199110
Freeing 0x8198d60
Freeing 0x818bf70
Freeing 0x81b2cc8
Freeing 0x818bcc8
Freeing 0x818c978
Freeing 0x818fcf0
Freeing 0x818ce20
Freeing 0x8191dc0
Freeing 0x8192720
Freeing 0x81930b0
Freeing 0x81a0a30
Freeing 0x81a0680
Freeing 0x81a0d00
Freeing 0x81a0918
Freeing 0x81a1218
Freeing 0x81a0f40
Freeing 0x81a1658
Freeing 0x81a13a0
Freeing 0x81a19b8
Freeing 0x81a14c8
Freeing 0x818b6c8
Freeing 0x818b408
Freeing 0x8199788
Freeing 0x818c6a8
Freeing 0x818f9e8
Freeing 0x818ca78
Freeing 0x8191ac8
Freeing 0x8192428
Freeing 0x8192db8
Freeing 0x81a0438
Freeing 0x81a0018
Freeing 0x818c220
Freeing 0x81a4cb0
Freeing 0x818b838
Freeing 0x818d6f0
Freeing 0x81a19b0
Freeing 0x818ba40
Freeing 0x819bad0
Freeing 0x818e438
Freeing 0x819c7f8
Freeing 0x8199be0
Freeing 0x81997f8
Freeing 0x819a088
Freeing 0x8199d40
Freeing 0x81a3298
Freeing 0x81a2e20
Freeing 0x81a35d0
Freeing 0x81a3120
Freeing 0x818b6c8
Freeing 0x818b588
Freeing 0x818b7a8
Freeing 0x818cfb0
Freeing 0x81a3810
Freeing 0x818c6d8
Freeing 0x819cf80
Freeing 0x819d8e0
Freeing 0x819e270
Freeing 0x81acb58
Freeing 0x81ac6d8
Freeing 0x81ace18
Freeing 0x81ac6d8
Freeing 0x8193030
Freeing 0x8192c40
Freeing 0x81bffd0
Freeing 0x81bfbe0
Freeing 0x81c5ce8
Freeing 0x81c5b60
Freeing 0x81c7008
Freeing 0x81c6bf8
Freeing 0x81c9ed0
Freeing 0x81c9a98
Freeing 0x81ca548
Freeing 0x81ca210
Freeing 0x81cb508
Freeing 0x81cb1b8
Freeing 0x81cb8a0
Freeing 0x81cb178
Freeing 0x81ccb28
Freeing 0x81cc828
Freeing 0x81cd1f0
Freeing 0x81cce60
Freeing 0x81cfb08
Freeing 0x81cf6c0
Freeing 0x81d0db0
Freeing 0x81d0be0
Freeing 0x81d3378
Freeing 0x81d2f08
Freeing 0x81d3be0
Freeing 0x81d37d0
Freeing 0x81d4050
Freeing 0x81d3c40
Freeing 0x818d798
Freeing 0x81a3d18
Freeing 0x81822a0
Freeing 0x818d6c8
Freeing 0x81a2b18
Freeing 0x819df90
Freeing 0x819c498
Freeing 0x819c998
Freeing 0x819ed98
Freeing 0x818dc48
Freeing 0x818b838
Freeing 0x818d8a0
Freeing 0x818d298
Freeing 0x81a3590
Freeing 0x818b9f8
Freeing 0x819e4e8
Freeing 0x81a3f18
Freeing 0x81a48a8
Freeing 0x818d848
Freeing 0x818b6c8
Freeing 0x818b758
Freeing 0x81affe0
Freeing 0x81a35e8
Freeing 0x81a1898
Freeing 0x81a3a80
Freeing 0x81adcb0
Freeing 0x81a42b8
Freeing 0x81911a0
Freeing 0x8190b30
Freeing 0x8191580
Freeing 0x8190ee8
Freeing 0x81918e0
Freeing 0x81914e0
Freeing 0x8191dd0
Freeing 0x8191750
Freeing 0x81923a0
Freeing 0x8191fc8
Freeing 0x8192708
Freeing 0x8192428
Freeing 0x81929c8
Freeing 0x8192428
Freeing 0x8192ce0
Freeing 0x8192428
Freeing 0x81930e8
Freeing 0x8192d90
Freeing 0x81933d0
Freeing 0x8192d90
Freeing 0x81937d0
Freeing 0x8193480
Freeing 0x8193c58
Freeing 0x8193910
Freeing 0x81940f8
Freeing 0x8193db0
Freeing 0x81945b0
Freeing 0x8194268
Freeing 0x8194950
Freeing 0x8194268
Freeing 0x8194de8
Freeing 0x8194a08
Freeing 0x8195670
Freeing 0x8195378
Freeing 0x8195a18
Freeing 0x8195438
Freeing 0x8195e30
Freeing 0x8195ac8
Freeing 0x818d150
Freeing 0x81ae280
Freeing 0x818d6e0
Freeing 0x818ba00
Freeing 0x819e648
Freeing 0x818c030
Freeing 0x81a0728
Freeing 0x81a1088
Freeing 0x81a3a50
Freeing 0x818d9e8
Freeing 0x818b7e8
Freeing 0x81a36f8
Freeing 0x818e938
Freeing 0x81a27e0
Freeing 0x818d6b8
Freeing 0x81a0510
Freeing 0x81a0e70
Freeing 0x81a1758
Freeing 0x818e9f0
Freeing 0x818d930
Freeing 0x81a3400
Freeing 0x818cf50
Freeing 0x818ded0
Freeing 0x818d1c0
Freeing 0x818ff70
Freeing 0x81908d0
Freeing 0x81a3b90
Freeing 0x81a3750
Freeing 0x818b588
Freeing 0x818dac8
Freeing 0x818ca58
Freeing 0x818fae8
Freeing 0x818d6c0
Freeing 0x8191c68
Freeing 0x81925c8
Freeing 0x8192f58
Freeing 0x81aed20
Freeing 0x81ac1b8
Freeing 0x81af088
Freeing 0x81aecc0
Freeing 0x81af380
Freeing 0x81aecc8
Freeing 0x81af8c0
Freeing 0x81af4b0
Freeing 0x81afc90
Freeing 0x81af938
Freeing 0x81aff78
Freeing 0x81af4b0
Freeing 0x8193df0
Freeing 0x81affd8
Freeing 0x81940a0
Freeing 0x81b00b0
Freeing 0x8194420
Freeing 0x8194058
Freeing 0x8195cf0
Freeing 0x81958b8
Freeing 0x81960b8
Freeing 0x8195b20
Freeing 0x8197968
Freeing 0x8197538
Freeing 0x81a0c98
Freeing 0x81a0818
Freeing 0x818da70
Freeing 0x8193d40
Freeing 0x81a3700
Freeing 0x81a7ad0
Freeing 0x818f370
Freeing 0x818c828
Freeing 0x81a51d8
Freeing 0x81afce8
Freeing 0x81a5a90
Freeing 0x8192838
Freeing 0x8192500
Freeing 0x8192b78
Freeing 0x8190348
Freeing 0x8192f20
Freeing 0x8190348
Freeing 0x81931e0
Freeing 0x81903c8
Freeing 0x8193518
Freeing 0x81930e0
Freeing 0x8193d58
Freeing 0x8193968
Freeing 0x8194ce8
Freeing 0x8194930
Freeing 0x8195138
Freeing 0x8194de8
Freeing 0x8195cc8
Freeing 0x8195918
Freeing 0x81961b0
Freeing 0x8195af8
Freeing 0x8196dd8
Freeing 0x81969e8
Freeing 0x8197090
Freeing 0x8196d00
Freeing 0x81973c8
Freeing 0x8196f70
Freeing 0x81977c0
Freeing 0x8197470
Freeing 0x818b7b0
Freeing 0x81a36a8
Freeing 0x818cf00
Freeing 0x81adda8
Freeing 0x818f130
Freeing 0x818c640
Freeing 0x81afe40
Freeing 0x81adb28
Freeing 0x81a3c60
Freeing 0x8192a20
Freeing 0x81904d0
Freeing 0x8192d88
Freeing 0x8190460
Freeing 0x8193150
Freeing 0x8192b70
Freeing 0x8193450
Freeing 0x8192b70
Freeing 0x8193798
Freeing 0x8193200
Freeing 0x8196a00
Freeing 0x81965b8
Freeing 0x81a7e48
Freeing 0x818b588
Freeing 0x818d860
Freeing 0x818d380
Freeing 0x818f120
Freeing 0x81aa688
Freeing 0x81ac768
Freeing 0x81aa0d0
Freeing 0x81a3bb0
Freeing 0x819f698
Freeing 0x819d370
Freeing 0x819fa38
Freeing 0x819f630
Freeing 0x819fd68
Freeing 0x819f638
Freeing 0x81a0038
Freeing 0x819f5e8
Freeing 0x81a03d0
Freeing 0x81a00c0
Freeing 0x81a06f8
Freeing 0x819f5e8
Freeing 0x81a0eb8
Freeing 0x81a0a80
Freeing 0x81a1770
Freeing 0x81a1508
Freeing 0x818ffe0
Freeing 0x818fbb0
Freeing 0x818db70
Freeing 0x819c7e8
Freeing 0x818bac8
Freeing 0x818bdf0
Freeing 0x818e360
Freeing 0x818c368
Freeing 0x8190548
Freeing 0x8190de0
Freeing 0x8191588
Freeing 0x8192a68
Freeing 0x81926c8
Freeing 0x8192dc8
Freeing 0x8192628
Freeing 0x8193138
Freeing 0x8192b68
Freeing 0x8193420
Freeing 0x8192700
Freeing 0x8193758
Freeing 0x8193320
Freeing 0x8193ac8
Freeing 0x8193800
Freeing 0x8193df0
Freeing 0x8193758
Freeing 0x8194198
Freeing 0x8193e98
Freeing 0x8194510
Freeing 0x8194210
Freeing 0x8196680
Freeing 0x8196298
Freeing 0x8196af0
Freeing 0x8196758
Freeing 0x81a10c8
Freeing 0x81a0e08
Freeing 0x81a15a0
Freeing 0x81a1020
Freeing 0x81a1a50
Freeing 0x81a16c8
Freeing 0x81a1f00
Freeing 0x81a1b50
Freeing 0x81a23c8
Freeing 0x81a2078
Freeing 0x81a28a8
Freeing 0x81a2588
Freeing 0x81a32b0
Freeing 0x81a2f30
Freeing 0x81b0290
Freeing 0x81a33c8
Freeing 0x818b938
Freeing 0x818ceb0
Freeing 0x818d4a0
Freeing 0x81a3b68
Freeing 0x81afdf8
Freeing 0x818c808
Freeing 0x818f878
Freeing 0x81a1da0
Freeing 0x81a2730
Freeing 0x818d210
Freeing 0x81ae1d8
Freeing 0x818bd90
Freeing 0x818bc40
Freeing 0x81a5ba0
Freeing 0x818d3b8
Freeing 0x81a7c70
Freeing 0x81a85d0
Freeing 0x81a8f60
Freeing 0x818b750
Freeing 0x818d608
Freeing 0x818cf00
Freeing 0x818c7d8
Freeing 0x81a5be8
Freeing 0x818cc98
Freeing 0x81a7d50
Freeing 0x81a86b0
Freeing 0x81a9040
Freeing 0x818baf8
Freeing 0x818d6e8
Freeing 0x818b958
Freeing 0x818d368
Freeing 0x81a3fc8
Freeing 0x818d708
Freeing 0x818df98
Freeing 0x818e8f8
Freeing 0x818f288
Freeing 0x818ba18
Freeing 0x8195fa0
Freeing 0x81ae828
Freeing 0x81a5df8
Freeing 0x81af618
Freeing 0x818d328
Freeing 0x81a85a0
Freeing 0x81a8f00
Freeing 0x81a9890
Freeing 0x81ae938
Freeing 0x8185220
Freeing 0x818cf00
Freeing 0x81ae4f0
Freeing 0x81af8d8
Freeing 0x81a6230
Freeing 0x81a85f0
Freeing 0x81a8f50
Freeing 0x81a98e0
Freeing 0x81a5f88
Freeing 0x818b588
Freeing 0x818cf00
Freeing 0x81b0048
Freeing 0x81a69a0
Freeing 0x818bdb0
Freeing 0x81a8ab8
Freeing 0x81a9238
Freeing 0x81a9b00
Freeing 0x818d2b0
Freeing 0x818cf90
Freeing 0x81acce8
Freeing 0x818ca90
Freeing 0x81af420
Freeing 0x818bdf0
Freeing 0x81ab4e8
Freeing 0x81abe48
Freeing 0x81ac738
Freeing 0x8195558
Freeing 0x81951d8
Freeing 0x8195810
Freeing 0x81952e8
Freeing 0x8195bc8
Freeing 0x8195768
Freeing 0x8195e90
Freeing 0x8195768
Freeing 0x81961c8
Freeing 0x8195718
Freeing 0x8196478
Freeing 0x8195718
Freeing 0x8196770
Freeing 0x8195718
Freeing 0x8196ad8
Freeing 0x8196798
Freeing 0x8196d90
Freeing 0x8196798
Freeing 0x8197050
Freeing 0x8196798
Freeing 0x81974b0
Freeing 0x8197170
Freeing 0x8197780
Freeing 0x8197170
Freeing 0x8197ae8
Freeing 0x81976f0
Freeing 0x8197f28
Freeing 0x8197a28
Freeing 0x81982d0
Freeing 0x8197a28
Freeing 0x8198650
Freeing 0x8198350
Freeing 0x8198aa8
Freeing 0x8198538
Freeing 0x8198d40
Freeing 0x81988b0
Freeing 0x8199010
Freeing 0x8198b88
Freeing 0x81981c0
Freeing 0x8185220
Freeing 0x8116ab0
Freeing 0x8118c80
Freeing 0x8098b70
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>

View File

@ -102,6 +102,13 @@ to test those</p>
Schemas</a> and <a href="http://www.w3.org/TR/xinclude">XInclude</a>
</li>
</ul>
<h3>2.4.26: Oct 18 2002</h3>
<ul>
<li>Patches for Windows CE port, improvements on Windows paths handling</li>
<li>Fixes to the validation code (DTD and Schemas), xmlNodeGetPath() ,
HTML serialization, Namespace compliance, and a number of small
problems</li>
</ul>
<h3>2.4.25: Sep 26 2002</h3>
<ul>
<li>A number of bug fixes: XPath, validation, Python bindings, DOM and

View File

@ -248,6 +248,7 @@ xmlOutputBufferCreateOwn(FILE *file, xmlCharEncodingHandlerPtr encoder) {
} </pre>
</li>
<li>And then use it to save the document:

View File

@ -627,15 +627,6 @@ LIBXML_DLL_IMPORT extern xmlSAXHandler docbDefaultSAXHandler;
* Entity substitution default behavior.
*/
#ifdef VMS
/**
* xmlSubstituteEntitiesDefaultValue:
*
* Global variable controlling the entity substitution default behavior.
*/
LIBXML_DLL_IMPORT extern int xmlSubstituteEntitiesDefaultVal;
#define xmlSubstituteEntitiesDefaultValue xmlSubstituteEntitiesDefaultVal
#endif
#if 0
LIBXML_DLL_IMPORT extern int xmlSubstituteEntitiesDefaultValue;
LIBXML_DLL_IMPORT extern int xmlGetWarningsDefaultValue;

View File

@ -5,9 +5,6 @@
*
* daniel@veillard.com
*
* 14 Nov 2000 ht - truncated declaration of xmlParseElementChildrenContentDecl
* for VMS
*
*/
#ifndef __XML_PARSER_INTERNALS_H__
@ -275,15 +272,9 @@ void xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt);
xmlElementContentPtr xmlParseElementMixedContentDecl
(xmlParserCtxtPtr ctxt,
xmlParserInputPtr inputchk);
#ifdef VMS
xmlElementContentPtr xmlParseElementChildrenContentD
(xmlParserCtxtPtr ctxt);
#define xmlParseElementChildrenContentDecl xmlParseElementChildrenContentD
#else
xmlElementContentPtr xmlParseElementChildrenContentDecl
(xmlParserCtxtPtr ctxt,
xmlParserInputPtr inputchk);
#endif
int xmlParseElementContentDecl(xmlParserCtxtPtr ctxt,
xmlChar *name,
xmlElementContentPtr *result);

View File

@ -6,8 +6,6 @@
*
* daniel@veillard.com
*
* 14 Nov 2000 ht - added redefinition of xmlBufferWriteChar for VMS
*
*/
#ifndef __XML_TREE_H__
@ -799,14 +797,8 @@ int xmlUnsetNsProp (xmlNodePtr node,
/*
* Internal, don't use.
*/
#ifdef VMS
void xmlBufferWriteXmlCHAR (xmlBufferPtr buf,
const xmlChar *string);
#define xmlBufferWriteCHAR xmlBufferWriteXmlCHAR
#else
void xmlBufferWriteCHAR (xmlBufferPtr buf,
const xmlChar *string);
#endif
void xmlBufferWriteChar (xmlBufferPtr buf,
const char *string);
void xmlBufferWriteQuotedString(xmlBufferPtr buf,

View File

@ -5,7 +5,6 @@
*
* daniel@veillard.com
*
* 15 Nov 2000 ht - modified for VMS
*/
#ifndef __XML_IO_H__
@ -159,17 +158,9 @@ void xmlRegisterDefaultInputCallbacks (void);
xmlParserInputBufferPtr
xmlAllocParserInputBuffer (xmlCharEncoding enc);
#ifdef VMS
xmlParserInputBufferPtr
xmlParserInputBufferCreateFname (const char *URI,
xmlCharEncoding enc);
#define xmlParserInputBufferCreateFilename xmlParserInputBufferCreateFname
#else
xmlParserInputBufferPtr
xmlParserInputBufferCreateFilename (const char *URI,
xmlCharEncoding enc);
#endif
xmlParserInputBufferPtr
xmlParserInputBufferCreateFile (FILE *file,
xmlCharEncoding enc);

View File

@ -2297,7 +2297,7 @@ xmlParseAttValue(xmlParserCtxtPtr ctxt) {
xmlChar *ret = NULL;
SHRINK;
GROW;
in = CUR_PTR;
in = (xmlChar *) CUR_PTR;
if (*in != '"' && *in != '\'') {
ctxt->errNo = XML_ERR_ATTRIBUTE_NOT_STARTED;
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
@ -4404,15 +4404,6 @@ xmlParseElementMixedContentDecl(xmlParserCtxtPtr ctxt, xmlParserInputPtr inputch
return(ret);
}
/**
* xmlParseElementChildrenContentD:
* @ctxt: an XML parser context
*
* VMS version of xmlParseElementChildrenContentDecl()
*
* Returns the tree of xmlElementContentPtr describing the element
* hierarchy.
*/
/**
* xmlParseElementChildrenContentDecl:
* @ctxt: an XML parser context
@ -4444,11 +4435,7 @@ xmlParseElementMixedContentDecl(xmlParserCtxtPtr ctxt, xmlParserInputPtr inputch
* hierarchy.
*/
xmlElementContentPtr
#ifdef VMS
xmlParseElementChildrenContentD
#else
xmlParseElementChildrenContentDecl
#endif
(xmlParserCtxtPtr ctxt, xmlParserInputPtr inputchk) {
xmlElementContentPtr ret = NULL, cur = NULL, last = NULL, op = NULL;
xmlChar *elem;

View File

@ -58,12 +58,6 @@ void xmlUpgradeOldNs(xmlDocPtr doc);
/*
* Various global defaults for parsing
*/
#ifdef VMS
int xmlSubstituteEntitiesDefaultVal = 0;
#define xmlSubstituteEntitiesDefaultValue xmlSubstituteEntitiesDefaultVal
int xmlDoValidityCheckingDefaultVal = 0;
#define xmlDoValidityCheckingDefaultValue xmlDoValidityCheckingDefaultVal
#endif
/**
* xmlCheckVersion:

View File

@ -151,6 +151,7 @@ validateNmtokenValue()
validateNmtokensValue()
# functions from module xmlIO
checkFilename()
cleanupInputCallbacks()
cleanupOutputCallbacks()
fileMatch()
@ -492,38 +493,38 @@ Class xmlDoc(xmlNode)
# functions from module xpath
xpathNewContext()
Class xpathContext()
# accessors
contextDoc()
contextNode()
contextPosition()
contextSize()
function()
functionURI()
setContextDoc()
setContextNode()
# functions from module python
registerXPathFunction()
# functions from module xpath
xpathEval()
xpathEvalExpression()
xpathFreeContext()
# functions from module xpathInternals
xpathNewParserContext()
xpathNsLookup()
xpathRegisterAllFunctions()
xpathRegisterNs()
xpathRegisteredFuncsCleanup()
xpathRegisteredNsCleanup()
xpathRegisteredVariablesCleanup()
xpathVariableLookup()
xpathVariableLookupNS()
Class xmlAttribute(xmlNode)
Class xmlNs(xmlNode)
# functions from module tree
copyNamespace()
copyNamespaceList()
freeNs()
freeNsList()
newNodeEatName()
# functions from module xpathInternals
xpathNodeSetFreeNs()
Class xmlDtd(xmlNode)
# functions from module debugXML
debugDumpDTD()
# functions from module tree
copyDtd()
freeDtd()
# functions from module valid
dtdAttrDesc()
dtdElementDesc()
dtdQAttrDesc()
dtdQElementDesc()
Class catalog()
# functions from module catalog
@ -537,6 +538,34 @@ Class catalog()
resolvePublic()
resolveSystem()
resolveURI()
Class xmlElement(xmlNode)
Class xmlAttr(xmlNode)
# functions from module debugXML
debugDumpAttr()
debugDumpAttrList()
# functions from module tree
freeProp()
freePropList()
removeProp()
Class xmlReg()
# functions from module xmlregexp
regexpExec()
regexpFreeRegexp()
regexpIsDeterminist()
regexpPrint()
Class xmlEntity(xmlNode)
# functions from module parserInternals
handleEntity()
Class xpathParserContext()
# accessors
context()
@ -661,6 +690,44 @@ Class parserCtxt()
stringDecodeEntities()
Class xmlDtd(xmlNode)
# functions from module debugXML
debugDumpDTD()
# functions from module tree
copyDtd()
freeDtd()
# functions from module valid
dtdAttrDesc()
dtdElementDesc()
dtdQAttrDesc()
dtdQElementDesc()
Class xmlNs(xmlNode)
# functions from module tree
copyNamespace()
copyNamespaceList()
freeNs()
freeNsList()
newNodeEatName()
# functions from module xpathInternals
xpathNodeSetFreeNs()
Class inputBuffer(ioReadWrapper)
# functions from module xmlIO
freeParserInputBuffer()
grow()
push()
read()
Class outputBuffer(ioWriteWrapper)
# functions from module xmlIO
@ -668,34 +735,6 @@ Class outputBuffer(ioWriteWrapper)
flush()
write()
writeString()
Class xmlElement(xmlNode)
Class xmlEntity(xmlNode)
# functions from module parserInternals
handleEntity()
Class xmlAttr(xmlNode)
# functions from module debugXML
debugDumpAttr()
debugDumpAttrList()
# functions from module tree
freeProp()
freePropList()
removeProp()
Class xmlReg()
# functions from module xmlregexp
regexpExec()
regexpFreeRegexp()
regexpIsDeterminist()
regexpPrint()
Class URI()
# accessors
authority()
@ -722,41 +761,3 @@ Class URI()
parseURIReference()
printURI()
saveUri()
Class xpathContext()
# accessors
contextDoc()
contextNode()
contextPosition()
contextSize()
function()
functionURI()
setContextDoc()
setContextNode()
# functions from module python
registerXPathFunction()
# functions from module xpath
xpathEval()
xpathEvalExpression()
xpathFreeContext()
# functions from module xpathInternals
xpathNewParserContext()
xpathNsLookup()
xpathRegisterAllFunctions()
xpathRegisterNs()
xpathRegisteredFuncsCleanup()
xpathRegisteredNsCleanup()
xpathRegisteredVariablesCleanup()
xpathVariableLookup()
xpathVariableLookupNS()
Class inputBuffer(ioReadWrapper)
# functions from module xmlIO
freeParserInputBuffer()
grow()
push()
read()

17
tree.c
View File

@ -5,10 +5,6 @@
*
* daniel@veillard.com
*
* 14 Nov 2000 ht - Changed the name of function xmlBufferWriteChar under VMS
* as it was similar to xmlBufferWriteCHAR when compiling without case
* sensitivity.
*
*/
#define IN_LIBXML
@ -5796,15 +5792,6 @@ xmlBufferCCat(xmlBufferPtr buf, const char *str) {
buf->content[buf->use] = 0;
}
/**
* xmlBufferWriteXmlCHAR:
* @buf: the XML buffer
* @string: the string to add
*
* For VMS only.
* routine which manages and grows an output buffer. This one adds
* xmlChars at the end of the buffer.
*/
/**
* xmlBufferWriteCHAR:
* @buf: the XML buffer
@ -5814,11 +5801,7 @@ xmlBufferCCat(xmlBufferPtr buf, const char *str) {
* xmlChars at the end of the buffer.
*/
void
#ifdef VMS
xmlBufferWriteXmlCHAR
#else
xmlBufferWriteCHAR
#endif
(xmlBufferPtr buf, const xmlChar *string) {
xmlBufferCat(buf, string);
}

View File

@ -46,7 +46,7 @@
# define TRIO_PLATFORM_UNIX
#elif defined(TRIO_COMPILER_XLC) || defined(_AIX)
# define TRIO_PLATFORM_UNIX
#elif defined(TRIO_COMPILER_DECC) || defined(__osf__)
#elif ( defined(TRIO_COMPILER_DECC) && !defined(__VMS) ) || defined(__osf__)
# define TRIO_PLATFORM_UNIX
#elif defined(__NetBSD__)
# define TRIO_PLATFORM_UNIX
@ -82,6 +82,18 @@
# endif
#endif
#if defined(TRIO_PLATFORM_VMS)
/* The compiler does support C99 but the library still does not have things
* the standard requires (like nan() and strtof()) as of __CRTL_VER 70300022.
*/
# undef TRIO_COMPILER_SUPPORTS_C99
/* Computations done with constants at compile time can trigger these
* even when compiling with IEEE enabled.
*/
# pragma message disable (UNDERFLOW,FLOATOVERFL)
#endif /* TRIO_PLATFORM_VMS */
#if defined(_XOPEN_SOURCE)
# if defined(_XOPEN_SOURCE_EXTENDED)
# define TRIO_COMPILER_SUPPORTS_UNIX95

View File

@ -773,7 +773,7 @@ TRIO_ARGS1((number),
static TRIO_CONST char *
getClassification
TRIO_ARGS1((type)
TRIO_ARGS1((type),
int type)
{
switch (type) {
@ -794,7 +794,7 @@ TRIO_ARGS1((type)
static void
print_class
TRIO_ARGS2((prefix, number)
TRIO_ARGS2((prefix, number),
TRIO_CONST char *prefix,
double number)
{

2
uri.c
View File

@ -874,7 +874,7 @@ xmlURIEscapeStr(const xmlChar *str, const xmlChar *list) {
if (str == NULL)
return(NULL);
len = xmlStrlen(str);
if (len <= 0) return(NULL);
if (!(len > 0)) return(NULL);
len += 20;
ret = (xmlChar *) xmlMalloc(len);

View File

@ -4,34 +4,35 @@ $! Build the LIBXML library
$!
$! Arguments:
$!
$! "NOWARN" - suppress known/expected warnings
$! "DEBUG" - build everythign in debug
$! "DEBUG" - build everything in debug
$!
$! This procedure creates an object library XMLOLB:LIBXML.OLB directory.
$! This procedure creates an object library XML_LIBDIR:LIBXML.OLB directory.
$! After the library is built, you can link LIBXML routines into
$! your code with the command
$!
$! $ LINK your_modules,XMLOLB:LIBXML.OLB/LIBRARY
$! $ LINK your_modules,XML_LIBDIR:LIBXML.OLB/LIBRARY
$!
$! Change History
$! --------------
$! Command file author : John A Fotheringham (jaf@jafsoft.com)
$! Last update : 2 Nov 2001
$! Last update : 28 September 2002 Craig Berry (craigberry@mac.com)
$! updated to work with current sources
$! miscellaneous enhancements to build process
$!
$!- configuration -------------------------------------------------------------
$!
$!- compile command. If p1="nowarn" suppress the expected warning types
$!
$ cc_opts = "/NAMES=(SHORTENED)/FLOAT=IEEE/IEEE_MODE=DENORM_RESULTS"
$!
$ if p1.eqs."DEBUG" .or. p2.eqs."DEBUG"
$ then
$ debug = "Y"
$ cc_command = "CC/DEBUG/NOOPT"
$ cc_command = "CC''cc_opts'/DEBUG/NOOPTIMIZE/LIST/SHOW=ALL"
$ else
$ debug = "N"
$ cc_command = "CC"
$ cc_command = "CC''cc_opts'"
$ endif
$ if p1.eqs."NOWARN" then -
cc_command = cc_command + "/WARN=DISABLE=(FLOATOVERFL,NOMAINUFLO)"
$!
$!- list of sources to be built into the LIBXML library. Compare this list
$! to the definition of "libxml2_la_SOURCES" in the file MAKEFILE.IN.
@ -41,8 +42,9 @@ $ sources = "SAX.c entities.c encoding.c error.c parserInternals.c parser.c"
$ sources = sources + " tree.c hash.c list.c xmlIO.c xmlmemory.c uri.c valid.c"
$ sources = sources + " xlink.c HTMLparser.c HTMLtree.c debugXML.c xpath.c "
$ sources = sources + " xpointer.c xinclude.c nanohttp.c nanoftp.c "
$ sources = sources + " DOCBparser.c catalog.c globals.c threads.c"
$ sources = sources + " trio.c strio.c"
$ sources = sources + " DOCBparser.c catalog.c globals.c threads.c c14n.c "
$ sources = sources + " xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c "
$ sources = sources + " triostr.c trio.c"
$!
$!- list of main modules to compile and link. Compare this list to the
$! definition of bin_PROGRAMS in MAKEFILE.IN
@ -52,23 +54,30 @@ $!
$!- list of test modules to compile and link. Compare this list to the
$! definition of noinst_PROGRAMS in MAKEFILE.
$!
$ test_progs = "testSAX testHTML testXPath testURI testDocbook testThreads"
$ noinst_PROGRAMS = "testSchemas testSAX testHTML testXPath testURI testDocbook " -
+ "testThreads testC14N testAutomata testRegexp"
$!
$!- set up build logicals -----------------------------------------------------\
$!
$ if f$trnlnm("XMLOLB").eqs.""
$!
$!- start from where the procedure is in case it's submitted in batch ----------\
$!
$ whoami = f$parse(f$environment("PROCEDURE"),,,,"NO_CONCEAL")
$ procdir = f$parse(whoami,,,"DEVICE") + f$parse(whoami,,,"DIRECTORY")
$ set default 'procdir'
$!
$ if f$trnlnm("XML_LIBDIR").eqs.""
$ then
$ write sys$output ""
$ write sys$output " You need to define a XMLOLB logical directory to"
$ write sys$output " point to the directory containing your CMS object"
$ write sys$output " libraries. This should already contain LIBXML.OLB"
$ write sys$output " from the libxml package, and will be the directory"
$ write sys$output " the new LIBXSLT.OLB library will be placed in"
$ write sys$output ""
$ exit
$ if f$search("[-]lib.dir") .eqs. ""
$ then
$ create/directory/log [-.lib]
$ endif
$ xml_libdir = f$parse("[-.lib]",,,"DEVICE") + f$parse("[-.lib]",,,"DIRECTORY")
$ define/process XML_LIBDIR 'xml_libdir'
$ write sys$output "Defining XML_LIBDIR as """ + f$trnlnm("XML_LIBDIR") + """
$ endif
$!
$ if f$trnlnm("xml_srcdir").eqs.""
$ if f$trnlnm("XML_SRCDIR").eqs.""
$ then
$ globfile = f$search("[-...]globals.c")
$ if globfile.eqs.""
@ -76,12 +85,14 @@ $ then
$ write sys$output "Can't locate globals.c. You need to manually define a XML_SRCDIR logical"
$ exit
$ else
$ srcdir = f$element(0,"]",globfile)+ "]"
$ define/process xml_srcdir "''srcdir'"
$ write sys$output "Defining xml_srcdir as ""''srcdir'"""
$ srcdir = f$parse(globfile,,,"DEVICE") + f$parse(globfile,,,"DIRECTORY")
$ define/process XML_SRCDIR "''srcdir'"
$ write sys$output "Defining XML_SRCDIR as ""''srcdir'"""
$ endif
$ endif
$!
$ copy/log config.vms xml_srcdir:config.h
$!
$ if f$trnlnm("libxml").eqs.""
$ then
$ globfile = f$search("[-...]globals.h")
@ -90,7 +101,7 @@ $ then
$ write sys$output "Can't locate globals.h. You need to manually define a LIBXML logical"
$ exit
$ else
$ includedir = f$element(0,"]",globfile)+ "]"
$ includedir = f$parse(globfile,,,"DEVICE") + f$parse(globfile,,,"DIRECTORY")
$ define/process libxml "''includedir'"
$ write sys$output "Defining libxml as ""''includedir'"""
$ endif
@ -106,12 +117,12 @@ $!
$!- move to the source directory and create any necessary subdirs and the
$! object library
$!
$ set def xml_srcdir
$ set default xml_srcdir
$ if f$search("DEBUG.DIR").eqs."" then create/dir [.DEBUG]
$ if f$search("XMLOLB:LIBXML.OLB").eqs.""
$ if f$search("XML_LIBDIR:LIBXML.OLB").eqs.""
$ then
$ write sys$output "Creating new object library XMLOLB:LIBXML.OLB"
$ library/create XMLOLB:LIBXML.OLB
$ write sys$output "Creating new object library XML_LIBDIR:LIBXML.OLB"
$ library/create XML_LIBDIR:LIBXML.OLB
$ endif
$!
$ goto start_here
@ -119,7 +130,7 @@ $ start_here: ! move this line to debug/rerun parts of this command file
$!
$!- compile modules into the library ------------------------------------------
$!
$ lib_command = "LIBRARY/REPLACE XMLOLB:LIBXML.OLB"
$ lib_command = "LIBRARY/REPLACE/LOG XML_LIBDIR:LIBXML.OLB"
$ link_command = ""
$!
$ write sys$output ""
@ -137,17 +148,7 @@ $ then
$!
$ on error then goto ERROR_OUT
$ on control_y then goto ERROR_OUT
$ if next_source.eqs."xpath.c"
$ then
$ call build 'next_source' /IEEE_MODE=UNDERFLOW_TO_ZERO/FLOAT=IEEE
$ else
$ if next_source.eqs."trio.c"
$ then
$ call build 'next_source' /WARN=DISABLE=UNINIT1
$ else
$ call build 'next_source'
$ endif
$ endif
$ call build 'next_source'
$ s_no = s_no + 1
$ goto source_loop
$!
@ -155,20 +156,23 @@ $ endif
$!
$!- now build self-test programs ----------------------------------------------
$!
$! these pograms are built as ordinary modules into XMLOLB:LIBXML.OLB. Here they
$! these programs are built as ordinary modules into XML_LIBDIR:LIBXML.OLB. Here they
$! are built a second time with /DEFINE=(STANDALONE) in which case a main()
$! is also compiled into the module
$
$ lib_command = ""
$ link_command = "LINK"
$!
$ library/compress XML_LIBDIR:LIBXML.OLB
$ purge XML_LIBDIR:LIBXML.OLB
$!
$ write sys$output ""
$ write sys$output "Building STANDALONE self-test programs"
$ write sys$output ""
$!
$ call build NANOFTP.C /DEFINE=(STANDALONE)
$ call build NANOHTTP.C /DEFINE=(STANDALONE)
$ call build TRIONAN.C /DEFINE=(STANDALONE)/IEEE_MODE=UNDERFLOW_TO_ZERO/FLOAT=IEEE
$ call build TRIONAN.C /DEFINE=(STANDALONE)
$!
$!- now build main and test programs ------------------------------------------
$!
@ -181,7 +185,7 @@ $ write sys$output "Building main programs and test programs"
$ write sys$output ""
$!
$ p_no = 0
$ all_progs = bin_progs + " " + test_progs
$ all_progs = bin_progs + " " + noinst_PROGRAMS
$ all_progs = f$edit(all_progs,"COMPRESS")
$!
$ prog_loop:
@ -192,7 +196,7 @@ $ then
$!
$ on error then goto ERROR_OUT
$ on control_y then goto ERROR_OUT
$ call build 'next_prog'.c /IEEE_MODE=UNDERFLOW_TO_ZERO/FLOAT=IEEE
$ call build 'next_prog'.c
$ p_no = p_no + 1
$ goto prog_loop
$!
@ -210,7 +214,7 @@ $!
$EXIT_OUT:
$!
$ purge/nolog [.debug]
$ set def 'saved_default
$ set default 'saved_default
$ exit 'exit_status
$!
$
@ -224,12 +228,12 @@ $!
$BUILD: subroutine
$ on warning then goto EXIT_BUILD
$ source_file = p1
$ name = f$element(0,".",source_file)
$ object_file = f$fao("[.debug]!AS.OBJ",name)
$ name = f$parse(source_file,,,"NAME")
$ object_file = f$parse("[.debug].OBJ",name,,,"SYNTAX_ONLY")
$!
$!- compile
$!
$ write sys$output "Compiling ",p1," ",p2,"..."
$ write sys$output "''cc_command'''p2'/object=''object_file' ''source_file'"
$ cc_command'p2' /object='object_file 'source_file'
$!
$!- insert into library if command defined
@ -239,12 +243,11 @@ $!
$!- link module if command defined
$ if link_command.nes.""
$ then
$ text = f$element(0,".",p1) ! lose the ".c"
$ write sys$output "Linking ",text,"..."
$ opts = ""
$ if debug then opts = "/DEBUG"
$ write sys$output "''link_command'''opts' ''object_file',XML_LIBDIR:libxml.olb/library"
$ link_command'opts' 'object_file',-
XMLOLB:libxml.olb/library
XML_LIBDIR:libxml.olb/library
$ endif
$!
$EXIT_BUILD:

View File

@ -1,148 +1,200 @@
/* config.h */
#define VMS 1
/* Define if you have the strftime function. */
#define HAVE_STRFTIME 1
/* Define if you have the ANSI C header files. */
#define STDC_HEADERS 1
#undef PACKAGE
#undef VERSION
#undef HAVE_LIBZ
#undef HAVE_LIBM
#undef HAVE_ISINF
#undef HAVE_ISNAN
#undef HAVE_LIBHISTORY
#undef HAVE_LIBREADLINE
/* Define if you have the class function. */
#undef HAVE_CLASS
/* Define if you have the finite function. */
#undef HAVE_FINITE
/* Define if you have the fp_class function. */
#define HAVE_FP_CLASS 1
/* Define if you have the fpclass function. */
#undef HAVE_FPCLASS
/* Define if you have the isnand function. */
#undef HAVE_ISNAND
/* Define if you have the localtime function. */
#define HAVE_LOCALTIME 1
/* Define if you have the snprintf function. */
#undef HAVE_SNPRINTF
/* Define if you have the strdup function. */
#define HAVE_STRDUP 1
/* Define if you have the strerror function. */
#define HAVE_STRERROR 1
/* Define if you have the strftime function. */
#define HAVE_STRFTIME 1
/* Define if you have the strndup function. */
#undef HAVE_STRNDUP
/* Define if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
/* Define if you have the <ctype.h> header file. */
#define HAVE_CTYPE_H 1
/* Define if you have the <dirent.h> header file. */
#define HAVE_DIRENT_H 1
/* Define if you have the <errno.h> header file. */
#define HAVE_ERRNO_H 1
/* Define if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1
/* Define if you have the <float.h> header file. */
#define HAVE_FLOAT_H 1
/* Define if you have the <fp_class.h> header file. */
#define HAVE_FP_CLASS_H 1
/* Define if you have the <ieeefp.h> header file. */
#undef HAVE_IEEEFP_H
/* Define if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define if you have the <math.h> header file. */
#define HAVE_MATH_H 1
/* Define if you have the <nan.h> header file. */
#undef HAVE_NAN_H
/* Define if you have the <ndir.h> header file. */
#undef HAVE_NDIR_H
/* Define if you have the <netdb.h> header file. */
#define HAVE_NETDB_H 1
/* Define if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define if you have the <stdarg.h> header file. */
#define HAVE_STDARG_H 1
/* Define if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define if you have the <sys/dir.h> header file. */
#undef HAVE_SYS_DIR_H
/* Define if you have the <sys/mman.h> header file. */
#undef HAVE_SYS_MMAN_H
/* Define if you have the <sys/ndir.h> header file. */
#undef HAVE_SYS_NDIR_H
/* Define if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define if you have the <time.h> header file. */
#define HAVE_TIME_H 1
/* Define if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1
/* Define if you have the <zlib.h> header file. */
#undef HAVE_ZLIB_H
/* Define if you have the inet library (-linet). */
#undef HAVE_LIBINET
/* Define if you have the nsl library (-lnsl). */
#undef HAVE_LIBNSL
/* Define if you have the socket library (-lsocket). */
#undef HAVE_LIBSOCKET
/* Name of package */
#undef PACKAGE
/* Version number of package */
#undef VERSION
/* config.h */
#define VMS 1
/* Define if you have the strftime function. */
#define HAVE_STRFTIME 1
/* Define if you have the ANSI C header files. */
#define STDC_HEADERS 1
#undef PACKAGE
#undef VERSION
#undef HAVE_LIBZ
#undef HAVE_LIBM
#undef HAVE_ISINF
#if defined(_IEEE_FP) && (__CRTL_VER >= 60200000)
# define HAVE_ISNAN 1
#endif
#undef HAVE_LIBHISTORY
#undef HAVE_LIBREADLINE
/* Define if you have the class function. */
#undef HAVE_CLASS
/* Define if you have the finite function. */
#undef HAVE_FINITE
/* Define if you have the fp_class function. */
#define HAVE_FP_CLASS 1
/* Define if you have the fpclass function. */
#undef HAVE_FPCLASS
/* Define if you have the isnand function. */
#undef HAVE_ISNAND
/* Define if you have the localtime function. */
#define HAVE_LOCALTIME 1
/* Define if you have the snprintf function. */
#undef HAVE_SNPRINTF
/* Define if you have the strdup function. */
#define HAVE_STRDUP 1
/* Define if you have the strerror function. */
#define HAVE_STRERROR 1
/* Define if you have the strftime function. */
#define HAVE_STRFTIME 1
/* Define if you have the strndup function. */
#undef HAVE_STRNDUP
/* Define if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
/* Define if you have the <ctype.h> header file. */
#define HAVE_CTYPE_H 1
/* Define if you have the <dirent.h> header file. */
#define HAVE_DIRENT_H 1
/* Define if you have the <errno.h> header file. */
#define HAVE_ERRNO_H 1
/* Define if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1
/* Define if you have the <float.h> header file. */
#define HAVE_FLOAT_H 1
/* Define if you have the <fp_class.h> header file. */
#define HAVE_FP_CLASS_H 1
/* Define if you have the <ieeefp.h> header file. */
#undef HAVE_IEEEFP_H
/* Define if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define if you have the <math.h> header file. */
#define HAVE_MATH_H 1
/* Define if you have the <nan.h> header file. */
#undef HAVE_NAN_H
/* Define if you have the <ndir.h> header file. */
#undef HAVE_NDIR_H
/* Define if you have the <netdb.h> header file. */
#define HAVE_NETDB_H 1
/* Define if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define if you have the <stdarg.h> header file. */
#define HAVE_STDARG_H 1
/* Define if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define if you have the <sys/dir.h> header file. */
#undef HAVE_SYS_DIR_H
/* Define if you have the <sys/mman.h> header file. */
#undef HAVE_SYS_MMAN_H
/* Define if you have the <sys/ndir.h> header file. */
#undef HAVE_SYS_NDIR_H
/* Define if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define if you have the <time.h> header file. */
#define HAVE_TIME_H 1
/* Define if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1
/* Define if you have the <zlib.h> header file. */
#undef HAVE_ZLIB_H
/* Define if you have the inet library (-linet). */
#undef HAVE_LIBINET
/* Define if you have the nsl library (-lnsl). */
#undef HAVE_LIBNSL
/* Define if you have the socket library (-lsocket). */
#undef HAVE_LIBSOCKET
/* Name of package */
#undef PACKAGE
/* Version number of package */
#undef VERSION
/* Up to this point this is just a hard-wired version of
* config.h. After this will be anything else we need
* that is VMS-specific.
*/
/* For best results, compile with /NAMES=(SHORTENED), which requires
* DEC C 5.7 or later. For older compilers, the shortened names below
* are the same ones the mangler generates in C 5.7 and later. These may
* work, though there will probably be some conflicts with redefinitions
* in globals.h.
*/
#if __DECC_VER < 57000000
/* 0 1 2 3 0 1 2 3
* 123456789012345678901234567890123456789 1234567890123456789012345678901
*/
#define __xmlDoValidityCheckingDefaultValue __xmlDoValidityChecking3qad3pq$
#define __xmlSubstituteEntitiesDefaultValue __xmlSubstituteEntities0pij13u$
#define trio_locale_set_thousand_separator trio_locale_set_thousan259ikkk$
#define xmlDoValidityCheckingDefaultValue xmlDoValidityCheckingDe1bcsei4$
#define xmlParseBalancedChunkMemoryRecover xmlParseBalancedChunkMe1lu1e86$
#define xmlParseElementChildrenContentDecl xmlParseElementChildren1mp6pcb$
#define xmlParserInputBufferCreateFilename xmlParserInputBufferCre36lujn2$
#define xmlRegisterDefaultInputCallbacks xmlRegisterDefaultInput3vin0cp$
#define xmlRegisterDefaultOutputCallbacks xmlRegisterDefaultOutpu0q443dd$
#define xmlSubstituteEntitiesDefaultValue xmlSubstituteEntitiesDe28k2c80$
#define xmlUCSIsAlphabeticPresentationForms xmlUCSIsAlphabeticPrese2qr24s3$
#define xmlUCSIsArabicPresentationFormsB xmlUCSIsArabicPresentat1gajvg8$
#define xmlUCSIsArabicPresentationFormsA xmlUCSIsArabicPresentat3sq1bti$
#define xmlUCSIsCJKCompatibilityIdeographsSupplement xmlUCSIsCJKCompatibilit0or40ki$
#define xmlUCSIsCJKCompatibilityIdeographs xmlUCSIsCJKCompatibilit2nodmc5$
#define xmlUCSIsCJKSymbolsandPunctuation xmlUCSIsCJKSymbolsandPu0a3i7ra$
#define xmlUCSIsCJKUnifiedIdeographsExtensionA xmlUCSIsCJKUnifiedIdeog11ig3fd$
#define xmlUCSIsCJKUnifiedIdeographsExtensionB xmlUCSIsCJKUnifiedIdeog3d22n2n$
#define xmlUCSIsCombiningDiacriticalMarks xmlUCSIsCombiningDiacri3tj3nl8$
#define xmlUCSIsCombiningMarksforSymbols xmlUCSIsCombiningMarksf3ftqd7s$
#define xmlUCSIsEnclosedCJKLettersandMonths xmlUCSIsEnclosedCJKLett0nq67g4$
#define xmlUCSIsHalfwidthandFullwidthForms xmlUCSIsHalfwidthandFul047l0a1$
#define xmlUCSIsHighPrivateUseSurrogates xmlUCSIsHighPrivateUseS071kh83$
#define xmlUCSIsIdeographicDescriptionCharacters xmlUCSIsIdeographicDesc1rovf8g$
#define xmlUCSIsMathematicalAlphanumericSymbols xmlUCSIsMathematicalAlp2ag8r44$
#define xmlUCSIsOpticalCharacterRecognition xmlUCSIsOpticalCharacte1juuh06$
#define xmlUCSIsSuperscriptsandSubscripts xmlUCSIsSuperscriptsand3fi4eup$
#define xmlUCSIsUnifiedCanadianAboriginalSyllabics xmlUCSIsUnifiedCanadian0lbvi9b$
#define xmlValidCtxtNormalizeAttributeValue xmlValidCtxtNormalizeAt0q11n5f$
#define xmlXPathRegisteredVariablesCleanup xmlXPathRegisteredVaria1uvs4uc$
#endif
#define xmlBufferWriteChar xmlBufferWriteChar2

View File

@ -13,6 +13,7 @@ That's it. Good luck!
John A Fotheringham (jaf@jafsoft.com)
October 2001
Updated October 2002 by Craig A Berry (craigberry@mac.com)
Installation kit
----------------
@ -39,19 +40,17 @@ Installation kit
- Don't execute BUILD_LIBXML.COM until you've done all the following
- read these notes
- copied CONFIG.VMS to CONFIG.H
- reviewed the configuration section of BUILD_LIBXML.COM, and in particular
updated the module lists in line with MAKEFILE
- edited XMLVERSION.H so that WITH_TRIO is defined
- identified the location of the include files, so that you can manually
set the LIBXML logical if need be.
- re-read these notes :-p
instructions for all these steps are below.
- the file [.vms]config.vms should be used to replace config.h. This file
contains a number of define statements that identify the software options
required under VMS
- the file [.vms]config.vms is used in lieu of a Configure-generated config.h.
This file contains a number of define statements that identify the software
options required under VMS
- The include files are in a [.INCLUDE.LIBXML] subdirectory. You need
a logical "libxml" to point to this so that include statements of the
@ -104,12 +103,12 @@ The TRIO package
that uses this functionality. BUILD_LIBXML.COM should do this for you.
- to build in trio support you need the define WITH_TRIO to be set. This
is done by editing xmlversion.h
is done by default for VMS in xmlversion.h
Compiler and linker errors
--------------------------
- the DEC C compiler will produce a number of warnings when compiling the
- the DEC C compiler may produce a number of warnings when compiling the
C code. These include
- Implicit function warnings. These indicate functions whose type is
@ -117,37 +116,9 @@ Compiler and linker errors
configuration is not correct (e.g. for "snprintf" if you haven't
edited xmlversion.h to set WITH_TRIO
These messages also occur for "read" and "write" when compiling trio.c
- uninitialised variables. Not usually a problem. You can solve this
by editing the code to initialise the variables affected
and with respect to the trionan code
- no main module for UNDERFLOW_TO_ZERO
- float overflow when compiling trionan.c STANDALONE
You can suppress these "expected" messages by using the compile command
$ CC /WARN=DISABLE=(FLOATOVERFL,NOMAINUFLO)
This can be achieved by specifying "NOWARN" as the first command
parameter to BUILD_LIBXML as follows
$ @BUILD_LIBXML NOWARN
- the Linker will report the following error
%LINK-W-MULDEF, symbol DECC$STRERROR multiply defined
in module DECC$SHR file SYS$COMMON:[SYSLIB]DECC$SHR.EXE;5
This is complaining that DECC$STRERROR is multiply defined, which in turn
is because this system symbol is getting added to LIBXML.OLB when strio.c
is compiled.
I'm not sure what the solution for this is, but this is a fairly benign error.
Changes made to the codebase
----------------------------
- I changed all dummy declarations in trio.c to be
@ -165,30 +136,8 @@ Changes made to the codebase
This matches similar lines already added to nanohttp.c
- Several variables and function names exceed the 31 character limit
used in VMS. This leads to compiler warnings. The solution adopted
has been
a) where variables or functions are defined, set up an ifdef on VMS
to define a variable/function of a shorter name. This may need to
be done in the .h file, and in the implementation .c file
b) use define statements to map the long name onto a shorter name. That
way all future code can refer to the function/variable by the long name,
reducing the need to add VMS-specific code everywhere.
In the current distro, I had to do this for the following names
in globals.c, parserinternals.c, globals.h, parser.h
xmlSubstituteEntitiesDefaultValue
xmlDoValidityCheckingDefaultValue
in globals.c, globals.h
__xmlDoValidityCheckingDefaultValue
in xmlio.c, xmlio.h
xmlRegisterDefaultInputCallbacks
xmlRegisterDefaultOutputCallbacks
in xpath.c and xpathinternals.h
xmlXPathRegisteredVariablesCleanup
of the VMS linker. The solution adopted has been to use the
/NAMES=SHORTENED compiler option, which requires DEC/Compaq C 5.7
or later. For a complete list of the names that needed shortening
and the short names generated by the compiler, see [.vms]config.vms.

19
xmlIO.c
View File

@ -79,11 +79,6 @@
#endif
#include <libxml/globals.h>
#ifdef VMS
#define xmlRegisterDefaultInputCallbacks xmlRegisterDefInputCallbacks
#define xmlRegisterDefaultOutputCallbacks xmlRegisterDefOutputCallbacks
#endif
/* #define VERBOSE_FAILURE */
/* #define DEBUG_EXTERNAL_ENTITIES */
/* #define DEBUG_INPUT */
@ -1465,11 +1460,7 @@ xmlRegisterOutputCallbacks(xmlOutputMatchCallback matchFunc,
* Registers the default compiled-in I/O handlers.
*/
void
#ifdef VMS
xmlRegisterDefInputCallbacks
#else
xmlRegisterDefaultInputCallbacks
#endif
(void) {
if (xmlInputCallbackInitialized)
return;
@ -1499,11 +1490,7 @@ xmlRegisterDefaultInputCallbacks
* Registers the default compiled-in I/O handlers.
*/
void
#ifdef VMS
xmlRegisterDefOutputCallbacks
#else
xmlRegisterDefaultOutputCallbacks
#endif
(void) {
if (xmlOutputCallbackInitialized)
return;
@ -1706,8 +1693,6 @@ xmlOutputBufferClose(xmlOutputBufferPtr out) {
* @URI: a C string containing the URI or filename
* @enc: the charset encoding if known
*
* VMS version of xmlParserInputBufferCreateFilename()
*
* Returns the new parser input or NULL
*/
/**
@ -1724,11 +1709,7 @@ xmlOutputBufferClose(xmlOutputBufferPtr out) {
* Returns the new parser input or NULL
*/
xmlParserInputBufferPtr
#ifdef VMS
xmlParserInputBufferCreateFname
#else
xmlParserInputBufferCreateFilename
#endif
(const char *URI, xmlCharEncoding enc) {
xmlParserInputBufferPtr ret;
int i = 0;

11
xpath.c
View File

@ -12,8 +12,6 @@
*
* Author: daniel@veillard.com
*
* 14 Nov 2000 ht - truncated declaration of xmlXPathEvalRelativeLocationPath
* for VMS
*/
#define IN_LIBXML
@ -6913,12 +6911,7 @@ xmlXPathRoundFunction(xmlXPathParserContextPtr ctxt, int nargs) {
static void xmlXPathCompileExpr(xmlXPathParserContextPtr ctxt);
static void xmlXPathCompPredicate(xmlXPathParserContextPtr ctxt, int filter);
static void xmlXPathCompLocationPath(xmlXPathParserContextPtr ctxt);
#ifdef VMS
static void xmlXPathCompRelLocationPath(xmlXPathParserContextPtr ctxt);
#define xmlXPathCompRelativeLocationPath xmlXPathCompRelLocationPath
#else
static void xmlXPathCompRelativeLocationPath(xmlXPathParserContextPtr ctxt);
#endif
static xmlChar * xmlXPathParseNameComplex(xmlXPathParserContextPtr ctxt,
int qualified);
@ -8568,11 +8561,7 @@ eval_predicates:
* Compile a relative location path.
*/
static void
#ifdef VMS
xmlXPathCompRelLocationPath
#else
xmlXPathCompRelativeLocationPath
#endif
(xmlXPathParserContextPtr ctxt) {
SKIP_BLANKS;
if ((CUR == '/') && (NXT(1) == '/')) {