|
1 /************************************************* |
|
2 * Perl-Compatible Regular Expressions * |
|
3 *************************************************/ |
|
4 |
|
5 /* |
|
6 Copyright (c) 2005, Google Inc. |
|
7 All rights reserved. |
|
8 |
|
9 ----------------------------------------------------------------------------- |
|
10 Redistribution and use in source and binary forms, with or without |
|
11 modification, are permitted provided that the following conditions are met: |
|
12 |
|
13 * Redistributions of source code must retain the above copyright notice, |
|
14 this list of conditions and the following disclaimer. |
|
15 |
|
16 * Redistributions in binary form must reproduce the above copyright |
|
17 notice, this list of conditions and the following disclaimer in the |
|
18 documentation and/or other materials provided with the distribution. |
|
19 |
|
20 * Neither the name of the University of Cambridge nor the names of its |
|
21 contributors may be used to endorse or promote products derived from |
|
22 this software without specific prior written permission. |
|
23 |
|
24 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
|
25 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
|
26 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
|
27 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
|
28 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
|
29 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
|
30 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
|
31 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
|
32 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
|
33 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
|
34 POSSIBILITY OF SUCH DAMAGE. |
|
35 ----------------------------------------------------------------------------- |
|
36 */ |
|
37 |
|
38 |
|
39 #ifndef PCRECPP_INTERNAL_H |
|
40 #define PCRECPP_INTERNAL_H |
|
41 |
|
42 /* When compiling a DLL for Windows, the exported symbols have to be declared |
|
43 using some MS magic. I found some useful information on this web page: |
|
44 http://msdn2.microsoft.com/en-us/library/y4h7bcy6(VS.80).aspx. According to the |
|
45 information there, using __declspec(dllexport) without "extern" we have a |
|
46 definition; with "extern" we have a declaration. The settings here override the |
|
47 setting in pcre.h. We use: |
|
48 |
|
49 PCRECPP_EXP_DECL for declarations |
|
50 PCRECPP_EXP_DEFN for definitions of exported functions |
|
51 |
|
52 */ |
|
53 |
|
54 #ifndef PCRECPP_EXP_DECL |
|
55 # ifdef _WIN32 |
|
56 # ifndef PCRE_STATIC |
|
57 # define PCRECPP_EXP_DECL extern __declspec(dllexport) |
|
58 # define PCRECPP_EXP_DEFN __declspec(dllexport) |
|
59 # else |
|
60 # define PCRECPP_EXP_DECL extern |
|
61 # define PCRECPP_EXP_DEFN |
|
62 # endif |
|
63 # else |
|
64 # define PCRECPP_EXP_DECL extern |
|
65 # define PCRECPP_EXP_DEFN |
|
66 # endif |
|
67 #endif |
|
68 |
|
69 #endif /* PCRECPP_INTERNAL_H */ |
|
70 |
|
71 /* End of pcrecpp_internal.h */ |