mirror of
https://github.com/libexpat/libexpat.git
synced 2025-04-15 09:44:36 +00:00
VMS support, contributed by Craig Berry.
This commit is contained in:
parent
5e17fb9437
commit
c457dfb346
7 changed files with 175 additions and 0 deletions
|
@ -42,6 +42,9 @@ tests/chardata.c
|
|||
tests/chardata.h
|
||||
tests/runtests.c
|
||||
tests/xmltest.sh
|
||||
vms/descrip.mms
|
||||
vms/expat_config.h
|
||||
vms/README.vms
|
||||
xmlwf/codepage.c
|
||||
xmlwf/codepage.h
|
||||
xmlwf/ct.c
|
||||
|
|
|
@ -5,6 +5,15 @@
|
|||
#ifndef XmlParse_INCLUDED
|
||||
#define XmlParse_INCLUDED 1
|
||||
|
||||
#ifdef __VMS
|
||||
/* 0 1 2 3 0 1 2 3
|
||||
1234567890123456789012345678901 1234567890123456789012345678901 */
|
||||
#define XML_SetProcessingInstructionHandler XML_SetProcessingInstrHandler
|
||||
#define XML_SetUnparsedEntityDeclHandler XML_SetUnparsedEntDeclHandler
|
||||
#define XML_SetStartNamespaceDeclHandler XML_SetStartNamespcDeclHandler
|
||||
#define XML_SetExternalEntityRefHandlerArg XML_SetExternalEntRefHandlerArg
|
||||
#endif
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#ifndef XMLPARSEAPI
|
||||
|
|
|
@ -2,6 +2,10 @@
|
|||
See the file COPYING for copying permission.
|
||||
*/
|
||||
|
||||
#ifdef __VMS
|
||||
#include <string.h> /* memset(), memcpy() */
|
||||
#endif
|
||||
|
||||
#ifdef COMPILED_FROM_DSP
|
||||
|
||||
#include "winconfig.h"
|
||||
|
|
|
@ -6,6 +6,12 @@ See the file COPYING for copying permission.
|
|||
#ifndef XmlRole_INCLUDED
|
||||
#define XmlRole_INCLUDED 1
|
||||
|
||||
#ifdef __VMS
|
||||
/* 0 1 2 3 0 1 2 3
|
||||
1234567890123456789012345678901 1234567890123456789012345678901 */
|
||||
#define XmlPrologStateInitExternalEntity XmlPrologStateInitExternalEnt
|
||||
#endif
|
||||
|
||||
#include "xmltok.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
23
expat/vms/README.vms
Normal file
23
expat/vms/README.vms
Normal file
|
@ -0,0 +1,23 @@
|
|||
4-jun-2002 Craig A. Berry
|
||||
Added rudimentary build procedures for
|
||||
OpenVMS based on work by Martin Vorlaender.
|
||||
|
||||
|
||||
You'll need MMS or its freeware equivalent MMK. Just go to the
|
||||
top-level directory and type
|
||||
|
||||
$ MMS/DESCRIPTION=[.vms]
|
||||
|
||||
or
|
||||
|
||||
$ MMK/DESCRIPTION=[.vms]
|
||||
|
||||
You'll end up with the object library expat.olb. For now, installation
|
||||
consists merely of copying the object library, include files, and
|
||||
documentation to a suitable location.
|
||||
|
||||
To-do list:
|
||||
|
||||
-- create a shareable image
|
||||
-- build and run the tests and build the xmlwf utility
|
||||
-- create an install target
|
69
expat/vms/descrip.mms
Normal file
69
expat/vms/descrip.mms
Normal file
|
@ -0,0 +1,69 @@
|
|||
# Bare bones description file (Makefile) for OpenVMS
|
||||
|
||||
PACKAGE = expat
|
||||
VERSION = 1.95.3
|
||||
EXPAT_MAJOR_VERSION=1
|
||||
EXPAT_MINOR_VERSION=95
|
||||
EXPAT_EDIT=3
|
||||
|
||||
O = .obj
|
||||
OLB = .olb
|
||||
|
||||
LIBRARY = expat$(OLB)
|
||||
LIBDIR = [.lib]
|
||||
SOURCES = $(LIBDIR)xmlparse.c $(LIBDIR)xmltok.c $(LIBDIR)xmlrole.c
|
||||
OBJECTS = xmlparse$(O) xmltok$(O) xmlrole$(O)
|
||||
|
||||
TEMPLATES = xmltok_impl.c xmltok_ns.c
|
||||
APIHEADER = $(LIBDIR)expat.h
|
||||
HEADERS = $(LIBDIR)ascii.h $(LIBDIR)iasciitab.h $(LIBDIR)utf8tab.h $(LIBDIR)xmltok.h \
|
||||
$(LIBDIR)asciitab.h $(LIBDIR)latin1tab.h \
|
||||
$(LIBDIR)nametab.h $(LIBDIR)xmldef.h $(LIBDIR)xmlrole.h $(LIBDIR)xmltok_impl.h
|
||||
|
||||
CONFIG_HEADER = expat_config.h
|
||||
INCLUDES = /INCLUDE=([],[.lib])
|
||||
DEFS = /DEFINE=(PACKAGE="""$(PACKAGE)""",VERSION="""$(PACKAGE)_$(VERSION)""")
|
||||
LIBREVISION = 0
|
||||
LIBCURRENT = 1
|
||||
LIBAGE = 0
|
||||
#
|
||||
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
|
||||
#
|
||||
# DISTFILES = $(DIST_COMMON) $(SOURCES) $(TEMPLATES) $(APIHEADER) $(HEADERS)
|
||||
#
|
||||
# TAR = gtar
|
||||
# GZIP_ENV = --best
|
||||
#
|
||||
.FIRST :
|
||||
IF F$SEARCH("$(LIBRARY)") .EQS. "" THEN $(LIBR) /CREATE /OBJECT $(LIBRARY)
|
||||
|
||||
all : $(LIBRARY)
|
||||
|
||||
.SUFFIXES :
|
||||
.SUFFIXES : $(OLB) $(O) .C .H
|
||||
|
||||
.c$(O) :
|
||||
$(COMPILE) $(MMS$SOURCE)
|
||||
|
||||
$(O)$(OLB) :
|
||||
@ IF F$SEARCH("$(MMS$TARGET)") .EQS. "" -
|
||||
THEN LIBRARY/CREATE/LOG $(MMS$TARGET)
|
||||
@ LIBRARY /REPLACE /LOG $(MMS$TARGET) $(MMS$SOURCE)
|
||||
|
||||
clean :
|
||||
DELETE $(LIBRARY);*,*$(O);*
|
||||
|
||||
$(LIBRARY) : $(LIBRARY)( $(OBJECTS) )
|
||||
$(LIBR) /COMPRESS $(MMS$TARGET)
|
||||
|
||||
$(CONFIG_HEADER) : [.vms]expat_config.h
|
||||
COPY/LOG $(MMS$SOURCE) $(MMS$TARGET)
|
||||
|
||||
xmlparse$(O) : $(LIBDIR)xmlparse.c $(LIBDIR)expat.h $(LIBDIR)xmlrole.h $(LIBDIR)xmltok.h $(CONFIG_HEADER)
|
||||
|
||||
xmlrole$(O) : $(LIBDIR)xmlrole.c $(LIBDIR)ascii.h $(LIBDIR)xmlrole.h $(CONFIG_HEADER)
|
||||
|
||||
xmltok$(O) : $(LIBDIR)xmltok.c $(LIBDIR)xmltok_impl.c $(LIBDIR)xmltok_ns.c \
|
||||
$(LIBDIR)ascii.h $(LIBDIR)asciitab.h $(LIBDIR)iasciitab.h $(LIBDIR)latin1tab.h \
|
||||
$(LIBDIR)nametab.h $(LIBDIR)utf8tab.h $(LIBDIR)xmltok.h $(LIBDIR)xmltok_impl.h $(CONFIG_HEADER)
|
||||
|
61
expat/vms/expat_config.h
Normal file
61
expat/vms/expat_config.h
Normal file
|
@ -0,0 +1,61 @@
|
|||
/* Copyright 2000, Clark Cooper
|
||||
All rights reserved.
|
||||
|
||||
This is free software. You are permitted to copy, distribute, or modify
|
||||
it under the terms of the MIT/X license (contained in the COPYING file
|
||||
with this distribution.)
|
||||
*/
|
||||
|
||||
/* Define to empty if the keyword does not work. */
|
||||
#undef const
|
||||
|
||||
/* Define if you have a working `mmap' system call. */
|
||||
#undef HAVE_MMAP
|
||||
|
||||
/* Define to `long' if <sys/types.h> doesn't define. */
|
||||
#undef off_t
|
||||
|
||||
/* Define to `unsigned' if <sys/types.h> doesn't define. */
|
||||
#undef size_t
|
||||
|
||||
/* Define if you have the ANSI C header files. */
|
||||
#define STDC_HEADERS 1
|
||||
|
||||
/* Define if your processor stores words with the most significant
|
||||
byte first (like Motorola and SPARC, unlike Intel and VAX). */
|
||||
#undef WORDS_BIGENDIAN
|
||||
|
||||
/* Define if you have the bcopy function. */
|
||||
#undef HAVE_BCOPY
|
||||
|
||||
/* Define if you have the getpagesize function. */
|
||||
#undef HAVE_GETPAGESIZE
|
||||
|
||||
/* Define if you have the memmove function. */
|
||||
#define HAVE_MEMMOVE 1
|
||||
|
||||
/* Define if you have the <fcntl.h> header file. */
|
||||
#undef HAVE_FCNTL_H
|
||||
|
||||
/* Define if you have the <unistd.h> header file. */
|
||||
#define HAVE_UNISTD_H 1
|
||||
|
||||
#define XML_NS
|
||||
#define XML_DTD
|
||||
|
||||
#ifdef WORDS_BIGENDIAN
|
||||
#define XML_BYTE_ORDER 21
|
||||
#else
|
||||
#define XML_BYTE_ORDER 12
|
||||
#endif
|
||||
|
||||
#define XML_CONTEXT_BYTES 1024
|
||||
|
||||
#ifndef HAVE_MEMMOVE
|
||||
#ifdef HAVE_BCOPY
|
||||
#define memmove(d,s,l) bcopy((s),(d),(l))
|
||||
#else
|
||||
#define memmove(d,s,l) ;punting on memmove;
|
||||
#endif
|
||||
|
||||
#endif
|
Loading…
Add table
Reference in a new issue