Mxx_ru 1.4.6 → 1.4.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -99,7 +99,7 @@ class RuCodeGen < AbstractGenerator
99
99
 
100
100
  # Returns command line for run code generation.
101
101
  def build_cmd( mode )
102
- "ruby -e\"require 'rubygems'; gem 'RuCodeGen'; require 'rucodegen';\" " +
102
+ "ruby -e\"require 'rubygems'; gem 'RuCodeGen'; require 'rucodegen'; " +
103
103
  "process_embedded_rucodegen('#{@name}',:#{mode})\""
104
104
  end
105
105
  end
@@ -953,6 +953,17 @@ module MxxRu
953
953
  end
954
954
  end
955
955
 
956
+ # Creation of complete result target file name.
957
+ #
958
+ # Result target file name depends on ObjPlacement and Toolset.
959
+ #
960
+ def create_full_result_target_file_name
961
+ do_target_type_depending_actions(
962
+ :lib => lambda { |toolset| toolset.full_lib_name( self ) },
963
+ :dll => lambda { |toolset| toolset.full_dll_name( self ) },
964
+ :exe => lambda { |toolset| toolset.full_exe_name( self ) } )
965
+ end
966
+
956
967
  protected
957
968
  # Checks value of @mxx_all_options_defined and initiate
958
969
  # options setup if it is nil.
@@ -1108,23 +1119,15 @@ module MxxRu
1108
1119
  objs_state,
1109
1120
  res_state )
1110
1121
 
1111
- state = nil
1112
- toolset = MxxRu::Cpp::toolset
1113
- if nil == target_type
1114
- raise MxxRu::UnsupportedTargetTypeEx.new(
1115
- self.class.name, "nil" )
1116
- elsif target_type.name == LibTargetType::TYPE
1117
- state = toolset.make_lib( self, rebuilding_needed )
1118
- elsif target_type.name == DllTargetType::TYPE
1119
- state = toolset.make_dll( self, rebuilding_needed )
1120
- elsif target_type.name == ExeTargetType::TYPE
1121
- state = toolset.make_exe( self, rebuilding_needed )
1122
- else
1123
- raise MxxRu::UnsupportedTargetTypeEx.new(
1124
- self.class.name, target_type.name )
1125
- end
1122
+ state = do_target_type_depending_actions(
1123
+ :lib => lambda { |toolset|
1124
+ toolset.make_lib( self, rebuilding_needed ) },
1125
+ :dll => lambda { |toolset|
1126
+ toolset.make_dll( self, rebuilding_needed ) },
1127
+ :exe => lambda { |toolset|
1128
+ toolset.make_exe( self, rebuilding_needed ) } )
1126
1129
 
1127
- return state
1130
+ state
1128
1131
  end
1129
1132
 
1130
1133
  def clean_generators
@@ -1142,56 +1145,43 @@ module MxxRu
1142
1145
  end
1143
1146
 
1144
1147
  def clean_target
1148
+ do_target_type_depending_actions(
1149
+ :lib => lambda { |toolset| toolset.clean_lib( self ) },
1150
+ :dll => lambda { |toolset| toolset.clean_dll( self ) },
1151
+ :exe => lambda { |toolset| toolset.clean_exe( self ) } )
1152
+ end
1153
+
1154
+ # Do action with toolset depending on target type.
1155
+ #
1156
+ # Since v.1.4.7
1157
+ #
1158
+ # [_a_type_actions_] Hash with keys :lib, :dll and :exe.
1159
+ # Values should be Proc instances.
1160
+ #
1161
+ # Usage:
1162
+ # do_target_type_depending_actions(
1163
+ # :lib => lambda { |toolset| toolset.clean_lib(self) },
1164
+ # :dll => lambda { |toolset| toolset.clean_dll(self) },
1165
+ # :exe => lambda { |toolset| toolset.clean_exe(self) }
1166
+ # )
1167
+ #
1168
+ def do_target_type_depending_actions( a_type_actions )
1145
1169
  toolset = MxxRu::Cpp::toolset
1146
1170
  if nil == target_type
1147
1171
  raise MxxRu::UnsupportedTargetTypeEx.new(
1148
1172
  self.class.name, "nil" )
1149
1173
  elsif target_type.name == LibTargetType::TYPE
1150
- state = toolset.clean_lib( self )
1174
+ a_type_actions[ :lib ].call( toolset )
1151
1175
  elsif target_type.name == DllTargetType::TYPE
1152
- state = toolset.clean_dll( self )
1176
+ a_type_actions[ :dll ].call( toolset )
1153
1177
  elsif target_type.name == ExeTargetType::TYPE
1154
- state = toolset.clean_exe( self )
1178
+ a_type_actions[ :exe ].call( toolset )
1155
1179
  else
1156
1180
  raise MxxRu::UnsupportedTargetTypeEx.new(
1157
1181
  self.class.name, target_type.name )
1158
1182
  end
1159
1183
  end
1160
1184
 
1161
- # Create the necessary description of an option,
1162
- # which can have global, local and upspreadable value.
1163
- #
1164
- # [_a_option_desc_] The main component of a name of absent methods.
1165
- =begin :nodoc:
1166
- def add_spreadable_option(
1167
- a_option_desc )
1168
-
1169
- globals = @@mxx_globals[ a_option_desc ]
1170
- if nil == globals
1171
- @@mxx_globals[ a_option_desc ] = globals = Array.new
1172
- end
1173
-
1174
- locals = SpreadableOption.new( a_option_desc )
1175
- @mxx_locals[ a_option_desc ] = locals
1176
-
1177
- meth_global = "global_#{a_option_desc}"
1178
- meth_local = a_option_desc
1179
- meth_all = "mxx_all_#{a_option_desc}s"
1180
- meth_upspreads = "mxx_upspread_#{a_option_desc}s"
1181
-
1182
- @mxx_missing_actions[ meth_global ] =
1183
- GlobalOptionInserter.new( a_option_desc, globals )
1184
- @mxx_missing_actions[ meth_local ] =
1185
- SpreadableOptionInserter.new( locals )
1186
- @mxx_missing_actions[ meth_all ] =
1187
- SpreadableOptionAllExtractor.new( locals,
1188
- globals, self, meth_upspreads )
1189
- @mxx_missing_actions[ meth_upspreads ] =
1190
- SpreadableOptionUpspreadExtractor.new(
1191
- locals, self, meth_upspreads )
1192
- end
1193
- =end
1194
-
1195
1185
  def add_unique_to( what, to )
1196
1186
  if !to.include?( what )
1197
1187
  to.push( what )
@@ -950,6 +950,30 @@ module MxxRu
950
950
  return @name
951
951
  end
952
952
 
953
+ # Create full exe file name.
954
+ #
955
+ # Since v.1.4.7
956
+ #
957
+ def full_exe_name( target )
958
+ make_exe_name( target.mxx_target_name, target ).full_name
959
+ end
960
+
961
+ # Create full dll file name.
962
+ #
963
+ # Since v.1.4.7
964
+ #
965
+ def full_dll_name( target )
966
+ make_dll_name( target.mxx_target_name, target ).full_name
967
+ end
968
+
969
+ # Create full lib file name
970
+ #
971
+ # Since v.1.4.7
972
+ #
973
+ def full_lib_name( target )
974
+ make_lib_name( target.mxx_target_name, target ).full_name
975
+ end
976
+
953
977
  protected
954
978
  # Creating object file names.
955
979
  # Returns array of ObjInfo objects.
@@ -311,13 +311,9 @@ module MxxRu
311
311
  if :default == desc.manifest_file
312
312
  # We must create name for manifest.
313
313
  if ExeTargetType::TYPE == target.target_type.name
314
- make_exe_name(
315
- target.mxx_target_name,
316
- target ).full_name
314
+ full_exe_name( target )
317
315
  else
318
- make_dll_name(
319
- target.mxx_target_name,
320
- target ).full_name
316
+ full_dll_name( target )
321
317
  end + ".manifest"
322
318
  else
323
319
  # Manifest filename already specified.
@@ -34,5 +34,5 @@
34
34
  #
35
35
  # puts 'Mxx_ru version is: ' + MXX_RU_VERSION
36
36
  #
37
- MXX_RU_VERSION = '1.4.6'
37
+ MXX_RU_VERSION = '1.4.7'
38
38
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: Mxx_ru
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.6
4
+ version: 1.4.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Mxx_ru Project
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-08-23 00:00:00 +04:00
12
+ date: 2008-12-09 00:00:00 +03:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -27,26 +27,6 @@ extra_rdoc_files:
27
27
  files:
28
28
  - bin/mxxrugen
29
29
  - tests/c
30
- - tests/c/pcre
31
- - tests/c/pcre/chartables.c
32
- - tests/c/pcre/config.h
33
- - tests/c/pcre/dftables.c
34
- - tests/c/pcre/get.c
35
- - tests/c/pcre/internal.h
36
- - tests/c/pcre/lib
37
- - tests/c/pcre/maketables.c
38
- - tests/c/pcre/o
39
- - tests/c/pcre/pcre.c
40
- - tests/c/pcre/pcre.h
41
- - tests/c/pcre/pcre.rb
42
- - tests/c/pcre/pcredemo.c
43
- - tests/c/pcre/pcregrep.c
44
- - tests/c/pcre/pcreposix.c
45
- - tests/c/pcre/pcreposix.h
46
- - tests/c/pcre/pcretest.c
47
- - tests/c/pcre/perltest
48
- - tests/c/pcre/printint.c
49
- - tests/c/pcre/study.c
50
30
  - tests/cpp
51
31
  - tests/cpp/cpp_sources_glob
52
32
  - tests/cpp/cpp_sources_glob/build.rb
@@ -354,6 +334,8 @@ files:
354
334
  - lib/mxx_ru/cpp/obj_placements
355
335
  - lib/mxx_ru/cpp/obj_placements/custom_subdir.rb
356
336
  - lib/mxx_ru/cpp/qt.rb
337
+ - lib/mxx_ru/cpp/qt4.rb
338
+ - lib/mxx_ru/cpp/qt4details.rb
357
339
  - lib/mxx_ru/cpp/rucodegen.rb
358
340
  - lib/mxx_ru/cpp/source_file.rb
359
341
  - lib/mxx_ru/cpp/target.rb
@@ -1,183 +0,0 @@
1
- /*************************************************
2
- * Perl-Compatible Regular Expressions *
3
- *************************************************/
4
-
5
- /* This file is automatically written by the dftables auxiliary
6
- program. If you edit it by hand, you might like to edit the Makefile to
7
- prevent its ever being regenerated.
8
-
9
- This file is #included in the compilation of pcre.c to build the default
10
- character tables which are used when no tables are passed to the compile
11
- function. */
12
-
13
- static unsigned char pcre_default_tables[] = {
14
-
15
- /* This table is a lower casing table. */
16
-
17
- 0, 1, 2, 3, 4, 5, 6, 7,
18
- 8, 9, 10, 11, 12, 13, 14, 15,
19
- 16, 17, 18, 19, 20, 21, 22, 23,
20
- 24, 25, 26, 27, 28, 29, 30, 31,
21
- 32, 33, 34, 35, 36, 37, 38, 39,
22
- 40, 41, 42, 43, 44, 45, 46, 47,
23
- 48, 49, 50, 51, 52, 53, 54, 55,
24
- 56, 57, 58, 59, 60, 61, 62, 63,
25
- 64, 97, 98, 99,100,101,102,103,
26
- 104,105,106,107,108,109,110,111,
27
- 112,113,114,115,116,117,118,119,
28
- 120,121,122, 91, 92, 93, 94, 95,
29
- 96, 97, 98, 99,100,101,102,103,
30
- 104,105,106,107,108,109,110,111,
31
- 112,113,114,115,116,117,118,119,
32
- 120,121,122,123,124,125,126,127,
33
- 128,129,130,131,132,133,134,135,
34
- 136,137,138,139,140,141,142,143,
35
- 144,145,146,147,148,149,150,151,
36
- 152,153,154,155,156,157,158,159,
37
- 160,161,162,163,164,165,166,167,
38
- 168,169,170,171,172,173,174,175,
39
- 176,177,178,179,180,181,182,183,
40
- 184,185,186,187,188,189,190,191,
41
- 192,193,194,195,196,197,198,199,
42
- 200,201,202,203,204,205,206,207,
43
- 208,209,210,211,212,213,214,215,
44
- 216,217,218,219,220,221,222,223,
45
- 224,225,226,227,228,229,230,231,
46
- 232,233,234,235,236,237,238,239,
47
- 240,241,242,243,244,245,246,247,
48
- 248,249,250,251,252,253,254,255,
49
-
50
- /* This table is a case flipping table. */
51
-
52
- 0, 1, 2, 3, 4, 5, 6, 7,
53
- 8, 9, 10, 11, 12, 13, 14, 15,
54
- 16, 17, 18, 19, 20, 21, 22, 23,
55
- 24, 25, 26, 27, 28, 29, 30, 31,
56
- 32, 33, 34, 35, 36, 37, 38, 39,
57
- 40, 41, 42, 43, 44, 45, 46, 47,
58
- 48, 49, 50, 51, 52, 53, 54, 55,
59
- 56, 57, 58, 59, 60, 61, 62, 63,
60
- 64, 97, 98, 99,100,101,102,103,
61
- 104,105,106,107,108,109,110,111,
62
- 112,113,114,115,116,117,118,119,
63
- 120,121,122, 91, 92, 93, 94, 95,
64
- 96, 65, 66, 67, 68, 69, 70, 71,
65
- 72, 73, 74, 75, 76, 77, 78, 79,
66
- 80, 81, 82, 83, 84, 85, 86, 87,
67
- 88, 89, 90,123,124,125,126,127,
68
- 128,129,130,131,132,133,134,135,
69
- 136,137,138,139,140,141,142,143,
70
- 144,145,146,147,148,149,150,151,
71
- 152,153,154,155,156,157,158,159,
72
- 160,161,162,163,164,165,166,167,
73
- 168,169,170,171,172,173,174,175,
74
- 176,177,178,179,180,181,182,183,
75
- 184,185,186,187,188,189,190,191,
76
- 192,193,194,195,196,197,198,199,
77
- 200,201,202,203,204,205,206,207,
78
- 208,209,210,211,212,213,214,215,
79
- 216,217,218,219,220,221,222,223,
80
- 224,225,226,227,228,229,230,231,
81
- 232,233,234,235,236,237,238,239,
82
- 240,241,242,243,244,245,246,247,
83
- 248,249,250,251,252,253,254,255,
84
-
85
- /* This table contains bit maps for various character classes.
86
- Each map is 32 bytes long and the bits run from the least
87
- significant end of each byte. The classes that have their own
88
- maps are: space, xdigit, digit, upper, lower, word, graph
89
- print, punct, and cntrl. Other classes are built from combinations. */
90
-
91
- 0x00,0x3e,0x00,0x00,0x01,0x00,0x00,0x00,
92
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
93
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
94
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
95
-
96
- 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
97
- 0x7e,0x00,0x00,0x00,0x7e,0x00,0x00,0x00,
98
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
99
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
100
-
101
- 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
102
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
103
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
104
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
105
-
106
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
107
- 0xfe,0xff,0xff,0x07,0x00,0x00,0x00,0x00,
108
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
109
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
110
-
111
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
112
- 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0x07,
113
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
114
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
115
-
116
- 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
117
- 0xfe,0xff,0xff,0x87,0xfe,0xff,0xff,0x07,
118
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
119
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
120
-
121
- 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,
122
- 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
123
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
124
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
125
-
126
- 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,
127
- 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
128
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
129
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
130
-
131
- 0x00,0x00,0x00,0x00,0xfe,0xff,0x00,0xfc,
132
- 0x01,0x00,0x00,0xf8,0x01,0x00,0x00,0x78,
133
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
134
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
135
-
136
- 0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,
137
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
138
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
139
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
140
-
141
- /* This table identifies various classes of character by individual bits:
142
- 0x01 white space character
143
- 0x02 letter
144
- 0x04 decimal digit
145
- 0x08 hexadecimal digit
146
- 0x10 alphanumeric or '_'
147
- 0x80 regular expression metacharacter or binary zero
148
- */
149
-
150
- 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 0- 7 */
151
- 0x00,0x01,0x01,0x00,0x01,0x01,0x00,0x00, /* 8- 15 */
152
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 16- 23 */
153
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 24- 31 */
154
- 0x01,0x00,0x00,0x00,0x80,0x00,0x00,0x00, /* - ' */
155
- 0x80,0x80,0x80,0x80,0x00,0x00,0x80,0x00, /* ( - / */
156
- 0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c, /* 0 - 7 */
157
- 0x1c,0x1c,0x00,0x00,0x00,0x00,0x00,0x80, /* 8 - ? */
158
- 0x00,0x1a,0x1a,0x1a,0x1a,0x1a,0x1a,0x12, /* @ - G */
159
- 0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /* H - O */
160
- 0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /* P - W */
161
- 0x12,0x12,0x12,0x80,0x00,0x00,0x80,0x10, /* X - _ */
162
- 0x00,0x1a,0x1a,0x1a,0x1a,0x1a,0x1a,0x12, /* ` - g */
163
- 0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /* h - o */
164
- 0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /* p - w */
165
- 0x12,0x12,0x12,0x80,0x80,0x00,0x00,0x00, /* x -127 */
166
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 128-135 */
167
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 136-143 */
168
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 144-151 */
169
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 152-159 */
170
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 160-167 */
171
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 168-175 */
172
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 176-183 */
173
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 184-191 */
174
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 192-199 */
175
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 200-207 */
176
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 208-215 */
177
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 216-223 */
178
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 224-231 */
179
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 232-239 */
180
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 240-247 */
181
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};/* 248-255 */
182
-
183
- /* End of chartables.c */
@@ -1,99 +0,0 @@
1
-
2
- /* On Unix systems config.in is converted by configure into config.h. PCRE is
3
- written in Standard C, but there are a few non-standard things it can cope
4
- with, allowing it to run on SunOS4 and other "close to standard" systems.
5
-
6
- On a non-Unix system you should just copy this file into config.h, and set up
7
- the macros the way you need them. You should normally change the definitions of
8
- HAVE_STRERROR and HAVE_MEMMOVE to 1. Unfortunately, because of the way autoconf
9
- works, these cannot be made the defaults. If your system has bcopy() and not
10
- memmove(), change the definition of HAVE_BCOPY instead of HAVE_MEMMOVE. If your
11
- system has neither bcopy() nor memmove(), leave them both as 0; an emulation
12
- function will be used. */
13
-
14
- /* If you are compiling for a system that uses EBCDIC instead of ASCII
15
- character codes, define this macro as 1. On systems that can use "configure",
16
- this can be done via --enable-ebcdic. */
17
-
18
- #ifndef EBCDIC
19
- #define EBCDIC 0
20
- #endif
21
-
22
- /* If you are compiling for a system that needs some magic to be inserted
23
- before the definition of an exported function, define this macro to contain the
24
- relevant magic. It apears at the start of every exported function. */
25
-
26
- #define EXPORT
27
-
28
- /* The following two definitions are mainly for the benefit of SunOS4, which
29
- doesn't have the strerror() or memmove() functions that should be present in
30
- all Standard C libraries. The macros HAVE_STRERROR and HAVE_MEMMOVE should
31
- normally be defined with the value 1 for other systems, but unfortunately we
32
- can't make this the default because "configure" files generated by autoconf
33
- will only change 0 to 1; they won't change 1 to 0 if the functions are not
34
- found. */
35
-
36
- #define HAVE_STRERROR 1
37
- #define HAVE_MEMMOVE 1
38
-
39
- /* There are some non-Unix systems that don't even have bcopy(). If this macro
40
- is false, an emulation is used. If HAVE_MEMMOVE is set to 1, the value of
41
- HAVE_BCOPY is not relevant. */
42
-
43
- #define HAVE_BCOPY 0
44
-
45
- /* The value of NEWLINE determines the newline character. The default is to
46
- leave it up to the compiler, but some sites want to force a particular value.
47
- On Unix systems, "configure" can be used to override this default. */
48
-
49
- #ifndef NEWLINE
50
- #define NEWLINE '\n'
51
- #endif
52
-
53
- /* The value of LINK_SIZE determines the number of bytes used to store
54
- links as offsets within the compiled regex. The default is 2, which allows for
55
- compiled patterns up to 64K long. This covers the vast majority of cases.
56
- However, PCRE can also be compiled to use 3 or 4 bytes instead. This allows for
57
- longer patterns in extreme cases. On Unix systems, "configure" can be used to
58
- override this default. */
59
-
60
- #ifndef LINK_SIZE
61
- #define LINK_SIZE 2
62
- #endif
63
-
64
- /* The value of MATCH_LIMIT determines the default number of times the match()
65
- function can be called during a single execution of pcre_exec(). (There is a
66
- runtime method of setting a different limit.) The limit exists in order to
67
- catch runaway regular expressions that take for ever to determine that they do
68
- not match. The default is set very large so that it does not accidentally catch
69
- legitimate cases. On Unix systems, "configure" can be used to override this
70
- default default. */
71
-
72
- #ifndef MATCH_LIMIT
73
- #define MATCH_LIMIT 10000000
74
- #endif
75
-
76
- /* When calling PCRE via the POSIX interface, additional working storage is
77
- required for holding the pointers to capturing substrings because PCRE requires
78
- three integers per substring, whereas the POSIX interface provides only two. If
79
- the number of expected substrings is small, the wrapper function uses space on
80
- the stack, because this is faster than using malloc() for each call. The
81
- threshold above which the stack is no longer use is defined by POSIX_MALLOC_
82
- THRESHOLD. On Unix systems, "configure" can be used to override this default.
83
- */
84
-
85
- #ifndef POSIX_MALLOC_THRESHOLD
86
- #define POSIX_MALLOC_THRESHOLD 10
87
- #endif
88
-
89
- /* PCRE uses recursive function calls to handle backtracking while matching.
90
- This can sometimes be a problem on systems that have stacks of limited size.
91
- Define NO_RECURSE to get a version that doesn't use recursion in the match()
92
- function; instead it creates its own stack by steam using pcre_recurse_malloc
93
- to get memory. For more detail, see comments and other stuff just above the
94
- match() function. On Unix systems, "configure" can be used to set this in the
95
- Makefile (use --disable-recursion). */
96
-
97
- /* #define NO_RECURSE */
98
-
99
- /* End */