You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Sebastian Bergmann <li...@sebastian-bergmann.de> on 2002/03/20 08:06:15 UTC

Win32 build broken

c:\home\apache\httpd-2.0\srclib\pcre\pcre.c(118): error C2065:
'NEWLINE': Undeclared identifier

c:\home\apache\httpd-2.0\srclib\pcre\pcre.c(118): error C2099:
Initialization is not a constant

c:\home\apache\httpd-2.0\srclib\pcre\pcre.c(369): error C2065:
'PCRE_UTF8': Undeclared identifier

-- 
  Sebastian Bergmann
  http://sebastian-bergmann.de/                 http://phpOpenTracker.de/

  Did I help you? Consider a gift: http://wishlist.sebastian-bergmann.de/

Re: Win32 build broken

Posted by Cliff Woolley <jw...@virginia.edu>.
This *should* fix it, but I'm eyeballing it from Unix... if no one beats
me to it, I'll dig up a win32 box and test it after I get back from lunch.

--Cliff

Index: config.hw
===================================================================
RCS file: /home/cvs/httpd-2.0/srclib/pcre/config.hw,v
retrieving revision 1.1
diff -u -d -r1.1 config.hw
--- config.hw	6 May 2000 15:02:12 -0000	1.1
+++ config.hw	20 Mar 2002 17:38:53 -0000
@@ -3,9 +3,13 @@
 written in Standard C, but there are a few non-standard things it can cope
 with, allowing it to run on SunOS4 and other "close to standard" systems.

-On a non-Unix system you should just copy this file into config.h and change
-the definitions of HAVE_STRERROR and HAVE_MEMMOVE to 1. Unfortunately, because
-of the way autoconf works, these cannot be made the defaults. */
+On a non-Unix system you should just copy this file into config.h, and set up
+the macros the way you need them. You should normally change the definitions of
+HAVE_STRERROR and HAVE_MEMMOVE to 1. Unfortunately, because of the way autoconf
+works, these cannot be made the defaults. If your system has bcopy() and not
+memmove(), change the definition of HAVE_BCOPY instead of HAVE_MEMMOVE. If your
+system has neither bcopy() nor memmove(), leave them both as 0; an emulation
+function will be used. */

 /* Define to empty if the keyword does not work. */

@@ -24,5 +28,19 @@

 #define HAVE_STRERROR 1
 #define HAVE_MEMMOVE  1
+
+/* There are some non-Unix systems that don't even have bcopy(). If this macro
+is false, an emulation is used. If HAVE_MEMMOVE is set to 1, the value of
+HAVE_BCOPY is not relevant. */
+
+#define HAVE_BCOPY 0
+
+/* The value of NEWLINE determines the newline character. The default is to
+leave it up to the compiler, but some sites want to force a particular value.
+On Unix systems, "configure" can be used to override this default. */
+
+#ifndef NEWLINE
+#define NEWLINE '\n'
+#endif

 /* End */
Index: pcre.hw
===================================================================
RCS file: /home/cvs/httpd-2.0/srclib/pcre/pcre.hw,v
retrieving revision 1.2
diff -u -d -r1.2 pcre.hw
--- pcre.hw	8 Oct 2000 23:59:45 -0000	1.2
+++ pcre.hw	20 Mar 2002 17:38:53 -0000
@@ -2,7 +2,7 @@
 *       Perl-Compatible Regular Expressions      *
 *************************************************/

-/* Copyright (c) 1997-2000 University of Cambridge */
+/* Copyright (c) 1997-2001 University of Cambridge */

 #ifndef _PCRE_H
 #define _PCRE_H
@@ -11,8 +11,8 @@
 Do not edit it; instead make changes to pcre.in and/or pcre.hw */

 #define PCRE_MAJOR 3
-#define PCRE_MINOR 2
-#define PCRE_DATE  12-May-2000
+#define PCRE_MINOR          9
+#define PCRE_DATE           02-Jan-2002

 /* Win32 uses DLL by default */

@@ -50,6 +50,7 @@
 #define PCRE_NOTEOL          0x0100
 #define PCRE_UNGREEDY        0x0200
 #define PCRE_NOTEMPTY        0x0400
+#define PCRE_UTF8            0x0800

 /* Exec-time and get-time error codes */

@@ -73,8 +74,11 @@

 /* Types */

-typedef void pcre;
-typedef void pcre_extra;
+struct real_pcre;        /* declaration; the definition is private  */
+struct real_pcre_extra;  /* declaration; the definition is private */
+
+typedef struct real_pcre pcre;
+typedef struct real_pcre_extra pcre_extra;

 /* Store get and free functions. These can be set to alternative malloc/free
 functions if required. Some magic is required for Win32 DLL; it is null on
@@ -92,11 +96,13 @@
 extern int pcre_copy_substring(const char *, int *, int, int, char *, int);
 extern int pcre_exec(const pcre *, const pcre_extra *, const char *,
   int, int, int, int *, int);
+extern void pcre_free_substring(const char *);
+extern void pcre_free_substring_list(const char **);
 extern int pcre_get_substring(const char *, int *, int, int, const char **);
 extern int pcre_get_substring_list(const char *, int *, int, const char ***);
 extern int pcre_info(const pcre *, int *, int *);
 extern int pcre_fullinfo(const pcre *, const pcre_extra *, int, void *);
-extern unsigned const char *pcre_maketables(void);
+extern const unsigned char *pcre_maketables(void);
 extern pcre_extra *pcre_study(const pcre *, int, const char **);
 extern const char *pcre_version(void);


--------------------------------------------------------------
   Cliff Woolley
   cliffwoolley@yahoo.com
   Charlottesville, VA



Re: Win32 build broken

Posted by Cliff Woolley <jw...@virginia.edu>.
On Wed, 20 Mar 2002, Pavel Novy wrote:

> > somone will need to add/edit the config.hw file to put the window
> > specific definitions in there for the missing vars

I'm on it.

--Cliff

--------------------------------------------------------------
   Cliff Woolley
   cliffwoolley@yahoo.com
   Charlottesville, VA



Re: Win32 build broken

Posted by Pavel Novy <no...@feld.cvut.cz>.
It seems that NetWare build is also broken for the same reason, so
it's needed to do a similar thing for this platform, e.g. add the 
config.hnw file under .../srclib/pcre/.

Thanks,
Pavel

Ian Holsman wrote:
> Sebastian Bergmann wrote:
> 
>> Brian Pane wrote:
>>
>>> Those look like some of the symbols introduced in the new version
>>> of PCRE that I just imported.  They're defined in config.h, so
>>> they'll likely require a "buildconf;configure;make clean".
>>
>>
>>
>>   I'm using MSVC :)
> 
> 
> somone will need to add/edit the config.hw file to put the window 
> specific definitions in there for the missing vars
> 
> 
>>
> 
> 
> 
> 



Re: Win32 build broken

Posted by Ian Holsman <ia...@apache.org>.
Sebastian Bergmann wrote:
> Brian Pane wrote:
> 
>>Those look like some of the symbols introduced in the new version
>>of PCRE that I just imported.  They're defined in config.h, so
>>they'll likely require a "buildconf;configure;make clean".
> 
> 
>   I'm using MSVC :)

somone will need to add/edit the config.hw file to put the window 
specific definitions in there for the missing vars


> 




Re: Win32 build broken

Posted by Sebastian Bergmann <li...@sebastian-bergmann.de>.
Brian Pane wrote:
> Those look like some of the symbols introduced in the new version
> of PCRE that I just imported.  They're defined in config.h, so
> they'll likely require a "buildconf;configure;make clean".

  I'm using MSVC :)

-- 
  Sebastian Bergmann
  http://sebastian-bergmann.de/                 http://phpOpenTracker.de/

  Did I help you? Consider a gift: http://wishlist.sebastian-bergmann.de/

Re: Win32 build broken

Posted by Brian Pane <bp...@pacbell.net>.
Sebastian Bergmann wrote:

>c:\home\apache\httpd-2.0\srclib\pcre\pcre.c(118): error C2065:
>'NEWLINE': Undeclared identifier
>
>c:\home\apache\httpd-2.0\srclib\pcre\pcre.c(118): error C2099:
>Initialization is not a constant
>
>c:\home\apache\httpd-2.0\srclib\pcre\pcre.c(369): error C2065:
>'PCRE_UTF8': Undeclared identifier
>

Those look like some of the symbols introduced in the new version
of PCRE that I just imported.  They're defined in config.h, so
they'll likely require a "buildconf;configure;make clean".

--Brian