xref: /aosp_15_r20/external/pcre/vms/configure.com (revision 22dc650d8ae982c6770746019a6f94af92b0f024)
1*22dc650dSSadaf Ebrahimi$! Configure procedure
2*22dc650dSSadaf Ebrahimi$! (c) Alexey Chupahin  11-APR-2024
3*22dc650dSSadaf Ebrahimi$! alexey@vaxman.de, alexey_chupahin@mail.ru
4*22dc650dSSadaf Ebrahimi$!
5*22dc650dSSadaf Ebrahimi$!
6*22dc650dSSadaf Ebrahimi$ SET NOON
7*22dc650dSSadaf Ebrahimi$SET NOVER
8*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT " "
9*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "Configuring PCRE2 library for OpenVMS  "
10*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "(c) Alexey Chupahin   CHAPG"
11*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT " "
12*22dc650dSSadaf Ebrahimi$! Checking architecture
13*22dc650dSSadaf Ebrahimi$DECC = F$SEARCH("SYS$SYSTEM:DECC$COMPILER.EXE") .NES. ""
14*22dc650dSSadaf Ebrahimi$    IF F$GETSYI("ARCH_TYPE").EQ.1 THEN CPU = "VAX"
15*22dc650dSSadaf Ebrahimi$    IF F$GETSYI("ARCH_TYPE").EQ.2 THEN CPU = "Alpha"
16*22dc650dSSadaf Ebrahimi$    IF F$GETSYI("ARCH_TYPE").EQ.3 THEN CPU = "I64"
17*22dc650dSSadaf Ebrahimi$    IF F$GETSYI("ARCH_TYPE").EQ.4 THEN CPU = "x86"
18*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "Checking architecture 	...  ", CPU
19*22dc650dSSadaf Ebrahimi$IF ( (CPU.EQS."Alpha").OR.(CPU.EQS."I64").OR(CPU.EQS."x86") )
20*22dc650dSSadaf Ebrahimi$  THEN
21*22dc650dSSadaf Ebrahimi$       SHARED=64
22*22dc650dSSadaf Ebrahimi$  ELSE
23*22dc650dSSadaf Ebrahimi$       SHARED=32
24*22dc650dSSadaf Ebrahimi$ENDIF
25*22dc650dSSadaf Ebrahimi$!
26*22dc650dSSadaf Ebrahimi$IF (DECC) THEN $WRITE SYS$OUTPUT  "Compiler		...  DEC C"
27*22dc650dSSadaf Ebrahimi$IF (.NOT. DECC) THEN $WRITE SYS$OUTPUT  "BAD compiler" GOTO EXIT
28*22dc650dSSadaf Ebrahimi$MMS = F$SEARCH("SYS$SYSTEM:MMS.EXE") .NES. ""
29*22dc650dSSadaf Ebrahimi$MMK = F$TYPE(MMK)
30*22dc650dSSadaf Ebrahimi$IF (MMS .OR. MMK.NES."") THEN GOTO TEST_LIBRARIES
31*22dc650dSSadaf Ebrahimi$! I cant find any make tool
32*22dc650dSSadaf Ebrahimi$ WRITE SYS$OUTPUT "Install MMS or MMK"
33*22dc650dSSadaf Ebrahimi$GOTO EXIT
34*22dc650dSSadaf Ebrahimi$!PERL = F$TYPE(MMK)
35*22dc650dSSadaf Ebrahimi$!IF (PERL.NES."") THEN GOTO TEST_LIBRARIES
36*22dc650dSSadaf Ebrahimi$!WRITE SYS$OUTPUT "Install PERL"
37*22dc650dSSadaf Ebrahimi$!GOTO EXIT
38*22dc650dSSadaf Ebrahimi$!
39*22dc650dSSadaf Ebrahimi$!
40*22dc650dSSadaf Ebrahimi$! Is it package root directory? If no, go to [-]
41*22dc650dSSadaf Ebrahimi$ IF (F$SEARCH("[]VMS.DIR").EQS."") .AND. (F$SEARCH("[]vms.dir").EQS."")
42*22dc650dSSadaf Ebrahimi$  THEN
43*22dc650dSSadaf Ebrahimi$       SET DEF [-]
44*22dc650dSSadaf Ebrahimi$ ENDIF
45*22dc650dSSadaf Ebrahimi$!
46*22dc650dSSadaf Ebrahimi$TEST_LIBRARIES:
47*22dc650dSSadaf Ebrahimi$!   Setting as MAKE utility one of MMS or MMK. I prefer MMS.
48*22dc650dSSadaf Ebrahimi$IF (MMK.NES."") THEN MAKE="MMK"
49*22dc650dSSadaf Ebrahimi$IF (MMS) THEN MAKE="MMS"
50*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "Checking build utility	...  ''MAKE'"
51*22dc650dSSadaf Ebrahimi$!WRITE SYS$OUTPUT "Checking PERL		...  found"
52*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT " "
53*22dc650dSSadaf Ebrahimi$!
54*22dc650dSSadaf Ebrahimi$!
55*22dc650dSSadaf Ebrahimi$! Check files and ODS-2. unzip makes files FILE.H.GENERIC like FILE_H.GENERIC.  Should rename to FILE.H_GENERIC
56*22dc650dSSadaf Ebrahimi$IF F$SEARCH("[.SRC]PCRE2_H.GENERIC") .NES. ""
57*22dc650dSSadaf Ebrahimi$ THEN
58*22dc650dSSadaf Ebrahimi$	REN [.SRC]PCRE2_H.GENERIC [.SRC]PCRE2.H_GENERIC
59*22dc650dSSadaf Ebrahimi$ ELSE
60*22dc650dSSadaf Ebrahimi$	IF F$SEARCH("[.SRC]PCRE2.H_GENERIC") .EQS. ""
61*22dc650dSSadaf Ebrahimi$	 THEN
62*22dc650dSSadaf Ebrahimi$		WRITE SYS$OUTPUT "Not ODS-2 volume, or PCRE2_H.GENERIC not found"
63*22dc650dSSadaf Ebrahimi$		EXIT
64*22dc650dSSadaf Ebrahimi$	ENDIF
65*22dc650dSSadaf Ebrahimi$ENDIF
66*22dc650dSSadaf Ebrahimi$IF F$SEARCH("[.SRC]PCRE2_CHARTABLES_C.DIST") .NES. ""
67*22dc650dSSadaf Ebrahimi$ THEN
68*22dc650dSSadaf Ebrahimi$	REN [.SRC]PCRE2_CHARTABLES_C.DIST [.SRC]PCRE2_CHARTABLES.C_DIST
69*22dc650dSSadaf Ebrahimi$ ELSE
70*22dc650dSSadaf Ebrahimi$	IF F$SEARCH("[.SRC]PCRE2_CHARTABLES.C_DIST") .EQS. ""
71*22dc650dSSadaf Ebrahimi$	 THEN
72*22dc650dSSadaf Ebrahimi$		WRITE SYS$OUTPUT "Not ODS-2 volume, or PCRE2_CHARTABLES_C.DIST not found"
73*22dc650dSSadaf Ebrahimi$		EXIT
74*22dc650dSSadaf Ebrahimi$	ENDIF
75*22dc650dSSadaf Ebrahimi$ENDIF
76*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "Source Files OK"
77*22dc650dSSadaf Ebrahimi$!
78*22dc650dSSadaf Ebrahimi$!
79*22dc650dSSadaf Ebrahimi$I18 = F$SEARCH("SYS$I18N_ICONV:ISO8859-1_UTF-8.ICONV") .NES. ""
80*22dc650dSSadaf Ebrahimi$IF (I18)
81*22dc650dSSadaf Ebrahimi$  THEN
82*22dc650dSSadaf Ebrahimi$	WRITE SYS$OUTPUT "Found I18 extension ICONV codes"
83*22dc650dSSadaf Ebrahimi$!"Checking for iconv    "
84*22dc650dSSadaf Ebrahimi$ DEFINE SYS$ERROR _NLA0:
85*22dc650dSSadaf Ebrahimi$ DEFINE SYS$OUTPUT _NLA0:
86*22dc650dSSadaf Ebrahimi$ CC/OBJECT=TEST.OBJ SYS$INPUT
87*22dc650dSSadaf Ebrahimi#include <stdio.h>
88*22dc650dSSadaf Ebrahimi#include <iconv.h>
89*22dc650dSSadaf Ebrahimi#include <errno.h>
90*22dc650dSSadaf Ebrahimi#include  <stdlib.h>
91*22dc650dSSadaf Ebrahimi
92*22dc650dSSadaf Ebrahimiint main ()
93*22dc650dSSadaf Ebrahimi{
94*22dc650dSSadaf Ebrahimi    /*                                                                   */
95*22dc650dSSadaf Ebrahimi    /* Declare variables to be used                                      */
96*22dc650dSSadaf Ebrahimi    /*                                                                   */
97*22dc650dSSadaf Ebrahimi    char fromcodeset[30];
98*22dc650dSSadaf Ebrahimi    char tocodeset[30];
99*22dc650dSSadaf Ebrahimi    int  iconv_opened;
100*22dc650dSSadaf Ebrahimi    iconv_t iconv_struct;                   /* Iconv descriptor      */
101*22dc650dSSadaf Ebrahimi
102*22dc650dSSadaf Ebrahimi    /*                                                                   */
103*22dc650dSSadaf Ebrahimi    /* Initialize variables                                              */
104*22dc650dSSadaf Ebrahimi    /*                                                                   */
105*22dc650dSSadaf Ebrahimi    sprintf(fromcodeset,"UTF-8");
106*22dc650dSSadaf Ebrahimi    sprintf(tocodeset,"ISO8859-1");
107*22dc650dSSadaf Ebrahimi    iconv_opened = FALSE;
108*22dc650dSSadaf Ebrahimi
109*22dc650dSSadaf Ebrahimi    /*                                                                   */
110*22dc650dSSadaf Ebrahimi    /* Attempt to create a conversion descriptor for the codesets        */
111*22dc650dSSadaf Ebrahimi    /* specified. If the return value from iconv_open is -1 then         */
112*22dc650dSSadaf Ebrahimi    /* an error has occurred. Check value of errno.                      */
113*22dc650dSSadaf Ebrahimi    /*                                                                   */
114*22dc650dSSadaf Ebrahimi    if ((iconv_struct = iconv_open (tocodeset, fromcodeset)) == (iconv_t)-1)
115*22dc650dSSadaf Ebrahimi    {
116*22dc650dSSadaf Ebrahimi        /*                                                               */
117*22dc650dSSadaf Ebrahimi        /* Check the value of errno                                      */
118*22dc650dSSadaf Ebrahimi        /*                                                               */
119*22dc650dSSadaf Ebrahimi        switch (errno)
120*22dc650dSSadaf Ebrahimi        {
121*22dc650dSSadaf Ebrahimi        case EMFILE:
122*22dc650dSSadaf Ebrahimi        case ENFILE:
123*22dc650dSSadaf Ebrahimi          printf("Too many iconv conversion files open\n");
124*22dc650dSSadaf Ebrahimi          exit(2);
125*22dc650dSSadaf Ebrahimi          break;
126*22dc650dSSadaf Ebrahimi
127*22dc650dSSadaf Ebrahimi        case ENOMEM:
128*22dc650dSSadaf Ebrahimi          printf("Not enough memory\n");
129*22dc650dSSadaf Ebrahimi          printf("Checking iconv .....  no\n");
130*22dc650dSSadaf Ebrahimi          exit(2);
131*22dc650dSSadaf Ebrahimi	  break;
132*22dc650dSSadaf Ebrahimi
133*22dc650dSSadaf Ebrahimi        case EINVAL:
134*22dc650dSSadaf Ebrahimi          printf("Unsupported conversion\n");
135*22dc650dSSadaf Ebrahimi	  exit(2);
136*22dc650dSSadaf Ebrahimi          break;
137*22dc650dSSadaf Ebrahimi
138*22dc650dSSadaf Ebrahimi        default:
139*22dc650dSSadaf Ebrahimi          printf("Unexpected error from iconv_open\n");
140*22dc650dSSadaf Ebrahimi	  exit(2);
141*22dc650dSSadaf Ebrahimi          break;
142*22dc650dSSadaf Ebrahimi        }
143*22dc650dSSadaf Ebrahimi    }
144*22dc650dSSadaf Ebrahimi    else
145*22dc650dSSadaf Ebrahimi        /*                                                               */
146*22dc650dSSadaf Ebrahimi /* Successfully allocated a conversion descriptor   */
147*22dc650dSSadaf Ebrahimi /*         */
148*22dc650dSSadaf Ebrahimi iconv_opened = TRUE;
149*22dc650dSSadaf Ebrahimi
150*22dc650dSSadaf Ebrahimi    /*                                                                   */
151*22dc650dSSadaf Ebrahimi    /*  Was a conversion descriptor allocated                            */
152*22dc650dSSadaf Ebrahimi    /*                                                                   */
153*22dc650dSSadaf Ebrahimi    if (iconv_opened)
154*22dc650dSSadaf Ebrahimi    {
155*22dc650dSSadaf Ebrahimi        /*                                                               */
156*22dc650dSSadaf Ebrahimi        /* Attempt to deallocate the conversion descriptor. If           */
157*22dc650dSSadaf Ebrahimi        /* iconv_close returns -1 then an error has occurred.            */
158*22dc650dSSadaf Ebrahimi        /*                                                               */
159*22dc650dSSadaf Ebrahimi        if (iconv_close (iconv_struct) == -1)
160*22dc650dSSadaf Ebrahimi        {
161*22dc650dSSadaf Ebrahimi            /*                                                           */
162*22dc650dSSadaf Ebrahimi            /* An error occurred. Check the value of errno               */
163*22dc650dSSadaf Ebrahimi            /*                                                           */
164*22dc650dSSadaf Ebrahimi            switch (errno)
165*22dc650dSSadaf Ebrahimi            {
166*22dc650dSSadaf Ebrahimi            case EBADF:
167*22dc650dSSadaf Ebrahimi                printf("Conversion descriptor is invalid\n");
168*22dc650dSSadaf Ebrahimi                exit(2);
169*22dc650dSSadaf Ebrahimi		break;
170*22dc650dSSadaf Ebrahimi            default:
171*22dc650dSSadaf Ebrahimi                break;
172*22dc650dSSadaf Ebrahimi            }
173*22dc650dSSadaf Ebrahimi        }
174*22dc650dSSadaf Ebrahimi        else
175*22dc650dSSadaf Ebrahimi            printf("Checking iconv .....  yes\n");
176*22dc650dSSadaf Ebrahimi    }
177*22dc650dSSadaf Ebrahimi    return(1);
178*22dc650dSSadaf Ebrahimi}
179*22dc650dSSadaf Ebrahimi$!
180*22dc650dSSadaf Ebrahimi$TMP = $STATUS
181*22dc650dSSadaf Ebrahimi$DEASS SYS$ERROR
182*22dc650dSSadaf Ebrahimi$DEAS  SYS$OUTPUT
183*22dc650dSSadaf Ebrahimi$!WRITE SYS$OUTPUT TMP
184*22dc650dSSadaf Ebrahimi$IF (TMP .NE. %X10B90001)
185*22dc650dSSadaf Ebrahimi$  THEN
186*22dc650dSSadaf Ebrahimi$       HAVE_ICONV=0
187*22dc650dSSadaf Ebrahimi$       GOTO NEXT0
188*22dc650dSSadaf Ebrahimi$ENDIF
189*22dc650dSSadaf Ebrahimi$DEFINE SYS$ERROR _NLA0:
190*22dc650dSSadaf Ebrahimi$DEFINE SYS$OUTPUT _NLA0:
191*22dc650dSSadaf Ebrahimi$LINK/EXE=TEST TEST
192*22dc650dSSadaf Ebrahimi$TMP = $STATUS
193*22dc650dSSadaf Ebrahimi$DEAS  SYS$ERROR
194*22dc650dSSadaf Ebrahimi$DEAS  SYS$OUTPUT
195*22dc650dSSadaf Ebrahimi$!WRITE SYS$OUTPUT TMP
196*22dc650dSSadaf Ebrahimi$IF (TMP .NE. %X10000001)
197*22dc650dSSadaf Ebrahimi$  THEN
198*22dc650dSSadaf Ebrahimi$       HAVE_ICONV=0
199*22dc650dSSadaf Ebrahimi$       GOTO NEXT0
200*22dc650dSSadaf Ebrahimi$  ELSE
201*22dc650dSSadaf Ebrahimi$       HAVE_ICONV=1
202*22dc650dSSadaf Ebrahimi$ENDIF
203*22dc650dSSadaf Ebrahimi$NEXT0:
204*22dc650dSSadaf Ebrahimi$IF (HAVE_ICONV.EQ.1)
205*22dc650dSSadaf Ebrahimi$  THEN
206*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "Checking for iconv ...   Yes"
207*22dc650dSSadaf Ebrahimi$  ELSE
208*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "Checking for iconv ...   No"
209*22dc650dSSadaf Ebrahimi$ENDIF
210*22dc650dSSadaf Ebrahimi$!
211*22dc650dSSadaf Ebrahimi$!
212*22dc650dSSadaf Ebrahimi$! Checking for BZIP2 library
213*22dc650dSSadaf Ebrahimi$!
214*22dc650dSSadaf Ebrahimi$ DEFINE SYS$ERROR _NLA0:
215*22dc650dSSadaf Ebrahimi$ DEFINE SYS$OUTPUT _NLA0:
216*22dc650dSSadaf Ebrahimi$ CC/OBJECT=TEST.OBJ/INCLUDE=(BZ2LIB) SYS$INPUT
217*22dc650dSSadaf Ebrahimi      #include <stdlib.h>
218*22dc650dSSadaf Ebrahimi      #include <stdio.h>
219*22dc650dSSadaf Ebrahimi      #include <bzlib.h>
220*22dc650dSSadaf Ebrahimi   int main()
221*22dc650dSSadaf Ebrahimi     {
222*22dc650dSSadaf Ebrahimi        printf("checking version bzip2 library:  %s\n",BZ2_bzlibVersion());
223*22dc650dSSadaf Ebrahimi     }
224*22dc650dSSadaf Ebrahimi$TMP = $STATUS
225*22dc650dSSadaf Ebrahimi$DEASS SYS$ERROR
226*22dc650dSSadaf Ebrahimi$DEAS  SYS$OUTPUT
227*22dc650dSSadaf Ebrahimi$!WRITE SYS$OUTPUT TMP
228*22dc650dSSadaf Ebrahimi$IF (TMP .NE. %X10B90001)
229*22dc650dSSadaf Ebrahimi$  THEN
230*22dc650dSSadaf Ebrahimi$       HAVE_BZIP2=0
231*22dc650dSSadaf Ebrahimi$       GOTO ERR0
232*22dc650dSSadaf Ebrahimi$ENDIF
233*22dc650dSSadaf Ebrahimi$DEFINE SYS$ERROR _NLA0:
234*22dc650dSSadaf Ebrahimi$DEFINE SYS$OUTPUT _NLA0:
235*22dc650dSSadaf Ebrahimi$!Testing for CHAPG BZIP2
236*22dc650dSSadaf Ebrahimi$!
237*22dc650dSSadaf Ebrahimi$LINK/EXE=TEST TEST,BZ2LIB:BZIP2/OPT
238*22dc650dSSadaf Ebrahimi$TMP = $STATUS
239*22dc650dSSadaf Ebrahimi$DEAS SYS$ERROR
240*22dc650dSSadaf Ebrahimi$DEAS SYS$OUTPUT
241*22dc650dSSadaf Ebrahimi$IF (TMP .NE. %X10000001)
242*22dc650dSSadaf Ebrahimi$  THEN
243*22dc650dSSadaf Ebrahimi$       HAVE_BZIP2=0
244*22dc650dSSadaf Ebrahimi$       GOTO ERR0
245*22dc650dSSadaf Ebrahimi$  ELSE
246*22dc650dSSadaf Ebrahimi$       HAVE_BZIP2=1
247*22dc650dSSadaf Ebrahimi$ENDIF
248*22dc650dSSadaf Ebrahimi$ERR0:
249*22dc650dSSadaf Ebrahimi$IF (HAVE_BZIP2.EQ.1)
250*22dc650dSSadaf Ebrahimi$  THEN
251*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "Checking for CHAPG bzip2 library ...   Yes"
252*22dc650dSSadaf Ebrahimi$       RUN TEST
253*22dc650dSSadaf Ebrahimi$       GOTO NEXT4
254*22dc650dSSadaf Ebrahimi$  ELSE
255*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "Checking for correct bzip2 library ...   No"
256*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "To get bzip2 archives support, please download"
257*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "and install good library ported by Alexey Chupahin"
258*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "from openvms clamav site http://vaxvms.org/clamav/"
259*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT ""
260*22dc650dSSadaf Ebrahimi$	GOTO EXIT
261*22dc650dSSadaf Ebrahimi$ENDIF
262*22dc650dSSadaf Ebrahimi$NEXT4:
263*22dc650dSSadaf Ebrahimi$!
264*22dc650dSSadaf Ebrahimi$!
265*22dc650dSSadaf Ebrahimi$!"Checking for CHAPG zlib library    "
266*22dc650dSSadaf Ebrahimi$DEFINE SYS$ERROR _NLA0:
267*22dc650dSSadaf Ebrahimi$DEFINE SYS$OUTPUT _NLA0:
268*22dc650dSSadaf Ebrahimi$ CC/OBJECT=TEST.OBJ/INCLUDE=(ZLIB) SYS$INPUT
269*22dc650dSSadaf Ebrahimi      #include <stdlib.h>
270*22dc650dSSadaf Ebrahimi      #include <stdio.h>
271*22dc650dSSadaf Ebrahimi      #include <string.h>
272*22dc650dSSadaf Ebrahimi      #include <zlib.h>
273*22dc650dSSadaf Ebrahimi   int main()
274*22dc650dSSadaf Ebrahimi     {
275*22dc650dSSadaf Ebrahimi        printf("checking version zlib:  %s\n",zlibVersion());
276*22dc650dSSadaf Ebrahimi       // printf("checking zlib is correct ");
277*22dc650dSSadaf Ebrahimi     }
278*22dc650dSSadaf Ebrahimi
279*22dc650dSSadaf Ebrahimi$TMP = $STATUS
280*22dc650dSSadaf Ebrahimi$DEASS SYS$ERROR
281*22dc650dSSadaf Ebrahimi$DEAS  SYS$OUTPUT
282*22dc650dSSadaf Ebrahimi$IF (TMP .NE. %X10B90001)
283*22dc650dSSadaf Ebrahimi$  THEN
284*22dc650dSSadaf Ebrahimi$       HAVE_ZLIB=0
285*22dc650dSSadaf Ebrahimi$       GOTO ERR4
286*22dc650dSSadaf Ebrahimi$ENDIF
287*22dc650dSSadaf Ebrahimi$DEFINE SYS$ERROR _NLA0:
288*22dc650dSSadaf Ebrahimi$DEFINE SYS$OUTPUT _NLA0:
289*22dc650dSSadaf Ebrahimi$!
290*22dc650dSSadaf Ebrahimi$LINK/EXE=TEST TEST,ZLIB:ZLIB.OPT/OPT
291*22dc650dSSadaf Ebrahimi$TMP = $STATUS
292*22dc650dSSadaf Ebrahimi$DEAS SYS$ERROR
293*22dc650dSSadaf Ebrahimi$DEAS SYS$OUTPUT
294*22dc650dSSadaf Ebrahimi$IF (TMP .NE. %X10000001)
295*22dc650dSSadaf Ebrahimi$  THEN
296*22dc650dSSadaf Ebrahimi$       HAVE_ZLIB=0
297*22dc650dSSadaf Ebrahimi$       GOTO ERR4
298*22dc650dSSadaf Ebrahimi$  ELSE
299*22dc650dSSadaf Ebrahimi$       HAVE_ZLIB=1
300*22dc650dSSadaf Ebrahimi$ENDIF
301*22dc650dSSadaf Ebrahimi$ERR4:
302*22dc650dSSadaf Ebrahimi$IF (HAVE_ZLIB.EQ.1)
303*22dc650dSSadaf Ebrahimi$  THEN
304*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "Checking for CHAPG zlib library ...   Yes"
305*22dc650dSSadaf Ebrahimi$       RUN TEST
306*22dc650dSSadaf Ebrahimi$       GOTO NEXT5
307*22dc650dSSadaf Ebrahimi$  ELSE
308*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "Checking for CHAPG zlib library ...   No"
309*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "Please install ZLIB from"
310*22dc650dSSadaf Ebrahimi$       WRITE SYS$OUTPUT "http://vaxvms.org/libsdl/required.html"
311*22dc650dSSadaf Ebrahimi$       GOTO EXIT
312*22dc650dSSadaf Ebrahimi$ENDIF
313*22dc650dSSadaf Ebrahimi$!
314*22dc650dSSadaf Ebrahimi$NEXT5:
315*22dc650dSSadaf Ebrahimi
316*22dc650dSSadaf Ebrahimi$!
317*22dc650dSSadaf Ebrahimi$!WRITING BUILD FILES
318*22dc650dSSadaf Ebrahimi$OPEN/WRITE OUT BUILD.COM
319*22dc650dSSadaf Ebrahimi$ WRITE OUT "$","SET DEF [.SRC]"
320*22dc650dSSadaf Ebrahimi$ WRITE OUT "$",MAKE
321*22dc650dSSadaf Ebrahimi$ WRITE OUT "$ CURRENT = F$ENVIRONMENT (""DEFAULT"") "
322*22dc650dSSadaf Ebrahimi$ WRITE OUT "$","SET DEF [-]"
323*22dc650dSSadaf Ebrahimi$ WRITE OUT "$CLAM=CURRENT"
324*22dc650dSSadaf Ebrahimi$ WRITE OUT "$OPEN/WRITE OUTT PCRE2$STARTUP.COM"
325*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE OUTT ""DEFINE PCRE2 ","'","'","CLAM'"" "
326*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE OUTT ""DEFINE PCRE2$SHR ","'","'","CLAM'PCRE2$SHR.EXE"" "
327*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE OUTT ""PCRE2GREP:==$", "'","'","CLAM'PCRE2GREP.EXE"""
328*22dc650dSSadaf Ebrahimi$ WRITE OUT "$CLOSE OUTT"
329*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT "" "" "
330*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT ""***************************************************************************** "" "
331*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT ""Compilation is completed."" "
332*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT ""PCRE2$STARTUP.COM is created. "" "
333*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT ""This file setups all logicals needed."" "
334*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT ""It should be executed before using PCRE2 Library. "" "
335*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT ""Use PCRE2:PCRE2.OPT to link you program"" "
336*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT ""PCRE2GREP grep utility is installed here for your needs "" "
337*22dc650dSSadaf Ebrahimi$ WRITE OUT "$WRITE SYS$OUTPUT ""***************************************************************************** "" "
338*22dc650dSSadaf Ebrahimi$CLOSE OUT
339*22dc650dSSadaf Ebrahimi$! BUILD.COM finished
340*22dc650dSSadaf Ebrahimi$ WRITE SYS$OUTPUT "BUILD.COM has been created"
341*22dc650dSSadaf Ebrahimi$!
342*22dc650dSSadaf Ebrahimi$!Creating OPT.OPT file containig external libraries for linker
343*22dc650dSSadaf Ebrahimi$OPEN/WRITE OUT [.SRC]PCRE2.OPT
344*22dc650dSSadaf Ebrahimi$IF (SHARED.GT.0)  THEN  WRITE OUT "PCRE2:PCRE2$SHR/SHARE"
345*22dc650dSSadaf Ebrahimi$IF (SHARED.EQ.0)
346*22dc650dSSadaf Ebrahimi$  THEN
347*22dc650dSSadaf Ebrahimi$	WRITE OUT "PCRE2:PCRE2/LIB"
348*22dc650dSSadaf Ebrahimi$ENDIF
349*22dc650dSSadaf Ebrahimi$CLOSE OUT
350*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "PCRE2.OPT has been created"
351*22dc650dSSadaf Ebrahimi$IF (SHARED.EQ.64)
352*22dc650dSSadaf Ebrahimi$ THEN
353*22dc650dSSadaf Ebrahimi$	COPY SYS$INPUT [.SRC]PCRE2$DEF.OPT
354*22dc650dSSadaf Ebrahimi!
355*22dc650dSSadaf Ebrahimicase_sensitive=NO
356*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_CONFIG_8	= PROCEDURE)
357*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_MAKETABLES_8	= PROCEDURE)
358*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_MAKETABLES_FREE_8	= PROCEDURE)
359*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_CODE_COPY_8	= PROCEDURE)
360*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_CODE_FREE_8	= PROCEDURE)
361*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_CHECK_ESCAPE_8	= PROCEDURE)
362*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_COMPILE_8	= PROCEDURE)
363*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_CODE_COPY_WITH_TABLES_8	= PROCEDURE)
364*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GET_ERROR_MESSAGE_8	= PROCEDURE)
365*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_MATCH_DATA_CREATE_8	= PROCEDURE)
366*22dc650dSSadaf Ebrahimisymbol_vector = (VMS_PCRE2_GET_M_D_HPFRAM_S_8	= PROCEDURE)
367*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GET_MATCH_DATA_SIZE_8	= PROCEDURE)
368*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GET_STARTCHAR_8	= PROCEDURE)
369*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GET_OVECTOR_COUNT_8	= PROCEDURE)
370*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GET_OVECTOR_POINTER_8	= PROCEDURE)
371*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GET_MARK_8	= PROCEDURE)
372*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_MATCH_DATA_FREE_8	= PROCEDURE)
373*22dc650dSSadaf Ebrahimisymbol_vector = (VMS_PCRE2_M_D_CRT_FR_PATT_8	= PROCEDURE)
374*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_MATCH_8	= PROCEDURE)
375*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_PATTERN_INFO_8	= PROCEDURE)
376*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_CALLOUT_ENUMERATE_8	= PROCEDURE)
377*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_GLOB_ESCAPE_8	= PROCEDURE)
378*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_GLOB_SEPARATOR_8	= PROCEDURE)
379*22dc650dSSadaf Ebrahimisymbol_vector = (VMS_PCRE2_SET_RCRS_MEM_MNG_8	= PROCEDURE)
380*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_DEPTH_LIMIT_8	= PROCEDURE)
381*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_RECURSION_LIMIT_8	= PROCEDURE)
382*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_OFFSET_LIMIT_8	= PROCEDURE)
383*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_MATCH_LIMIT_8	= PROCEDURE)
384*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_HEAP_LIMIT_8	= PROCEDURE)
385*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_SUBSTITUTE_CALLOUT_8	= PROCEDURE)
386*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_CALLOUT_8	= PROCEDURE)
387*22dc650dSSadaf Ebrahimisymbol_vector = (VMS_PCRE2_SET_CMPL_RCRS_GRD_8	= PROCEDURE)
388*22dc650dSSadaf Ebrahimisymbol_vector = (VMS_PCRE2_SET_CMPL_EXT_OPT_8	= PROCEDURE)
389*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_PARENS_NEST_LIMIT_8	= PROCEDURE)
390*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_MAX_VARLOOKBEHIND_8	= PROCEDURE)
391*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_NEWLINE_8	= PROCEDURE)
392*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_MAX_PATTERN_LENGTH_8	= PROCEDURE)
393*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_BSR_8	= PROCEDURE)
394*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_SET_CHARACTER_TABLES_8	= PROCEDURE)
395*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_CONVERT_CONTEXT_FREE_8	= PROCEDURE)
396*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_MATCH_CONTEXT_FREE_8	= PROCEDURE)
397*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_COMPILE_CONTEXT_FREE_8	= PROCEDURE)
398*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GENERAL_CONTEXT_FREE_8	= PROCEDURE)
399*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_CONVERT_CONTEXT_COPY_8	= PROCEDURE)
400*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_MATCH_CONTEXT_COPY_8	= PROCEDURE)
401*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_COMPILE_CONTEXT_COPY_8	= PROCEDURE)
402*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GENERAL_CONTEXT_COPY_8	= PROCEDURE)
403*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_MEMCTL_MALLOC_8	= PROCEDURE)
404*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_CONVERT_CONTEXT_CREATE_8	= PROCEDURE)
405*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_MATCH_CONTEXT_CREATE_8	= PROCEDURE)
406*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_COMPILE_CONTEXT_CREATE_8	= PROCEDURE)
407*22dc650dSSadaf Ebrahimisymbol_vector = (PCRE2_GENERAL_CONTEXT_CREATE_8	= PROCEDURE)
408*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_AUTO_POSSESSIFY_8	= PROCEDURE)
409*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_CKD_SMUL	= PROCEDURE)
410*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_FIND_BRACKET_8	= PROCEDURE)
411*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_IS_NEWLINE_8	= PROCEDURE)
412*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_WAS_NEWLINE_8	= PROCEDURE)
413*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_SCRIPT_RUN_8	= PROCEDURE)
414*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_STRCMP_8	= PROCEDURE)
415*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_STRCPY_C8_8	= PROCEDURE)
416*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_STRLEN_8	= PROCEDURE)
417*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_STRNCMP_C8_8	= PROCEDURE)
418*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_STRNCMP_8	= PROCEDURE)
419*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_STRCMP_C8_8	= PROCEDURE)
420*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_STUDY_8	= PROCEDURE)
421*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_VALID_UTF_8	= PROCEDURE)
422*22dc650dSSadaf Ebrahimisymbol_vector = (VMS_PCRE2_DEF_CMPL_CNTXT_8	= DATA)
423*22dc650dSSadaf Ebrahimisymbol_vector = (VMS_PCRE2_DEF_CNVRT_CNTXT_8	= DATA)
424*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_CALLOUT_END_DELIMS_8	= DATA)
425*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_CALLOUT_START_DELIMS_8	= DATA)
426*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_DEFAULT_MATCH_CONTEXT_8	= DATA)
427*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_DEFAULT_TABLES_8	= DATA)
428*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_HSPACE_LIST_8	= DATA)
429*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_OP_LENGTHS_8	= DATA)
430*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_UCD_CASELESS_SETS_8	= DATA)
431*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_UCD_RECORDS_8	= DATA)
432*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_UCD_STAGE1_8	= DATA)
433*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_UCD_STAGE2_8	= DATA)
434*22dc650dSSadaf Ebrahimisymbol_vector = (_PCRE2_VSPACE_LIST_8	= DATA)
435*22dc650dSSadaf Ebrahimi!
436*22dc650dSSadaf Ebrahimi! ### PSECT list extracted from PCRE2.MAP;1
437*22dc650dSSadaf Ebrahimi!
438*22dc650dSSadaf Ebrahimi$ENDIF
439*22dc650dSSadaf Ebrahimi$!
440*22dc650dSSadaf Ebrahimi$!
441*22dc650dSSadaf EbrahimiCOPY SYS$INPUT [.SRC]CONFIG.H
442*22dc650dSSadaf Ebrahimi/* src/config.h.in.  Generated from configure.ac by autoheader.  */
443*22dc650dSSadaf Ebrahimi
444*22dc650dSSadaf Ebrahimi
445*22dc650dSSadaf Ebrahimi/* PCRE2 is written in Standard C, but there are a few non-standard things it
446*22dc650dSSadaf Ebrahimican cope with, allowing it to run on SunOS4 and other "close to standard"
447*22dc650dSSadaf Ebrahimisystems.
448*22dc650dSSadaf Ebrahimi
449*22dc650dSSadaf EbrahimiIn environments that support the GNU autotools, config.h.in is converted into
450*22dc650dSSadaf Ebrahimiconfig.h by the "configure" script. In environments that use CMake,
451*22dc650dSSadaf Ebrahimiconfig-cmake.in is converted into config.h. If you are going to build PCRE2 "by
452*22dc650dSSadaf Ebrahimihand" without using "configure" or CMake, you should copy the distributed
453*22dc650dSSadaf Ebrahimiconfig.h.generic to config.h, and edit the macro definitions to be the way you
454*22dc650dSSadaf Ebrahimineed them. You must then add -DHAVE_CONFIG_H to all of your compile commands,
455*22dc650dSSadaf Ebrahimiso that config.h is included at the start of every source.
456*22dc650dSSadaf Ebrahimi
457*22dc650dSSadaf EbrahimiAlternatively, you can avoid editing by using -D on the compiler command line
458*22dc650dSSadaf Ebrahimito set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H,
459*22dc650dSSadaf Ebrahimibut if you do, default values will be taken from config.h for non-boolean
460*22dc650dSSadaf Ebrahimimacros that are not defined on the command line.
461*22dc650dSSadaf Ebrahimi
462*22dc650dSSadaf EbrahimiBoolean macros such as HAVE_STDLIB_H and SUPPORT_PCRE2_8 should either be
463*22dc650dSSadaf Ebrahimidefined (conventionally to 1) for TRUE, and not defined at all for FALSE. All
464*22dc650dSSadaf Ebrahimisuch macros are listed as a commented #undef in config.h.generic. Macros such
465*22dc650dSSadaf Ebrahimias MATCH_LIMIT, whose actual value is relevant, have defaults defined, but are
466*22dc650dSSadaf Ebrahimisurrounded by #ifndef/#endif lines so that the value can be overridden by -D.
467*22dc650dSSadaf Ebrahimi
468*22dc650dSSadaf EbrahimiPCRE2 uses memmove() if HAVE_MEMMOVE is defined; otherwise it uses bcopy() if
469*22dc650dSSadaf EbrahimiHAVE_BCOPY is defined. If your system has neither bcopy() nor memmove(), make
470*22dc650dSSadaf Ebrahimisure both macros are undefined; an emulation function will then be used. */
471*22dc650dSSadaf Ebrahimi
472*22dc650dSSadaf Ebrahimi/* By default, the \R escape sequence matches any Unicode line ending
473*22dc650dSSadaf Ebrahimi   character or sequence of characters. If BSR_ANYCRLF is defined (to any
474*22dc650dSSadaf Ebrahimi   value), this is changed so that backslash-R matches only CR, LF, or CRLF.
475*22dc650dSSadaf Ebrahimi   The build-time default can be overridden by the user of PCRE2 at runtime.
476*22dc650dSSadaf Ebrahimi   */
477*22dc650dSSadaf Ebrahimi#undef BSR_ANYCRLF
478*22dc650dSSadaf Ebrahimi
479*22dc650dSSadaf Ebrahimi/* Define to any value to disable the use of the z and t modifiers in
480*22dc650dSSadaf Ebrahimi   formatting settings such as %zu or %td (this is rarely needed). */
481*22dc650dSSadaf Ebrahimi#undef DISABLE_PERCENT_ZT
482*22dc650dSSadaf Ebrahimi
483*22dc650dSSadaf Ebrahimi/* If you are compiling for a system that uses EBCDIC instead of ASCII
484*22dc650dSSadaf Ebrahimi   character codes, define this macro to any value. When EBCDIC is set, PCRE2
485*22dc650dSSadaf Ebrahimi   assumes that all input strings are in EBCDIC. If you do not define this
486*22dc650dSSadaf Ebrahimi   macro, PCRE2 will assume input strings are ASCII or UTF-8/16/32 Unicode. It
487*22dc650dSSadaf Ebrahimi   is not possible to build a version of PCRE2 that supports both EBCDIC and
488*22dc650dSSadaf Ebrahimi   UTF-8/16/32. */
489*22dc650dSSadaf Ebrahimi#undef EBCDIC
490*22dc650dSSadaf Ebrahimi
491*22dc650dSSadaf Ebrahimi/* In an EBCDIC environment, define this macro to any value to arrange for the
492*22dc650dSSadaf Ebrahimi   NL character to be 0x25 instead of the default 0x15. NL plays the role that
493*22dc650dSSadaf Ebrahimi   LF does in an ASCII/Unicode environment. */
494*22dc650dSSadaf Ebrahimi#undef EBCDIC_NL25
495*22dc650dSSadaf Ebrahimi
496*22dc650dSSadaf Ebrahimi/* Define this if your compiler supports __attribute__((uninitialized)) */
497*22dc650dSSadaf Ebrahimi#undef HAVE_ATTRIBUTE_UNINITIALIZED
498*22dc650dSSadaf Ebrahimi
499*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the 'bcopy' function. */
500*22dc650dSSadaf Ebrahimi#define HAVE_BCOPY 1
501*22dc650dSSadaf Ebrahimi
502*22dc650dSSadaf Ebrahimi/* Define this if your compiler provides __builtin_mul_overflow() */
503*22dc650dSSadaf Ebrahimi#undef HAVE_BUILTIN_MUL_OVERFLOW
504*22dc650dSSadaf Ebrahimi
505*22dc650dSSadaf Ebrahimi
506*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <dirent.h> header file. */
507*22dc650dSSadaf Ebrahimi#define HAVE_DIRENT_H 1
508*22dc650dSSadaf Ebrahimi
509*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <dlfcn.h> header file. */
510*22dc650dSSadaf Ebrahimi#define HAVE_DLFCN_H 1
511*22dc650dSSadaf Ebrahimi
512*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <editline/readline.h> header file. */
513*22dc650dSSadaf Ebrahimi#undef HAVE_EDITLINE_READLINE_H
514*22dc650dSSadaf Ebrahimi
515*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <edit/readline/readline.h> header file. */
516*22dc650dSSadaf Ebrahimi#undef HAVE_EDIT_READLINE_READLINE_H
517*22dc650dSSadaf Ebrahimi
518*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <inttypes.h> header file. */
519*22dc650dSSadaf Ebrahimi#define HAVE_INTTYPES_H 1
520*22dc650dSSadaf Ebrahimi
521*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <limits.h> header file. */
522*22dc650dSSadaf Ebrahimi#define HAVE_LIMITS_H 1
523*22dc650dSSadaf Ebrahimi
524*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the 'memfd_create' function. */
525*22dc650dSSadaf Ebrahimi#undef HAVE_MEMFD_CREATE
526*22dc650dSSadaf Ebrahimi
527*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the 'memmove' function. */
528*22dc650dSSadaf Ebrahimi#define HAVE_MEMMOVE 1
529*22dc650dSSadaf Ebrahimi
530*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <minix/config.h> header file. */
531*22dc650dSSadaf Ebrahimi#undef HAVE_MINIX_CONFIG_H
532*22dc650dSSadaf Ebrahimi
533*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the 'mkostemp' function. */
534*22dc650dSSadaf Ebrahimi#undef HAVE_MKOSTEMP
535*22dc650dSSadaf Ebrahimi
536*22dc650dSSadaf Ebrahimi/* Define if you have POSIX threads libraries and header files. */
537*22dc650dSSadaf Ebrahimi#define HAVE_PTHREAD 1
538*22dc650dSSadaf Ebrahimi
539*22dc650dSSadaf Ebrahimi/* Have PTHREAD_PRIO_INHERIT. */
540*22dc650dSSadaf Ebrahimi#undef HAVE_PTHREAD_PRIO_INHERIT
541*22dc650dSSadaf Ebrahimi
542*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <readline.h> header file. */
543*22dc650dSSadaf Ebrahimi#undef HAVE_READLINE_H
544*22dc650dSSadaf Ebrahimi
545*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <readline/history.h> header file. */
546*22dc650dSSadaf Ebrahimi#undef HAVE_READLINE_HISTORY_H
547*22dc650dSSadaf Ebrahimi
548*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <readline/readline.h> header file. */
549*22dc650dSSadaf Ebrahimi#undef HAVE_READLINE_READLINE_H
550*22dc650dSSadaf Ebrahimi
551*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the `realpath' function. */
552*22dc650dSSadaf Ebrahimi#define HAVE_REALPATH 1
553*22dc650dSSadaf Ebrahimi
554*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the 'secure_getenv' function. */
555*22dc650dSSadaf Ebrahimi#undef HAVE_SECURE_GETENV
556*22dc650dSSadaf Ebrahimi
557*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <stdint.h> header file. */
558*22dc650dSSadaf Ebrahimi#define HAVE_STDINT_H 1
559*22dc650dSSadaf Ebrahimi
560*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <stdio.h> header file. */
561*22dc650dSSadaf Ebrahimi#define HAVE_STDIO_H 1
562*22dc650dSSadaf Ebrahimi
563*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <stdlib.h> header file. */
564*22dc650dSSadaf Ebrahimi#define HAVE_STDLIB_H 1
565*22dc650dSSadaf Ebrahimi
566*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the 'strerror' function. */
567*22dc650dSSadaf Ebrahimi#define HAVE_STRERROR 1
568*22dc650dSSadaf Ebrahimi
569*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <strings.h> header file. */
570*22dc650dSSadaf Ebrahimi#define HAVE_STRINGS_H 1
571*22dc650dSSadaf Ebrahimi
572*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <string.h> header file. */
573*22dc650dSSadaf Ebrahimi#define HAVE_STRING_H 1
574*22dc650dSSadaf Ebrahimi
575*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <sys/stat.h> header file. */
576*22dc650dSSadaf Ebrahimi#define HAVE_SYS_STAT_H 1
577*22dc650dSSadaf Ebrahimi
578*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <sys/types.h> header file. */
579*22dc650dSSadaf Ebrahimi#define HAVE_SYS_TYPES_H 1
580*22dc650dSSadaf Ebrahimi
581*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <sys/wait.h> header file. */
582*22dc650dSSadaf Ebrahimi#define HAVE_SYS_WAIT_H 1
583*22dc650dSSadaf Ebrahimi
584*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <unistd.h> header file. */
585*22dc650dSSadaf Ebrahimi#define HAVE_UNISTD_H 1
586*22dc650dSSadaf Ebrahimi
587*22dc650dSSadaf Ebrahimi/* Define to 1 if the compiler supports simple visibility declarations. */
588*22dc650dSSadaf Ebrahimi#undef HAVE_VISIBILITY
589*22dc650dSSadaf Ebrahimi
590*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <wchar.h> header file. */
591*22dc650dSSadaf Ebrahimi#define HAVE_WCHAR_H 1
592*22dc650dSSadaf Ebrahimi
593*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <windows.h> header file. */
594*22dc650dSSadaf Ebrahimi#undef HAVE_WINDOWS_H
595*22dc650dSSadaf Ebrahimi
596*22dc650dSSadaf Ebrahimi/* Define to 1 if you have the <zlib.h> header file. */
597*22dc650dSSadaf Ebrahimi
598*22dc650dSSadaf Ebrahimi/* This limits the amount of memory that may be used while matching a pattern.
599*22dc650dSSadaf Ebrahimi   It applies to both pcre2_match() and pcre2_dfa_match(). It does not apply
600*22dc650dSSadaf Ebrahimi   to JIT matching. The value is in kibibytes (units of 1024 bytes). */
601*22dc650dSSadaf Ebrahimi#undef HEAP_LIMIT
602*22dc650dSSadaf Ebrahimi
603*22dc650dSSadaf Ebrahimi/* The value of LINK_SIZE determines the number of bytes used to store links
604*22dc650dSSadaf Ebrahimi   as offsets within the compiled regex. The default is 2, which allows for
605*22dc650dSSadaf Ebrahimi   compiled patterns up to 65535 code units long. This covers the vast
606*22dc650dSSadaf Ebrahimi   majority of cases. However, PCRE2 can also be compiled to use 3 or 4 bytes
607*22dc650dSSadaf Ebrahimi   instead. This allows for longer patterns in extreme cases. */
608*22dc650dSSadaf Ebrahimi#undef LINK_SIZE
609*22dc650dSSadaf Ebrahimi
610*22dc650dSSadaf Ebrahimi/* Define to the sub-directory where libtool stores uninstalled libraries. */
611*22dc650dSSadaf Ebrahimi#undef LT_OBJDIR
612*22dc650dSSadaf Ebrahimi
613*22dc650dSSadaf Ebrahimi/* The value of MATCH_LIMIT determines the default number of times the
614*22dc650dSSadaf Ebrahimi   pcre2_match() function can record a backtrack position during a single
615*22dc650dSSadaf Ebrahimi   matching attempt. The value is also used to limit a loop counter in
616*22dc650dSSadaf Ebrahimi   pcre2_dfa_match(). There is a runtime interface for setting a different
617*22dc650dSSadaf Ebrahimi   limit. The limit exists in order to catch runaway regular expressions that
618*22dc650dSSadaf Ebrahimi   take forever to determine that they do not match. The default is set very
619*22dc650dSSadaf Ebrahimi   large so that it does not accidentally catch legitimate cases. */
620*22dc650dSSadaf Ebrahimi#undef MATCH_LIMIT
621*22dc650dSSadaf Ebrahimi
622*22dc650dSSadaf Ebrahimi/* The above limit applies to all backtracks, whether or not they are nested.
623*22dc650dSSadaf Ebrahimi   In some environments it is desirable to limit the nesting of backtracking
624*22dc650dSSadaf Ebrahimi   (that is, the depth of tree that is searched) more strictly, in order to
625*22dc650dSSadaf Ebrahimi   restrict the maximum amount of heap memory that is used. The value of
626*22dc650dSSadaf Ebrahimi   MATCH_LIMIT_DEPTH provides this facility. To have any useful effect, it
627*22dc650dSSadaf Ebrahimi   must be less than the value of MATCH_LIMIT. The default is to use the same
628*22dc650dSSadaf Ebrahimi   value as MATCH_LIMIT. There is a runtime method for setting a different
629*22dc650dSSadaf Ebrahimi   limit. In the case of pcre2_dfa_match(), this limit controls the depth of
630*22dc650dSSadaf Ebrahimi   the internal nested function calls that are used for pattern recursions,
631*22dc650dSSadaf Ebrahimi   lookarounds, and atomic groups. */
632*22dc650dSSadaf Ebrahimi#undef MATCH_LIMIT_DEPTH
633*22dc650dSSadaf Ebrahimi
634*22dc650dSSadaf Ebrahimi/* This limit is parameterized just in case anybody ever wants to change it.
635*22dc650dSSadaf Ebrahimi   Care must be taken if it is increased, because it guards against integer
636*22dc650dSSadaf Ebrahimi   overflow caused by enormously large patterns. */
637*22dc650dSSadaf Ebrahimi#undef MAX_NAME_COUNT
638*22dc650dSSadaf Ebrahimi
639*22dc650dSSadaf Ebrahimi/* This limit is parameterized just in case anybody ever wants to change it.
640*22dc650dSSadaf Ebrahimi   Care must be taken if it is increased, because it guards against integer
641*22dc650dSSadaf Ebrahimi   overflow caused by enormously large patterns. */
642*22dc650dSSadaf Ebrahimi#undef MAX_NAME_SIZE
643*22dc650dSSadaf Ebrahimi
644*22dc650dSSadaf Ebrahimi/* The value of MAX_VARLOOKBEHIND specifies the default maximum length, in
645*22dc650dSSadaf Ebrahimi   characters, for a variable-length lookbehind assertion. */
646*22dc650dSSadaf Ebrahimi#undef MAX_VARLOOKBEHIND
647*22dc650dSSadaf Ebrahimi
648*22dc650dSSadaf Ebrahimi/* Defining NEVER_BACKSLASH_C locks out the use of \C in all patterns. */
649*22dc650dSSadaf Ebrahimi#undef NEVER_BACKSLASH_C
650*22dc650dSSadaf Ebrahimi
651*22dc650dSSadaf Ebrahimi/* The value of NEWLINE_DEFAULT determines the default newline character
652*22dc650dSSadaf Ebrahimi   sequence. PCRE2 client programs can override this by selecting other values
653*22dc650dSSadaf Ebrahimi   at run time. The valid values are 1 (CR), 2 (LF), 3 (CRLF), 4 (ANY), 5
654*22dc650dSSadaf Ebrahimi   (ANYCRLF), and 6 (NUL). */
655*22dc650dSSadaf Ebrahimi#undef NEWLINE_DEFAULT
656*22dc650dSSadaf Ebrahimi
657*22dc650dSSadaf Ebrahimi/* Name of package */
658*22dc650dSSadaf Ebrahimi#define PACKAGE "pcre2"
659*22dc650dSSadaf Ebrahimi
660*22dc650dSSadaf Ebrahimi/* Define to the address where bug reports for this package should be sent. */
661*22dc650dSSadaf Ebrahimi#define PACKAGE_BUGREPORT ""
662*22dc650dSSadaf Ebrahimi
663*22dc650dSSadaf Ebrahimi/* Define to the full name of this package. */
664*22dc650dSSadaf Ebrahimi#define PACKAGE_NAME "PCRE2"
665*22dc650dSSadaf Ebrahimi
666*22dc650dSSadaf Ebrahimi/* Define to the full name and version of this package. */
667*22dc650dSSadaf Ebrahimi#define PACKAGE_STRING "PCRE2 10.43 VMS"
668*22dc650dSSadaf Ebrahimi
669*22dc650dSSadaf Ebrahimi/* Define to the one symbol short name of this package. */
670*22dc650dSSadaf Ebrahimi#define PACKAGE_TARNAME "pcre2"
671*22dc650dSSadaf Ebrahimi
672*22dc650dSSadaf Ebrahimi/* Define to the home page for this package. */
673*22dc650dSSadaf Ebrahimi#define PACKAGE_URL ""
674*22dc650dSSadaf Ebrahimi
675*22dc650dSSadaf Ebrahimi/* Define to the version of this package. */
676*22dc650dSSadaf Ebrahimi#define PACKAGE_VERSION "10.43"
677*22dc650dSSadaf Ebrahimi
678*22dc650dSSadaf Ebrahimi/* The value of PARENS_NEST_LIMIT specifies the maximum depth of nested
679*22dc650dSSadaf Ebrahimi   parentheses (of any kind) in a pattern. This limits the amount of system
680*22dc650dSSadaf Ebrahimi   stack that is used while compiling a pattern. */
681*22dc650dSSadaf Ebrahimi#undef PARENS_NEST_LIMIT
682*22dc650dSSadaf Ebrahimi
683*22dc650dSSadaf Ebrahimi/* The value of PCRE2GREP_BUFSIZE is the starting size of the buffer used by
684*22dc650dSSadaf Ebrahimi   pcre2grep to hold parts of the file it is searching. The buffer will be
685*22dc650dSSadaf Ebrahimi   expanded up to PCRE2GREP_MAX_BUFSIZE if necessary, for files containing
686*22dc650dSSadaf Ebrahimi   very long lines. The actual amount of memory used by pcre2grep is three
687*22dc650dSSadaf Ebrahimi   times this number, because it allows for the buffering of "before" and
688*22dc650dSSadaf Ebrahimi   "after" lines. */
689*22dc650dSSadaf Ebrahimi#define PCRE2GREP_BUFSIZE 20480
690*22dc650dSSadaf Ebrahimi
691*22dc650dSSadaf Ebrahimi/* The value of PCRE2GREP_MAX_BUFSIZE specifies the maximum size of the buffer
692*22dc650dSSadaf Ebrahimi   used by pcre2grep to hold parts of the file it is searching. The actual
693*22dc650dSSadaf Ebrahimi   amount of memory used by pcre2grep is three times this number, because it
694*22dc650dSSadaf Ebrahimi   allows for the buffering of "before" and "after" lines. */
695*22dc650dSSadaf Ebrahimi#define PCRE2GREP_MAX_BUFSIZE 1048576
696*22dc650dSSadaf Ebrahimi
697*22dc650dSSadaf Ebrahimi/* Define to any value to include debugging code. */
698*22dc650dSSadaf Ebrahimi#undef PCRE2_DEBUG
699*22dc650dSSadaf Ebrahimi
700*22dc650dSSadaf Ebrahimi/* to make a symbol visible */
701*22dc650dSSadaf Ebrahimi#undef PCRE2_EXPORT
702*22dc650dSSadaf Ebrahimi
703*22dc650dSSadaf Ebrahimi
704*22dc650dSSadaf Ebrahimi/* If you are compiling for a system other than a Unix-like system or
705*22dc650dSSadaf Ebrahimi   Win32, and it needs some magic to be inserted before the definition
706*22dc650dSSadaf Ebrahimi   of a function that is exported by the library, define this macro to
707*22dc650dSSadaf Ebrahimi   contain the relevant magic. If you do not define this macro, a suitable
708*22dc650dSSadaf Ebrahimi   __declspec value is used for Windows systems; in other environments
709*22dc650dSSadaf Ebrahimi   a compiler relevant "extern" is used with any "visibility" related
710*22dc650dSSadaf Ebrahimi   attributes from PCRE2_EXPORT included.
711*22dc650dSSadaf Ebrahimi   This macro apears at the start of every exported function that is part
712*22dc650dSSadaf Ebrahimi   of the external API. It does not appear on functions that are "external"
713*22dc650dSSadaf Ebrahimi   in the C sense, but which are internal to the library. */
714*22dc650dSSadaf Ebrahimi#undef PCRE2_EXP_DEFN
715*22dc650dSSadaf Ebrahimi
716*22dc650dSSadaf Ebrahimi/* Define to any value if linking statically (TODO: make nice with Libtool) */
717*22dc650dSSadaf Ebrahimi#undef PCRE2_STATIC
718*22dc650dSSadaf Ebrahimi
719*22dc650dSSadaf Ebrahimi/* Define to necessary symbol if this constant uses a non-standard name on
720*22dc650dSSadaf Ebrahimi   your system. */
721*22dc650dSSadaf Ebrahimi#undef PTHREAD_CREATE_JOINABLE
722*22dc650dSSadaf Ebrahimi
723*22dc650dSSadaf Ebrahimi/* Define to any non-zero number to enable support for SELinux compatible
724*22dc650dSSadaf Ebrahimi   executable memory allocator in JIT. Note that this will have no effect
725*22dc650dSSadaf Ebrahimi   unless SUPPORT_JIT is also defined. */
726*22dc650dSSadaf Ebrahimi#undef SLJIT_PROT_EXECUTABLE_ALLOCATOR
727*22dc650dSSadaf Ebrahimi
728*22dc650dSSadaf Ebrahimi/* Define to 1 if all of the C89 standard headers exist (not just the ones
729*22dc650dSSadaf Ebrahimi   required in a freestanding environment). This macro is provided for
730*22dc650dSSadaf Ebrahimi   backward compatibility; new code need not use it. */
731*22dc650dSSadaf Ebrahimi#define STDC_HEADERS 1
732*22dc650dSSadaf Ebrahimi
733*22dc650dSSadaf Ebrahimi/* Define to any value to enable differential fuzzing support. */
734*22dc650dSSadaf Ebrahimi#undef SUPPORT_DIFF_FUZZ
735*22dc650dSSadaf Ebrahimi
736*22dc650dSSadaf Ebrahimi/* Define to any value to enable support for Just-In-Time compiling. */
737*22dc650dSSadaf Ebrahimi#undef SUPPORT_JIT
738*22dc650dSSadaf Ebrahimi
739*22dc650dSSadaf Ebrahimi/* Define to any value to allow pcre2grep to be linked with libbz2, so that it
740*22dc650dSSadaf Ebrahimi   is able to handle .bz2 files. */
741*22dc650dSSadaf Ebrahimi
742*22dc650dSSadaf Ebrahimi/* Define to any value to allow pcre2test to be linked with libedit. */
743*22dc650dSSadaf Ebrahimi#undef SUPPORT_LIBEDIT
744*22dc650dSSadaf Ebrahimi
745*22dc650dSSadaf Ebrahimi/* Define to any value to allow pcre2test to be linked with libreadline. */
746*22dc650dSSadaf Ebrahimi#undef SUPPORT_LIBREADLINE
747*22dc650dSSadaf Ebrahimi
748*22dc650dSSadaf Ebrahimi/* Define to any value to allow pcre2grep to be linked with libz, so that it
749*22dc650dSSadaf Ebrahimi   is able to handle .gz files. */
750*22dc650dSSadaf Ebrahimi
751*22dc650dSSadaf Ebrahimi/* Define to any value to enable callout script support in pcre2grep. */
752*22dc650dSSadaf Ebrahimi#undef SUPPORT_PCRE2GREP_CALLOUT
753*22dc650dSSadaf Ebrahimi
754*22dc650dSSadaf Ebrahimi/* Define to any value to enable fork support in pcre2grep callout scripts.
755*22dc650dSSadaf Ebrahimi   This will have no effect unless SUPPORT_PCRE2GREP_CALLOUT is also defined.
756*22dc650dSSadaf Ebrahimi   */
757*22dc650dSSadaf Ebrahimi#undef SUPPORT_PCRE2GREP_CALLOUT_FORK
758*22dc650dSSadaf Ebrahimi
759*22dc650dSSadaf Ebrahimi/* Define to any value to enable JIT support in pcre2grep. Note that this will
760*22dc650dSSadaf Ebrahimi   have no effect unless SUPPORT_JIT is also defined. */
761*22dc650dSSadaf Ebrahimi#undef SUPPORT_PCRE2GREP_JIT
762*22dc650dSSadaf Ebrahimi
763*22dc650dSSadaf Ebrahimi/* Define to any value to enable the 16 bit PCRE2 library. */
764*22dc650dSSadaf Ebrahimi#undef SUPPORT_PCRE2_16
765*22dc650dSSadaf Ebrahimi
766*22dc650dSSadaf Ebrahimi/* Define to any value to enable the 32 bit PCRE2 library. */
767*22dc650dSSadaf Ebrahimi#undef SUPPORT_PCRE2_32
768*22dc650dSSadaf Ebrahimi
769*22dc650dSSadaf Ebrahimi/* Define to any value to enable the 8 bit PCRE2 library. */
770*22dc650dSSadaf Ebrahimi#define SUPPORT_PCRE2_8 1
771*22dc650dSSadaf Ebrahimi
772*22dc650dSSadaf Ebrahimi/* Define to any value to enable support for Unicode and UTF encoding. This
773*22dc650dSSadaf Ebrahimi   will work even in an EBCDIC environment, but it is incompatible with the
774*22dc650dSSadaf Ebrahimi   EBCDIC macro. That is, PCRE2 can support *either* EBCDIC code *or*
775*22dc650dSSadaf Ebrahimi   ASCII/Unicode, but not both at once. */
776*22dc650dSSadaf Ebrahimi#undef SUPPORT_UNICODE
777*22dc650dSSadaf Ebrahimi
778*22dc650dSSadaf Ebrahimi/* Define to any value for valgrind support to find invalid memory reads. */
779*22dc650dSSadaf Ebrahimi#undef SUPPORT_VALGRIND
780*22dc650dSSadaf Ebrahimi
781*22dc650dSSadaf Ebrahimi/* Enable extensions on AIX, Interix, z/OS.  */
782*22dc650dSSadaf Ebrahimi#ifndef _ALL_SOURCE
783*22dc650dSSadaf Ebrahimi# undef _ALL_SOURCE
784*22dc650dSSadaf Ebrahimi#endif
785*22dc650dSSadaf Ebrahimi/* Enable general extensions on macOS.  */
786*22dc650dSSadaf Ebrahimi#ifndef _DARWIN_C_SOURCE
787*22dc650dSSadaf Ebrahimi# undef _DARWIN_C_SOURCE
788*22dc650dSSadaf Ebrahimi#endif
789*22dc650dSSadaf Ebrahimi/* Enable general extensions on Solaris.  */
790*22dc650dSSadaf Ebrahimi#ifndef __EXTENSIONS__
791*22dc650dSSadaf Ebrahimi# undef __EXTENSIONS__
792*22dc650dSSadaf Ebrahimi#endif
793*22dc650dSSadaf Ebrahimi/* Enable GNU extensions on systems that have them.  */
794*22dc650dSSadaf Ebrahimi#ifndef _GNU_SOURCE
795*22dc650dSSadaf Ebrahimi# undef _GNU_SOURCE
796*22dc650dSSadaf Ebrahimi#endif
797*22dc650dSSadaf Ebrahimi/* Enable X/Open compliant socket functions that do not require linking
798*22dc650dSSadaf Ebrahimi   with -lxnet on HP-UX 11.11.  */
799*22dc650dSSadaf Ebrahimi#ifndef _HPUX_ALT_XOPEN_SOCKET_API
800*22dc650dSSadaf Ebrahimi# undef _HPUX_ALT_XOPEN_SOCKET_API
801*22dc650dSSadaf Ebrahimi#endif
802*22dc650dSSadaf Ebrahimi/* Identify the host operating system as Minix.
803*22dc650dSSadaf Ebrahimi   This macro does not affect the system headers' behavior.
804*22dc650dSSadaf Ebrahimi   A future release of Autoconf may stop defining this macro.  */
805*22dc650dSSadaf Ebrahimi#ifndef _MINIX
806*22dc650dSSadaf Ebrahimi# undef _MINIX
807*22dc650dSSadaf Ebrahimi#endif
808*22dc650dSSadaf Ebrahimi/* Enable general extensions on NetBSD.
809*22dc650dSSadaf Ebrahimi   Enable NetBSD compatibility extensions on Minix.  */
810*22dc650dSSadaf Ebrahimi#ifndef _NETBSD_SOURCE
811*22dc650dSSadaf Ebrahimi# undef _NETBSD_SOURCE
812*22dc650dSSadaf Ebrahimi#endif
813*22dc650dSSadaf Ebrahimi/* Enable OpenBSD compatibility extensions on NetBSD.
814*22dc650dSSadaf Ebrahimi   Oddly enough, this does nothing on OpenBSD.  */
815*22dc650dSSadaf Ebrahimi#ifndef _OPENBSD_SOURCE
816*22dc650dSSadaf Ebrahimi# undef _OPENBSD_SOURCE
817*22dc650dSSadaf Ebrahimi#endif
818*22dc650dSSadaf Ebrahimi/* Define to 1 if needed for POSIX-compatible behavior.  */
819*22dc650dSSadaf Ebrahimi#ifndef _POSIX_SOURCE
820*22dc650dSSadaf Ebrahimi# undef _POSIX_SOURCE
821*22dc650dSSadaf Ebrahimi#endif
822*22dc650dSSadaf Ebrahimi/* Define to 2 if needed for POSIX-compatible behavior.  */
823*22dc650dSSadaf Ebrahimi#ifndef _POSIX_1_SOURCE
824*22dc650dSSadaf Ebrahimi# undef _POSIX_1_SOURCE
825*22dc650dSSadaf Ebrahimi#endif
826*22dc650dSSadaf Ebrahimi/* Enable POSIX-compatible threading on Solaris.  */
827*22dc650dSSadaf Ebrahimi#ifndef _POSIX_PTHREAD_SEMANTICS
828*22dc650dSSadaf Ebrahimi# undef _POSIX_PTHREAD_SEMANTICS
829*22dc650dSSadaf Ebrahimi#endif
830*22dc650dSSadaf Ebrahimi/* Enable extensions specified by ISO/IEC TS 18661-5:2014.  */
831*22dc650dSSadaf Ebrahimi#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
832*22dc650dSSadaf Ebrahimi# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
833*22dc650dSSadaf Ebrahimi#endif
834*22dc650dSSadaf Ebrahimi/* Enable extensions specified by ISO/IEC TS 18661-1:2014.  */
835*22dc650dSSadaf Ebrahimi#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
836*22dc650dSSadaf Ebrahimi# undef __STDC_WANT_IEC_60559_BFP_EXT__
837*22dc650dSSadaf Ebrahimi#endif
838*22dc650dSSadaf Ebrahimi/* Enable extensions specified by ISO/IEC TS 18661-2:2015.  */
839*22dc650dSSadaf Ebrahimi#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
840*22dc650dSSadaf Ebrahimi# undef __STDC_WANT_IEC_60559_DFP_EXT__
841*22dc650dSSadaf Ebrahimi#endif
842*22dc650dSSadaf Ebrahimi/* Enable extensions specified by C23 Annex F.  */
843*22dc650dSSadaf Ebrahimi#ifndef __STDC_WANT_IEC_60559_EXT__
844*22dc650dSSadaf Ebrahimi# undef __STDC_WANT_IEC_60559_EXT__
845*22dc650dSSadaf Ebrahimi#endif
846*22dc650dSSadaf Ebrahimi/* Enable extensions specified by ISO/IEC TS 18661-4:2015.  */
847*22dc650dSSadaf Ebrahimi#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
848*22dc650dSSadaf Ebrahimi# undef __STDC_WANT_IEC_60559_FUNCS_EXT__
849*22dc650dSSadaf Ebrahimi#endif
850*22dc650dSSadaf Ebrahimi/* Enable extensions specified by C23 Annex H and ISO/IEC TS 18661-3:2015.  */
851*22dc650dSSadaf Ebrahimi#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
852*22dc650dSSadaf Ebrahimi# undef __STDC_WANT_IEC_60559_TYPES_EXT__
853*22dc650dSSadaf Ebrahimi#endif
854*22dc650dSSadaf Ebrahimi/* Enable extensions specified by ISO/IEC TR 24731-2:2010.  */
855*22dc650dSSadaf Ebrahimi#ifndef __STDC_WANT_LIB_EXT2__
856*22dc650dSSadaf Ebrahimi# undef __STDC_WANT_LIB_EXT2__
857*22dc650dSSadaf Ebrahimi#endif
858*22dc650dSSadaf Ebrahimi/* Enable extensions specified by ISO/IEC 24747:2009.  */
859*22dc650dSSadaf Ebrahimi#ifndef __STDC_WANT_MATH_SPEC_FUNCS__
860*22dc650dSSadaf Ebrahimi# undef __STDC_WANT_MATH_SPEC_FUNCS__
861*22dc650dSSadaf Ebrahimi#endif
862*22dc650dSSadaf Ebrahimi/* Enable extensions on HP NonStop.  */
863*22dc650dSSadaf Ebrahimi#ifndef _TANDEM_SOURCE
864*22dc650dSSadaf Ebrahimi# undef _TANDEM_SOURCE
865*22dc650dSSadaf Ebrahimi#endif
866*22dc650dSSadaf Ebrahimi/* Enable X/Open extensions.  Define to 500 only if necessary
867*22dc650dSSadaf Ebrahimi   to make mbstate_t available.  */
868*22dc650dSSadaf Ebrahimi#ifndef _XOPEN_SOURCE
869*22dc650dSSadaf Ebrahimi# undef _XOPEN_SOURCE
870*22dc650dSSadaf Ebrahimi#endif
871*22dc650dSSadaf Ebrahimi
872*22dc650dSSadaf Ebrahimi
873*22dc650dSSadaf Ebrahimi/* Version number of package */
874*22dc650dSSadaf Ebrahimi#undef VERSION
875*22dc650dSSadaf Ebrahimi
876*22dc650dSSadaf Ebrahimi/* Number of bits in a file offset, on hosts where this is settable. */
877*22dc650dSSadaf Ebrahimi#undef _FILE_OFFSET_BITS
878*22dc650dSSadaf Ebrahimi
879*22dc650dSSadaf Ebrahimi/* Define to 1 on platforms where this makes off_t a 64-bit type. */
880*22dc650dSSadaf Ebrahimi#undef _LARGE_FILES
881*22dc650dSSadaf Ebrahimi
882*22dc650dSSadaf Ebrahimi/* Number of bits in time_t, on hosts where this is settable. */
883*22dc650dSSadaf Ebrahimi#undef _TIME_BITS
884*22dc650dSSadaf Ebrahimi
885*22dc650dSSadaf Ebrahimi/* Define to 1 on platforms where this makes time_t a 64-bit type. */
886*22dc650dSSadaf Ebrahimi#undef __MINGW_USE_VC2005_COMPAT
887*22dc650dSSadaf Ebrahimi
888*22dc650dSSadaf Ebrahimi/* Define to empty if 'const' does not conform to ANSI C. */
889*22dc650dSSadaf Ebrahimi#undef const
890*22dc650dSSadaf Ebrahimi
891*22dc650dSSadaf Ebrahimi/* Define to the type of a signed integer type of width exactly 64 bits if
892*22dc650dSSadaf Ebrahimi   such a type exists and the standard includes do not define it. */
893*22dc650dSSadaf Ebrahimi#undef int64_t
894*22dc650dSSadaf Ebrahimi
895*22dc650dSSadaf Ebrahimi/* Define as 'unsigned int' if <stddef.h> doesn't define. */
896*22dc650dSSadaf Ebrahimi#undef size_t
897*22dc650dSSadaf Ebrahimi
898*22dc650dSSadaf Ebrahimi// VMS
899*22dc650dSSadaf Ebrahimi#include <stdint.h>
900*22dc650dSSadaf Ebrahimi#define PCRE2_EXPORT
901*22dc650dSSadaf Ebrahimi#define LINK_SIZE 2
902*22dc650dSSadaf Ebrahimi#define MAX_NAME_COUNT 10000
903*22dc650dSSadaf Ebrahimi#define MAX_NAME_SIZE 32
904*22dc650dSSadaf Ebrahimi#define MATCH_LIMIT 10000000
905*22dc650dSSadaf Ebrahimi#define HEAP_LIMIT 20000000
906*22dc650dSSadaf Ebrahimi#define NEWLINE_DEFAULT 2
907*22dc650dSSadaf Ebrahimi#define PARENS_NEST_LIMIT 250
908*22dc650dSSadaf Ebrahimi#define MATCH_LIMIT_DEPTH MATCH_LIMIT
909*22dc650dSSadaf Ebrahimi#define MAX_VARLOOKBEHIND 255
910*22dc650dSSadaf Ebrahimi
911*22dc650dSSadaf Ebrahimi/*
912*22dc650dSSadaf Ebrahimi#define _pcre2_default_compile_context_ vms_pcre2_def_cmpl_cntxt_
913*22dc650dSSadaf Ebrahimi#define _pcre2_default_convert_context_ vms_pcre2_def_cnvrt_cntxt_
914*22dc650dSSadaf Ebrahimi#define pcre2_set_compile_extra_options_8 vms_pcre2_set_cmpl_ext_opt_8
915*22dc650dSSadaf Ebrahimi#define pcre2_set_compile_recursion_guard_8 vms_pcre2_set_cmpl_rcrs_grd_8
916*22dc650dSSadaf Ebrahimi#define pcre2_set_recursion_memory_management_8 vms_pcre2_set_rcrs_mem_mng_8
917*22dc650dSSadaf Ebrahimi#define pcre2_match_data_create_from_pattern_8 vms_pcre2_m_d_crt_fr_patt_8
918*22dc650dSSadaf Ebrahimi#define pcre2_get_match_data_heapframes_size_8 vms_pcre2_get_m_d_hpfram_s_8
919*22dc650dSSadaf Ebrahimi#define pcre2_serialize_get_number_of_codes_8 vms_pcre2_ser_get_n_of_cod_8
920*22dc650dSSadaf Ebrahimi#define pcre2_substring_nametable_scan_8    vms_pcre2_substr_nmtab_scan_8
921*22dc650dSSadaf Ebrahimi#define pcre2_substring_length_bynumber_8   vms_pcre2_substr_len_bynum_8
922*22dc650dSSadaf Ebrahimi#define pcre2_substring_number_from_name_8 vms_pcre2_substr_num_f_nam_8
923*22dc650dSSadaf Ebrahimi*/
924*22dc650dSSadaf Ebrahimi
925*22dc650dSSadaf Ebrahimi#define HAVE_BZLIB_H 1
926*22dc650dSSadaf Ebrahimi#define SUPPORT_LIBBZ2 1
927*22dc650dSSadaf Ebrahimi
928*22dc650dSSadaf Ebrahimi#define HAVE_ZLIB_H 1
929*22dc650dSSadaf Ebrahimi#define SUPPORT_LIBZ 1
930*22dc650dSSadaf Ebrahimi$!
931*22dc650dSSadaf Ebrahimi$!
932*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "config.h created"
933*22dc650dSSadaf Ebrahimi$!
934*22dc650dSSadaf Ebrahimi$!Creating Descrip.mms in each directory needed
935*22dc650dSSadaf Ebrahimi$!
936*22dc650dSSadaf Ebrahimi$!
937*22dc650dSSadaf Ebrahimi$COPY SYS$INPUT [.SRC]DESCRIP.MMS
938*22dc650dSSadaf Ebrahimi# (c) Alexey Chupahin 09-APR-2024
939*22dc650dSSadaf Ebrahimi# OpenVMS 7.3-2, DEC 2000 mod.300
940*22dc650dSSadaf Ebrahimi# OpenVMS 8.3,   Digital PW 600au
941*22dc650dSSadaf Ebrahimi# OpenVMS 8.4,   Compaq DS10L
942*22dc650dSSadaf Ebrahimi# OpenVMS 8.3,   HP rx1620
943*22dc650dSSadaf Ebrahimi
944*22dc650dSSadaf Ebrahimi
945*22dc650dSSadaf Ebrahimi.FIRST
946*22dc650dSSadaf Ebrahimi        DEF PCRE2 []
947*22dc650dSSadaf Ebrahimi
948*22dc650dSSadaf Ebrahimi
949*22dc650dSSadaf EbrahimiCC=cc
950*22dc650dSSadaf EbrahimiCFLAGS =  /INCLUDE=([],[-],[-.VMS],ZLIB,BZ2LIB) \
951*22dc650dSSadaf Ebrahimi          /DEFINE=(HAVE_CONFIG_H,PCRE2_CODE_UNIT_WIDTH=8)\
952*22dc650dSSadaf Ebrahimi          /OPTIMIZE=(INLINE=SPEED) \
953*22dc650dSSadaf Ebrahimi          /DEB
954*22dc650dSSadaf Ebrahimi
955*22dc650dSSadaf EbrahimiOBJ=\
956*22dc650dSSadaf EbrahimiPCRE2POSIX.OBJ,\
957*22dc650dSSadaf EbrahimiPCRE2_AUTO_POSSESS.OBJ,\
958*22dc650dSSadaf EbrahimiPCRE2_CHKDINT.OBJ,\
959*22dc650dSSadaf EbrahimiPCRE2_CHARTABLES.OBJ,\
960*22dc650dSSadaf EbrahimiPCRE2_COMPILE.OBJ,\
961*22dc650dSSadaf EbrahimiPCRE2_CONFIG.OBJ,\
962*22dc650dSSadaf EbrahimiPCRE2_CONTEXT.OBJ,\
963*22dc650dSSadaf EbrahimiPCRE2_CONVERT.OBJ,\
964*22dc650dSSadaf EbrahimiPCRE2_DFA_MATCH.OBJ,\
965*22dc650dSSadaf EbrahimiPCRE2_ERROR.OBJ,\
966*22dc650dSSadaf EbrahimiPCRE2_EXTUNI.OBJ,\
967*22dc650dSSadaf EbrahimiPCRE2_FIND_BRACKET.OBJ,\
968*22dc650dSSadaf EbrahimiPCRE2_JIT_COMPILE.OBJ,\
969*22dc650dSSadaf EbrahimiPCRE2_MAKETABLES.OBJ,\
970*22dc650dSSadaf EbrahimiPCRE2_MATCH.OBJ,\
971*22dc650dSSadaf EbrahimiPCRE2_MATCH_DATA.OBJ,\
972*22dc650dSSadaf EbrahimiPCRE2_NEWLINE.OBJ,\
973*22dc650dSSadaf EbrahimiPCRE2_ORD2UTF.OBJ,\
974*22dc650dSSadaf EbrahimiPCRE2_PATTERN_INFO.OBJ,\
975*22dc650dSSadaf EbrahimiPCRE2_SCRIPT_RUN.OBJ,\
976*22dc650dSSadaf EbrahimiPCRE2_SERIALIZE.OBJ,\
977*22dc650dSSadaf EbrahimiPCRE2_STRING_UTILS.OBJ,\
978*22dc650dSSadaf EbrahimiPCRE2_STUDY.OBJ,\
979*22dc650dSSadaf EbrahimiPCRE2_SUBSTITUTE.OBJ,\
980*22dc650dSSadaf EbrahimiPCRE2_SUBSTRING.OBJ,\
981*22dc650dSSadaf EbrahimiPCRE2_TABLES.OBJ,\
982*22dc650dSSadaf EbrahimiPCRE2_UCD.OBJ,\
983*22dc650dSSadaf EbrahimiPCRE2_VALID_UTF.OBJ,\
984*22dc650dSSadaf EbrahimiPCRE2_XCLASS.OBJ
985*22dc650dSSadaf Ebrahimi
986*22dc650dSSadaf EbrahimiALL : PCRE2.H PCRE2.OLB PCRE2$SHR.EXE PCRE2DEMO.EXE PCRE2GREP.EXE
987*22dc650dSSadaf Ebrahimi        $!
988*22dc650dSSadaf Ebrahimi
989*22dc650dSSadaf EbrahimiPCRE2$SHR.EXE : PCRE2.OLB
990*22dc650dSSadaf Ebrahimi        LINK/SHARE=PCRE2$SHR.EXE PCRE2:PCRE2.OLB/LIB,PCRE2:PCRE2$DEF.OPT/OPT
991*22dc650dSSadaf Ebrahimi
992*22dc650dSSadaf EbrahimiPCRE2.OLB : $(OBJ)
993*22dc650dSSadaf Ebrahimi        LIB/CREA PCRE2.OLB $(OBJ)
994*22dc650dSSadaf Ebrahimi
995*22dc650dSSadaf EbrahimiPCRE2DEMO.EXE : PCRE2DEMO.OBJ
996*22dc650dSSadaf Ebrahimi        LINK/EXE=PCRE2DEMO PCRE2DEMO,PCRE2:PCRE2.OPT/OPT
997*22dc650dSSadaf Ebrahimi
998*22dc650dSSadaf EbrahimiPCRE2GREP.EXE : PCRE2GREP.OBJ
999*22dc650dSSadaf Ebrahimi        LINK/EXE=PCRE2GREP PCRE2GREP,PCRE2:PCRE2.OPT/OPT,ZLIB:ZLIB.OPT/OPT,BZ2LIB:BZIP2.OPT/OPT
1000*22dc650dSSadaf Ebrahimi
1001*22dc650dSSadaf EbrahimiPCRE2.H : PCRE2.H_GENERIC
1002*22dc650dSSadaf Ebrahimi        WRITE SYS$OUTPUT "Patching PCRE2.H"
1003*22dc650dSSadaf Ebrahimi        COPY/CONCAT [-.VMS]PCRE2.H_PATCH,[]PCRE2.H_GENERIC PCRE2.H
1004*22dc650dSSadaf Ebrahimi
1005*22dc650dSSadaf EbrahimiPCRE2_CHARTABLES.OBJ : PCRE2_CHARTABLES.C
1006*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1007*22dc650dSSadaf Ebrahimi
1008*22dc650dSSadaf EbrahimiPCRE2_CHARTABLES.C : PCRE2_CHARTABLES.C_DIST
1009*22dc650dSSadaf Ebrahimi         COPY PCRE2_CHARTABLES.C_DIST PCRE2_CHARTABLES.C
1010*22dc650dSSadaf Ebrahimi
1011*22dc650dSSadaf EbrahimiPCRE2DEMO.OBJ : PCRE2DEMO.C
1012*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1013*22dc650dSSadaf Ebrahimi
1014*22dc650dSSadaf EbrahimiPCRE2GREP.OBJ : PCRE2GREP.C
1015*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) /WARN=DIS=ALL $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1016*22dc650dSSadaf Ebrahimi
1017*22dc650dSSadaf EbrahimiPCRE2POSIX.OBJ : PCRE2POSIX.C
1018*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1019*22dc650dSSadaf Ebrahimi
1020*22dc650dSSadaf EbrahimiPCRE2POSIX_TEST.OBJ : PCRE2POSIX_TEST.C
1021*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1022*22dc650dSSadaf Ebrahimi
1023*22dc650dSSadaf EbrahimiPCRE2TEST.OBJ : PCRE2TEST.C
1024*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1025*22dc650dSSadaf Ebrahimi
1026*22dc650dSSadaf EbrahimiPCRE2_AUTO_POSSESS.OBJ : PCRE2_AUTO_POSSESS.C
1027*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1028*22dc650dSSadaf Ebrahimi
1029*22dc650dSSadaf EbrahimiPCRE2_CHKDINT.OBJ : PCRE2_CHKDINT.C
1030*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1031*22dc650dSSadaf Ebrahimi
1032*22dc650dSSadaf EbrahimiPCRE2_COMPILE.OBJ : PCRE2_COMPILE.C
1033*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1034*22dc650dSSadaf Ebrahimi
1035*22dc650dSSadaf EbrahimiPCRE2_CONFIG.OBJ : PCRE2_CONFIG.C
1036*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1037*22dc650dSSadaf Ebrahimi
1038*22dc650dSSadaf EbrahimiPCRE2_CONTEXT.OBJ : PCRE2_CONTEXT.C
1039*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1040*22dc650dSSadaf Ebrahimi
1041*22dc650dSSadaf EbrahimiPCRE2_CONVERT.OBJ : PCRE2_CONVERT.C
1042*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1043*22dc650dSSadaf Ebrahimi
1044*22dc650dSSadaf EbrahimiPCRE2_DFA_MATCH.OBJ : PCRE2_DFA_MATCH.C
1045*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1046*22dc650dSSadaf Ebrahimi
1047*22dc650dSSadaf EbrahimiPCRE2_DFTABLES.OBJ : PCRE2_DFTABLES.C
1048*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1049*22dc650dSSadaf Ebrahimi
1050*22dc650dSSadaf EbrahimiPCRE2_ERROR.OBJ : PCRE2_ERROR.C
1051*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1052*22dc650dSSadaf Ebrahimi
1053*22dc650dSSadaf EbrahimiPCRE2_EXTUNI.OBJ : PCRE2_EXTUNI.C
1054*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1055*22dc650dSSadaf Ebrahimi
1056*22dc650dSSadaf EbrahimiPCRE2_FIND_BRACKET.OBJ : PCRE2_FIND_BRACKET.C
1057*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1058*22dc650dSSadaf Ebrahimi
1059*22dc650dSSadaf EbrahimiPCRE2_FUZZSUPPORT.OBJ : PCRE2_FUZZSUPPORT.C
1060*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1061*22dc650dSSadaf Ebrahimi
1062*22dc650dSSadaf EbrahimiPCRE2_JIT_COMPILE.OBJ : PCRE2_JIT_COMPILE.C
1063*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1064*22dc650dSSadaf Ebrahimi
1065*22dc650dSSadaf EbrahimiPCRE2_JIT_MATCH.OBJ : PCRE2_JIT_MATCH.C
1066*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1067*22dc650dSSadaf Ebrahimi
1068*22dc650dSSadaf EbrahimiPCRE2_JIT_MISC.OBJ : PCRE2_JIT_MISC.C
1069*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1070*22dc650dSSadaf Ebrahimi
1071*22dc650dSSadaf EbrahimiPCRE2_JIT_TEST.OBJ : PCRE2_JIT_TEST.C
1072*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1073*22dc650dSSadaf Ebrahimi
1074*22dc650dSSadaf EbrahimiPCRE2_MAKETABLES.OBJ : PCRE2_MAKETABLES.C
1075*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1076*22dc650dSSadaf Ebrahimi
1077*22dc650dSSadaf EbrahimiPCRE2_MATCH.OBJ : PCRE2_MATCH.C
1078*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1079*22dc650dSSadaf Ebrahimi
1080*22dc650dSSadaf EbrahimiPCRE2_MATCH_DATA.OBJ : PCRE2_MATCH_DATA.C
1081*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1082*22dc650dSSadaf Ebrahimi
1083*22dc650dSSadaf EbrahimiPCRE2_NEWLINE.OBJ : PCRE2_NEWLINE.C
1084*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1085*22dc650dSSadaf Ebrahimi
1086*22dc650dSSadaf EbrahimiPCRE2_ORD2UTF.OBJ : PCRE2_ORD2UTF.C
1087*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1088*22dc650dSSadaf Ebrahimi
1089*22dc650dSSadaf EbrahimiPCRE2_PATTERN_INFO.OBJ : PCRE2_PATTERN_INFO.C
1090*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1091*22dc650dSSadaf Ebrahimi
1092*22dc650dSSadaf EbrahimiPCRE2_PRINTINT.OBJ : PCRE2_PRINTINT.C
1093*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1094*22dc650dSSadaf Ebrahimi
1095*22dc650dSSadaf EbrahimiPCRE2_SCRIPT_RUN.OBJ : PCRE2_SCRIPT_RUN.C
1096*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1097*22dc650dSSadaf Ebrahimi
1098*22dc650dSSadaf EbrahimiPCRE2_SERIALIZE.OBJ : PCRE2_SERIALIZE.C
1099*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1100*22dc650dSSadaf Ebrahimi
1101*22dc650dSSadaf EbrahimiPCRE2_STRING_UTILS.OBJ : PCRE2_STRING_UTILS.C
1102*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1103*22dc650dSSadaf Ebrahimi
1104*22dc650dSSadaf EbrahimiPCRE2_STUDY.OBJ : PCRE2_STUDY.C
1105*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1106*22dc650dSSadaf Ebrahimi
1107*22dc650dSSadaf EbrahimiPCRE2_SUBSTITUTE.OBJ : PCRE2_SUBSTITUTE.C
1108*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1109*22dc650dSSadaf Ebrahimi
1110*22dc650dSSadaf EbrahimiPCRE2_SUBSTRING.OBJ : PCRE2_SUBSTRING.C
1111*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1112*22dc650dSSadaf Ebrahimi
1113*22dc650dSSadaf EbrahimiPCRE2_TABLES.OBJ : PCRE2_TABLES.C
1114*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1115*22dc650dSSadaf Ebrahimi
1116*22dc650dSSadaf EbrahimiPCRE2_UCD.OBJ : PCRE2_UCD.C
1117*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1118*22dc650dSSadaf Ebrahimi
1119*22dc650dSSadaf EbrahimiPCRE2_UCPTABLES.OBJ : PCRE2_UCPTABLES.C
1120*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1121*22dc650dSSadaf Ebrahimi
1122*22dc650dSSadaf EbrahimiPCRE2_VALID_UTF.OBJ : PCRE2_VALID_UTF.C
1123*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1124*22dc650dSSadaf Ebrahimi
1125*22dc650dSSadaf EbrahimiPCRE2_XCLASS.OBJ : PCRE2_XCLASS.C
1126*22dc650dSSadaf Ebrahimi         $(CC) $(CFLAGS) $(MMS$SOURCE) /OBJ=$(MMS$TARGET)
1127*22dc650dSSadaf Ebrahimi
1128*22dc650dSSadaf Ebrahimi$!
1129*22dc650dSSadaf Ebrahimi$!
1130*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "DESCRIP.MMS's have been created"
1131*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT " "
1132*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT " "
1133*22dc650dSSadaf Ebrahimi$WRITE SYS$OUTPUT "Now you can type @BUILD "
1134*22dc650dSSadaf Ebrahimi$!
1135*22dc650dSSadaf Ebrahimi$EXIT:
1136*22dc650dSSadaf Ebrahimi$DEFINE SYS$ERROR _NLA0:
1137*22dc650dSSadaf Ebrahimi$DEFINE SYS$OUTPUT _NLA0:
1138*22dc650dSSadaf Ebrahimi$DEL TEST.C;*
1139*22dc650dSSadaf Ebrahimi$DEL TEST.OBJ;*
1140*22dc650dSSadaf Ebrahimi$DEL TEST.EXE;*
1141*22dc650dSSadaf Ebrahimi$DEL TEST.OPT;*
1142*22dc650dSSadaf Ebrahimi$DEAS SYS$ERROR
1143*22dc650dSSadaf Ebrahimi$DEAS SYS$OUTPUT
1144*22dc650dSSadaf Ebrahimi
1145